summaryrefslogtreecommitdiff
path: root/net/llc
diff options
context:
space:
mode:
authorSorin Dumitru <sdumitru@ixiacom.com>2012-08-06 06:35:58 +0400
committerDavid S. Miller <davem@davemloft.net>2012-08-07 00:30:01 +0400
commit91d27a8650d5359a7a320daeb35b88cdea15e3a8 (patch)
tree5449b227bd8607d9faec4ae70dba20bc063560bc /net/llc
parent8b82f7c3c90fa67fd6d5be1deb3cec0e17cc32d9 (diff)
downloadlinux-91d27a8650d5359a7a320daeb35b88cdea15e3a8.tar.xz
llc: free the right skb
We are freeing skb instead of nskb, resulting in a double free on skb and a leak from nskb. Signed-off-by: Sorin Dumitru <sdumitru@ixiacom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/llc')
-rw-r--r--net/llc/llc_station.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/net/llc/llc_station.c b/net/llc/llc_station.c
index 39a8d8924b9c..6828e39ec2ec 100644
--- a/net/llc/llc_station.c
+++ b/net/llc/llc_station.c
@@ -268,7 +268,7 @@ static int llc_station_ac_send_null_dsap_xid_c(struct sk_buff *skb)
out:
return rc;
free:
- kfree_skb(skb);
+ kfree_skb(nskb);
goto out;
}
@@ -293,7 +293,7 @@ static int llc_station_ac_send_xid_r(struct sk_buff *skb)
out:
return rc;
free:
- kfree_skb(skb);
+ kfree_skb(nskb);
goto out;
}
@@ -322,7 +322,7 @@ static int llc_station_ac_send_test_r(struct sk_buff *skb)
out:
return rc;
free:
- kfree_skb(skb);
+ kfree_skb(nskb);
goto out;
}