#!/usr/bin/perl -w use strict; use IO::Socket; use Gtk2 -init; use Glib qw/TRUE FALSE/; use Gtk2::Helper; my($sock,$MAXLEN, $LISTEN_PORT, $SEND_PORT, $tag, $tag_send, $tag_receive,$img_big,$img_send,$img_rec); $MAXLEN = 1024; $LISTEN_PORT = 5152; my $tview; #set up a udp server waiting for incomming messages $sock = IO::Socket::INET->new(LocalPort => $LISTEN_PORT, Proto => 'udp') or die "socket: $@"; #add a Gtk2::Helper watch on any incomming connections print "Awaiting UDP messages on port $LISTEN_PORT\n"; $tag = Gtk2::Helper->add_watch ( fileno($sock), 'in', sub { if (eof($sock)) { Gtk2::Helper->remove_watch ($tag); close($sock); } else { my $line = <$sock>; #$buffer->insert($buffer->get_end_iter,$line); print "$line"; } return 1; }); Gtk2->main;