Andrew's git
/
gitweb.git
/ diff
summary
|
log
|
commit
| diff |
tree
commit
grep
author
committer
pickaxe
?
re
daemon: ensure that base-path is an existing directory
author
Johannes Sixt
<j.sixt@viscovery.net>
Tue, 26 Feb 2008 12:00:55 +0000
(13:00 +0100)
committer
Junio C Hamano
<gitster@pobox.com>
Wed, 27 Feb 2008 22:47:36 +0000
(14:47 -0800)
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>
daemon.c
patch
|
blob
|
history
raw
|
patch
| inline |
side by side
(parent:
22665bb
)
diff --git
a/daemon.c
b/daemon.c
index dd0177f48d3192d3006394584e335ae1beba5db4..2b4a6f145cc0f37c95da31df23dfde3ba7fa63a7 100644
(file)
--- a/
daemon.c
+++ b/
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;