diff options
author | Patrick McHardy <kaber@trash.net> | 2006-03-20 22:40:54 -0800 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2006-03-20 22:40:54 -0800 |
commit | be33690d8fcf40377f16193c463681170eb6b295 (patch) | |
tree | 08c7be2ba1d046fca40bbb1d3ddac789b393ecc9 /include/linux/socket.h | |
parent | 15d99e02babae8bc20b836917ace07d93e318149 (diff) | |
download | blackbird-op-linux-be33690d8fcf40377f16193c463681170eb6b295.tar.gz blackbird-op-linux-be33690d8fcf40377f16193c463681170eb6b295.zip |
[XFRM]: Fix aevent related crash
When xfrm_user isn't loaded xfrm_nl is NULL, which makes IPsec crash because
xfrm_aevent_is_on passes the NULL pointer to netlink_has_listeners as socket.
A second problem is that the xfrm_nl pointer is not cleared when the socket
is releases at module unload time.
Protect references of xfrm_nl from outside of xfrm_user by RCU, check
that the socket is present in xfrm_aevent_is_on and set it to NULL
when unloading xfrm_user.
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/linux/socket.h')
0 files changed, 0 insertions, 0 deletions