X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=utilities%2Fovs-vsctl.c;h=a8b10118f8f150f3a079682318400bfb67004c8a;hb=0e70cdcb8ddeb20417e682fd63769f9d16601b07;hp=1c67b1112d99eeed472a570f7f91170e66ce3f79;hpb=48a695011b3dda6b68e9a07824d649aa6b8eb2ef;p=openvswitch diff --git a/utilities/ovs-vsctl.c b/utilities/ovs-vsctl.c index 1c67b111..a8b10118 100644 --- a/utilities/ovs-vsctl.c +++ b/utilities/ovs-vsctl.c @@ -45,6 +45,7 @@ #include "table.h" #include "timeval.h" #include "util.h" +#include "vconn.h" #include "vlog.h" VLOG_DEFINE_THIS_MODULE(vsctl); @@ -262,7 +263,7 @@ parse_options(int argc, char *argv[]) usage(); case 'V': - OVS_PRINT_VERSION(0, 0); + ovs_print_version(0, 0); exit(EXIT_SUCCESS); case 't': @@ -444,7 +445,7 @@ vsctl_fatal(const char *format, ...) message = xvasprintf(format, args); va_end(args); - vlog_set_levels(&VLM_vsctl, VLF_CONSOLE, VLL_EMER); + vlog_set_levels(&VLM_vsctl, VLF_CONSOLE, VLL_OFF); VLOG_ERR("%s", message); ovs_error(0, "%s", message); vsctl_exit(EXIT_FAILURE); @@ -504,17 +505,17 @@ Interface commands (a bond consists of multiple interfaces):\n\ iface-to-br IFACE print name of bridge that contains IFACE\n\ \n\ Controller commands:\n\ - get-controller BRIDGE print the controller for BRIDGE\n\ - del-controller BRIDGE delete the controller for BRIDGE\n\ - set-controller BRIDGE TARGET set the controller for BRIDGE to TARGET\n\ + get-controller BRIDGE print the controllers for BRIDGE\n\ + del-controller BRIDGE delete the controllers for BRIDGE\n\ + set-controller BRIDGE TARGET... set the controllers for BRIDGE\n\ get-fail-mode BRIDGE print the fail-mode for BRIDGE\n\ del-fail-mode BRIDGE delete the fail-mode for BRIDGE\n\ set-fail-mode BRIDGE MODE set the fail-mode for BRIDGE to MODE\n\ \n\ Manager commands:\n\ - get-manager print all manager(s)\n\ - del-manager delete all manager(s)\n\ - set-manager TARGET... set the list of manager(s) to TARGET(s)\n\ + get-manager print the managers\n\ + del-manager delete the managers\n\ + set-manager TARGET... set the list of managers to TARGET...\n\ \n\ SSL commands:\n\ get-ssl print the SSL configuration\n\ @@ -2010,6 +2011,9 @@ insert_controllers(struct ovsdb_idl_txn *txn, char *targets[], size_t n) controllers = xmalloc(n * sizeof *controllers); for (i = 0; i < n; i++) { + if (vconn_verify_name(targets[i]) && pvconn_verify_name(targets[i])) { + VLOG_WARN("target type \"%s\" is possibly erroneous", targets[i]); + } controllers[i] = ovsrec_controller_insert(txn); ovsrec_controller_set_target(controllers[i], targets[i]); } @@ -2168,6 +2172,9 @@ insert_managers(struct vsctl_context *ctx, char *targets[], size_t n) /* Insert each manager in a new row in Manager table. */ managers = xmalloc(n * sizeof *managers); for (i = 0; i < n; i++) { + if (stream_verify_name(targets[i]) && pstream_verify_name(targets[i])) { + VLOG_WARN("target type \"%s\" is possibly erroneous", targets[i]); + } managers[i] = ovsrec_manager_insert(ctx->txn); ovsrec_manager_set_target(managers[i], targets[i]); } @@ -3680,6 +3687,10 @@ do_vsctl(const char *args, struct vsctl_command *commands, size_t n_commands, case TXN_ERROR: vsctl_fatal("transaction error: %s", error); + case TXN_NOT_LOCKED: + /* Should not happen--we never call ovsdb_idl_set_lock(). */ + vsctl_fatal("database not locked"); + default: NOT_REACHED(); }