netlink: Use nl_pid 0 to play nice with others. 42/10942/2
authorJon Loeliger <jdl@netgate.com>
Fri, 2 Mar 2018 19:05:12 +0000 (13:05 -0600)
committerDamjan Marion <dmarion.lists@gmail.com>
Sat, 3 Mar 2018 10:16:39 +0000 (10:16 +0000)
commit258fefd92fc2f451f7f0248c85542b0ee40c7302
tree35fecbbd1994381d0c398b5ae126d160a8d51590
parentdcde92743ee012d105e4fd0863706642d2079e11
netlink: Use nl_pid 0 to play nice with others.

While the netlink field is named nl_pid, and typically
contains a process id, setting it to a pid value directly
prevents other modules from also using a netlink socket.
On the other hand, setting it to 0 allows multiple modules
to use a netlink socket by letting the kernel assign the
nl_pid a value.

This allows the verito tap code to interact nicely with
the router plugin's librtnl after, say, tap-inject has
been enabled.

Change-Id: I9771929f34d15497a5f7b8c5fd78dac28e31383b
Signed-off-by: Jon Loeliger <jdl@netgate.com>
src/vnet/devices/netlink.c