ovsdb_idl_omit(idl, &ovsrec_ssl_col_external_ids);
/* Register unixctl commands. */
- unixctl_command_register("qos/show", "interface", qos_unixctl_show, NULL);
- unixctl_command_register("bridge/dump-flows", "bridge",
+ unixctl_command_register("qos/show", "interface", 1, 1,
+ qos_unixctl_show, NULL);
+ unixctl_command_register("bridge/dump-flows", "bridge", 1, 1,
bridge_unixctl_dump_flows, NULL);
- unixctl_command_register("bridge/reconnect", "[bridge]",
+ unixctl_command_register("bridge/reconnect", "[bridge]", 0, 1,
bridge_unixctl_reconnect, NULL);
lacp_init();
bond_init();
}
static void
-qos_unixctl_show(struct unixctl_conn *conn,
- const char *args, void *aux OVS_UNUSED)
+qos_unixctl_show(struct unixctl_conn *conn, int argc OVS_UNUSED,
+ const char *argv[], void *aux OVS_UNUSED)
{
struct ds ds = DS_EMPTY_INITIALIZER;
struct shash sh = SHASH_INITIALIZER(&sh);
struct qos_unixctl_show_cbdata data;
int error;
- iface = iface_find(args);
+ iface = iface_find(argv[1]);
if (!iface) {
unixctl_command_reply(conn, 501, "no such interface");
return;
/* Handle requests for a listing of all flows known by the OpenFlow
* stack, including those normally hidden. */
static void
-bridge_unixctl_dump_flows(struct unixctl_conn *conn,
- const char *args, void *aux OVS_UNUSED)
+bridge_unixctl_dump_flows(struct unixctl_conn *conn, int argc OVS_UNUSED,
+ const char *argv[], void *aux OVS_UNUSED)
{
struct bridge *br;
struct ds results;
- br = bridge_lookup(args);
+ br = bridge_lookup(argv[1]);
if (!br) {
unixctl_command_reply(conn, 501, "Unknown bridge");
return;
* connections and reconnect. If BRIDGE is not specified, then all bridges
* drop their controller connections and reconnect. */
static void
-bridge_unixctl_reconnect(struct unixctl_conn *conn,
- const char *args, void *aux OVS_UNUSED)
+bridge_unixctl_reconnect(struct unixctl_conn *conn, int argc,
+ const char *argv[], void *aux OVS_UNUSED)
{
struct bridge *br;
- if (args[0] != '\0') {
- br = bridge_lookup(args);
+ if (argc > 1) {
+ br = bridge_lookup(argv[1]);
if (!br) {
unixctl_command_reply(conn, 501, "Unknown bridge");
return;
s->name = port->name;
s->balance = BM_SLB;
- if (port->cfg->bond_mode
- && !bond_mode_from_string(&s->balance, port->cfg->bond_mode)) {
- VLOG_WARN("port %s: unknown bond_mode %s, defaulting to %s",
- port->name, port->cfg->bond_mode,
- bond_mode_to_string(s->balance));
+ if (port->cfg->bond_mode) {
+ if (!bond_mode_from_string(&s->balance, port->cfg->bond_mode)) {
+ VLOG_WARN("port %s: unknown bond_mode %s, defaulting to %s",
+ port->name, port->cfg->bond_mode,
+ bond_mode_to_string(s->balance));
+ }
+ } else {
+ static struct vlog_rate_limit rl = VLOG_RATE_LIMIT_INIT(1, 1);
+
+ /* XXX: Post version 1.4.*, change the default bond_mode to
+ * active-backup. Until then, warn that the change is imminent. */
+ VLOG_WARN_RL(&rl, "port %s: Using the default bond_mode %s. Note that"
+ " in future versions, the default bond_mode is expected"
+ " to change to active-backup", port->name,
+ bond_mode_to_string(s->balance));
}
if (s->balance == BM_SLB && port->bridge->cfg->n_flood_vlans) {
VLOG_WARN("port %s: SLB bonds are incompatible with flood_vlans, "