struct server_cmdline_parser_params params = {
.override = override,
.initialize = 0,
- .check_required = 0,
- .check_ambiguity = 0
+ .check_required = 1,
+ .check_ambiguity = 0,
+ .print_errors = 1
};
server_cmdline_parser_config_file(cf, &conf, ¶ms);
conf.daemon_given = tmp;
}
- /* logfile */
- if (!conf.logfile_given && conf.daemon_given) {
- ret = -1;
- PARA_EMERG_LOG("fatal: daemon option, but no log file given\n");
- goto out;
- }
if (conf.logfile_given)
logfile = open_log(conf.logfile_arg);
ret = 1;
{
/* connector's address information */
int sockfd;
-
+ struct server_cmdline_parser_params params = {
+ .override = 0,
+ .initialize = 1,
+ .check_required = 0,
+ .check_ambiguity = 0,
+ .print_errors = 1
+ };
init_random_seed();
/* parse command line options */
- server_cmdline_parser(argc, argv, &conf);
+ server_cmdline_parser_ext(argc, argv, &conf, ¶ms);
HANDLE_VERSION_FLAG("server", conf);
para_drop_privileges(conf.user_arg, conf.group_arg);
/* parse config file, open log and set defaults */
mmd_unlock();
ret = para_select(max_fileno + 1, &rfds, &wfds, timeout);
mmd_lock();
- vss_post_select(&rfds, &wfds);
if (ret < 0)
goto repeat;
+ vss_post_select(&rfds, &wfds);
for (i = 0; senders[i].name; i++) {
if (!senders[i].post_select)
continue;