diff options
author | Junio C Hamano <gitster@pobox.com> | 2012-09-03 15:54:03 -0700 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2012-09-03 15:54:03 -0700 |
commit | 19801d6a2768b9ce056da4635a287885d08940cb (patch) | |
tree | 686a4f4de3490f1eb9bc7f69a1a8dd2dd9c490e5 /Documentation/git-daemon.txt | |
parent | 200282f1c7eca23ad34b1c5f81bf4b9de334a7d1 (diff) | |
parent | 93741e4a915fc33a00e6facff88cd27565d10f82 (diff) | |
download | git-19801d6a2768b9ce056da4635a287885d08940cb.tar.gz |
Merge branch 'jc/daemon-access-hook'
Allow an external command to tell git-daemon to decline service
based on the client address, repository path, etc.
* jc/daemon-access-hook:
daemon: --access-hook option
Diffstat (limited to 'Documentation/git-daemon.txt')
-rw-r--r-- | Documentation/git-daemon.txt | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/Documentation/git-daemon.txt b/Documentation/git-daemon.txt index e8f757704c..7e5098a95e 100644 --- a/Documentation/git-daemon.txt +++ b/Documentation/git-daemon.txt @@ -16,6 +16,7 @@ SYNOPSIS [--reuseaddr] [--detach] [--pid-file=<file>] [--enable=<service>] [--disable=<service>] [--allow-override=<service>] [--forbid-override=<service>] + [--access-hook=<path>] [--inetd | [--listen=<host_or_ipaddr>] [--port=<n>] [--user=<user> [--group=<group>]] [<directory>...] @@ -171,6 +172,21 @@ the facility of inet daemon to achieve the same before spawning errors are not enabled, all errors report "access denied" to the client. The default is --no-informative-errors. +--access-hook=<path>:: + Every time a client connects, first run an external command + specified by the <path> with service name (e.g. "upload-pack"), + path to the repository, hostname (%H), canonical hostname + (%CH), ip address (%IP), and tcp port (%P) as its command line + arguments. The external command can decide to decline the + service by exiting with a non-zero status (or to allow it by + exiting with a zero status). It can also look at the $REMOTE_ADDR + and $REMOTE_PORT environment variables to learn about the + requestor when making this decision. ++ +The external command can optionally write a single line to its +standard output to be sent to the requestor as an error message when +it declines the service. + <directory>:: A directory to add to the whitelist of allowed directories. Unless --strict-paths is specified this will also include subdirectories |