diff options
author | Junio C Hamano <gitster@pobox.com> | 2008-03-08 02:20:30 -0800 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2008-03-08 02:20:30 -0800 |
commit | 1f1300b4f16591feaa1387e967752af33d4fffda (patch) | |
tree | f6cd86dea9a8df410b1c4312282c1885714706d0 | |
parent | Merge branch 'js/maint-cvsexport' into maint (diff) | |
parent | daemon: ensure that base-path is an existing directory (diff) | |
download | tgif-1f1300b4f16591feaa1387e967752af33d4fffda.tar.xz |
Merge branch 'js/maint-daemon' into maint
* js/maint-daemon:
daemon: ensure that base-path is an existing directory
daemon: send more error messages to the syslog
-rw-r--r-- | daemon.c | 18 |
1 files changed, 13 insertions, 5 deletions
@@ -1149,6 +1149,11 @@ int main(int argc, char **argv) usage(daemon_usage); } + if (log_syslog) { + openlog("git-daemon", 0, LOG_DAEMON); + set_die_routine(daemon_die); + } + if (inetd_mode && (group_name || user_name)) die("--user and --group are incompatible with --inetd"); @@ -1176,14 +1181,17 @@ int main(int argc, char **argv) } } - if (log_syslog) { - openlog("git-daemon", 0, LOG_DAEMON); - set_die_routine(daemon_die); - } - if (strict_paths && (!ok_paths || !*ok_paths)) die("option --strict-paths requires a whitelist"); + if (base_path) { + struct stat st; + + if (stat(base_path, &st) || !S_ISDIR(st.st_mode)) + die("base-path '%s' does not exist or " + "is not a directory", base_path); + } + if (inetd_mode) { struct sockaddr_storage ss; struct sockaddr *peer = (struct sockaddr *)&ss; |