From: David Lamparter Date: Wed, 9 Aug 2017 18:42:27 +0000 (+0200) Subject: Merge remote-tracking branch 'frr/master' into tcp-zebra X-Git-Tag: frr-4.0-dev~432^2 X-Git-Url: https://git.puffer.fish/?a=commitdiff_plain;h=4e1fd26a5ef5adb25d53c2acbd9dbe8d18652ef5;p=matthieu%2Ffrr.git Merge remote-tracking branch 'frr/master' into tcp-zebra --- 4e1fd26a5ef5adb25d53c2acbd9dbe8d18652ef5 diff --cc lib/libfrr.c index c901dcc229,31d93009fa..e5573da900 --- a/lib/libfrr.c +++ b/lib/libfrr.c @@@ -19,10 -19,13 +19,14 @@@ */ #include +#include + #include + #include + #include "libfrr.h" #include "getopt.h" + #include "privs.h" #include "vty.h" #include "command.h" #include "version.h" @@@ -455,13 -399,16 +513,23 @@@ struct thread_master *frr_init(void zlog_set_level(ZLOG_DEST_SYSLOG, zlog_default->default_lvl); #endif + if (!frr_zclient_addr(&zclient_addr, &zclient_addr_len, + frr_zclientpath)) { + fprintf(stderr, "Invalid zserv socket path: %s\n", + frr_zclientpath); + exit(1); + } + + /* don't mkdir these as root... */ + if (!(di->flags & FRR_NO_PRIVSEP)) { + if (!di->pid_file || !di->vty_path) + frr_mkdir(frr_vtydir, false); + if (di->pid_file) + frr_mkdir(di->pid_file, true); + if (di->vty_path) + frr_mkdir(di->vty_path, true); + } + frrmod_init(di->module); while (modules) { modules = (oc = modules)->next;