From ea9e2558c5af5160b1988b30da6e3070bb286b40 Mon Sep 17 00:00:00 2001 From: Scott Ullrich Date: Sat, 19 Aug 2006 00:22:00 +0000 Subject: resolve aliases for netcat entries Ticket #1080 --- etc/inc/filter.inc | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) (limited to 'etc/inc/filter.inc') diff --git a/etc/inc/filter.inc b/etc/inc/filter.inc index 14f718b..3659ad8 100644 --- a/etc/inc/filter.inc +++ b/etc/inc/filter.inc @@ -909,14 +909,22 @@ function filter_nat_rules_generate() { case "tcp/udp": $protocol = "{ tcp udp }"; - fwrite($inetd_fd, "{$starting_localhost_port}\tstream\ttcp/udp\tnowait/0\tnobody\t/usr/bin/nc nc -w 20 {$target} {$loc_pt}\n"); + if(is_alias($loc_pt)) + $loc_pt_translated = alias_expand($loc_pt); + else + $loc_pt_translated = $loc_pt; + fwrite($inetd_fd, "{$starting_localhost_port}\tstream\ttcp/udp\tnowait/0\tnobody\t/usr/bin/nc nc -w 20 {$target} {$loc_pt_translated}\n"); if($ifname_real) $natrules .= "rdr on \${$ifname_real} proto {$protocol} from any to {$extaddr} port { {$x} } -> 127.0.0.1 port {$starting_localhost_port}\n"; break; case "tcp": case "udp": + if(is_alias($loc_pt)) + $loc_pt_translated = alias_expand($loc_pt); + else + $loc_pt_translated = $loc_pt; $protocol = $rule['protocol']; - fwrite($inetd_fd, "{$starting_localhost_port}\tstream\t{$protocol}\tnowait/0\tnobody\t/usr/bin/nc nc -w 20 {$target} {$loc_pt}\n"); + fwrite($inetd_fd, "{$starting_localhost_port}\tstream\t{$protocol}\tnowait/0\tnobody\t/usr/bin/nc nc -w 20 {$target} {$loc_pt_translated}\n"); if($ifname_real) $natrules .= "rdr on \${$ifname_real} proto {$protocol} from any to {$extaddr} port { {$x} } -> 127.0.0.1 port {$starting_localhost_port}\n"; break; -- cgit v1.1