Revision 24557209500e6ed618f04a8795a111a0c491a29c authored by Patrick Steinhardt on 01 December 2022, 14:45:23 UTC, committed by Junio C Hamano on 05 December 2022, 06:14:16 UTC
It is possible to trigger an integer overflow when parsing attribute names that are longer than 2^31 bytes because we assign the result of strlen(3P) to an `int` instead of to a `size_t`. This can lead to an abort in vsnprintf(3P) with the following reproducer: blob=$(perl -e 'print "A " . "B"x2147483648 . "\n"' | git hash-object -w --stdin) git update-index --add --cacheinfo 100644,$blob,.gitattributes git check-attr --all path BUG: strbuf.c:400: your vsnprintf is broken (returned -1) But furthermore, assuming that the attribute name is even longer than that, it can cause us to silently truncate the attribute and thus lead to wrong results. Fix this integer overflow by using a `size_t` instead. This fixes the silent truncation of attribute names, but it only partially fixes the BUG we hit: even though the initial BUG is fixed, we can still hit a BUG when parsing invalid attribute lines via `report_invalid_attr()`. This is due to an underlying design issue in vsnprintf(3P) which only knows to return an `int`, and thus it may always overflow with large inputs. This issue is benign though: the worst that can happen is that the error message is misreported to be either truncated or too long, but due to the buffer being NUL terminated we wouldn't ever do an out-of-bounds read here. Reported-by: Markus Vervier <markus.vervier@x41-dsec.de> Signed-off-by: Patrick Steinhardt <ps@pks.im> Signed-off-by: Junio C Hamano <gitster@pobox.com>
1 parent 8d0d48c
File | Mode | Size |
---|---|---|
.github | ||
Documentation | ||
block-sha1 | ||
builtin | ||
ci | ||
compat | ||
contrib | ||
ewah | ||
git-gui | ||
gitk-git | ||
gitweb | ||
mergetools | ||
negotiator | ||
perl | ||
po | ||
ppc | ||
refs | ||
sha1collisiondetection @ 855827c | ||
sha1dc | ||
sha256 | ||
t | ||
templates | ||
trace2 | ||
vcs-svn | ||
xdiff | ||
.cirrus.yml | -rw-r--r-- | 312 bytes |
.clang-format | -rw-r--r-- | 5.0 KB |
.editorconfig | -rw-r--r-- | 288 bytes |
.gitattributes | -rw-r--r-- | 544 bytes |
.gitignore | -rw-r--r-- | 3.4 KB |
.gitmodules | -rw-r--r-- | 153 bytes |
.mailmap | -rw-r--r-- | 16.6 KB |
.travis.yml | -rw-r--r-- | 1.0 KB |
.tsan-suppressions | -rw-r--r-- | 689 bytes |
CODE_OF_CONDUCT.md | -rw-r--r-- | 3.9 KB |
COPYING | -rw-r--r-- | 18.3 KB |
GIT-VERSION-GEN | -rwxr-xr-x | 752 bytes |
INSTALL | -rw-r--r-- | 9.8 KB |
LGPL-2.1 | -rw-r--r-- | 26.2 KB |
Makefile | -rw-r--r-- | 101.6 KB |
README.md | -rw-r--r-- | 3.2 KB |
RelNotes | l--------- | 33 bytes |
abspath.c | -rw-r--r-- | 6.4 KB |
aclocal.m4 | -rw-r--r-- | 1.4 KB |
add-interactive.c | -rw-r--r-- | 30.4 KB |
add-interactive.h | -rw-r--r-- | 965 bytes |
add-patch.c | -rw-r--r-- | 50.0 KB |
advice.c | -rw-r--r-- | 9.7 KB |
advice.h | -rw-r--r-- | 2.9 KB |
alias.c | -rw-r--r-- | 2.3 KB |
alias.h | -rw-r--r-- | 310 bytes |
alloc.c | -rw-r--r-- | 3.2 KB |
alloc.h | -rw-r--r-- | 527 bytes |
apply.c | -rw-r--r-- | 131.1 KB |
apply.h | -rw-r--r-- | 5.3 KB |
archive-tar.c | -rw-r--r-- | 12.3 KB |
archive-zip.c | -rw-r--r-- | 17.1 KB |
archive.c | -rw-r--r-- | 17.8 KB |
archive.h | -rw-r--r-- | 1.4 KB |
attr.c | -rw-r--r-- | 28.1 KB |
attr.h | -rw-r--r-- | 6.3 KB |
banned.h | -rw-r--r-- | 1.1 KB |
base85.c | -rw-r--r-- | 2.8 KB |
bisect.c | -rw-r--r-- | 30.1 KB |
bisect.h | -rw-r--r-- | 2.2 KB |
blame.c | -rw-r--r-- | 83.5 KB |
blame.h | -rw-r--r-- | 5.6 KB |
blob.c | -rw-r--r-- | 461 bytes |
blob.h | -rw-r--r-- | 688 bytes |
bloom.c | -rw-r--r-- | 8.0 KB |
bloom.h | -rw-r--r-- | 3.0 KB |
branch.c | -rw-r--r-- | 10.1 KB |
branch.h | -rw-r--r-- | 3.0 KB |
builtin.h | -rw-r--r-- | 12.3 KB |
bulk-checkin.c | -rw-r--r-- | 7.3 KB |
bulk-checkin.h | -rw-r--r-- | 323 bytes |
bundle.c | -rw-r--r-- | 14.4 KB |
bundle.h | -rw-r--r-- | 894 bytes |
cache-tree.c | -rw-r--r-- | 20.8 KB |
cache-tree.h | -rw-r--r-- | 2.1 KB |
cache.h | -rw-r--r-- | 65.8 KB |
chdir-notify.c | -rw-r--r-- | 1.8 KB |
chdir-notify.h | -rw-r--r-- | 2.5 KB |
check-builtins.sh | -rwxr-xr-x | 596 bytes |
check_bindir | -rwxr-xr-x | 374 bytes |
checkout.c | -rw-r--r-- | 1.9 KB |
checkout.h | -rw-r--r-- | 369 bytes |
color.c | -rw-r--r-- | 9.6 KB |
color.h | -rw-r--r-- | 4.8 KB |
column.c | -rw-r--r-- | 9.4 KB |
column.h | -rw-r--r-- | 1.4 KB |
combine-diff.c | -rw-r--r-- | 43.0 KB |
command-list.txt | -rw-r--r-- | 11.5 KB |
commit-graph.c | -rw-r--r-- | 64.1 KB |
commit-graph.h | -rw-r--r-- | 4.7 KB |
commit-reach.c | -rw-r--r-- | 20.0 KB |
commit-reach.h | -rw-r--r-- | 3.8 KB |
commit-slab-decl.h | -rw-r--r-- | 1.4 KB |
commit-slab-impl.h | -rw-r--r-- | 3.1 KB |
commit-slab.h | -rw-r--r-- | 2.5 KB |
commit.c | -rw-r--r-- | 40.8 KB |
commit.h | -rw-r--r-- | 12.6 KB |
common-main.c | -rw-r--r-- | 1.3 KB |
config.c | -rw-r--r-- | 81.9 KB |
config.h | -rw-r--r-- | 22.1 KB |
config.mak.dev | -rw-r--r-- | 1.7 KB |
config.mak.in | -rw-r--r-- | 540 bytes |
config.mak.uname | -rw-r--r-- | 23.7 KB |
configure.ac | -rw-r--r-- | 38.5 KB |
connect.c | -rw-r--r-- | 34.9 KB |
connect.h | -rw-r--r-- | 1.2 KB |
connected.c | -rw-r--r-- | 4.3 KB |
connected.h | -rw-r--r-- | 1.7 KB |
convert.c | -rw-r--r-- | 49.2 KB |
convert.h | -rw-r--r-- | 5.0 KB |
copy.c | -rw-r--r-- | 1.3 KB |
credential.c | -rw-r--r-- | 12.1 KB |
credential.h | -rw-r--r-- | 6.4 KB |
csum-file.c | -rw-r--r-- | 4.1 KB |
csum-file.h | -rw-r--r-- | 1.7 KB |
ctype.c | -rw-r--r-- | 2.6 KB |
daemon.c | -rw-r--r-- | 34.6 KB |
date.c | -rw-r--r-- | 31.5 KB |
decorate.c | -rw-r--r-- | 1.7 KB |
decorate.h | -rw-r--r-- | 1.4 KB |
delta-islands.c | -rw-r--r-- | 11.7 KB |
delta-islands.h | -rw-r--r-- | 572 bytes |
delta.h | -rw-r--r-- | 3.3 KB |
detect-compiler | -rwxr-xr-x | 1016 bytes |
diff-delta.c | -rw-r--r-- | 15.5 KB |
diff-lib.c | -rw-r--r-- | 17.6 KB |
diff-no-index.c | -rw-r--r-- | 7.2 KB |
diff.c | -rw-r--r-- | 191.9 KB |
diff.h | -rw-r--r-- | 19.8 KB |
diffcore-break.c | -rw-r--r-- | 9.3 KB |
diffcore-delta.c | -rw-r--r-- | 5.5 KB |
diffcore-order.c | -rw-r--r-- | 2.4 KB |
diffcore-pickaxe.c | -rw-r--r-- | 6.6 KB |
diffcore-rename.c | -rw-r--r-- | 19.3 KB |
diffcore.h | -rw-r--r-- | 6.6 KB |
dir-iterator.c | -rw-r--r-- | 5.8 KB |
dir-iterator.h | -rw-r--r-- | 4.3 KB |
dir.c | -rw-r--r-- | 96.1 KB |
dir.h | -rw-r--r-- | 16.4 KB |
editor.c | -rw-r--r-- | 3.0 KB |
entry.c | -rw-r--r-- | 14.0 KB |
environment.c | -rw-r--r-- | 11.0 KB |
exec-cmd.c | -rw-r--r-- | 8.0 KB |
exec-cmd.h | -rw-r--r-- | 475 bytes |
fetch-negotiator.c | -rw-r--r-- | 609 bytes |
fetch-negotiator.h | -rw-r--r-- | 1.6 KB |
fetch-pack.c | -rw-r--r-- | 53.8 KB |
fetch-pack.h | -rw-r--r-- | 2.6 KB |
fmt-merge-msg.c | -rw-r--r-- | 17.5 KB |
fmt-merge-msg.h | -rw-r--r-- | 420 bytes |
fsck.c | -rw-r--r-- | 32.9 KB |
fsck.h | -rw-r--r-- | 3.2 KB |
fsmonitor.c | -rw-r--r-- | 10.5 KB |
fsmonitor.h | -rw-r--r-- | 2.4 KB |
fuzz-commit-graph.c | -rw-r--r-- | 465 bytes |
fuzz-pack-headers.c | -rw-r--r-- | 309 bytes |
fuzz-pack-idx.c | -rw-r--r-- | 277 bytes |
generate-cmdlist.sh | -rwxr-xr-x | 1.5 KB |
generate-configlist.sh | -rwxr-xr-x | 370 bytes |
gettext.c | -rw-r--r-- | 3.4 KB |
gettext.h | -rw-r--r-- | 2.2 KB |
git-add--interactive.perl | -rwxr-xr-x | 46.6 KB |
git-archimport.perl | -rwxr-xr-x | 36.1 KB |
git-bisect.sh | -rwxr-xr-x | 5.1 KB |
git-compat-util.h | -rw-r--r-- | 37.9 KB |
git-cvsexportcommit.perl | -rwxr-xr-x | 12.8 KB |
git-cvsimport.perl | -rwxr-xr-x | 31.3 KB |
git-cvsserver.perl | -rwxr-xr-x | 159.2 KB |
git-difftool--helper.sh | -rwxr-xr-x | 2.2 KB |
git-filter-branch.sh | -rwxr-xr-x | 16.0 KB |
git-instaweb.sh | -rwxr-xr-x | 21.8 KB |
git-merge-octopus.sh | -rwxr-xr-x | 2.4 KB |
git-merge-one-file.sh | -rwxr-xr-x | 3.6 KB |
git-merge-resolve.sh | -rwxr-xr-x | 944 bytes |
git-mergetool--lib.sh | -rw-r--r-- | 9.5 KB |
git-mergetool.sh | -rwxr-xr-x | 10.1 KB |
git-p4.py | -rwxr-xr-x | 165.1 KB |
git-quiltimport.sh | -rwxr-xr-x | 3.6 KB |
git-rebase--preserve-merges.sh | -rw-r--r-- | 28.6 KB |
git-request-pull.sh | -rwxr-xr-x | 4.0 KB |
git-send-email.perl | -rwxr-xr-x | 57.3 KB |
git-sh-i18n.sh | -rw-r--r-- | 2.4 KB |
git-sh-setup.sh | -rw-r--r-- | 9.1 KB |
git-submodule.sh | -rwxr-xr-x | 20.1 KB |
git-svn.perl | -rwxr-xr-x | 63.2 KB |
git-web--browse.sh | -rwxr-xr-x | 4.3 KB |
git.c | -rw-r--r-- | 26.9 KB |
git.rc | -rw-r--r-- | 635 bytes |
gpg-interface.c | -rw-r--r-- | 11.5 KB |
gpg-interface.h | -rw-r--r-- | 1.6 KB |
graph.c | -rw-r--r-- | 40.0 KB |
graph.h | -rw-r--r-- | 8.6 KB |
grep.c | -rw-r--r-- | 52.9 KB |
grep.h | -rw-r--r-- | 4.9 KB |
hash.h | -rw-r--r-- | 7.7 KB |
hashmap.c | -rw-r--r-- | 8.4 KB |
hashmap.h | -rw-r--r-- | 19.8 KB |
help.c | -rw-r--r-- | 18.4 KB |
help.h | -rw-r--r-- | 3.2 KB |
hex.c | -rw-r--r-- | 4.2 KB |
http-backend.c | -rw-r--r-- | 18.9 KB |
http-fetch.c | -rw-r--r-- | 3.4 KB |
http-push.c | -rw-r--r-- | 50.2 KB |
http-walker.c | -rw-r--r-- | 15.1 KB |
http.c | -rw-r--r-- | 67.1 KB |
http.h | -rw-r--r-- | 7.9 KB |
ident.c | -rw-r--r-- | 15.9 KB |
imap-send.c | -rw-r--r-- | 37.0 KB |
iterator.h | -rw-r--r-- | 2.1 KB |
json-writer.c | -rw-r--r-- | 8.5 KB |
json-writer.h | -rw-r--r-- | 4.2 KB |
khash.h | -rw-r--r-- | 12.9 KB |
kwset.c | -rw-r--r-- | 20.6 KB |
kwset.h | -rw-r--r-- | 2.5 KB |
levenshtein.c | -rw-r--r-- | 2.5 KB |
levenshtein.h | -rw-r--r-- | 203 bytes |
line-log.c | -rw-r--r-- | 33.0 KB |
line-log.h | -rw-r--r-- | 1.7 KB |
line-range.c | -rw-r--r-- | 6.6 KB |
line-range.h | -rw-r--r-- | 1.4 KB |
linear-assignment.c | -rw-r--r-- | 4.1 KB |
linear-assignment.h | -rw-r--r-- | 736 bytes |
list-objects-filter-options.c | -rw-r--r-- | 10.6 KB |
list-objects-filter-options.h | -rw-r--r-- | 3.9 KB |
list-objects-filter.c | -rw-r--r-- | 19.0 KB |
list-objects-filter.h | -rw-r--r-- | 3.2 KB |
list-objects.c | -rw-r--r-- | 11.3 KB |
list-objects.h | -rw-r--r-- | 762 bytes |
list.h | -rw-r--r-- | 5.6 KB |
ll-merge.c | -rw-r--r-- | 10.9 KB |
ll-merge.h | -rw-r--r-- | 3.0 KB |
lockfile.c | -rw-r--r-- | 5.6 KB |
lockfile.h | -rw-r--r-- | 11.3 KB |
log-tree.c | -rw-r--r-- | 27.5 KB |
log-tree.h | -rw-r--r-- | 1.5 KB |
ls-refs.c | -rw-r--r-- | 2.7 KB |
ls-refs.h | -rw-r--r-- | 209 bytes |
mailinfo.c | -rw-r--r-- | 27.8 KB |
mailinfo.h | -rw-r--r-- | 1.0 KB |
mailmap.c | -rw-r--r-- | 8.9 KB |
mailmap.h | -rw-r--r-- | 292 bytes |
match-trees.c | -rw-r--r-- | 8.5 KB |
mem-pool.c | -rw-r--r-- | 3.5 KB |
mem-pool.h | -rw-r--r-- | 1.6 KB |
merge-blobs.c | -rw-r--r-- | 2.0 KB |
merge-blobs.h | -rw-r--r-- | 232 bytes |
merge-ort-wrappers.c | -rw-r--r-- | 1.4 KB |
merge-ort-wrappers.h | -rw-r--r-- | 638 bytes |
merge-ort.c | -rw-r--r-- | 1.3 KB |
merge-ort.h | -rw-r--r-- | 1.6 KB |
merge-recursive.c | -rw-r--r-- | 116.3 KB |
merge-recursive.h | -rw-r--r-- | 3.6 KB |
merge.c | -rw-r--r-- | 2.8 KB |
mergesort.c | -rw-r--r-- | 1.5 KB |
mergesort.h | -rw-r--r-- | 574 bytes |
midx.c | -rw-r--r-- | 37.5 KB |
midx.h | -rw-r--r-- | 1.8 KB |
name-hash.c | -rw-r--r-- | 18.8 KB |
notes-cache.c | -rw-r--r-- | 2.3 KB |
notes-cache.h | -rw-r--r-- | 541 bytes |
notes-merge.c | -rw-r--r-- | 22.6 KB |
notes-merge.h | -rw-r--r-- | 2.9 KB |
notes-utils.c | -rw-r--r-- | 5.0 KB |
notes-utils.h | -rw-r--r-- | 1.5 KB |
notes.c | -rw-r--r-- | 37.3 KB |
notes.h | -rw-r--r-- | 12.6 KB |
object-store.h | -rw-r--r-- | 14.9 KB |
object.c | -rw-r--r-- | 13.6 KB |
object.h | -rw-r--r-- | 6.4 KB |
oid-array.c | -rw-r--r-- | 1.8 KB |
oid-array.h | -rw-r--r-- | 4.3 KB |
oidmap.c | -rw-r--r-- | 1.5 KB |
oidmap.h | -rw-r--r-- | 2.3 KB |
oidset.c | -rw-r--r-- | 1.8 KB |
oidset.h | -rw-r--r-- | 3.0 KB |
pack-bitmap-write.c | -rw-r--r-- | 12.7 KB |
pack-bitmap.c | -rw-r--r-- | 35.5 KB |
pack-bitmap.h | -rw-r--r-- | 2.6 KB |
pack-check.c | -rw-r--r-- | 5.5 KB |
pack-objects.c | -rw-r--r-- | 5.0 KB |
pack-objects.h | -rw-r--r-- | 12.2 KB |
pack-revindex.c | -rw-r--r-- | 5.8 KB |
pack-revindex.h | -rw-r--r-- | 322 bytes |
pack-write.c | -rw-r--r-- | 10.4 KB |
pack.h | -rw-r--r-- | 3.3 KB |
packfile.c | -rw-r--r-- | 55.1 KB |
packfile.h | -rw-r--r-- | 6.8 KB |
pager.c | -rw-r--r-- | 5.1 KB |
parse-options-cb.c | -rw-r--r-- | 6.4 KB |
parse-options.c | -rw-r--r-- | 25.6 KB |
parse-options.h | -rw-r--r-- | 13.0 KB |
patch-delta.c | -rw-r--r-- | 2.4 KB |
patch-ids.c | -rw-r--r-- | 3.7 KB |
patch-ids.h | -rw-r--r-- | 1.2 KB |
path.c | -rw-r--r-- | 38.2 KB |
path.h | -rw-r--r-- | 5.8 KB |
pathspec.c | -rw-r--r-- | 18.2 KB |
pathspec.h | -rw-r--r-- | 5.0 KB |
pkt-line.c | -rw-r--r-- | 13.5 KB |
pkt-line.h | -rw-r--r-- | 8.3 KB |
preload-index.c | -rw-r--r-- | 3.8 KB |
pretty.c | -rw-r--r-- | 49.1 KB |
pretty.h | -rw-r--r-- | 3.9 KB |
prio-queue.c | -rw-r--r-- | 2.0 KB |
prio-queue.h | -rw-r--r-- | 1.6 KB |
progress.c | -rw-r--r-- | 9.2 KB |
progress.h | -rw-r--r-- | 768 bytes |
promisor-remote.c | -rw-r--r-- | 5.5 KB |
promisor-remote.h | -rw-r--r-- | 1.1 KB |
prompt.c | -rw-r--r-- | 1.6 KB |
prompt.h | -rw-r--r-- | 223 bytes |
protocol.c | -rw-r--r-- | 2.4 KB |
protocol.h | -rw-r--r-- | 1.1 KB |
prune-packed.c | -rw-r--r-- | 959 bytes |
prune-packed.h | -rw-r--r-- | 152 bytes |
quote.c | -rw-r--r-- | 12.1 KB |
quote.h | -rw-r--r-- | 3.2 KB |
range-diff.c | -rw-r--r-- | 14.6 KB |
range-diff.h | -rw-r--r-- | 478 bytes |
reachable.c | -rw-r--r-- | 5.9 KB |
reachable.h | -rw-r--r-- | 304 bytes |
read-cache.c | -rw-r--r-- | 98.1 KB |
rebase-interactive.c | -rw-r--r-- | 7.8 KB |
rebase-interactive.h | -rw-r--r-- | 651 bytes |
rebase.c | -rw-r--r-- | 1.0 KB |
rebase.h | -rw-r--r-- | 244 bytes |
ref-filter.c | -rw-r--r-- | 70.9 KB |
ref-filter.h | -rw-r--r-- | 4.8 KB |
reflog-walk.c | -rw-r--r-- | 8.2 KB |
reflog-walk.h | -rw-r--r-- | 885 bytes |
refs.c | -rw-r--r-- | 58.3 KB |
refs.h | -rw-r--r-- | 32.0 KB |
refspec.c | -rw-r--r-- | 6.4 KB |
refspec.h | -rw-r--r-- | 2.4 KB |
remote-curl.c | -rw-r--r-- | 40.0 KB |
remote.c | -rw-r--r-- | 65.7 KB |
remote.h | -rw-r--r-- | 10.7 KB |
replace-object.c | -rw-r--r-- | 2.2 KB |
replace-object.h | -rw-r--r-- | 1.4 KB |
repo-settings.c | -rw-r--r-- | 2.9 KB |
repository.c | -rw-r--r-- | 6.5 KB |
repository.h | -rw-r--r-- | 5.6 KB |
rerere.c | -rw-r--r-- | 32.2 KB |
rerere.h | -rw-r--r-- | 1.4 KB |
reset.c | -rw-r--r-- | 4.0 KB |
reset.h | -rw-r--r-- | 565 bytes |
resolve-undo.c | -rw-r--r-- | 4.4 KB |
resolve-undo.h | -rw-r--r-- | 581 bytes |
revision.c | -rw-r--r-- | 114.7 KB |
revision.h | -rw-r--r-- | 12.5 KB |
run-command.c | -rw-r--r-- | 41.1 KB |
run-command.h | -rw-r--r-- | 16.5 KB |
send-pack.c | -rw-r--r-- | 17.9 KB |
send-pack.h | -rw-r--r-- | 893 bytes |
sequencer.c | -rw-r--r-- | 154.5 KB |
sequencer.h | -rw-r--r-- | 7.4 KB |
serve.c | -rw-r--r-- | 7.5 KB |
serve.h | -rw-r--r-- | 328 bytes |
server-info.c | -rw-r--r-- | 7.5 KB |
setup.c | -rw-r--r-- | 41.6 KB |
sh-i18n--envsubst.c | -rw-r--r-- | 10.2 KB |
sha1-file.c | -rw-r--r-- | 62.5 KB |
sha1-lookup.c | -rw-r--r-- | 3.2 KB |
sha1-lookup.h | -rw-r--r-- | 1.3 KB |
sha1-name.c | -rw-r--r-- | 48.2 KB |
sha1dc_git.c | -rw-r--r-- | 889 bytes |
sha1dc_git.h | -rw-r--r-- | 618 bytes |
shallow.c | -rw-r--r-- | 21.8 KB |
shallow.h | -rw-r--r-- | 2.6 KB |
shell.c | -rw-r--r-- | 5.3 KB |
shortlog.h | -rw-r--r-- | 654 bytes |
sideband.c | -rw-r--r-- | 5.8 KB |
sideband.h | -rw-r--r-- | 1.0 KB |
sigchain.c | -rw-r--r-- | 1.1 KB |
sigchain.h | -rw-r--r-- | 1.7 KB |
split-index.c | -rw-r--r-- | 13.6 KB |
split-index.h | -rw-r--r-- | 1.2 KB |
stable-qsort.c | -rw-r--r-- | 1.2 KB |
strbuf.c | -rw-r--r-- | 25.2 KB |
strbuf.h | -rw-r--r-- | 23.9 KB |
streaming.c | -rw-r--r-- | 12.4 KB |
streaming.h | -rw-r--r-- | 513 bytes |
string-list.c | -rw-r--r-- | 7.6 KB |
string-list.h | -rw-r--r-- | 9.9 KB |
strmap.c | -rw-r--r-- | 4.3 KB |
strmap.h | -rw-r--r-- | 6.8 KB |
strvec.c | -rw-r--r-- | 2.0 KB |
strvec.h | -rw-r--r-- | 2.8 KB |
sub-process.c | -rw-r--r-- | 5.5 KB |
sub-process.h | -rw-r--r-- | 3.1 KB |
submodule-config.c | -rw-r--r-- | 21.2 KB |
submodule-config.h | -rw-r--r-- | 3.6 KB |
submodule.c | -rw-r--r-- | 59.7 KB |
submodule.h | -rw-r--r-- | 5.5 KB |
symlinks.c | -rw-r--r-- | 9.9 KB |
tag.c | -rw-r--r-- | 5.5 KB |
tag.h | -rw-r--r-- | 727 bytes |
tar.h | -rw-r--r-- | 693 bytes |
tempfile.c | -rw-r--r-- | 8.3 KB |
tempfile.h | -rw-r--r-- | 9.4 KB |
thread-utils.c | -rw-r--r-- | 2.6 KB |
thread-utils.h | -rw-r--r-- | 1.4 KB |
tmp-objdir.c | -rw-r--r-- | 6.4 KB |
tmp-objdir.h | -rw-r--r-- | 1.5 KB |
trace.c | -rw-r--r-- | 11.9 KB |
trace.h | -rw-r--r-- | 8.3 KB |
trace2.c | -rw-r--r-- | 18.0 KB |
trace2.h | -rw-r--r-- | 18.2 KB |
trailer.c | -rw-r--r-- | 30.3 KB |
trailer.h | -rw-r--r-- | 3.7 KB |
transport-helper.c | -rw-r--r-- | 41.4 KB |
transport-internal.h | -rw-r--r-- | 2.6 KB |
transport.c | -rw-r--r-- | 39.2 KB |
transport.h | -rw-r--r-- | 8.5 KB |
tree-diff.c | -rw-r--r-- | 18.0 KB |
tree-walk.c | -rw-r--r-- | 31.4 KB |
tree-walk.h | -rw-r--r-- | 6.7 KB |
tree.c | -rw-r--r-- | 6.3 KB |
tree.h | -rw-r--r-- | 1.2 KB |
unicode-width.h | -rw-r--r-- | 9.3 KB |
unimplemented.sh | -rw-r--r-- | 101 bytes |
unix-socket.c | -rw-r--r-- | 2.4 KB |
unix-socket.h | -rw-r--r-- | 158 bytes |
unpack-trees.c | -rw-r--r-- | 68.2 KB |
unpack-trees.h | -rw-r--r-- | 3.0 KB |
upload-pack.c | -rw-r--r-- | 45.3 KB |
upload-pack.h | -rw-r--r-- | 491 bytes |
url.c | -rw-r--r-- | 2.5 KB |
url.h | -rw-r--r-- | 697 bytes |
urlmatch.c | -rw-r--r-- | 18.4 KB |
urlmatch.h | -rw-r--r-- | 2.6 KB |
usage.c | -rw-r--r-- | 6.6 KB |
userdiff.c | -rw-r--r-- | 12.2 KB |
userdiff.h | -rw-r--r-- | 892 bytes |
utf8.c | -rw-r--r-- | 19.9 KB |
utf8.h | -rw-r--r-- | 3.6 KB |
varint.c | -rw-r--r-- | 660 bytes |
varint.h | -rw-r--r-- | 154 bytes |
version.c | -rw-r--r-- | 718 bytes |
version.h | -rw-r--r-- | 230 bytes |
versioncmp.c | -rw-r--r-- | 5.2 KB |
walker.c | -rw-r--r-- | 7.6 KB |
walker.h | -rw-r--r-- | 1.1 KB |
wildmatch.c | -rw-r--r-- | 7.8 KB |
wildmatch.h | -rw-r--r-- | 264 bytes |
worktree.c | -rw-r--r-- | 16.3 KB |
worktree.h | -rw-r--r-- | 5.1 KB |
wrap-for-bin.sh | -rw-r--r-- | 946 bytes |
wrapper.c | -rw-r--r-- | 14.3 KB |
write-or-die.c | -rw-r--r-- | 1.5 KB |
ws.c | -rw-r--r-- | 9.4 KB |
wt-status.c | -rw-r--r-- | 69.6 KB |
wt-status.h | -rw-r--r-- | 4.7 KB |
xdiff-interface.c | -rw-r--r-- | 7.5 KB |
xdiff-interface.h | -rw-r--r-- | 2.0 KB |
zlib.c | -rw-r--r-- | 6.1 KB |
![swh spinner](/static/img/swh-spinner.gif)
Computing file changes ...