open TCPDUMP, "tcpdump -e -i $interface ether src $dst_hw_addr|" or die "Can't open tcpdump.\n"; sub get_rssi { my $rssi = undef; while (!defined $rssi) { my $line = readline(TCPDUMP); if ( $line =~ m#(?-\d{1,3})dB signal.*QoS#ig ) { $rssi = $+{sig_level}; } } $rssi; }