cfm: Cleanup output of ovs-appctl "cfm/show" command.
[openvswitch] / lib / netlink-socket.h
index dc21ce83804965d73236f2c2fa3429bad4906bc1..d789f4123b27a87d518e3f82f794c6405a75eaa2 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, 2009, 2010 Nicira Networks.
+ * Copyright (c) 2008, 2009, 2010, 2011 Nicira Networks.
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -35,7 +35,6 @@
 #include <stdbool.h>
 #include <stddef.h>
 #include <stdint.h>
-#include <sys/uio.h>
 
 struct ofpbuf;
 struct nl_sock;
@@ -45,19 +44,24 @@ struct nl_sock;
 #endif
 
 /* Netlink sockets. */
-int nl_sock_create(int protocol, int multicast_group,
-                   size_t so_sndbuf, size_t so_rcvbuf,
-                   struct nl_sock **);
+int nl_sock_create(int protocol, struct nl_sock **);
+int nl_sock_clone(const struct nl_sock *, struct nl_sock **);
 void nl_sock_destroy(struct nl_sock *);
 
+int nl_sock_join_mcgroup(struct nl_sock *, unsigned int multicast_group);
+int nl_sock_leave_mcgroup(struct nl_sock *, unsigned int multicast_group);
+
 int nl_sock_send(struct nl_sock *, const struct ofpbuf *, bool wait);
-int nl_sock_sendv(struct nl_sock *sock, const struct iovec iov[], size_t n_iov,
-                  bool wait);
 int nl_sock_recv(struct nl_sock *, struct ofpbuf **, bool wait);
 int nl_sock_transact(struct nl_sock *, const struct ofpbuf *request,
                      struct ofpbuf **reply);
 
+int nl_sock_drain(struct nl_sock *);
+
 void nl_sock_wait(const struct nl_sock *, short int events);
+short int nl_sock_woke(const struct nl_sock *);
+
+uint32_t nl_sock_pid(const struct nl_sock *);
 
 /* Table dumping. */
 struct nl_dump {
@@ -74,5 +78,8 @@ int nl_dump_done(struct nl_dump *);
 
 /* Miscellaneous */
 int nl_lookup_genl_family(const char *name, int *number);
+int nl_lookup_genl_mcgroup(const char *family_name, const char *group_name,
+                           unsigned int *multicast_group,
+                           unsigned int fallback);
 
 #endif /* netlink-socket.h */