... my $result = Net::Pcap::loop($pcap_desc, $args{NUMPACKETS}, \&sniffit, args{USERDATA}); ... sub sniffit { my ($args,$header,$packet) = @_; my $pcap_dumper_t = Net::Pcap::dump_open($pcap_desc, "/tmp/andy.pcap"); Net::Pcap::dump($pcap_dumper_t, $header, $packet); Net::Pcap::dump_close($pcap_dumper_t); open(FH,"tethereal -V -r /tmp/andy.pcap |"); print ; close(FH); unlink("/tmp/andy.pcap"); }