From 921c385dbcfc923a79ecc3627feac4e84399784d Mon Sep 17 00:00:00 2001 From: Rosemarie O'Riorden Date: Thu, 25 Jul 2024 13:00:11 -0400 Subject: [PATCH] controller, controller-vtep: Add --unixctl option. All other OVN daemons have the --unixctl option to specify the control socket file. It was missing from ovn-controller and ovn-controller-vtep, which this patch fixes. The ovn-controller-vtep documentation was also missing the already supported --help and --version options, which are now reflected in the docs. Reported-at: https://issues.redhat.com/browse/FDP-714 Signed-off-by: Rosemarie O'Riorden --- controller-vtep/ovn-controller-vtep.8.xml | 5 +++++ controller-vtep/ovn-controller-vtep.c | 11 ++++++++++- controller/ovn-controller.8.xml | 3 ++- controller/ovn-controller.c | 11 ++++++++++- 4 files changed, 27 insertions(+), 3 deletions(-) diff --git a/controller-vtep/ovn-controller-vtep.8.xml b/controller-vtep/ovn-controller-vtep.8.xml index 89acae7edb..6aec43fa7d 100644 --- a/controller-vtep/ovn-controller-vtep.8.xml +++ b/controller-vtep/ovn-controller-vtep.8.xml @@ -28,6 +28,11 @@ +

Other Options

+ +

+ +

Configuration

ovn-controller-vtep retrieves its configuration diff --git a/controller-vtep/ovn-controller-vtep.c b/controller-vtep/ovn-controller-vtep.c index 4472e52853..698511482e 100644 --- a/controller-vtep/ovn-controller-vtep.c +++ b/controller-vtep/ovn-controller-vtep.c @@ -58,6 +58,9 @@ static char *vtep_remote; static char *ovnsb_remote; static char *default_db_; +/* --unixctl-path: Path to use for unixctl server socket. */ +static char *unixctl_path; + /* Returns true if the northd internal version stored in SB_Global * and ovn-controller-vtep internal version match. */ @@ -118,7 +121,7 @@ main(int argc, char *argv[]) daemonize_start(false, false); - char *abs_unixctl_path = get_abs_unix_ctl_path(NULL); + char *abs_unixctl_path = get_abs_unix_ctl_path(unixctl_path); retval = unixctl_server_create(abs_unixctl_path, &unixctl); free(abs_unixctl_path); @@ -287,6 +290,7 @@ parse_options(int argc, char *argv[]) {"vtep-db", required_argument, NULL, 'D'}, {"help", no_argument, NULL, 'h'}, {"version", no_argument, NULL, 'V'}, + {"unixctl", required_argument, NULL, 'u'}, VLOG_LONG_OPTIONS, OVN_DAEMON_LONG_OPTIONS, STREAM_SSL_LONG_OPTIONS, @@ -322,6 +326,10 @@ parse_options(int argc, char *argv[]) ovn_print_version(OFP13_VERSION, OFP13_VERSION); exit(EXIT_SUCCESS); + case 'u': + unixctl_path = optarg; + break; + VLOG_OPTION_HANDLERS OVN_DAEMON_OPTION_HANDLERS STREAM_SSL_OPTION_HANDLERS @@ -364,6 +372,7 @@ Options:\n\ (default: %s)\n\ --ovnsb-db=DATABASE connect to ovn-sb database at DATABASE\n\ (default: %s)\n\ + -u, --unixctl=SOCKET set control socket name\n\ -h, --help display this help message\n\ -o, --options list available options\n\ -V, --version display version information\n\ diff --git a/controller/ovn-controller.8.xml b/controller/ovn-controller.8.xml index faefa77b9a..bcae4617e6 100644 --- a/controller/ovn-controller.8.xml +++ b/controller/ovn-controller.8.xml @@ -47,7 +47,8 @@

Other Options

- + +

diff --git a/controller/ovn-controller.c b/controller/ovn-controller.c index f5674184a5..936b42636f 100644 --- a/controller/ovn-controller.c +++ b/controller/ovn-controller.c @@ -137,6 +137,9 @@ static const char *ssl_private_key_file; static const char *ssl_certificate_file; static const char *ssl_ca_cert_file; +/* --unixctl-path: Path to use for unixctl server socket. */ +static char *unixctl_path; + /* By default don't set an upper bound for the lflow cache and enable auto * trimming above 10K logical flows when reducing cache size by 50%. */ @@ -4835,7 +4838,7 @@ main(int argc, char *argv[]) daemonize_start(true, false); - char *abs_unixctl_path = get_abs_unix_ctl_path(NULL); + char *abs_unixctl_path = get_abs_unix_ctl_path(unixctl_path); retval = unixctl_server_create(abs_unixctl_path, &unixctl); free(abs_unixctl_path); if (retval) { @@ -5957,6 +5960,7 @@ parse_options(int argc, char *argv[]) static struct option long_options[] = { {"help", no_argument, NULL, 'h'}, {"version", no_argument, NULL, 'V'}, + {"unixctl", required_argument, NULL, 'u'}, VLOG_LONG_OPTIONS, OVN_DAEMON_LONG_OPTIONS, STREAM_SSL_LONG_OPTIONS, @@ -5986,6 +5990,10 @@ parse_options(int argc, char *argv[]) printf("SB DB Schema %s\n", sbrec_get_db_version()); exit(EXIT_SUCCESS); + case 'u': + unixctl_path = optarg; + break; + VLOG_OPTION_HANDLERS OVN_DAEMON_OPTION_HANDLERS @@ -6061,6 +6069,7 @@ usage(void) daemon_usage(); vlog_usage(); printf("\nOther options:\n" + " -u, --unixctl=SOCKET set control socket name\n" " -n custom chassis name\n" " -h, --help display this help message\n" " -V, --version display version information\n");