netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH net] l2tp: Correctly return -EBADF from pppol2tp_getname.
@ 2016-07-26 19:14 Phil Turnbull
  2016-07-26 22:19 ` David Miller
  0 siblings, 1 reply; 2+ messages in thread
From: Phil Turnbull @ 2016-07-26 19:14 UTC (permalink / raw)
  To: netdev; +Cc: David S. Miller, James Chapman, Phil Turnbull

If 'tunnel' is NULL we should return -EBADF but the 'end_put_sess' path
unconditionally sets 'error' back to zero. Rework the error path so it
more closely matches pppol2tp_sendmsg.

Fixes: fd558d186df2 ("l2tp: Split pppol2tp patch into separate l2tp and ppp parts")
Signed-off-by: Phil Turnbull <phil.turnbull@oracle.com>
---
 net/l2tp/l2tp_ppp.c | 7 ++-----
 1 file changed, 2 insertions(+), 5 deletions(-)

diff --git a/net/l2tp/l2tp_ppp.c b/net/l2tp/l2tp_ppp.c
index 652c250b9a3b..d9560aa2dba3 100644
--- a/net/l2tp/l2tp_ppp.c
+++ b/net/l2tp/l2tp_ppp.c
@@ -866,10 +866,8 @@ static int pppol2tp_getname(struct socket *sock, struct sockaddr *uaddr,
 
 	pls = l2tp_session_priv(session);
 	tunnel = l2tp_sock_to_tunnel(pls->tunnel_sock);
-	if (tunnel == NULL) {
-		error = -EBADF;
+	if (tunnel == NULL)
 		goto end_put_sess;
-	}
 
 	inet = inet_sk(tunnel->sock);
 	if ((tunnel->version == 2) && (tunnel->sock->sk_family == AF_INET)) {
@@ -947,12 +945,11 @@ static int pppol2tp_getname(struct socket *sock, struct sockaddr *uaddr,
 	}
 
 	*usockaddr_len = len;
+	error = 0;
 
 	sock_put(pls->tunnel_sock);
 end_put_sess:
 	sock_put(sk);
-	error = 0;
-
 end:
 	return error;
 }
-- 
2.9.0.rc2

^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH net] l2tp: Correctly return -EBADF from pppol2tp_getname.
  2016-07-26 19:14 [PATCH net] l2tp: Correctly return -EBADF from pppol2tp_getname Phil Turnbull
@ 2016-07-26 22:19 ` David Miller
  0 siblings, 0 replies; 2+ messages in thread
From: David Miller @ 2016-07-26 22:19 UTC (permalink / raw)
  To: phil.turnbull; +Cc: netdev, jchapman

From: Phil Turnbull <phil.turnbull@oracle.com>
Date: Tue, 26 Jul 2016 15:14:35 -0400

> If 'tunnel' is NULL we should return -EBADF but the 'end_put_sess' path
> unconditionally sets 'error' back to zero. Rework the error path so it
> more closely matches pppol2tp_sendmsg.
> 
> Fixes: fd558d186df2 ("l2tp: Split pppol2tp patch into separate l2tp and ppp parts")
> Signed-off-by: Phil Turnbull <phil.turnbull@oracle.com>

Applied.

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2016-07-26 22:19 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-07-26 19:14 [PATCH net] l2tp: Correctly return -EBADF from pppol2tp_getname Phil Turnbull
2016-07-26 22:19 ` David Miller

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).