diff options
| author | David S. Miller <davem@davemloft.net> | 2016-11-30 22:14:09 +0300 |
|---|---|---|
| committer | David S. Miller <davem@davemloft.net> | 2016-11-30 22:14:09 +0300 |
| commit | 7752f72748db3ce9312e2171f80cbbb42bf4dde6 (patch) | |
| tree | 9546bf8fd1837769d8ff63d13acac5a1f57e5a9a /include | |
| parent | bb83d62fa83405d7c325873a317c9374f98eedef (diff) | |
| parent | 31e2f21fb35bfaa5bdbe1a4860dc99e6b10d8dcd (diff) | |
| download | linux-7752f72748db3ce9312e2171f80cbbb42bf4dde6.tar.xz | |
Merge branch 'l2tp-fixes'
Guillaume Nault says:
====================
l2tp: fixes for l2tp_ip and l2tp_ip6 socket handling
This series addresses problems found while working on commit 32c231164b76
("l2tp: fix racy SOCK_ZAPPED flag check in l2tp_ip{,6}_bind()").
The first three patches fix races in socket's connect, recv and bind
operations. The last two ones fix scenarios where l2tp fails to
correctly lookup its userspace sockets.
Apart from the last patch, which is l2tp_ip6 specific, every patch
fixes the same problem in the L2TP IPv4 and IPv6 code.
All problems fixed by this series exist since the creation of the
l2tp_ip and l2tp_ip6 modules.
Changes since v1:
* Patch #3: fix possible uninitialised use of 'ret' in l2tp_ip_bind().
====================
Acked-by: James Chapman <jchapman@katalix.com>
Diffstat (limited to 'include')
| -rw-r--r-- | include/net/ipv6.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/include/net/ipv6.h b/include/net/ipv6.h index 8fed1cd78658..f11ca837361b 100644 --- a/include/net/ipv6.h +++ b/include/net/ipv6.h @@ -970,6 +970,8 @@ int compat_ipv6_setsockopt(struct sock *sk, int level, int optname, int compat_ipv6_getsockopt(struct sock *sk, int level, int optname, char __user *optval, int __user *optlen); +int __ip6_datagram_connect(struct sock *sk, struct sockaddr *addr, + int addr_len); int ip6_datagram_connect(struct sock *sk, struct sockaddr *addr, int addr_len); int ip6_datagram_connect_v6_only(struct sock *sk, struct sockaddr *addr, int addr_len); |
