[NETLINK]: Fix missing dst_groups initializations in netlink_broadcast users
netlink_broadcast users must initialize NETLINK_CB(skb).dst_groups to the destination group mask for netlink_recvmsg. Signed-off-by: Patrick McHardy <kaber@trash.net> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
committed by
David S. Miller
parent
ad93e266a1
commit
43e943c32b
@@ -1152,6 +1152,8 @@ static int xfrm_notify_sa_flush(struct km_event *c)
|
||||
|
||||
nlh->nlmsg_len = skb->tail - b;
|
||||
|
||||
NETLINK_CB(skb).dst_groups = XFRMGRP_SA;
|
||||
|
||||
return netlink_broadcast(xfrm_nl, skb, 0, XFRMGRP_SA, GFP_ATOMIC);
|
||||
|
||||
nlmsg_failure:
|
||||
@@ -1226,6 +1228,8 @@ static int xfrm_notify_sa(struct xfrm_state *x, struct km_event *c)
|
||||
|
||||
nlh->nlmsg_len = skb->tail - b;
|
||||
|
||||
NETLINK_CB(skb).dst_groups = XFRMGRP_SA;
|
||||
|
||||
return netlink_broadcast(xfrm_nl, skb, 0, XFRMGRP_SA, GFP_ATOMIC);
|
||||
|
||||
nlmsg_failure:
|
||||
@@ -1455,6 +1459,8 @@ static int xfrm_notify_policy(struct xfrm_policy *xp, int dir, struct km_event *
|
||||
|
||||
nlh->nlmsg_len = skb->tail - b;
|
||||
|
||||
NETLINK_CB(skb).dst_groups = XFRMGRP_POLICY;
|
||||
|
||||
return netlink_broadcast(xfrm_nl, skb, 0, XFRMGRP_POLICY, GFP_ATOMIC);
|
||||
|
||||
nlmsg_failure:
|
||||
@@ -1480,6 +1486,8 @@ static int xfrm_notify_policy_flush(struct km_event *c)
|
||||
|
||||
nlh->nlmsg_len = skb->tail - b;
|
||||
|
||||
NETLINK_CB(skb).dst_groups = XFRMGRP_POLICY;
|
||||
|
||||
return netlink_broadcast(xfrm_nl, skb, 0, XFRMGRP_POLICY, GFP_ATOMIC);
|
||||
|
||||
nlmsg_failure:
|
||||
|
Reference in New Issue
Block a user