svn commit: r258477 - head/sys/netpfil/pf
Gleb Smirnoff
glebius at FreeBSD.org
Fri Nov 22 18:57:27 UTC 2013
Author: glebius
Date: Fri Nov 22 18:57:27 2013
New Revision: 258477
URL: http://svnweb.freebsd.org/changeset/base/258477
Log:
Fix off by ones when scanning source nodes hash.
Sponsored by: Nginx, Inc.
Modified:
head/sys/netpfil/pf/pf_ioctl.c
Modified: head/sys/netpfil/pf/pf_ioctl.c
==============================================================================
--- head/sys/netpfil/pf/pf_ioctl.c Fri Nov 22 18:57:22 2013 (r258476)
+++ head/sys/netpfil/pf/pf_ioctl.c Fri Nov 22 18:57:27 2013 (r258477)
@@ -3081,7 +3081,7 @@ DIOCCHANGEADDR_error:
uint32_t i, nr = 0;
if (psn->psn_len == 0) {
- for (i = 0, sh = V_pf_srchash; i < V_pf_srchashmask;
+ for (i = 0, sh = V_pf_srchash; i <= V_pf_srchashmask;
i++, sh++) {
PF_HASHROW_LOCK(sh);
LIST_FOREACH(n, &sh->nodes, entry)
@@ -3093,7 +3093,7 @@ DIOCCHANGEADDR_error:
}
p = pstore = malloc(psn->psn_len, M_TEMP, M_WAITOK);
- for (i = 0, sh = V_pf_srchash; i < V_pf_srchashmask;
+ for (i = 0, sh = V_pf_srchash; i <= V_pf_srchashmask;
i++, sh++) {
PF_HASHROW_LOCK(sh);
LIST_FOREACH(n, &sh->nodes, entry) {
@@ -3385,7 +3385,7 @@ pf_clear_srcnodes(struct pf_src_node *n)
if (n == NULL) {
struct pf_srchash *sh;
- for (i = 0, sh = V_pf_srchash; i < V_pf_srchashmask;
+ for (i = 0, sh = V_pf_srchash; i <= V_pf_srchashmask;
i++, sh++) {
PF_HASHROW_LOCK(sh);
LIST_FOREACH(n, &sh->nodes, entry) {
More information about the svn-src-head
mailing list