Net::Pcap::dump_open($pcap_t, $filename); Open a savefile for writing and return a descriptor for doing so. If $filename is "-" data is written to standard output. #### ... 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"); } #### $pid = open2(*Reader, *Writer, "tethereal -V -i -" ); # open tethereal reading on STDIN my $pcap_dumper_t = Net::Pcap::dump_open($pcap_desc, *Writer); # write to Writer FH Net::Pcap::dump($pcap_dumper_t, $header, $packet); Net::Pcap::dump_close($pcap_dumper_t); $got = ; print $got;