threads / patch / 2561

patchdaemon.c: fix arg parsing bugs

Subject: [PATCH] daemon.c: fix arg parsing bugs

## tl;dr

One message between Nov 16, 2005 and Nov 16, 2005. Diffs are folded; open one to read it.

replies: 0people: 1as markdown or json

Andreas Ericsson· Nov 16, 2005, 23:38 UTC · lore

Allow --init-timeout and --timeout to be specified without falling through to usage().

Make sure openlog() is called even if implied by --inetd, or messages will be sent to wherever LOG_USER ends up.

Signed-off-by: Andreas Ericsson <ae@op5.se>
---
 daemon.c |    8 ++++++--
 1 files changed, 6 insertions(+), 2 deletions(-)

applies-to: 1e3fcf60526c196a46433e6947c9104ca236f230 83a3edea8623834fd7827f80cad2af4927f5a19e

Show changes to daemon.c +6 −2
diff --git a/daemon.c b/daemon.c
index e184752..2b81152 100644
--- a/daemon.c
+++ b/daemon.c
@@ -594,6 +594,7 @@ int main(int argc, char **argv)
 		}
 		if (!strcmp(arg, "--inetd")) {
 			inetd_mode = 1;
+			log_syslog = 1;
 			continue;
 		}
 		if (!strcmp(arg, "--verbose")) {
@@ -602,7 +603,6 @@ int main(int argc, char **argv)
 		}
 		if (!strcmp(arg, "--syslog")) {
 			log_syslog = 1;
-			openlog("git-daemon", 0, LOG_DAEMON);
 			continue;
 		}
 		if (!strcmp(arg, "--export-all")) {
@@ -611,9 +611,11 @@ int main(int argc, char **argv)
 		}
 		if (!strncmp(arg, "--timeout=", 10)) {
 			timeout = atoi(arg+10);
+			continue;
 		}
 		if (!strncmp(arg, "--init-timeout=", 15)) {
 			init_timeout = atoi(arg+15);
+			continue;
 		}
 		if (!strcmp(arg, "--")) {
 			ok_paths = &argv[i+1];
@@ -626,9 +628,11 @@ int main(int argc, char **argv)
 		usage(daemon_usage);
 	}
 
+	if (log_syslog)
+		openlog("git-daemon", 0, LOG_DAEMON);
+
 	if (inetd_mode) {
 		fclose(stderr); //FIXME: workaround
-		log_syslog = 1;
 		return execute();
 	}
 
---
0.99.9.GIT

← back to recent threads