From 4adb0f59b5a8a5c207a84f1dd11ea084f93e8cfe Mon Sep 17 00:00:00 2001 From: Tom Parkin Date: Thu, 31 Jan 2013 23:43:02 +0000 Subject: [PATCH] --- yaml --- r: 352079 b: refs/heads/master c: cbb95e0ca92869cc94a1c5e5ac58395afbbda26e h: refs/heads/master i: 352077: 9ec17e91525504bd8e06e9fbb2c5444f40d5336e 352075: f9a3a653f3c6c9abea1a91b01963a1ca1e067b03 352071: 6dc021926f65520069a17409ad981c70d9641465 352063: b5052edcf338ab62417204c054aad3f699cc71e1 v: v3 --- [refs] | 2 +- trunk/net/l2tp/l2tp_core.c | 11 +++++++++-- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/[refs] b/[refs] index 0974db7ce2f4..054328765fb6 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: b6fdfdfab0c57d4a62359277c09258bc2f5a1550 +refs/heads/master: cbb95e0ca92869cc94a1c5e5ac58395afbbda26e diff --git a/trunk/net/l2tp/l2tp_core.c b/trunk/net/l2tp/l2tp_core.c index 73988c070561..60a498a459dd 100644 --- a/trunk/net/l2tp/l2tp_core.c +++ b/trunk/net/l2tp/l2tp_core.c @@ -1593,11 +1593,18 @@ int l2tp_tunnel_create(struct net *net, int fd, int version, u32 tunnel_id, u32 if (err < 0) goto err; } else { - err = -EBADF; sock = sockfd_lookup(fd, &err); if (!sock) { - pr_err("tunl %hu: sockfd_lookup(fd=%d) returned %d\n", + pr_err("tunl %u: sockfd_lookup(fd=%d) returned %d\n", tunnel_id, fd, err); + err = -EBADF; + goto err; + } + + /* Reject namespace mismatches */ + if (!net_eq(sock_net(sock->sk), net)) { + pr_err("tunl %u: netns mismatch\n", tunnel_id); + err = -EINVAL; goto err; } }