projects
/
openvswitch
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
xenserver: Don't touch /etc/xensource/network.conf on upgrade.
[openvswitch]
/
utilities
/
ovs-controller.c
diff --git
a/utilities/ovs-controller.c
b/utilities/ovs-controller.c
index 26a1fc3f5609fab76449afe22dbcda479f88648e..f5e5014374c2fc86ad0cae0dda939f191f19897f 100644
(file)
--- a/
utilities/ovs-controller.c
+++ b/
utilities/ovs-controller.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.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@
-41,7
+41,7
@@
#include "vconn.h"
#include "vlog.h"
#include "vconn.h"
#include "vlog.h"
-VLOG_DEFINE_THIS_MODULE(controller)
+VLOG_DEFINE_THIS_MODULE(controller)
;
#define MAX_SWITCHES 16
#define MAX_LISTENERS 16
#define MAX_SWITCHES 16
#define MAX_LISTENERS 16
@@
-77,9
+77,9
@@
static uint32_t default_queue = UINT32_MAX;
/* -Q, --port-queue: map from port name to port number (cast to void *). */
static struct shash port_queues = SHASH_INITIALIZER(&port_queues);
/* -Q, --port-queue: map from port name to port number (cast to void *). */
static struct shash port_queues = SHASH_INITIALIZER(&port_queues);
-/* --with-flows: F
ile with flows to send to switch, or null to not load
- *
any
default flows. */
-static struct
ovs_queue default_flows = OVS_QUEUE_INITIALIZER
;
+/* --with-flows: F
lows to send to switch, or an empty list not to send any
+ * default flows. */
+static struct
list default_flows = LIST_INITIALIZER(&default_flows)
;
/* --unixctl: Name of unixctl socket, or null to use the default. */
static char *unixctl_path = NULL;
/* --unixctl: Name of unixctl socket, or null to use the default. */
static char *unixctl_path = NULL;
@@
-229,7
+229,7
@@
new_switch(struct switch_ *sw, struct vconn *vconn)
: learn_macs ? LSW_LEARN
: LSW_FLOOD);
cfg.max_idle = set_up_flows ? max_idle : -1;
: learn_macs ? LSW_LEARN
: LSW_FLOOD);
cfg.max_idle = set_up_flows ? max_idle : -1;
- cfg.default_flows =
default_flows.head
;
+ cfg.default_flows =
&default_flows
;
cfg.default_queue = default_queue;
cfg.port_queues = &port_queues;
sw->lswitch = lswitch_create(sw->rconn, &cfg);
cfg.default_queue = default_queue;
cfg.port_queues = &port_queues;
sw->lswitch = lswitch_create(sw->rconn, &cfg);
@@
-260,7
+260,7
@@
do_switching(struct switch_ *sw)
static void
read_flow_file(const char *name)
{
static void
read_flow_file(const char *name)
{
-
struct ofpbuf *b
;
+
enum nx_flow_format flow_format
;
FILE *stream;
stream = fopen(optarg, "r");
FILE *stream;
stream = fopen(optarg, "r");
@@
-268,8
+268,9
@@
read_flow_file(const char *name)
ovs_fatal(errno, "%s: open", name);
}
ovs_fatal(errno, "%s: open", name);
}
- while ((b = parse_ofp_add_flow_file(stream)) != NULL) {
- queue_push_tail(&default_flows, b);
+ flow_format = NXFF_OPENFLOW10;
+ while (parse_ofp_add_flow_file(&default_flows, &flow_format, stream)) {
+ continue;
}
fclose(stream);
}
fclose(stream);
@@
-305,7
+306,8
@@
parse_options(int argc, char *argv[])
OPT_MUTE,
OPT_WITH_FLOWS,
OPT_UNIXCTL,
OPT_MUTE,
OPT_WITH_FLOWS,
OPT_UNIXCTL,
- VLOG_OPTION_ENUMS
+ VLOG_OPTION_ENUMS,
+ DAEMON_OPTION_ENUMS
};
static struct option long_options[] = {
{"hub", no_argument, 0, 'H'},
};
static struct option long_options[] = {
{"hub", no_argument, 0, 'H'},