[ovs-dev] [sparse 06/18] Consistently write null pointer constants as NULL instead of 0.

Ben Pfaff blp at nicira.com
Fri May 6 20:16:19 UTC 2011


Found with sparse.
---
 lib/daemon.h                        |   12 ++++----
 lib/leak-checker.h                  |    6 ++--
 lib/rtnetlink.c                     |    2 +-
 lib/stream-ssl.h                    |   10 +++---
 lib/table.h                         |   12 ++++----
 lib/vlog.h                          |    4 +-
 ovsdb/log.c                         |    6 ++--
 ovsdb/ovsdb-client.c                |   10 +++---
 ovsdb/ovsdb-server.c                |   22 +++++++-------
 ovsdb/ovsdb-tool.c                  |   10 +++---
 ovsdb/ovsdb.c                       |    2 +-
 ovsdb/table.c                       |    2 +-
 tests/test-jsonrpc.c                |    8 ++--
 tests/test-lockfile.c               |    4 +-
 tests/test-ovsdb.c                  |    8 ++--
 utilities/ovs-appctl.c              |    4 +-
 utilities/ovs-controller.c          |   28 +++++++++---------
 utilities/ovs-dpctl.c               |   10 +++---
 utilities/ovs-ofctl.c               |   14 ++++----
 utilities/ovs-openflowd.c           |   54 +++++++++++++++++-----------------
 utilities/ovs-vlan-bug-workaround.c |    2 +-
 utilities/ovs-vsctl.c               |   26 ++++++++--------
 vswitchd/ovs-brcompatd.c            |   10 +++---
 vswitchd/ovs-vswitchd.c             |   14 ++++----
 24 files changed, 140 insertions(+), 140 deletions(-)

diff --git a/lib/daemon.h b/lib/daemon.h
index 4af98f6..eb38d5d 100644
--- a/lib/daemon.h
+++ b/lib/daemon.h
@@ -28,12 +28,12 @@
     OPT_PIDFILE,                                \
     OPT_MONITOR
 
-#define DAEMON_LONG_OPTIONS                                          \
-        {"detach",            no_argument, 0, OPT_DETACH},           \
-        {"no-chdir",          no_argument, 0, OPT_NO_CHDIR},         \
-        {"pidfile",           optional_argument, 0, OPT_PIDFILE},    \
-        {"overwrite-pidfile", no_argument, 0, OPT_OVERWRITE_PIDFILE},\
-        {"monitor",           no_argument, 0, OPT_MONITOR}
+#define DAEMON_LONG_OPTIONS                                             \
+        {"detach",            no_argument, NULL, OPT_DETACH},           \
+        {"no-chdir",          no_argument, NULL, OPT_NO_CHDIR},         \
+        {"pidfile",           optional_argument, NULL, OPT_PIDFILE},    \
+        {"overwrite-pidfile", no_argument, NULL, OPT_OVERWRITE_PIDFILE}, \
+        {"monitor",           no_argument, NULL, OPT_MONITOR}
 
 #define DAEMON_OPTION_HANDLERS                  \
         case OPT_DETACH:                        \
diff --git a/lib/leak-checker.h b/lib/leak-checker.h
index 8d7624d..f6ee5c1 100644
--- a/lib/leak-checker.h
+++ b/lib/leak-checker.h
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, 2009 Nicira Networks.
+ * Copyright (c) 2008, 2009, 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.
@@ -23,8 +23,8 @@
     OPT_CHECK_LEAKS,                            \
     OPT_LEAK_LIMIT
 #define LEAK_CHECKER_LONG_OPTIONS                           \
-    {"check-leaks", required_argument, 0, OPT_CHECK_LEAKS}, \
-    {"leak-limit", required_argument, 0, OPT_LEAK_LIMIT}
+    {"check-leaks", required_argument, NULL, OPT_CHECK_LEAKS}, \
+    {"leak-limit", required_argument, NULL, OPT_LEAK_LIMIT}
 #define LEAK_CHECKER_OPTION_HANDLERS                \
         case OPT_CHECK_LEAKS:                       \
             leak_checker_start(optarg);             \
