summaryrefslogtreecommitdiffstats
path: root/sys/netinet/libalias
diff options
context:
space:
mode:
authorru <ru@FreeBSD.org>2000-06-27 14:56:07 +0000
committerru <ru@FreeBSD.org>2000-06-27 14:56:07 +0000
commit268f00dee922fa5e6dbb3902bc1d4722d43c6a9d (patch)
tree370d83df883e12fa6b38c5195195a6ff1e6b0d9c /sys/netinet/libalias
parent1a9ea82414ca7062e2e6d53d41a3b7e8dfac3185 (diff)
downloadFreeBSD-src-268f00dee922fa5e6dbb3902bc1d4722d43c6a9d.zip
FreeBSD-src-268f00dee922fa5e6dbb3902bc1d4722d43c6a9d.tar.gz
Fixed PunchFWHole():
- ipfw always rejected rule with `neither in nor out' diagnostics. - number of src/dst ports was not set properly.
Diffstat (limited to 'sys/netinet/libalias')
-rw-r--r--sys/netinet/libalias/alias_db.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/sys/netinet/libalias/alias_db.c b/sys/netinet/libalias/alias_db.c
index 7fb3b28..f8baa71 100644
--- a/sys/netinet/libalias/alias_db.c
+++ b/sys/netinet/libalias/alias_db.c
@@ -2535,8 +2535,9 @@ PunchFWHole(struct alias_link *link) {
/* Build generic part of the two rules */
rule.fw_number = fwhole;
- rule.fw_nports = 1; /* Number of source ports; dest ports follow */
- rule.fw_flg = IP_FW_F_ACCEPT;
+ IP_FW_SETNSRCP(&rule, 1); /* Number of source ports. */
+ IP_FW_SETNDSTP(&rule, 1); /* Number of destination ports. */
+ rule.fw_flg = IP_FW_F_ACCEPT | IP_FW_F_IN | IP_FW_F_OUT;
rule.fw_prot = IPPROTO_TCP;
rule.fw_smsk.s_addr = INADDR_BROADCAST;
rule.fw_dmsk.s_addr = INADDR_BROADCAST;
OpenPOWER on IntegriCloud