aboutsummaryrefslogtreecommitdiff
path: root/vswitchd
diff options
context:
space:
mode:
authorEthan Jackson <ethan@nicira.com>2011-11-17 18:06:55 -0800
committerEthan Jackson <ethan@nicira.com>2011-11-18 13:48:57 -0800
commit579a77e024b93ba5dfb840468c2fcd804e576d7b (patch)
tree971171ac8ffd2432c8b748ba6e1fbeb2822b833a /vswitchd
parent9d7c56431990fc56a1b26dd32c1e7a8d9258345f (diff)
tests: Allow unit tests to run as root.
The unit tests did not allow users to run them as root because ovs-vswitchd would destroy all of the existing 'system' datapaths. This patch prevents ovs-vswitchd from registering 'system' datapaths when running unit tests preventing the issue.
Diffstat (limited to 'vswitchd')
-rw-r--r--vswitchd/ovs-vswitchd.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/vswitchd/ovs-vswitchd.c b/vswitchd/ovs-vswitchd.c
index 359e3ab1..bdc35330 100644
--- a/vswitchd/ovs-vswitchd.c
+++ b/vswitchd/ovs-vswitchd.c
@@ -31,6 +31,7 @@
#include "compiler.h"
#include "daemon.h"
#include "dirs.h"
+#include "dpif.h"
#include "dummy.h"
#include "leak-checker.h"
#include "netdev.h"
@@ -121,6 +122,7 @@ parse_options(int argc, char *argv[])
LEAK_CHECKER_OPTION_ENUMS,
OPT_BOOTSTRAP_CA_CERT,
OPT_ENABLE_DUMMY,
+ OPT_DISABLE_SYSTEM,
DAEMON_OPTION_ENUMS
};
static struct option long_options[] = {
@@ -134,6 +136,7 @@ parse_options(int argc, char *argv[])
{"peer-ca-cert", required_argument, NULL, OPT_PEER_CA_CERT},
{"bootstrap-ca-cert", required_argument, NULL, OPT_BOOTSTRAP_CA_CERT},
{"enable-dummy", no_argument, NULL, OPT_ENABLE_DUMMY},
+ {"disable-system", no_argument, NULL, OPT_DISABLE_SYSTEM},
{NULL, 0, NULL, 0},
};
char *short_options = long_options_to_short_options(long_options);
@@ -181,6 +184,10 @@ parse_options(int argc, char *argv[])
dummy_enable();
break;
+ case OPT_DISABLE_SYSTEM:
+ dp_blacklist_provider("system");
+ break;
+
case '?':
exit(EXIT_FAILURE);