diff --git a/lib/rtnetlink.c b/lib/rtnetlink.c
index 6ed85ab..d15669a 100644
--- a/lib/rtnetlink.c
+++ b/lib/rtnetlink.c
@@ -55,7 +55,7 @@ rtnetlink_create(int multicast_group, rtnetlink_parse_func *parse,
     struct rtnetlink *rtn;
 
     rtn                  = xzalloc(sizeof *rtn);
-    rtn->notify_sock     = 0;
+    rtn->notify_sock     = NULL;
     rtn->multicast_group = multicast_group;
     rtn->parse           = parse;
     rtn->change          = change;
diff --git a/lib/stream-ssl.h b/lib/stream-ssl.h
index 6bea577..3e2d7f1 100644
--- a/lib/stream-ssl.h
+++ b/lib/stream-ssl.h
@@ -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.
@@ -36,10 +36,10 @@ void stream_ssl_set_peer_ca_cert_file(const char *file_name);
  * Note that the definition includes a final comma, and therefore a comma
  * must not be supplied when using the definition.  This is done so that
  * compilation succeeds whether or not HAVE_OPENSSL is defined. */
-#define STREAM_SSL_LONG_OPTIONS                      \
-        {"private-key", required_argument, 0, 'p'}, \
-        {"certificate", required_argument, 0, 'c'}, \
-        {"ca-cert",     required_argument, 0, 'C'},
+#define STREAM_SSL_LONG_OPTIONS                         \
+        {"private-key", required_argument, NULL, 'p'},  \
+        {"certificate", required_argument, NULL, 'c'},  \
+        {"ca-cert",     required_argument, NULL, 'C'},
 
 #define STREAM_SSL_OPTION_HANDLERS                      \
         case 'p':                                       \
diff --git a/lib/table.h b/lib/table.h
index e35fefa..146d4df 100644
--- a/lib/table.h
+++ b/lib/table.h
@@ -85,12 +85,12 @@ struct table_style {
     OPT_PRETTY,                                 \
     OPT_BARE
 
-#define TABLE_LONG_OPTIONS                                  \
-        {"format", required_argument, 0, 'f'},              \
-        {"data", required_argument, 0, 'd'},                \
-        {"no-headings", no_argument, 0, OPT_NO_HEADINGS},   \
-        {"pretty", no_argument, 0, OPT_PRETTY},             \
-        {"bare", no_argument, 0, OPT_BARE}
+#define TABLE_LONG_OPTIONS                                      \
+        {"format", required_argument, NULL, 'f'},               \
+        {"data", required_argument, NULL, 'd'},                 \
+        {"no-headings", no_argument, NULL, OPT_NO_HEADINGS},    \
+        {"pretty", no_argument, NULL, OPT_PRETTY},              \
+        {"bare", no_argument, NULL, OPT_BARE}
 
 #define TABLE_OPTION_HANDLERS(STYLE)                \
         case 'f':                                   \
diff --git a/lib/vlog.h b/lib/vlog.h
index bbc00ad..12844c6 100644
--- a/lib/vlog.h
+++ b/lib/vlog.h
@@ -222,8 +222,8 @@ void vlog_rate_limit(const struct vlog_module *, enum vlog_level,
 /* Command line processing. */
 #define VLOG_OPTION_ENUMS OPT_LOG_FILE
 #define VLOG_LONG_OPTIONS                                   \
-        {"verbose",     optional_argument, 0, 'v'},         \
-        {"log-file",    optional_argument, 0, OPT_LOG_FILE}
+        {"verbose",     optional_argument, NULL, 'v'},         \
+        {"log-file",    optional_argument, NULL, OPT_LOG_FILE}
 #define VLOG_OPTION_HANDLERS                    \
         case 'v':                               \
             vlog_set_verbosity(optarg);         \
diff --git a/ovsdb/log.c b/ovsdb/log.c
index 6704307..f0926c0 100644
--- a/ovsdb/log.c
+++ b/ovsdb/log.c
@@ -289,7 +289,7 @@ ovsdb_log_read(struct ovsdb_log *file, struct json **jsonp)
     file->prev_offset = file->offset;
     file->offset = data_offset + data_length;
     *jsonp = json;
-    return 0;
+    return NULL;
 
 error:
     file->read_error = ovsdb_error_clone(error);
@@ -372,7 +372,7 @@ ovsdb_log_write(struct ovsdb_log *file, struct json *json)
 
     file->offset += strlen(header) + length;
     free(json_string);
-    return 0;
+    return NULL;
 
 error:
     file->write_error = ovsdb_error_clone(error);
@@ -386,7 +386,7 @@ ovsdb_log_commit(struct ovsdb_log *file)
     if (fsync(fileno(file->stream))) {
         return ovsdb_io_error(errno, "%s: fsync failed", file->name);
     }
-    return 0;
+    return NULL;
 }
 
 /* Returns the current offset into the file backing 'log', in bytes.  This
diff --git a/ovsdb/ovsdb-client.c b/ovsdb/ovsdb-client.c
index a66b013..593e6f6 100644
--- a/ovsdb/ovsdb-client.c
+++ b/ovsdb/ovsdb-client.c
@@ -74,16 +74,16 @@ parse_options(int argc, char *argv[])
         TABLE_OPTION_ENUMS
     };
     static struct option long_options[] = {
-        {"verbose", optional_argument, 0, 'v'},
-        {"help", no_argument, 0, 'h'},
-        {"version", no_argument, 0, 'V'},
+        {"verbose", optional_argument, NULL, 'v'},
+        {"help", no_argument, NULL, 'h'},
+        {"version", no_argument, NULL, 'V'},
         DAEMON_LONG_OPTIONS,
 #ifdef HAVE_OPENSSL
-        {"bootstrap-ca-cert", required_argument, 0, OPT_BOOTSTRAP_CA_CERT},
+        {"bootstrap-ca-cert", required_argument, NULL, OPT_BOOTSTRAP_CA_CERT},
         TABLE_LONG_OPTIONS,
         STREAM_SSL_LONG_OPTIONS
 #endif
-        {0, 0, 0, 0},
+        {NULL, 0, NULL, 0},
     };
     char *short_options = long_options_to_short_options(long_options);
 
diff --git a/ovsdb/ovsdb-server.c b/ovsdb/ovsdb-server.c
index c9b0fdd..24bd630 100644
--- a/ovsdb/ovsdb-server.c
+++ b/ovsdb/ovsdb-server.c
@@ -346,7 +346,7 @@ read_string_column(const struct ovsdb_row *row, const char *column_name,
     const union ovsdb_atom *atom;
 
     atom = read_column(row, column_name, OVSDB_TYPE_STRING);
-    *stringp = atom ? atom->string : 0;
+    *stringp = atom ? atom->string : NULL;
     return atom != NULL;
 }
 
@@ -663,21 +663,21 @@ parse_options(int argc, char *argv[], char **file_namep,
         DAEMON_OPTION_ENUMS
     };
     static struct option long_options[] = {
-        {"remote",      required_argument, 0, OPT_REMOTE},
-        {"unixctl",     required_argument, 0, OPT_UNIXCTL},
-        {"run",         required_argument, 0, OPT_RUN},
-        {"help",        no_argument, 0, 'h'},
-        {"version",     no_argument, 0, 'V'},
+        {"remote",      required_argument, NULL, OPT_REMOTE},
+        {"unixctl",     required_argument, NULL, OPT_UNIXCTL},
+        {"run",         required_argument, NULL, OPT_RUN},
+        {"help",        no_argument, NULL, 'h'},
+        {"version",     no_argument, NULL, 'V'},
         DAEMON_LONG_OPTIONS,
         VLOG_LONG_OPTIONS,
         LEAK_CHECKER_LONG_OPTIONS,
 #ifdef HAVE_OPENSSL
-        {"bootstrap-ca-cert", required_argument, 0, OPT_BOOTSTRAP_CA_CERT},
-        {"private-key", required_argument, 0, 'p'},
-        {"certificate", required_argument, 0, 'c'},
-        {"ca-cert",     required_argument, 0, 'C'},
+        {"bootstrap-ca-cert", required_argument, NULL, OPT_BOOTSTRAP_CA_CERT},
+        {"private-key", required_argument, NULL, 'p'},
+        {"certificate", required_argument, NULL, 'c'},
+        {"ca-cert",     required_argument, NULL, 'C'},
 #endif
-        {0, 0, 0, 0},
+        {NULL, 0, NULL, 0},
     };
     char *short_options = long_options_to_short_options(long_options);
 
diff --git a/ovsdb/ovsdb-tool.c b/ovsdb/ovsdb-tool.c
index 2754909..07d2729 100644
--- a/ovsdb/ovsdb-tool.c
+++ b/ovsdb/ovsdb-tool.c
@@ -60,11 +60,11 @@ static void
 parse_options(int argc, char *argv[])
 {
     static struct option long_options[] = {
-        {"more", no_argument, 0, 'm'},
-        {"verbose", optional_argument, 0, 'v'},
-        {"help", no_argument, 0, 'h'},
-        {"version", no_argument, 0, 'V'},
-        {0, 0, 0, 0},
+        {"more", no_argument, NULL, 'm'},
+        {"verbose", optional_argument, NULL, 'v'},
+        {"help", no_argument, NULL, 'h'},
+        {"version", no_argument, NULL, 'V'},
+        {NULL, 0, NULL, 0},
     };
     char *short_options = long_options_to_short_options(long_options);
 
diff --git a/ovsdb/ovsdb.c b/ovsdb/ovsdb.c
index abe88e9..fb020c9 100644
--- a/ovsdb/ovsdb.c
+++ b/ovsdb/ovsdb.c
@@ -253,7 +253,7 @@ ovsdb_schema_from_json(struct json *json, struct ovsdb_schema **schemap)
     }
 
     *schemap = schema;
-    return 0;
+    return NULL;
 }
 
 struct json *
diff --git a/ovsdb/table.c b/ovsdb/table.c
index 2f69350..2ea73bf 100644
--- a/ovsdb/table.c
+++ b/ovsdb/table.c
@@ -157,7 +157,7 @@ ovsdb_table_schema_from_json(const struct json *json, const char *name,
         add_column(ts, column);
     }
     *tsp = ts;
-    return 0;
+    return NULL;
 }
 
 /* Returns table schema 'ts' serialized into JSON.
diff --git a/tests/test-jsonrpc.c b/tests/test-jsonrpc.c
index 12bbc97..9854b6b 100644
--- a/tests/test-jsonrpc.c
+++ b/tests/test-jsonrpc.c
@@ -57,14 +57,14 @@ parse_options(int argc, char *argv[])
         DAEMON_OPTION_ENUMS
     };
     static struct option long_options[] = {
-        {"verbose", optional_argument, 0, 'v'},
-        {"help", no_argument, 0, 'h'},
+        {"verbose", optional_argument, NULL, 'v'},
+        {"help", no_argument, NULL, 'h'},
         DAEMON_LONG_OPTIONS,
 #ifdef HAVE_OPENSSL
-        {"bootstrap-ca-cert", required_argument, 0, OPT_BOOTSTRAP_CA_CERT},
+        {"bootstrap-ca-cert", required_argument, NULL, OPT_BOOTSTRAP_CA_CERT},
         STREAM_SSL_LONG_OPTIONS
 #endif
-        {0, 0, 0, 0},
+        {NULL, 0, NULL, 0},
     };
     char *short_options = long_options_to_short_options(long_options);
 
diff --git a/tests/test-lockfile.c b/tests/test-lockfile.c
index 0feb270..121b2ba 100644
--- a/tests/test-lockfile.c
+++ b/tests/test-lockfile.c
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2009, 2010 Nicira Networks.
+ * Copyright (c) 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.
@@ -231,7 +231,7 @@ static const struct test tests[] = {
     TEST(lock_timeout_runs_out),
     TEST(lock_multiple),
     TEST(help),
-    { 0, 0 }
+    { NULL, NULL }
 #undef TEST
 };
 
diff --git a/tests/test-ovsdb.c b/tests/test-ovsdb.c
index 990bf6d..8fe1727 100644
--- a/tests/test-ovsdb.c
+++ b/tests/test-ovsdb.c
@@ -68,10 +68,10 @@ static void
 parse_options(int argc, char *argv[])
 {
     static struct option long_options[] = {
-        {"timeout", required_argument, 0, 't'},
-        {"verbose", optional_argument, 0, 'v'},
-        {"help", no_argument, 0, 'h'},
-        {0, 0, 0, 0},
+        {"timeout", required_argument, NULL, 't'},
+        {"verbose", optional_argument, NULL, 'v'},
+        {"help", no_argument, NULL, 'h'},
+        {NULL, 0, NULL, 0},
     };
     char *short_options = long_options_to_short_options(long_options);
 
diff --git a/utilities/ovs-appctl.c b/utilities/ovs-appctl.c
index 742603b..27fbe5e 100644
--- a/utilities/ovs-appctl.c
+++ b/utilities/ovs-appctl.c
@@ -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.
@@ -109,7 +109,7 @@ parse_command_line(int argc, char *argv[])
         {"execute", no_argument, NULL, 'e'},
         {"help", no_argument, NULL, 'h'},
         {"version", no_argument, NULL, 'V'},
-        {0, 0, 0, 0},
+        {NULL, 0, NULL, 0},
     };
     const char *target;
     int e_options;
diff --git a/utilities/ovs-controller.c b/utilities/ovs-controller.c
index ae0ea3d..536ebe5 100644
--- a/utilities/ovs-controller.c
+++ b/utilities/ovs-controller.c
@@ -310,25 +310,25 @@ parse_options(int argc, char *argv[])
         DAEMON_OPTION_ENUMS
     };
     static struct option long_options[] = {
-        {"hub",         no_argument, 0, 'H'},
-        {"noflow",      no_argument, 0, 'n'},
-        {"normal",      no_argument, 0, 'N'},
-        {"wildcard",    no_argument, 0, 'w'},
-        {"max-idle",    required_argument, 0, OPT_MAX_IDLE},
-        {"mute",        no_argument, 0, OPT_MUTE},
-        {"queue",       required_argument, 0, 'q'},
-        {"port-queue",  required_argument, 0, 'Q'},
-        {"with-flows",  required_argument, 0, OPT_WITH_FLOWS},
-        {"unixctl",     required_argument, 0, OPT_UNIXCTL},
-        {"help",        no_argument, 0, 'h'},
-        {"version",     no_argument, 0, 'V'},
+        {"hub",         no_argument, NULL, 'H'},
+        {"noflow",      no_argument, NULL, 'n'},
+        {"normal",      no_argument, NULL, 'N'},
+        {"wildcard",    no_argument, NULL, 'w'},
+        {"max-idle",    required_argument, NULL, OPT_MAX_IDLE},
+        {"mute",        no_argument, NULL, OPT_MUTE},
+        {"queue",       required_argument, NULL, 'q'},
+        {"port-queue",  required_argument, NULL, 'Q'},
+        {"with-flows",  required_argument, NULL, OPT_WITH_FLOWS},
+        {"unixctl",     required_argument, NULL, OPT_UNIXCTL},
+        {"help",        no_argument, NULL, 'h'},
+        {"version",     no_argument, NULL, 'V'},
         DAEMON_LONG_OPTIONS,
         VLOG_LONG_OPTIONS,
 #ifdef HAVE_OPENSSL
         STREAM_SSL_LONG_OPTIONS
-        {"peer-ca-cert", required_argument, 0, OPT_PEER_CA_CERT},
+        {"peer-ca-cert", required_argument, NULL, OPT_PEER_CA_CERT},
 #endif
-        {0, 0, 0, 0},
+        {NULL, 0, NULL, 0},
     };
     char *short_options = long_options_to_short_options(long_options);
 
diff --git a/utilities/ovs-dpctl.c b/utilities/ovs-dpctl.c
index 2d0ec12..c7350e5 100644
--- a/utilities/ovs-dpctl.c
+++ b/utilities/ovs-dpctl.c
@@ -71,12 +71,12 @@ parse_options(int argc, char *argv[])
         VLOG_OPTION_ENUMS
     };
     static struct option long_options[] = {
-        {"statistics", no_argument, 0, 's'},
-        {"timeout", required_argument, 0, 't'},
-        {"help", no_argument, 0, 'h'},
-        {"version", no_argument, 0, 'V'},
+        {"statistics", no_argument, NULL, 's'},
+        {"timeout", required_argument, NULL, 't'},
+        {"help", no_argument, NULL, 'h'},
+        {"version", no_argument, NULL, 'V'},
         VLOG_LONG_OPTIONS,
-        {0, 0, 0, 0},
+        {NULL, 0, NULL, 0},
     };
     char *short_options = long_options_to_short_options(long_options);
 
diff --git a/utilities/ovs-ofctl.c b/utilities/ovs-ofctl.c
index c0ff4dc..61997da 100644
--- a/utilities/ovs-ofctl.c
+++ b/utilities/ovs-ofctl.c
@@ -85,15 +85,15 @@ parse_options(int argc, char *argv[])
         VLOG_OPTION_ENUMS
     };
     static struct option long_options[] = {
-        {"timeout", required_argument, 0, 't'},
-        {"strict", no_argument, 0, OPT_STRICT},
-        {"flow-format", required_argument, 0, 'F'},
-        {"more", no_argument, 0, 'm'},
-        {"help", no_argument, 0, 'h'},
-        {"version", no_argument, 0, 'V'},
+        {"timeout", required_argument, NULL, 't'},
+        {"strict", no_argument, NULL, OPT_STRICT},
+        {"flow-format", required_argument, NULL, 'F'},
+        {"more", no_argument, NULL, 'm'},
+        {"help", no_argument, NULL, 'h'},
+        {"version", no_argument, NULL, 'V'},
         VLOG_LONG_OPTIONS,
         STREAM_SSL_LONG_OPTIONS
-        {0, 0, 0, 0},
+        {NULL, 0, NULL, 0},
     };
     char *short_options = long_options_to_short_options(long_options);
 
diff --git a/utilities/ovs-openflowd.c b/utilities/ovs-openflowd.c
index 86f5ca5..6b8a215 100644
--- a/utilities/ovs-openflowd.c
+++ b/utilities/ovs-openflowd.c
@@ -249,39 +249,39 @@ parse_options(int argc, char *argv[], struct ofsettings *s)
         DAEMON_OPTION_ENUMS
     };
     static struct option long_options[] = {
-        {"datapath-id", required_argument, 0, OPT_DATAPATH_ID},
-        {"mfr-desc", required_argument, 0, OPT_MFR_DESC},
-        {"hw-desc", required_argument, 0, OPT_HW_DESC},
-        {"sw-desc", required_argument, 0, OPT_SW_DESC},
-        {"serial-desc", required_argument, 0, OPT_SERIAL_DESC},
-        {"dp-desc", required_argument, 0, OPT_DP_DESC},
-        {"config",      required_argument, 0, 'F'},
-        {"br-name",     required_argument, 0, OPT_BR_NAME},
-        {"fail",        required_argument, 0, OPT_FAIL_MODE},
-        {"inactivity-probe", required_argument, 0, OPT_INACTIVITY_PROBE},
-        {"max-idle",    required_argument, 0, OPT_MAX_IDLE},
-        {"max-backoff", required_argument, 0, OPT_MAX_BACKOFF},
-        {"listen",      required_argument, 0, 'l'},
-        {"snoop",      required_argument, 0, OPT_SNOOP},
-        {"rate-limit",  optional_argument, 0, OPT_RATE_LIMIT},
-        {"burst-limit", required_argument, 0, OPT_BURST_LIMIT},
-        {"out-of-band", no_argument, 0, OPT_OUT_OF_BAND},
-        {"in-band",     no_argument, 0, OPT_IN_BAND},
-        {"netflow",     required_argument, 0, OPT_NETFLOW},
-        {"ports",       required_argument, 0, OPT_PORTS},
-        {"unixctl",     required_argument, 0, OPT_UNIXCTL},
-        {"enable-dummy", no_argument, 0, OPT_ENABLE_DUMMY},
-        {"verbose",     optional_argument, 0, 'v'},
-        {"help",        no_argument, 0, 'h'},
-        {"version",     no_argument, 0, 'V'},
+        {"datapath-id", required_argument, NULL, OPT_DATAPATH_ID},
+        {"mfr-desc", required_argument, NULL, OPT_MFR_DESC},
+        {"hw-desc", required_argument, NULL, OPT_HW_DESC},
+        {"sw-desc", required_argument, NULL, OPT_SW_DESC},
+        {"serial-desc", required_argument, NULL, OPT_SERIAL_DESC},
+        {"dp-desc", required_argument, NULL, OPT_DP_DESC},
+        {"config",      required_argument, NULL, 'F'},
+        {"br-name",     required_argument, NULL, OPT_BR_NAME},
+        {"fail",        required_argument, NULL, OPT_FAIL_MODE},
+        {"inactivity-probe", required_argument, NULL, OPT_INACTIVITY_PROBE},
+        {"max-idle",    required_argument, NULL, OPT_MAX_IDLE},
+        {"max-backoff", required_argument, NULL, OPT_MAX_BACKOFF},
+        {"listen",      required_argument, NULL, 'l'},
+        {"snoop",      required_argument, NULL, OPT_SNOOP},
+        {"rate-limit",  optional_argument, NULL, OPT_RATE_LIMIT},
+        {"burst-limit", required_argument, NULL, OPT_BURST_LIMIT},
+        {"out-of-band", no_argument, NULL, OPT_OUT_OF_BAND},
+        {"in-band",     no_argument, NULL, OPT_IN_BAND},
+        {"netflow",     required_argument, NULL, OPT_NETFLOW},
+        {"ports",       required_argument, NULL, OPT_PORTS},
+        {"unixctl",     required_argument, NULL, OPT_UNIXCTL},
+        {"enable-dummy", no_argument, NULL, OPT_ENABLE_DUMMY},
+        {"verbose",     optional_argument, NULL, 'v'},
+        {"help",        no_argument, NULL, 'h'},
+        {"version",     no_argument, NULL, 'V'},
         DAEMON_LONG_OPTIONS,
         VLOG_LONG_OPTIONS,
         LEAK_CHECKER_LONG_OPTIONS,
 #ifdef HAVE_OPENSSL
         STREAM_SSL_LONG_OPTIONS
-        {"bootstrap-ca-cert", required_argument, 0, OPT_BOOTSTRAP_CA_CERT},
+        {"bootstrap-ca-cert", required_argument, NULL, OPT_BOOTSTRAP_CA_CERT},
 #endif
-        {0, 0, 0, 0},
+        {NULL, 0, NULL, 0},
     };
     char *short_options = long_options_to_short_options(long_options);
     struct ofproto_controller controller_opts;
diff --git a/utilities/ovs-vlan-bug-workaround.c b/utilities/ovs-vlan-bug-workaround.c
index 54316dd..309d64e 100644
--- a/utilities/ovs-vlan-bug-workaround.c
+++ b/utilities/ovs-vlan-bug-workaround.c
@@ -113,7 +113,7 @@ parse_options(int argc, char *argv[])
     static const struct option long_options[] = {
         {"help", no_argument, NULL, 'h'},
         {"version", no_argument, NULL, 'V'},
-        {0, 0, 0, 0},
+        {NULL, 0, NULL, 0},
     };
     char *short_options = long_options_to_short_options(long_options);
 
diff --git a/utilities/ovs-vsctl.c b/utilities/ovs-vsctl.c
index 2c1ba6d..7f9ab39 100644
--- a/utilities/ovs-vsctl.c
+++ b/utilities/ovs-vsctl.c
@@ -206,21 +206,21 @@ parse_options(int argc, char *argv[])
         TABLE_OPTION_ENUMS
     };
     static struct option long_options[] = {
-        {"db", required_argument, 0, OPT_DB},
-        {"no-syslog", no_argument, 0, OPT_NO_SYSLOG},
-        {"no-wait", no_argument, 0, OPT_NO_WAIT},
-        {"dry-run", no_argument, 0, OPT_DRY_RUN},
-        {"oneline", no_argument, 0, OPT_ONELINE},
-        {"timeout", required_argument, 0, 't'},
-        {"help", no_argument, 0, 'h'},
-        {"version", no_argument, 0, 'V'},
+        {"db", required_argument, NULL, OPT_DB},
+        {"no-syslog", no_argument, NULL, OPT_NO_SYSLOG},
+        {"no-wait", no_argument, NULL, OPT_NO_WAIT},
+        {"dry-run", no_argument, NULL, OPT_DRY_RUN},
+        {"oneline", no_argument, NULL, OPT_ONELINE},
+        {"timeout", required_argument, NULL, 't'},
+        {"help", no_argument, NULL, 'h'},
+        {"version", no_argument, NULL, 'V'},
         VLOG_LONG_OPTIONS,
         TABLE_LONG_OPTIONS,
 #ifdef HAVE_OPENSSL
         STREAM_SSL_LONG_OPTIONS
-        {"peer-ca-cert", required_argument, 0, OPT_PEER_CA_CERT},
+        {"peer-ca-cert", required_argument, NULL, OPT_PEER_CA_CERT},
 #endif
-        {0, 0, 0, 0},
+        {NULL, 0, NULL, 0},
     };
     char *tmp, *short_options;
 
@@ -1114,7 +1114,7 @@ cmd_emer_reset(struct vsctl_context *ctx)
 static void
 cmd_add_br(struct vsctl_context *ctx)
 {
-    bool may_exist = shash_find(&ctx->options, "--may-exist") != 0;
+    bool may_exist = shash_find(&ctx->options, "--may-exist") != NULL;
     const char *br_name, *parent_name;
     struct vsctl_info info;
     int vlan;
@@ -1566,7 +1566,7 @@ add_port(struct vsctl_context *ctx,
 static void
 cmd_add_port(struct vsctl_context *ctx)
 {
-    bool may_exist = shash_find(&ctx->options, "--may-exist") != 0;
+    bool may_exist = shash_find(&ctx->options, "--may-exist") != NULL;
 
     add_port(ctx, ctx->argv[1], ctx->argv[2], may_exist, false,
              &ctx->argv[2], 1, &ctx->argv[3], ctx->argc - 3);
@@ -1575,7 +1575,7 @@ cmd_add_port(struct vsctl_context *ctx)
 static void
 cmd_add_bond(struct vsctl_context *ctx)
 {
-    bool may_exist = shash_find(&ctx->options, "--may-exist") != 0;
+    bool may_exist = shash_find(&ctx->options, "--may-exist") != NULL;
     bool fake_iface = shash_find(&ctx->options, "--fake-iface");
     int n_ifaces;
     int i;
diff --git a/vswitchd/ovs-brcompatd.c b/vswitchd/ovs-brcompatd.c
index 9d5cdfb..973b098 100644
--- a/vswitchd/ovs-brcompatd.c
+++ b/vswitchd/ovs-brcompatd.c
@@ -1398,14 +1398,14 @@ parse_options(int argc, char *argv[])
         DAEMON_OPTION_ENUMS
     };
     static struct option long_options[] = {
-        {"help",             no_argument, 0, 'h'},
-        {"version",          no_argument, 0, 'V'},
-        {"prune-timeout",    required_argument, 0, OPT_PRUNE_TIMEOUT},
-        {"appctl-command",   required_argument, 0, OPT_APPCTL_COMMAND},
+        {"help",             no_argument, NULL, 'h'},
+        {"version",          no_argument, NULL, 'V'},
+        {"prune-timeout",    required_argument, NULL, OPT_PRUNE_TIMEOUT},
+        {"appctl-command",   required_argument, NULL, OPT_APPCTL_COMMAND},
         DAEMON_LONG_OPTIONS,
         VLOG_LONG_OPTIONS,
         LEAK_CHECKER_LONG_OPTIONS,
-        {0, 0, 0, 0},
+        {NULL, 0, NULL, 0},
     };
     char *short_options = long_options_to_short_options(long_options);
 
diff --git a/vswitchd/ovs-vswitchd.c b/vswitchd/ovs-vswitchd.c
index b9a2461..cf227d4 100644
--- a/vswitchd/ovs-vswitchd.c
+++ b/vswitchd/ovs-vswitchd.c
@@ -122,19 +122,19 @@ parse_options(int argc, char *argv[])
         DAEMON_OPTION_ENUMS
     };
     static struct option long_options[] = {
-        {"help",        no_argument, 0, 'h'},
-        {"version",     no_argument, 0, 'V'},
-        {"mlockall",    no_argument, 0, OPT_MLOCKALL},
+        {"help",        no_argument, NULL, 'h'},
+        {"version",     no_argument, NULL, 'V'},
+        {"mlockall",    no_argument, NULL, OPT_MLOCKALL},
         DAEMON_LONG_OPTIONS,
         VLOG_LONG_OPTIONS,
         LEAK_CHECKER_LONG_OPTIONS,
 #ifdef HAVE_OPENSSL
         STREAM_SSL_LONG_OPTIONS
-        {"peer-ca-cert", required_argument, 0, OPT_PEER_CA_CERT},
-        {"bootstrap-ca-cert", required_argument, 0, OPT_BOOTSTRAP_CA_CERT},
+        {"peer-ca-cert", required_argument, NULL, OPT_PEER_CA_CERT},
+        {"bootstrap-ca-cert", required_argument, NULL, OPT_BOOTSTRAP_CA_CERT},
 #endif
-        {"enable-dummy", no_argument, 0, OPT_ENABLE_DUMMY},
-        {0, 0, 0, 0},
+        {"enable-dummy", no_argument, NULL, OPT_ENABLE_DUMMY},
+        {NULL, 0, NULL, 0},
     };
     char *short_options = long_options_to_short_options(long_options);
 
-- 
1.7.4.4




More information about the dev mailing list