Revision 883653babd8ee7ea23e6a5c392bb739348b1eb61 authored by Junio C Hamano on 13 September 2006, 06:53:27 UTC, committed by Junio C Hamano on 13 September 2006, 07:54:43 UTC
Fetch over http from a repository that uses alternates to borrow from neighbouring repositories were quite broken, apparently for some time now. We parse input and count bytes to allocate the new buffer, and when we copy into that buffer we know exactly how many bytes we want to copy from where. Using strlcpy for it was simply stupid, and the code forgot to take it into account that strlcpy terminated the string with NUL. Signed-off-by: Junio C Hamano <junkio@cox.net>
1 parent 60a6bf5
File | Mode | Size |
---|---|---|
Documentation | ||
arm | ||
compat | ||
contrib | ||
gitweb | ||
mozilla-sha1 | ||
ppc | ||
t | ||
templates | ||
xdiff | ||
.gitignore | -rw-r--r-- | 1.9 KB |
COPYING | -rw-r--r-- | 18.3 KB |
GIT-VERSION-GEN | -rwxr-xr-x | 747 bytes |
INSTALL | -rw-r--r-- | 4.7 KB |
Makefile | -rw-r--r-- | 23.9 KB |
README | -rw-r--r-- | 24.7 KB |
alloc.c | -rw-r--r-- | 1.4 KB |
base85.c | -rw-r--r-- | 2.9 KB |
blame.c | -rw-r--r-- | 20.4 KB |
blob.c | -rw-r--r-- | 1.2 KB |
blob.h | -rw-r--r-- | 311 bytes |
builtin-add.c | -rw-r--r-- | 3.0 KB |
builtin-apply.c | -rw-r--r-- | 57.8 KB |
builtin-cat-file.c | -rw-r--r-- | 3.5 KB |
builtin-check-ref-format.c | -rw-r--r-- | 282 bytes |
builtin-commit-tree.c | -rw-r--r-- | 3.3 KB |
builtin-count.c | -rw-r--r-- | 2.8 KB |
builtin-diff-files.c | -rw-r--r-- | 1.5 KB |
builtin-diff-index.c | -rw-r--r-- | 1.0 KB |
builtin-diff-stages.c | -rw-r--r-- | 2.5 KB |
builtin-diff-tree.c | -rw-r--r-- | 3.2 KB |
builtin-diff.c | -rw-r--r-- | 8.8 KB |
builtin-fmt-merge-msg.c | -rw-r--r-- | 7.8 KB |
builtin-grep.c | -rw-r--r-- | 26.5 KB |
builtin-help.c | -rw-r--r-- | 4.8 KB |
builtin-init-db.c | -rw-r--r-- | 8.1 KB |
builtin-log.c | -rw-r--r-- | 11.1 KB |
builtin-ls-files.c | -rw-r--r-- | 11.5 KB |
builtin-ls-tree.c | -rw-r--r-- | 3.5 KB |
builtin-mailinfo.c | -rw-r--r-- | 17.5 KB |
builtin-mailsplit.c | -rw-r--r-- | 4.2 KB |
builtin-mv.c | -rw-r--r-- | 7.3 KB |
builtin-prune-packed.c | -rw-r--r-- | 1.5 KB |
builtin-prune.c | -rw-r--r-- | 5.5 KB |
builtin-push.c | -rw-r--r-- | 6.4 KB |
builtin-read-tree.c | -rw-r--r-- | 22.9 KB |
builtin-repo-config.c | -rw-r--r-- | 4.7 KB |
builtin-rev-list.c | -rw-r--r-- | 8.3 KB |
builtin-rev-parse.c | -rw-r--r-- | 7.7 KB |
builtin-rm.c | -rw-r--r-- | 3.1 KB |
builtin-show-branch.c | -rw-r--r-- | 18.2 KB |
builtin-stripspace.c | -rw-r--r-- | 1.0 KB |
builtin-tar-tree.c | -rw-r--r-- | 10.6 KB |
builtin-update-index.c | -rw-r--r-- | 16.5 KB |
builtin-update-ref.c | -rw-r--r-- | 1.3 KB |
builtin-upload-tar.c | -rw-r--r-- | 1.6 KB |
builtin-write-tree.c | -rw-r--r-- | 2.1 KB |
builtin.h | -rw-r--r-- | 3.5 KB |
cache-tree.c | -rw-r--r-- | 12.5 KB |
cache-tree.h | -rw-r--r-- | 921 bytes |
cache.h | -rw-r--r-- | 14.0 KB |
checkout-index.c | -rw-r--r-- | 7.5 KB |
combine-diff.c | -rw-r--r-- | 24.2 KB |
commit.c | -rw-r--r-- | 22.5 KB |
commit.h | -rw-r--r-- | 3.1 KB |
config.c | -rw-r--r-- | 15.6 KB |
config.mak.in | -rw-r--r-- | 494 bytes |
configure.ac | -rw-r--r-- | 6.4 KB |
connect.c | -rw-r--r-- | 15.6 KB |
convert-objects.c | -rw-r--r-- | 7.4 KB |
copy.c | -rw-r--r-- | 692 bytes |
csum-file.c | -rw-r--r-- | 2.9 KB |
csum-file.h | -rw-r--r-- | 566 bytes |
ctype.c | -rw-r--r-- | 890 bytes |
daemon.c | -rw-r--r-- | 17.8 KB |
date.c | -rw-r--r-- | 15.0 KB |
delta.h | -rw-r--r-- | 3.2 KB |
describe.c | -rw-r--r-- | 3.7 KB |
diff-delta.c | -rw-r--r-- | 13.8 KB |
diff-lib.c | -rw-r--r-- | 7.9 KB |
diff.c | -rw-r--r-- | 61.3 KB |
diff.h | -rw-r--r-- | 6.1 KB |
diffcore-break.c | -rw-r--r-- | 8.5 KB |
diffcore-delta.c | -rw-r--r-- | 5.1 KB |
diffcore-order.c | -rw-r--r-- | 2.2 KB |
diffcore-pickaxe.c | -rw-r--r-- | 3.2 KB |
diffcore-rename.c | -rw-r--r-- | 12.8 KB |
diffcore.h | -rw-r--r-- | 3.7 KB |
dir.c | -rw-r--r-- | 8.8 KB |
dir.h | -rw-r--r-- | 1.3 KB |
dump-cache-tree.c | -rw-r--r-- | 1.5 KB |
entry.c | -rw-r--r-- | 4.1 KB |
environment.c | -rw-r--r-- | 2.0 KB |
exec_cmd.c | -rw-r--r-- | 3.0 KB |
exec_cmd.h | -rw-r--r-- | 295 bytes |
fetch-clone.c | -rw-r--r-- | 6.8 KB |
fetch-pack.c | -rw-r--r-- | 11.8 KB |
fetch.c | -rw-r--r-- | 6.5 KB |
fetch.h | -rw-r--r-- | 1.6 KB |
fsck-objects.c | -rw-r--r-- | 13.3 KB |
generate-cmdlist.sh | -rwxr-xr-x | 550 bytes |
git-am.sh | -rwxr-xr-x | 10.3 KB |
git-annotate.perl | -rwxr-xr-x | 14.8 KB |
git-applymbox.sh | -rwxr-xr-x | 2.8 KB |
git-applypatch.sh | -rwxr-xr-x | 5.4 KB |
git-archimport.perl | -rwxr-xr-x | 34.2 KB |
git-bisect.sh | -rwxr-xr-x | 5.7 KB |
git-branch.sh | -rwxr-xr-x | 2.6 KB |
git-checkout.sh | -rwxr-xr-x | 4.9 KB |
git-cherry.sh | -rwxr-xr-x | 1.9 KB |
git-clean.sh | -rwxr-xr-x | 1.5 KB |
git-clone.sh | -rwxr-xr-x | 9.9 KB |
git-commit.sh | -rwxr-xr-x | 16.1 KB |
git-compat-util.h | -rw-r--r-- | 4.0 KB |
git-cvsexportcommit.perl | -rwxr-xr-x | 8.2 KB |
git-cvsimport.perl | -rwxr-xr-x | 23.4 KB |
git-cvsserver.perl | -rwxr-xr-x | 89.4 KB |
git-fetch.sh | -rwxr-xr-x | 10.3 KB |
git-instaweb.sh | -rwxr-xr-x | 4.9 KB |
git-lost-found.sh | -rwxr-xr-x | 468 bytes |
git-ls-remote.sh | -rwxr-xr-x | 2.0 KB |
git-merge-octopus.sh | -rwxr-xr-x | 2.4 KB |
git-merge-one-file.sh | -rwxr-xr-x | 2.7 KB |
git-merge-ours.sh | -rwxr-xr-x | 356 bytes |
git-merge-recursive.py | -rwxr-xr-x | 30.8 KB |
git-merge-resolve.sh | -rwxr-xr-x | 955 bytes |
git-merge-stupid.sh | -rwxr-xr-x | 1.4 KB |
git-merge.sh | -rwxr-xr-x | 7.9 KB |
git-p4import.py | -rw-r--r-- | 10.5 KB |
git-parse-remote.sh | -rwxr-xr-x | 4.8 KB |
git-pull.sh | -rwxr-xr-x | 2.6 KB |
git-quiltimport.sh | -rwxr-xr-x | 3.0 KB |
git-rebase.sh | -rwxr-xr-x | 7.8 KB |
git-relink.perl | -rwxr-xr-x | 4.0 KB |
git-repack.sh | -rwxr-xr-x | 2.3 KB |
git-request-pull.sh | -rwxr-xr-x | 844 bytes |
git-rerere.perl | -rwxr-xr-x | 4.8 KB |
git-reset.sh | -rwxr-xr-x | 1.5 KB |
git-resolve.sh | -rwxr-xr-x | 2.5 KB |
git-revert.sh | -rwxr-xr-x | 4.0 KB |
git-send-email.perl | -rwxr-xr-x | 15.0 KB |
git-sh-setup.sh | -rwxr-xr-x | 1014 bytes |
git-shortlog.perl | -rwxr-xr-x | 4.0 KB |
git-svn.perl | -rwxr-xr-x | 85.9 KB |
git-svnimport.perl | -rwxr-xr-x | 22.8 KB |
git-tag.sh | -rwxr-xr-x | 2.2 KB |
git-verify-tag.sh | -rwxr-xr-x | 703 bytes |
git.c | -rw-r--r-- | 9.1 KB |
git.spec.in | -rw-r--r-- | 6.3 KB |
gitMergeCommon.py | -rw-r--r-- | 6.9 KB |
gitk | -rwxr-xr-x | 157.3 KB |
hash-object.c | -rw-r--r-- | 1.8 KB |
http-fetch.c | -rw-r--r-- | 32.4 KB |
http-push.c | -rw-r--r-- | 67.0 KB |
http.c | -rw-r--r-- | 11.1 KB |
http.h | -rw-r--r-- | 2.3 KB |
ident.c | -rw-r--r-- | 5.1 KB |
imap-send.c | -rw-r--r-- | 29.0 KB |
index-pack.c | -rw-r--r-- | 11.6 KB |
local-fetch.c | -rw-r--r-- | 6.1 KB |
lockfile.c | -rw-r--r-- | 1.5 KB |
log-tree.c | -rw-r--r-- | 7.7 KB |
log-tree.h | -rw-r--r-- | 386 bytes |
merge-base.c | -rw-r--r-- | 1.2 KB |
merge-file.c | -rw-r--r-- | 3.3 KB |
merge-index.c | -rw-r--r-- | 2.7 KB |
merge-tree.c | -rw-r--r-- | 7.8 KB |
mktag.c | -rw-r--r-- | 3.9 KB |
mktree.c | -rw-r--r-- | 3.1 KB |
name-rev.c | -rw-r--r-- | 5.4 KB |
object-refs.c | -rw-r--r-- | 3.0 KB |
object.c | -rw-r--r-- | 5.1 KB |
object.h | -rw-r--r-- | 2.3 KB |
pack-check.c | -rw-r--r-- | 4.2 KB |
pack-objects.c | -rw-r--r-- | 33.5 KB |
pack-redundant.c | -rw-r--r-- | 14.3 KB |
pack.h | -rw-r--r-- | 519 bytes |
pager.c | -rw-r--r-- | 929 bytes |
patch-delta.c | -rw-r--r-- | 2.1 KB |
patch-id.c | -rw-r--r-- | 1.6 KB |
path-list.c | -rw-r--r-- | 2.3 KB |
path-list.h | -rw-r--r-- | 603 bytes |
path.c | -rw-r--r-- | 5.8 KB |
peek-remote.c | -rw-r--r-- | 1.3 KB |
pkt-line.c | -rw-r--r-- | 2.4 KB |
pkt-line.h | -rw-r--r-- | 348 bytes |
quote.c | -rw-r--r-- | 5.9 KB |
quote.h | -rw-r--r-- | 1.6 KB |
read-cache.c | -rw-r--r-- | 24.1 KB |
receive-pack.c | -rw-r--r-- | 7.6 KB |
refs.c | -rw-r--r-- | 12.3 KB |
refs.h | -rw-r--r-- | 1.6 KB |
revision.c | -rw-r--r-- | 26.2 KB |
revision.h | -rw-r--r-- | 2.6 KB |
rsh.c | -rw-r--r-- | 2.3 KB |
rsh.h | -rw-r--r-- | 159 bytes |
run-command.c | -rw-r--r-- | 1.5 KB |
run-command.h | -rw-r--r-- | 523 bytes |
send-pack.c | -rw-r--r-- | 9.2 KB |
server-info.c | -rw-r--r-- | 5.1 KB |
setup.c | -rw-r--r-- | 6.1 KB |
sha1_file.c | -rw-r--r-- | 41.8 KB |
sha1_name.c | -rw-r--r-- | 12.1 KB |
shell.c | -rw-r--r-- | 1.1 KB |
show-index.c | -rw-r--r-- | 593 bytes |
ssh-fetch.c | -rw-r--r-- | 3.6 KB |
ssh-pull.c | -rw-r--r-- | 154 bytes |
ssh-push.c | -rw-r--r-- | 155 bytes |
ssh-upload.c | -rw-r--r-- | 2.8 KB |
strbuf.c | -rw-r--r-- | 807 bytes |
strbuf.h | -rw-r--r-- | 216 bytes |
symbolic-ref.c | -rw-r--r-- | 785 bytes |
tag.c | -rw-r--r-- | 2.6 KB |
tag.h | -rw-r--r-- | 471 bytes |
tar.h | -rw-r--r-- | 644 bytes |
test-date.c | -rw-r--r-- | 416 bytes |
test-delta.c | -rw-r--r-- | 1.8 KB |
test-sha1.c | -rw-r--r-- | 815 bytes |
test-sha1.sh | -rwxr-xr-x | 1.9 KB |
tree-diff.c | -rw-r--r-- | 5.7 KB |
tree-walk.c | -rw-r--r-- | 4.3 KB |
tree-walk.h | -rw-r--r-- | 863 bytes |
tree.c | -rw-r--r-- | 5.0 KB |
tree.h | -rw-r--r-- | 860 bytes |
unpack-file.c | -rw-r--r-- | 812 bytes |
unpack-objects.c | -rw-r--r-- | 6.5 KB |
update-server-info.c | -rw-r--r-- | 457 bytes |
upload-pack.c | -rw-r--r-- | 11.3 KB |
usage.c | -rw-r--r-- | 1.5 KB |
var.c | -rw-r--r-- | 1.3 KB |
verify-pack.c | -rw-r--r-- | 1.6 KB |
xdiff-interface.c | -rw-r--r-- | 2.2 KB |
xdiff-interface.h | -rw-r--r-- | 446 bytes |
Computing file changes ...