In the future, the kernel will use unicast messages instead of
multicast to send upcalls. As a result, we need to be able to
tell it where to direct the traffic. This adds a function to expose
the Netlink pid of a socket so it can be included in messages to the
kernel.
---
lib/netlink-socket.c | 7 +++++++
lib/netlink-socket.h | 2 ++
2 files changed, 9 insertions(+), 0 deletions(-)
diff --git a/lib/netlink-socket.c b/lib/netlink-socket.c
index 24e6848..979da57 100644
--- a/lib/netlink-socket.c
+++ b/lib/netlink-socket.c
@@ -667,6 +667,13 @@ nl_sock_wait(const struct nl_sock *sock, short int events)
{
poll_fd_wait(sock->fd, events);
}
+
+/* Returns the PID associated with this socket. */
+uint32_t
+nl_sock_pid(const struct nl_sock *sock)
+{
+ return sock->pid;
+}
/* Miscellaneous. */
diff --git a/lib/netlink-socket.h b/lib/netlink-socket.h
index 3ea790c..ff24858 100644
--- a/lib/netlink-socket.h
+++ b/lib/netlink-socket.h
@@ -60,6 +60,8 @@ int nl_sock_drain(struct nl_sock *);
void nl_sock_wait(const struct nl_sock *, short int events);
+uint32_t nl_sock_pid(const struct nl_sock *);
+
/* Table dumping. */
struct nl_dump {
struct nl_sock *sock; /* Socket being dumped. */
--
1.7.4.1
_______________________________________________
dev mailing list
[email protected]
http://openvswitch.org/mailman/listinfo/dev