diff options
-rw-r--r-- | sys/netinet/ip_fw.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/sys/netinet/ip_fw.c b/sys/netinet/ip_fw.c index 50b95a9..b2cc241 100644 --- a/sys/netinet/ip_fw.c +++ b/sys/netinet/ip_fw.c @@ -11,7 +11,7 @@ * * This software is provided ``AS IS'' without any warranties of any kind. * - * $Id: ip_fw.c,v 1.14.4.4 1996/02/23 15:26:03 phk Exp $ + * $Id: ip_fw.c,v 1.14.4.5 1996/02/23 20:10:52 phk Exp $ */ /* @@ -339,6 +339,7 @@ ip_fw_chk(m, ip, rif, dir) /* If a i/f addr was specified, check it */ if ((f->fw_flg & IP_FW_F_IFNAME) && f->fw_via_ip.s_addr) { + int match = 0; for (ia_p = ia; ia_p != NULL; ia_p = ia_p->ifa_next) { if ((ia_p->ifa_addr == NULL)) @@ -350,7 +351,11 @@ ip_fw_chk(m, ip, rif, dir) (ia_p->ifa_addr))->sin_addr.s_addr; if (ia_i.s_addr != f->fw_via_ip.s_addr) continue; + match = 1; + break; } + if (!match) + continue; } /* |