timeval: Make time_init() static and remove calls to it.
[openvswitch] / utilities / ovs-vsctl.c
index b5ab2530c32dcb9e8fe352b37dd7c297d51dc5fb..fc1ba3daa83b746d08c4e91c64e90d9abb7dd562 100644 (file)
@@ -125,7 +125,6 @@ main(int argc, char *argv[])
 
     set_program_name(argv[0]);
     signal(SIGPIPE, SIG_IGN);
-    time_init();
     vlog_init();
     vlog_set_levels(VLM_ANY_MODULE, VLF_CONSOLE, VLL_WARN);
     vlog_set_levels(VLM_reconnect, VLF_ANY_FACILITY, VLL_WARN);
@@ -458,13 +457,13 @@ Switch commands:\n\
 \n\
 Database commands:\n\
   list TBL [REC]              list RECord (or all records) in TBL\n\
-  get TBL REC COL[:KEY]       print values of COLumns in RECORD in TBL\n\
+  get TBL REC COL[:KEY]       print values of COLumns in RECord in TBL\n\
   set TBL REC COL[:KEY]=VALUE set COLumn values in RECord in TBL\n\
   add TBL REC COL [KEY=]VALUE add (KEY=)VALUE to COLumn in RECord in TBL\n\
   remove TBL REC COL [KEY=]VALUE  remove (KEY=)VALUE from COLumn\n\
   clear TBL REC COL           clear values from COLumn in RECord in TBL\n\
   create TBL COL[:KEY]=VALUE  create and initialize new record\n\
-  destroy TBL REC             delete REC from TBL\n\
+  destroy TBL REC             delete RECord from TBL\n\
   wait-until TBL REC [COL[:KEY]=VALUE]  wait until condition is true\n\
 Potentially unsafe database commands require --force option.\n\
 \n\
@@ -1968,8 +1967,7 @@ get_table(const char *table_name)
 
 static const struct ovsdb_idl_row *
 get_row_by_id(struct vsctl_context *ctx, const struct vsctl_table_class *table,
-              const struct vsctl_row_id *id, const char *record_id,
-              bool partial_match_ok)
+              const struct vsctl_row_id *id, const char *record_id)
 {
     const struct ovsdb_idl_row *referrer, *final;
 
@@ -1987,35 +1985,24 @@ get_row_by_id(struct vsctl_context *ctx, const struct vsctl_table_class *table,
         }
     } else {
         const struct ovsdb_idl_row *row;
-        unsigned int best_score = 0;
 
         referrer = NULL;
         for (row = ovsdb_idl_first_row(ctx->idl, id->table);
-             row != NULL && best_score != UINT_MAX;
+             row != NULL;
              row = ovsdb_idl_next_row(row))
         {
             const struct ovsdb_datum *name;
 
             name = ovsdb_idl_get(row, id->name_column,
                                  OVSDB_TYPE_STRING, OVSDB_TYPE_VOID);
-            if (name->n == 1) {
-                unsigned int score;
-
-                score = (partial_match_ok
-                         ? score_partial_match(name->keys[0].string, record_id)
-                         : !strcmp(name->keys[0].string, record_id));
-                if (score > best_score) {
-                    referrer = row;
-                    best_score = score;
-                } else if (score == best_score) {
-                    referrer = NULL;
+            if (name->n == 1 && !strcmp(name->keys[0].string, record_id)) {
+                if (referrer) {
+                    vsctl_fatal("multiple rows in %s match \"%s\"",
+                                table->class->name, record_id);
                 }
+                referrer = row;
             }
         }
-        if (best_score && !referrer) {
-            vsctl_fatal("multiple rows in %s match \"%s\"",
-                        table->class->name, record_id);
-        }
     }
     if (!referrer) {
         return NULL;
@@ -2039,9 +2026,8 @@ get_row_by_id(struct vsctl_context *ctx, const struct vsctl_table_class *table,
 }
 
 static const struct ovsdb_idl_row *
-get_row__(struct vsctl_context *ctx,
-          const struct vsctl_table_class *table, const char *record_id,
-          bool partial_match_ok)
+get_row (struct vsctl_context *ctx,
+         const struct vsctl_table_class *table, const char *record_id)
 {
     const struct ovsdb_idl_row *row;
     struct uuid uuid;
@@ -2052,8 +2038,7 @@ get_row__(struct vsctl_context *ctx,
         int i;
 
         for (i = 0; i < ARRAY_SIZE(table->row_ids); i++) {
-            row = get_row_by_id(ctx, table, &table->row_ids[i], record_id,
-                                partial_match_ok);
+            row = get_row_by_id(ctx, table, &table->row_ids[i], record_id);
             if (row) {
                 break;
             }
@@ -2062,13 +2047,6 @@ get_row__(struct vsctl_context *ctx,
     return row;
 }
 
-static const struct ovsdb_idl_row *
-get_row(struct vsctl_context *ctx,
-        const struct vsctl_table_class *table, const char *record_id)
-{
-    return get_row__(ctx, table, record_id, true);
-}
-
 static const struct ovsdb_idl_row *
 must_get_row(struct vsctl_context *ctx,
              const struct vsctl_table_class *table, const char *record_id)
@@ -2675,7 +2653,7 @@ is_condition_satified(const struct vsctl_table_class *table,
     const char *operator;
     unsigned int idx;
     char *error;
-    int cmp;
+    int cmp = 0;
 
     error = parse_column_key_value(arg, table, &column, &key_string,
                                    &operator, operators, ARRAY_SIZE(operators),
@@ -2744,7 +2722,7 @@ cmd_wait_until(struct vsctl_context *ctx)
 
     table = get_table(table_name);
 
-    row = get_row__(ctx, table, record_id, false);
+    row = get_row(ctx, table, record_id);
     if (!row) {
         ctx->try_again = true;
         return;
@@ -2808,7 +2786,7 @@ do_vsctl(const char *args, struct vsctl_command *commands, size_t n_commands,
     const char *unused;
     struct vsctl_command *c;
     int64_t next_cfg = 0;
-    char *error;
+    char *error = NULL;
 
     txn = the_idl_txn = ovsdb_idl_txn_create(idl);
     if (dry_run) {