[NETFILTER]: SNMP NAT: fix memleak in snmp_object_decode
authorChris Wright <chrisw@sous-sol.org>
Tue, 23 May 2006 22:08:13 +0000 (15:08 -0700)
committerDavid S. Miller <davem@sunset.sfo1.dsl.speakeasy.net>
Tue, 23 May 2006 22:15:13 +0000 (15:15 -0700)
If kmalloc fails, error path leaks data allocated from asn1_oid_decode().

Signed-off-by: Chris Wright <chrisw@sous-sol.org>
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/ipv4/netfilter/ip_nat_snmp_basic.c

index 688a2f2..c332442 100644 (file)
@@ -768,6 +768,7 @@ static unsigned char snmp_object_decode(struct asn1_ctx *ctx,
                        len *= sizeof(unsigned long);
                        *obj = kmalloc(sizeof(struct snmp_object) + len, GFP_ATOMIC);
                        if (*obj == NULL) {
+                               kfree(lp);
                                kfree(id);
                                if (net_ratelimit())
                                        printk("OOM in bsalg (%d)\n", __LINE__);