]> git.baikalelectronics.ru Git - kernel.git/commit
ping: implement proper locking
authorEric Dumazet <edumazet@google.com>
Sat, 25 Mar 2017 02:36:13 +0000 (19:36 -0700)
committerDavid S. Miller <davem@davemloft.net>
Sat, 25 Mar 2017 03:50:28 +0000 (20:50 -0700)
commit4919632e6f303b0b60721f8e7d5874fffb38f03f
tree5dd5811104b27efe5ac19bb1aabea5e137fbb276
parent042a8dda38a9f537fa0dde175f7daeb3c2a0ba3b
ping: implement proper locking

We got a report of yet another bug in ping

http://www.openwall.com/lists/oss-security/2017/03/24/6

->disconnect() is not called with socket lock held.

Fix this by acquiring ping rwlock earlier.

Thanks to Daniel, Alexander and Andrey for letting us know this problem.

Fixes: cfce3383c7be ("net: ipv4: add IPPROTO_ICMP socket kind")
Signed-off-by: Eric Dumazet <edumazet@google.com>
Reported-by: Daniel Jiang <danieljiang0415@gmail.com>
Reported-by: Solar Designer <solar@openwall.com>
Reported-by: Andrey Konovalov <andreyknvl@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/ipv4/ping.c