diff --git a/identproxy.rb b/identproxy.rb index 26d1f609f5c1569d51736129c9b58af72d6c5fb9..d068b0d71a08b9e337135f20cf36a81a84cb0a55 100644 --- a/identproxy.rb +++ b/identproxy.rb @@ -55,12 +55,12 @@ end # Look up function for NAT table def natlookup( p1, p2 ) # Execute shell command to get NAT table - nattable = %x(pfctl -ss | egrep '(>.*>|<.*<)') + nattable = %x( pfctl -ss | grep "\(" ) # Search NAT table for matching enties - if( nattable =~ /tcp (.+):(.+) -> (.+):#{p1} -> (.+):#{p2} / ) - server = $1 - p1 = $2.to_i + if( nattable =~ /tcp (.+):#{p1} \((.+):(.+)\) -> (.+):#{p2} / ) + server = $2 + p1 = $3.to_i return [server, p1, p2] else return nil