Catalli's threaded switch
[sliver-openvswitch.git] / vswitchd / proc-net-compat.c
index 68ae1ac..6a8f875 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (c) 2009 Nicira Networks
+/* Copyright (c) 2009, 2010 Nicira Networks
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -15,6 +15,8 @@
 
 #include <config.h>
 #include "proc-net-compat.h"
+
+#ifdef HAVE_NETLINK
 #include <assert.h>
 #include <dirent.h>
 #include <errno.h>
 #include "hmap.h"
 #include "shash.h"
 #include "svec.h"
-
-#define THIS_MODULE VLM_proc_net_compat
 #include "vlog.h"
 
+VLOG_DEFINE_THIS_MODULE(proc_net_compat)
+
 /* Netlink socket to bridge compatibility kernel module. */
 static struct nl_sock *brc_sock;
 
@@ -70,11 +72,11 @@ proc_net_compat_init(void)
 static int
 set_proc_file(const char *dir, const char *file, const char *data)
 {
-    struct ofpbuf request, *reply;
+    struct ofpbuf request;
     int retval;
 
     ofpbuf_init(&request, 0);
-    nl_msg_put_genlmsghdr(&request, brc_sock, 1024, brc_family, NLM_F_REQUEST,
+    nl_msg_put_genlmsghdr(&request, 1024, brc_family, NLM_F_REQUEST,
                           BRC_GENL_C_SET_PROC, 1);
     nl_msg_put_string(&request, BRC_GENL_A_PROC_DIR, dir);
     nl_msg_put_string(&request, BRC_GENL_A_PROC_NAME, file);
@@ -82,9 +84,8 @@ set_proc_file(const char *dir, const char *file, const char *data)
         nl_msg_put_string(&request, BRC_GENL_A_PROC_DATA, data);
     }
 
-    retval = nl_sock_transact(brc_sock, &request, &reply);
+    retval = nl_sock_transact(brc_sock, &request, NULL);
     ofpbuf_uninit(&request);
-    ofpbuf_delete(reply);
     if (retval) {
         VLOG_WARN_RL(&rl, "failed to %s /proc/%s/%s (%s)",
                      data ? "update" : "remove", dir, file, strerror(retval));
@@ -346,3 +347,25 @@ update_vlan_config(void)
     set_proc_file("net/vlan", "config", ds_cstr(&ds));
     ds_destroy(&ds);
 }
+#else  /* !HAVE_NETLINK */
+#include "compiler.h"
+
+int
+proc_net_compat_init(void)
+{
+    return 0;
+}
+
+void
+proc_net_compat_update_bond(const char *name OVS_UNUSED,
+                            const struct compat_bond *bond OVS_UNUSED)
+{
+}
+
+void
+proc_net_compat_update_vlan(const char *tagged_dev OVS_UNUSED,
+                            const char *trunk_dev OVS_UNUSED,
+                            int vid OVS_UNUSED)
+{
+}
+#endif  /* !HAVE_NETLINK */