From: HAT Date: Thu, 5 Apr 2012 14:08:02 +0000 (+0900) Subject: start LOG earlier X-Git-Url: https://arthur.barton.de/gitweb/?p=netatalk.git;a=commitdiff_plain;h=7d6b6d1233e9bf0d93afb3270362ce4d904a6b65 start LOG earlier --- diff --git a/bin/ad/ad.c b/bin/ad/ad.c index 6115c2f2..883378f5 100644 --- a/bin/ad/ad.c +++ b/bin/ad/ad.c @@ -55,7 +55,7 @@ int main(int argc, char **argv) return 1; } - if (afp_config_parse(&obj) != 0) + if (afp_config_parse(&obj, "") != 0) return 1; if (load_volumes(&obj, NULL) != 0) diff --git a/etc/afpd/main.c b/etc/afpd/main.c index 9f45b5b2..550a809f 100644 --- a/etc/afpd/main.c +++ b/etc/afpd/main.c @@ -225,12 +225,9 @@ int main(int ac, char **av) /* Log SIGBUS/SIGSEGV SBT */ fault_setup(NULL); - if (afp_config_parse(&obj) != 0) + if (afp_config_parse(&obj, "afpd") != 0) afp_exit(EXITERR_CONF); - set_processname("afpd"); - setuplog(obj.options.logconfig, obj.options.logfile); - /* Save the user's current umask */ obj.options.save_mask = umask(obj.options.umask); diff --git a/etc/cnid_dbd/cmd_dbd.c b/etc/cnid_dbd/cmd_dbd.c index 7a1614f7..70f0014e 100644 --- a/etc/cnid_dbd/cmd_dbd.c +++ b/etc/cnid_dbd/cmd_dbd.c @@ -258,7 +258,7 @@ int main(int argc, char **argv) setuplog("default:debug", "/dev/tty"); /* Load config */ - if (afp_config_parse(&obj) != 0) { + if (afp_config_parse(&obj, "") != 0) { dbd_log( LOGSTD, "Couldn't load afp.conf"); exit(EXIT_FAILURE); } diff --git a/etc/cnid_dbd/cnid_metad.c b/etc/cnid_dbd/cnid_metad.c index b140fd09..7cfd3da8 100644 --- a/etc/cnid_dbd/cnid_metad.c +++ b/etc/cnid_dbd/cnid_metad.c @@ -499,12 +499,9 @@ int main(int argc, char *argv[]) if (!debug && daemonize(0, 0) != 0) exit(EXITERR_SYS); - if (afp_config_parse(&obj) != 0) + if (afp_config_parse(&obj, "cnid_metad") != 0) daemon_exit(1); - set_processname("cnid_metad"); - setuplog(obj.options.logconfig, obj.options.logfile); - if (load_volumes(&obj, NULL) != 0) daemon_exit(1); diff --git a/etc/cnid_dbd/main.c b/etc/cnid_dbd/main.c index a5fbb2a2..8ed0e5ff 100644 --- a/etc/cnid_dbd/main.c +++ b/etc/cnid_dbd/main.c @@ -312,10 +312,7 @@ int main(int argc, char *argv[]) exit(EXIT_FAILURE); } - EC_ZERO( afp_config_parse(&obj) ); - - set_processname("cnid_dbd"); - setuplog(obj.options.logconfig, obj.options.logfile); + EC_ZERO( afp_config_parse(&obj, "cnid_dbd") ); EC_ZERO( load_volumes(&obj, NULL) ); EC_NULL( vol = getvolbypath(&obj, volpath) ); diff --git a/etc/netatalk/netatalk.c b/etc/netatalk/netatalk.c index 3d052f46..f2a94102 100644 --- a/etc/netatalk/netatalk.c +++ b/etc/netatalk/netatalk.c @@ -272,11 +272,9 @@ int main(int argc, char **argv) sigfillset(&blocksigs); sigprocmask(SIG_SETMASK, &blocksigs, NULL); - if (afp_config_parse(&obj) != 0) + if (afp_config_parse(&obj, "netatalk") != 0) netatalk_exit(EXITERR_CONF); - set_processname("netatalk"); - setuplog(obj.options.logconfig, obj.options.logfile); event_set_log_callback(libevent_logmsg_cb); event_set_fatal_callback(netatalk_exit); diff --git a/include/atalk/netatalk_conf.h b/include/atalk/netatalk_conf.h index 5715df74..4c914857 100644 --- a/include/atalk/netatalk_conf.h +++ b/include/atalk/netatalk_conf.h @@ -20,7 +20,7 @@ #include #include -extern int afp_config_parse(AFPObj *obj); +extern int afp_config_parse(AFPObj *obj, char *processname); extern int load_charset(struct vol *vol); extern int load_volumes(AFPObj *obj, void (*delvol_fn)(struct vol *)); diff --git a/libatalk/util/netatalk_conf.c b/libatalk/util/netatalk_conf.c index a75ded21..98d1c806 100644 --- a/libatalk/util/netatalk_conf.c +++ b/libatalk/util/netatalk_conf.c @@ -1380,7 +1380,7 @@ struct vol *getvolbyname(const char *name) /*! * Initialize an AFPObj and options from ini config file */ -int afp_config_parse(AFPObj *AFPObj) +int afp_config_parse(AFPObj *AFPObj, char *processname) { EC_INIT; dictionary *config; @@ -1404,6 +1404,11 @@ int afp_config_parse(AFPObj *AFPObj) options->logconfig = iniparser_getstrdup(config, INISEC_GLOBAL, "log level", "default:note"); options->logfile = iniparser_getstrdup(config, INISEC_GLOBAL, "log file", NULL); + if (processname[0] != '\0') { + set_processname(processname); + setuplog(options->logconfig, options->logfile); + } + /* "server options" boolean options */ if (!iniparser_getboolean(config, INISEC_GLOBAL, "zeroconf", 1)) options->flags |= OPTION_NOZEROCONF; diff --git a/test/afpd/test.c b/test/afpd/test.c index 1a883002..acc46a87 100644 --- a/test/afpd/test.c +++ b/test/afpd/test.c @@ -64,7 +64,7 @@ int main(int argc, char **argv) TEST( afp_options_parse_cmdline(&obj, 3, &args[0]) ); - TEST_int( afp_config_parse(&obj), 0); + TEST_int( afp_config_parse(&obj, ""), 0); TEST_int( configinit(&obj), 0); TEST( cnid_init() ); TEST( load_volumes(&obj, NULL) );