daemon: ensure that base-path is an existing directory
Any request to the daemon would fail if base-path (if specified) is not a directory. We now check for this condition early. Signed-off-by: Johannes Sixt <johannes.sixt@telecom.at> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
22665bbaab
commit
2063207156
8
daemon.c
8
daemon.c
@ -1184,6 +1184,14 @@ int main(int argc, char **argv)
|
||||
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;
|
||||
|
Loading…
Reference in New Issue
Block a user