X-Git-Url: http://git.openwrt.org/?p=openwrt%2Fsvn-archive%2Farchive.git;a=blobdiff_plain;f=package%2Ffirewall%2Ffiles%2Flib%2Fcore_redirect.sh;fp=package%2Ffirewall%2Ffiles%2Flib%2Fcore_redirect.sh;h=15d01b0a7557cd7b1b44e7dd76e6888a9bb80324;hp=b51f79390a59798cc786ffc98100d1700778e1a1;hb=69afcbcde627316aede1288b84a62c4dda76e8c4;hpb=4cf06b50c473372d0f7d4156472f1ebf27e8f331 diff --git a/package/firewall/files/lib/core_redirect.sh b/package/firewall/files/lib/core_redirect.sh index b51f79390a..15d01b0a75 100644 --- a/package/firewall/files/lib/core_redirect.sh +++ b/package/firewall/files/lib/core_redirect.sh @@ -26,8 +26,8 @@ fw_load_redirect() { fw_callback pre redirect - [ -n "$redirect_src" -a -n "$redirect_dest_ip" ] || { - fw_die "redirect ${redirect_name}: needs src and dest_ip" + [ -n "$redirect_src" -a -n "$redirect_dest_ip$redirect_dest_port" ] || { + fw_die "redirect ${redirect_name}: needs src and dest_ip or dest_port" } list_contains FW_CONNTRACK_ZONES $redirect_src || \ @@ -53,6 +53,7 @@ fw_load_redirect() { --to-destination ${redirect_dest_ip}${redirect_dest_port:+:$nat_dest_port} \ } + [ -n "$redirect_dest_ip" ] && \ fw add $mode f zone_${redirect_src}_forward ACCEPT ^ { $redirect_src_ip $redirect_dest_ip } { \ -d $redirect_dest_ip \ ${redirect_proto:+-p $redirect_proto} \