diff options
author | Guillaume Nault <g.nault@alphalink.fr> | 2016-02-15 17:01:10 +0100 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2016-03-03 15:07:07 -0800 |
commit | 26fd5ed6e8ad66c86eb720cf85d1230c9b45a5f9 (patch) | |
tree | 267786f9d04a434991117dfcc2f96fde8728d94e /drivers/net/ppp | |
parent | e9f13d3fa0781ae13051fa644f715d3556244ac7 (diff) |
pppoe: fix reference counting in PPPoE proxy
[ Upstream commit 29e73269aa4d36f92b35610c25f8b01c789b0dc8 ]
Drop reference on the relay_po socket when __pppoe_xmit() succeeds.
This is already handled correctly in the error path.
Signed-off-by: Guillaume Nault <g.nault@alphalink.fr>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/net/ppp')
-rw-r--r-- | drivers/net/ppp/pppoe.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/net/ppp/pppoe.c b/drivers/net/ppp/pppoe.c index 0a37f840fcc5..4e0068e775f9 100644 --- a/drivers/net/ppp/pppoe.c +++ b/drivers/net/ppp/pppoe.c @@ -395,6 +395,8 @@ static int pppoe_rcv_core(struct sock *sk, struct sk_buff *skb) if (!__pppoe_xmit(sk_pppox(relay_po), skb)) goto abort_put; + + sock_put(sk_pppox(relay_po)); } else { if (sock_queue_rcv_skb(sk, skb)) goto abort_kfree; |