Skip to content

Commit

Permalink
Merge branch 'maint'
Browse files Browse the repository at this point in the history
* maint:
  Describe fixes since 1.6.2.3
  doc/git-daemon: add missing arguments to max-connections option
  doc/git-daemon: add missing arguments to options
  init: Do not segfault on big GIT_TEMPLATE_DIR environment variable
  imap-send: use correct configuration variable in documentation
  • Loading branch information
Junio C Hamano committed Apr 18, 2009
2 parents 1a1f063 + 67daebf commit cef5775
Show file tree
Hide file tree
Showing 5 changed files with 53 additions and 11 deletions.
31 changes: 31 additions & 0 deletions Documentation/RelNotes-1.6.2.4.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
GIT v1.6.2.4 Release Notes
==========================

Fixes since v1.6.2.3
--------------------

* The configuration parser had a buffer overflow while parsing an overlong
value.

* "git-checkout <tree-ish> <submodule>" did not update the index entry at
the named path; it now does.

* "git init" segfaulted when given an overlong template location via
the --template= option.

* "git-ls-tree" and "git-diff-tree" used a pathspec correctly when
deciding to descend into a subdirectory but they did not match the
individual paths correctly. This caused pathspecs "abc/d ab" to match
"abc/0" ("abc/d" made them decide to descend into the directory "abc/",
and then "ab" incorrectly matched "abc/0" when it shouldn't).

* "git-merge-recursive" was broken when a submodule entry was involved in
a criss-cross merge situation.

Many small documentation updates are included as well.

---
exec >/var/tmp/1
echo O=$(git describe maint)
O=v1.6.2.3-21-ga51609a
git shortlog --no-merges $O..maint
18 changes: 9 additions & 9 deletions Documentation/git-daemon.txt
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ OPTIONS
'git-daemon' will refuse to start when this option is enabled and no
whitelist is specified.

--base-path::
--base-path=path::
Remap all the path requests as relative to the given path.
This is sort of "GIT root" - if you run 'git-daemon' with
'--base-path=/srv/git' on example.com, then if you later try to pull
Expand Down Expand Up @@ -81,26 +81,26 @@ OPTIONS
Incompatible with --port, --listen, --user and --group options.

--listen=host_or_ipaddr::
Listen on an a specific IP address or hostname. IP addresses can
be either an IPv4 address or an IPV6 address if supported. If IPv6
Listen on a specific IP address or hostname. IP addresses can
be either an IPv4 address or an IPv6 address if supported. If IPv6
is not supported, then --listen=hostname is also not supported and
--listen must be given an IPv4 address.
Incompatible with '--inetd' option.

--port=n::
Listen on an alternative port. Incompatible with '--inetd' option.

--init-timeout::
--init-timeout=n::
Timeout between the moment the connection is established and the
client request is received (typically a rather low value, since
that should be basically immediate).

--timeout::
--timeout=n::
Timeout for specific client sub-requests. This includes the time
it takes for the server to process the sub-request and time spent
waiting for next client's request.
it takes for the server to process the sub-request and the time spent
waiting for the next client's request.

--max-connections::
--max-connections=n::
Maximum number of concurrent clients, defaults to 32. Set it to
zero for no limit.

Expand Down Expand Up @@ -150,7 +150,7 @@ the facility of inet daemon to achieve the same before spawning
Enable/disable the service site-wide per default. Note
that a service disabled site-wide can still be enabled
per repository if it is marked overridable and the
repository enables the service with an configuration
repository enables the service with a configuration
item.

--allow-override=service::
Expand Down
2 changes: 1 addition & 1 deletion Documentation/git-imap-send.txt
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ imap.host::
imap.user::
The username to use when logging in to the server.

imap.password::
imap.pass::
The password to use when logging in to the server.

imap.port::
Expand Down
4 changes: 3 additions & 1 deletion builtin-init-db.c
Original file line number Diff line number Diff line change
Expand Up @@ -122,8 +122,10 @@ static void copy_templates(const char *template_dir)
template_dir = system_path(DEFAULT_GIT_TEMPLATE_DIR);
if (!template_dir[0])
return;
template_len = strlen(template_dir);
if (PATH_MAX <= (template_len+strlen("/config")))
die("insanely long template path %s", template_dir);
strcpy(template_path, template_dir);
template_len = strlen(template_path);
if (template_path[template_len-1] != '/') {
template_path[template_len++] = '/';
template_path[template_len] = 0;
Expand Down
9 changes: 9 additions & 0 deletions t/t0001-init.sh
Original file line number Diff line number Diff line change
Expand Up @@ -199,4 +199,13 @@ test_expect_success 'init honors global core.sharedRepository' '
x`git config -f shared-honor-global/.git/config core.sharedRepository`
'

test_expect_success 'init rejects insanely long --template' '
(
insane=$(printf "x%09999dx" 1) &&
mkdir test &&
cd test &&
test_must_fail git init --template=$insane
)
'

test_done

0 comments on commit cef5775

Please sign in to comment.