Module Name: src
Committed By: bouyer
Date: Sun Nov 17 19:21:21 UTC 2013
Modified Files:
src/sys/net/npf [netbsd-6-0]: npf_instr.c
src/usr.sbin/npf/npfctl [netbsd-6-0]: npf_ncgen.c
Log Message:
Apply patch, requested by rmind in ticket 986:
usr.sbin/npf/npfctl/npf_ncgen.c patch
sys/net/npf/npf_instr.c patch
fix the byteorder for port range comparison
To generate a diff of this commit:
cvs rdiff -u -r1.9.2.5 -r1.9.2.5.4.1 src/sys/net/npf/npf_instr.c
cvs rdiff -u -r1.7.2.5 -r1.7.2.5.4.1 src/usr.sbin/npf/npfctl/npf_ncgen.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/net/npf/npf_instr.c
diff -u src/sys/net/npf/npf_instr.c:1.9.2.5 src/sys/net/npf/npf_instr.c:1.9.2.5.4.1
--- src/sys/net/npf/npf_instr.c:1.9.2.5 Wed Jul 25 20:45:23 2012
+++ src/sys/net/npf/npf_instr.c Sun Nov 17 19:21:21 2013
@@ -1,4 +1,4 @@
-/* $NetBSD: npf_instr.c,v 1.9.2.5 2012/07/25 20:45:23 jdc Exp $ */
+/* $NetBSD: npf_instr.c,v 1.9.2.5.4.1 2013/11/17 19:21:21 bouyer Exp $ */
/*-
* Copyright (c) 2009-2012 The NetBSD Foundation, Inc.
@@ -34,7 +34,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: npf_instr.c,v 1.9.2.5 2012/07/25 20:45:23 jdc Exp $");
+__KERNEL_RCSID(0, "$NetBSD: npf_instr.c,v 1.9.2.5.4.1 2013/11/17 19:21:21 bouyer Exp $");
#include <sys/param.h>
#include <sys/types.h>
@@ -180,7 +180,7 @@ npf_match_tcp_ports(npf_cache_t *npc, nb
p = sd ? th->th_sport : th->th_dport;
/* Match against the port range. */
- return NPF_PORTRANGE_MATCH(prange, p) ? 0 : -1;
+ return NPF_PORTRANGE_MATCH(prange, ntohs(p)) ? 0 : -1;
}
/*
@@ -202,7 +202,7 @@ npf_match_udp_ports(npf_cache_t *npc, nb
p = sd ? uh->uh_sport : uh->uh_dport;
/* Match against the port range. */
- return NPF_PORTRANGE_MATCH(prange, p) ? 0 : -1;
+ return NPF_PORTRANGE_MATCH(prange, ntohs(p)) ? 0 : -1;
}
/*
Index: src/usr.sbin/npf/npfctl/npf_ncgen.c
diff -u src/usr.sbin/npf/npfctl/npf_ncgen.c:1.7.2.5 src/usr.sbin/npf/npfctl/npf_ncgen.c:1.7.2.5.4.1
--- src/usr.sbin/npf/npfctl/npf_ncgen.c:1.7.2.5 Wed Jul 25 20:45:23 2012
+++ src/usr.sbin/npf/npfctl/npf_ncgen.c Sun Nov 17 19:21:21 2013
@@ -1,4 +1,4 @@
-/* $NetBSD: npf_ncgen.c,v 1.7.2.5 2012/07/25 20:45:23 jdc Exp $ */
+/* $NetBSD: npf_ncgen.c,v 1.7.2.5.4.1 2013/11/17 19:21:21 bouyer Exp $ */
/*-
* Copyright (c) 2009-2012 The NetBSD Foundation, Inc.
@@ -34,7 +34,7 @@
*/
#include <sys/cdefs.h>
-__RCSID("$NetBSD: npf_ncgen.c,v 1.7.2.5 2012/07/25 20:45:23 jdc Exp $");
+__RCSID("$NetBSD: npf_ncgen.c,v 1.7.2.5.4.1 2013/11/17 19:21:21 bouyer Exp $");
#include <stdlib.h>
#include <stddef.h>
@@ -313,7 +313,7 @@ npfctl_gennc_ports(nc_ctx_t *ctx, int op
*nc++ = (opts & NC_MATCH_TCP) ?
NPF_OPCODE_TCP_PORTS : NPF_OPCODE_UDP_PORTS;
*nc++ = (opts & (NC_MATCH_DST | NC_MATCH_SRC)) >> 1;
- *nc++ = ((uint32_t)from << 16) | to;
+ *nc++ = ((uint32_t)ntohs(from) << 16) | ntohs(to);
/* Comparison block (2 words). */
npfctl_ncgen_addjmp(ctx, &nc);