git://git.onelab.eu
/
linux-2.6.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
linux 2.6.16.38 w/ vs2.0.3-rc1
[linux-2.6.git]
/
net
/
ipv6
/
netfilter
/
nf_conntrack_reasm.c
diff --git
a/net/ipv6/netfilter/nf_conntrack_reasm.c
b/net/ipv6/netfilter/nf_conntrack_reasm.c
index
3e31903
..
84ef9a1
100644
(file)
--- a/
net/ipv6/netfilter/nf_conntrack_reasm.c
+++ b/
net/ipv6/netfilter/nf_conntrack_reasm.c
@@
-313,8
+313,8
@@
static struct nf_ct_frag6_queue *nf_ct_frag6_intern(unsigned int hash,
#ifdef CONFIG_SMP
hlist_for_each_entry(fq, n, &nf_ct_frag6_hash[hash], list) {
if (fq->id == fq_in->id &&
#ifdef CONFIG_SMP
hlist_for_each_entry(fq, n, &nf_ct_frag6_hash[hash], list) {
if (fq->id == fq_in->id &&
-
ipv6_addr_equal
(&fq_in->saddr, &fq->saddr) &&
-
ipv6_addr_equal
(&fq_in->daddr, &fq->daddr)) {
+
!ipv6_addr_cmp
(&fq_in->saddr, &fq->saddr) &&
+
!ipv6_addr_cmp
(&fq_in->daddr, &fq->daddr)) {
atomic_inc(&fq->refcnt);
write_unlock(&nf_ct_frag6_lock);
fq_in->last_in |= COMPLETE;
atomic_inc(&fq->refcnt);
write_unlock(&nf_ct_frag6_lock);
fq_in->last_in |= COMPLETE;
@@
-376,8
+376,8
@@
fq_find(u32 id, struct in6_addr *src, struct in6_addr *dst)
read_lock(&nf_ct_frag6_lock);
hlist_for_each_entry(fq, n, &nf_ct_frag6_hash[hash], list) {
if (fq->id == id &&
read_lock(&nf_ct_frag6_lock);
hlist_for_each_entry(fq, n, &nf_ct_frag6_hash[hash], list) {
if (fq->id == id &&
-
ipv6_addr_equal
(src, &fq->saddr) &&
-
ipv6_addr_equal
(dst, &fq->daddr)) {
+
!ipv6_addr_cmp
(src, &fq->saddr) &&
+
!ipv6_addr_cmp
(dst, &fq->daddr)) {
atomic_inc(&fq->refcnt);
read_unlock(&nf_ct_frag6_lock);
return fq;
atomic_inc(&fq->refcnt);
read_unlock(&nf_ct_frag6_lock);
return fq;