Skip to contentSkip to conversation

fix the number of bytes cleaned by clean_nat() in net/ipv4/netfilter/nf_nat_core.c

PATCH In review Roel Kluin 2 participants 2 messages Nov 6, 2007

Subsystems (2)
lore
Share & tools
lore

Roel Kluin

author
#0 lore raw

PATCH 1/1 fix the number of bytes cleaned by clean_nat() in net/ipv4/netfilter/nf_nat_core.c

Zero out 'sizeof(*nat)' rather than 'sizeof(nat)' bytes of the struct nf_conn_nat pointer 'nat'

---

net/ipv4/netfilter/nf_nat_core.c +1 -1
index 56e93f6..70e7997 100644
@@ -681,7 +681,7 @@ static int clean_nat(struct nf_conn *i, void *data)
 
 	if (!nat)
 		return 0;
-	memset(nat, 0, sizeof(nat));
+	memset(nat, 0, sizeof(*nat));
 	i->status &= ~(IPS_NAT_MASK | IPS_NAT_DONE_MASK | IPS_SEQ_ADJUST);
 	return 0;
 }
#1 lore raw
Quoted 9 lines · Roel Kluin

Zero out 'sizeof(*nat)' rather than 'sizeof(nat)' bytes of the struct nf_conn_nat pointer 'nat'

---

net/ipv4/netfilter/nf_nat_core.c +0 -0
index 56e93f6..70e7997 100644

net/ipv4/netfilter/nf_nat_core.c static int clean_nat(struct nf_conn *i, void *data) · line 687

Quoted 8 lines
net/ipv4/netfilter/nf_nat_core.c +1 -1
@@ -681,7 +681,7 @@ static int clean_nat(struct nf_conn *i, void *data)
 
 	if (!nat)
 		return 0;
-	memset(nat, 0, sizeof(nat));
+	memset(nat, 0, sizeof(*nat));
 	i->status &= ~(IPS_NAT_MASK | IPS_NAT_DONE_MASK | IPS_SEQ_ADJUST);
 	return 0;
 }

I already have the same patch queued from Li Zefan. Good catch anyway :)