argv0 = argv0[argv0.rfind('/') + 1:]
DEFAULT_VSWITCHD_CONF = "@sysconfdir@/ovs-vswitchd.conf"
-VSWITCHD_CONF = DEFAULT_VSWITCHD_CONF
+vswitchd_conf = DEFAULT_VSWITCHD_CONF
-DEFAULT_VSWITCHD_TARGET = "@RUNDIR@/ovs-vswitchd.pid"
-VSWITCHD_TARGET = DEFAULT_VSWITCHD_TARGET
+DEFAULT_VSWITCHD_TARGET = "ovs-vswitchd"
+vswitchd_target = DEFAULT_VSWITCHD_TARGET
-RELOAD_VSWITCHD = True
+reload_vswitchd = True
-SYSLOG = True
+enable_syslog = True
class Error(Exception):
def __init__(self, msg):
self.msg = msg
def log(message):
- if SYSLOG:
+ if enable_syslog:
syslog.syslog(message)
# XXX Most of the functions below should be integrated into a
def cfg_reload():
target = VSWITCHD_TARGET
+ if not target.startswith('/'):
+ pid = read_first_line_of_file('%s/%s.pid' % ('@RUNDIR@', target))
+ target = '%s/%s.%s.ctl' % ('@RUNDIR@', target, pid)
s = os.stat(target)
- if stat.S_ISREG(s.st_mode):
- pid = read_first_line_of_file(target)
- target = "@RUNDIR@/ovs-vswitchd.%s.ctl" % pid
- s = os.stat(target)
if not stat.S_ISSOCK(s.st_mode):
raise Error("%s is not a Unix domain socket, cannot reload" % target)
skt = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM)
do_cfg_save(cfg, f)
f.close()
os.rename(tmp_name, filename)
- if RELOAD_VSWITCHD:
+ if reload_vswitchd:
cfg_reload()
# Returns a set of the immediate subsections of 'section' within 'cfg'. For
--no-syslog do not write mesages to syslog
-c, --config=FILE set configuration file
(default: %(config)s)
- -t, --target=PIDFILE|SOCKET set ovs-vswitchd target
+ -t, --target=PROGRAM|SOCKET set ovs-vswitchd target
(default: %(target)s)
--no-reload do not make ovs-vswitchd reload its configuration
-h, --help display this help message and exit
oneline = False
for opt, optarg in options:
if opt == "-c" or opt == "--config":
- global VSWITCHD_CONF
- VSWITCHD_CONF = optarg
+ global vswitchd_conf
+ vswitchd_conf = optarg
elif opt == "-t" or opt == "--target":
- global VSWITCHD_TARGET
- if optarg[0] != '/':
- optarg = '@RUNDIR@/' + optarg
- VSWITCHD_TARGET = optarg
+ global vswitchd_target
+ vswitchd_target = optarg
elif opt == "--no-reload":
- global RELOAD_VSWITCHD
- RELOAD_VSWITCHD = False
+ global reload_vswitchd
+ reload_vswitchd = False
elif opt == "-h" or opt == "--help":
usage()
elif opt == "-V" or opt == "--version":
version()
elif opt == "--no-syslog":
- global SYSLOG
- SYSLOG = False
+ global enable_syslog
+ enable_syslog = False
elif opt == "--oneline":
oneline = True
else:
raise RuntimeError("unhandled option %s" % opt)
- if SYSLOG:
+ if enable_syslog:
syslog.openlog("ovs-vsctl")
log("Called as %s" % ' '.join(sys.argv[1:]))
need_lock = True
# Execute commands.
- cfg = cfg_read(VSWITCHD_CONF, need_lock)
+ cfg = cfg_read(vswitchd_conf, need_lock)
for command in commands:
output = run_command(cfg, command)
if oneline:
for line in output:
print line
if need_lock:
- cfg_save(cfg, VSWITCHD_CONF)
+ cfg_save(cfg, vswitchd_conf)
sys.exit(0)
if __name__ == "__main__":