diff options
author | Jeremy Allison <jra@samba.org> | 2007-10-19 11:38:36 -0700 |
---|---|---|
committer | Jeremy Allison <jra@samba.org> | 2007-10-19 11:38:36 -0700 |
commit | 9a85533914119fb995fb61555c9f6e0018d4d181 (patch) | |
tree | 61bd1af2845f9fa2eb7632c1173d382131772798 /source3/smbd | |
parent | 61e482cfdfec09ed01225320ba6a4acd47081f63 (diff) | |
download | samba-9a85533914119fb995fb61555c9f6e0018d4d181.tar.gz samba-9a85533914119fb995fb61555c9f6e0018d4d181.tar.bz2 samba-9a85533914119fb995fb61555c9f6e0018d4d181.zip |
Fix the popt / bool issues. Some places we used BOOL
where we meant int. Fix this. Thanks to metze for
pointing this out.
Jeremy.
(This used to be commit 793a9d24a163cb6cf5a3a0aa5ae30e9f8cf4744a)
Diffstat (limited to 'source3/smbd')
-rw-r--r-- | source3/smbd/server.c | 43 |
1 files changed, 32 insertions, 11 deletions
diff --git a/source3/smbd/server.c b/source3/smbd/server.c index 1ae2c71ddd..e52c2b3fba 100644 --- a/source3/smbd/server.c +++ b/source3/smbd/server.c @@ -882,24 +882,30 @@ extern void build_options(bool screen); int main(int argc,const char *argv[]) { /* shall I run as a daemon */ - static int is_daemon = False; - static int interactive = False; - static int Fork = True; - static int no_process_group = False; - static int log_stdout = False; + static bool is_daemon = False; + static bool interactive = False; + static bool Fork = True; + static bool no_process_group = False; + static bool log_stdout = False; static char *ports = NULL; static char *profile_level = NULL; int opt; poptContext pc; bool print_build_options = False; - + enum { + OPT_DAEMON = 1000, + OPT_INTERACTIVE, + OPT_FORK, + OPT_NO_PROCESS_GROUP, + OPT_LOG_STDOUT + }; struct poptOption long_options[] = { POPT_AUTOHELP - {"daemon", 'D', POPT_ARG_VAL, &is_daemon, True, "Become a daemon (default)" }, - {"interactive", 'i', POPT_ARG_VAL, &interactive, True, "Run interactive (not a daemon)"}, - {"foreground", 'F', POPT_ARG_VAL, &Fork, False, "Run daemon in foreground (for daemontools, etc.)" }, - {"no-process-group", '\0', POPT_ARG_VAL, &no_process_group, True, "Don't create a new process group" }, - {"log-stdout", 'S', POPT_ARG_VAL, &log_stdout, True, "Log to stdout" }, + {"daemon", 'D', POPT_ARG_NONE, NULL, OPT_DAEMON, "Become a daemon (default)" }, + {"interactive", 'i', POPT_ARG_NONE, NULL, OPT_INTERACTIVE, "Run interactive (not a daemon)"}, + {"foreground", 'F', POPT_ARG_NONE, NULL, OPT_FORK, "Run daemon in foreground (for daemontools, etc.)" }, + {"no-process-group", '\0', POPT_ARG_NONE, NULL, OPT_NO_PROCESS_GROUP, "Don't create a new process group" }, + {"log-stdout", 'S', POPT_ARG_NONE, NULL, OPT_LOG_STDOUT, "Log to stdout" }, {"build-options", 'b', POPT_ARG_NONE, NULL, 'b', "Print build options" }, {"port", 'p', POPT_ARG_STRING, &ports, 0, "Listen on the specified ports"}, {"profiling-level", 'P', POPT_ARG_STRING, &profile_level, 0, "Set profiling level","PROFILE_LEVEL"}, @@ -919,6 +925,21 @@ extern void build_options(bool screen); pc = poptGetContext("smbd", argc, argv, long_options, 0); while((opt = poptGetNextOpt(pc)) != -1) { switch (opt) { + case OPT_DAEMON: + is_daemon = true; + break; + case OPT_INTERACTIVE: + interactive = true; + break; + case OPT_FORK: + Fork = false; + break; + case OPT_NO_PROCESS_GROUP: + no_process_group = true; + break; + case OPT_LOG_STDOUT: + log_stdout = true; + break; case 'b': print_build_options = True; break; |