exclude: do not respect symlinks for in-tree .gitignore
authorJeff King <peff@peff.net>
Tue, 16 Feb 2021 14:44:34 +0000 (09:44 -0500)
committerJunio C Hamano <gitster@pobox.com>
Tue, 16 Feb 2021 17:41:33 +0000 (09:41 -0800)
commitfeb9b7792f0963a818f825bd99be4cda4e8226a5
tree0b45c0fa0ffb8ce857be60bdd4babb2d3a50ce27
parent2ef579e261fcd85a4eb6e0ce98ee4a01625fc210
exclude: do not respect symlinks for in-tree .gitignore

As with .gitattributes, we would like to make sure that .gitignore files
are handled consistently whether read from the index or from the
filesystem. Likewise, we would like to avoid reading out-of-tree files
pointed to by the symlinks, which could have security implications in
certain setups.

We can cover both by using open_nofollow() when opening the in-tree
files. We'll continue to follow links for core.excludesFile, as well as
$GIT_DIR/info/exclude.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
dir.c
t/t0008-ignores.sh