summaryrefslogtreecommitdiff
path: root/isisd
diff options
context:
space:
mode:
authorVyacheslav Trushkin <me@dogonthesun.net>2011-11-25 18:51:48 +0400
committerDenis Ovsienko <infrastation@yandex.ru>2011-12-13 14:13:06 +0400
commit271ee735ed3a42a1fe52f6401ddf72bd5d3e4f10 (patch)
tree6e8995fe61efdf88513c697e1d84d4108fabbf3a /isisd
parent844ee4a8acf1a7b34e6a4a0bdf701496302a7416 (diff)
quagga: option "-z" ("--socket <path>") added
All daemons modified to support custom path to zserv socket. lib: generalize a zclient connection zclient_socket_connect added. zclient_socket and zclient_socket_un were hidden under static expression. "zclient_serv_path_set" modified.
Diffstat (limited to 'isisd')
-rw-r--r--isisd/isis_main.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/isisd/isis_main.c b/isisd/isis_main.c
index 45e94081..15d85d6d 100644
--- a/isisd/isis_main.c
+++ b/isisd/isis_main.c
@@ -34,6 +34,7 @@
#include "privs.h"
#include "sigevent.h"
#include "filter.h"
+#include "zclient.h"
#include "isisd/dict.h"
#include "include-netbsd/iso.h"
@@ -75,6 +76,7 @@ struct option longopts[] = {
{"daemon", no_argument, NULL, 'd'},
{"config_file", required_argument, NULL, 'f'},
{"pid_file", required_argument, NULL, 'i'},
+ {"socket", required_argument, NULL, 'z'},
{"vty_addr", required_argument, NULL, 'A'},
{"vty_port", required_argument, NULL, 'P'},
{"user", required_argument, NULL, 'u'},
@@ -130,6 +132,7 @@ Daemon which manages IS-IS routing\n\n\
-d, --daemon Runs in daemon mode\n\
-f, --config_file Set configuration file name\n\
-i, --pid_file Set process identifier file name\n\
+-z, --socket Set path of zebra socket\n\
-A, --vty_addr Set vty's bind address\n\
-P, --vty_port Set vty's port number\n\
-u, --user User to run as\n\
@@ -246,7 +249,7 @@ main (int argc, char **argv, char **envp)
/* Command line argument treatment. */
while (1)
{
- opt = getopt_long (argc, argv, "df:i:hA:p:P:u:g:vC", longopts, 0);
+ opt = getopt_long (argc, argv, "df:i:z:hA:p:P:u:g:vC", longopts, 0);
if (opt == EOF)
break;
@@ -264,6 +267,9 @@ main (int argc, char **argv, char **envp)
case 'i':
pid_file = optarg;
break;
+ case 'z':
+ zclient_serv_path_set (optarg);
+ break;
case 'A':
vty_addr = optarg;
break;