Commit 80bb3a00fa314e3c5dbbd23a38bfaf94f2402b99

Authored by David S. Miller

Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/kaber/nf-2.6

Showing 4 changed files Side-by-side Diff

include/linux/netfilter_ipv6.h
... ... @@ -59,6 +59,7 @@
59 59 enum nf_ip6_hook_priorities {
60 60 NF_IP6_PRI_FIRST = INT_MIN,
61 61 NF_IP6_PRI_CONNTRACK_DEFRAG = -400,
  62 + NF_IP6_PRI_RAW = -300,
62 63 NF_IP6_PRI_SELINUX_FIRST = -225,
63 64 NF_IP6_PRI_CONNTRACK = -200,
64 65 NF_IP6_PRI_MANGLE = -150,
net/ipv6/netfilter/ip6table_raw.c
... ... @@ -13,7 +13,7 @@
13 13 .valid_hooks = RAW_VALID_HOOKS,
14 14 .me = THIS_MODULE,
15 15 .af = NFPROTO_IPV6,
16   - .priority = NF_IP6_PRI_FIRST,
  16 + .priority = NF_IP6_PRI_RAW,
17 17 };
18 18  
19 19 /* The work comes in here from netfilter.c. */
net/netfilter/xt_hashlimit.c
... ... @@ -493,6 +493,7 @@
493 493 case 64 ... 95:
494 494 i[2] = maskl(i[2], p - 64);
495 495 i[3] = 0;
  496 + break;
496 497 case 96 ... 127:
497 498 i[3] = maskl(i[3], p - 96);
498 499 break;
... ... @@ -879,7 +880,8 @@
879 880 struct xt_hashlimit_htable *htable = s->private;
880 881 unsigned int *bucket = (unsigned int *)v;
881 882  
882   - kfree(bucket);
  883 + if (!IS_ERR(bucket))
  884 + kfree(bucket);
883 885 spin_unlock_bh(&htable->lock);
884 886 }
885 887  
net/netfilter/xt_recent.c
... ... @@ -267,7 +267,7 @@
267 267 for (i = 0; i < e->nstamps; i++) {
268 268 if (info->seconds && time_after(time, e->stamps[i]))
269 269 continue;
270   - if (info->hit_count && ++hits >= info->hit_count) {
  270 + if (!info->hit_count || ++hits >= info->hit_count) {
271 271 ret = !ret;
272 272 break;
273 273 }