soreuseport: fix NULL ptr dereference SO_REUSEPORT after bind
authorCraig Gallek <kraig@google.com>
Tue, 19 Jan 2016 19:27:08 +0000 (14:27 -0500)
committerDavid S. Miller <davem@davemloft.net>
Tue, 19 Jan 2016 19:44:23 +0000 (14:44 -0500)
commitb4ace4f1ae07691b4f6ea9f3e92efbec083df058
tree6845c5f7ff2e8994046ac9a41ea5d5ec00fd21ab
parent52a82e23b9f2a9e1d429c5207f8575784290d008
soreuseport: fix NULL ptr dereference SO_REUSEPORT after bind

Marc Dionne discovered a NULL pointer dereference when setting
SO_REUSEPORT on a socket after it is bound.
This patch removes the assumption that at least one socket in the
reuseport group is bound with the SO_REUSEPORT option before other
bind calls occur.

Fixes: e32ea7e74727 ("soreuseport: fast reuseport UDP socket selection")
Reported-by: Marc Dionne <marc.c.dionne@gmail.com>
Signed-off-by: Craig Gallek <kraig@google.com>
Tested-by: Marc Dionne <marc.dionne@auristor.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/net/sock_reuseport.h
net/core/sock_reuseport.c