aboutsummaryrefslogtreecommitdiffstats
path: root/net/atm
diff options
context:
space:
mode:
authorRoopa Prabhu <roopa@cumulusnetworks.com>2017-03-20 01:01:28 -0400
committerDavid S. Miller <davem@davemloft.net>2017-03-22 13:48:49 -0400
commit7b8f7a402d4cfc3a1361a2766066127f9bccadc4 (patch)
treeb44eafb94e7ea3bb32b4bb234746716cc5c535b2 /net/atm
parent7ada7ca562714632d0fc9abb24e27cab67bdbf0d (diff)
neighbour: fix nlmsg_pid in notifications
neigh notifications today carry pid 0 for nlmsg_pid in all cases. This patch fixes it to carry calling process pid when available. Applications (eg. quagga) rely on nlmsg_pid to ignore notifications generated by their own netlink operations. This patch follows the routing subsystem which already sets this correctly. Reported-by: Vivek Venkatraman <vivek@cumulusnetworks.com> Signed-off-by: Roopa Prabhu <roopa@cumulusnetworks.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/atm')
-rw-r--r--net/atm/clip.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/net/atm/clip.c b/net/atm/clip.c
index 53b4ac09e7b7..ec527b62f79d 100644
--- a/net/atm/clip.c
+++ b/net/atm/clip.c
@@ -106,7 +106,7 @@ static void unlink_clip_vcc(struct clip_vcc *clip_vcc)
106 entry->expires = jiffies - 1; 106 entry->expires = jiffies - 1;
107 /* force resolution or expiration */ 107 /* force resolution or expiration */
108 error = neigh_update(entry->neigh, NULL, NUD_NONE, 108 error = neigh_update(entry->neigh, NULL, NUD_NONE,
109 NEIGH_UPDATE_F_ADMIN); 109 NEIGH_UPDATE_F_ADMIN, 0);
110 if (error) 110 if (error)
111 pr_crit("neigh_update failed with %d\n", error); 111 pr_crit("neigh_update failed with %d\n", error);
112 goto out; 112 goto out;
@@ -481,7 +481,7 @@ static int clip_setentry(struct atm_vcc *vcc, __be32 ip)
481 link_vcc(clip_vcc, entry); 481 link_vcc(clip_vcc, entry);
482 } 482 }
483 error = neigh_update(neigh, llc_oui, NUD_PERMANENT, 483 error = neigh_update(neigh, llc_oui, NUD_PERMANENT,
484 NEIGH_UPDATE_F_OVERRIDE | NEIGH_UPDATE_F_ADMIN); 484 NEIGH_UPDATE_F_OVERRIDE | NEIGH_UPDATE_F_ADMIN, 0);
485 neigh_release(neigh); 485 neigh_release(neigh);
486 return error; 486 return error;
487} 487}