|
|
libgit2 config opts: set the search to an empty path - stagit - static git page generator |
|
|
 |
git clone git://git.codemadness.org/stagit (git://git.codemadness.org) |
|
|
 |
Log |
|
|
 |
Files |
|
|
 |
Refs |
|
|
 |
README |
|
|
 |
LICENSE |
|
|
|
--- |
|
|
 |
commit 4d19863b062ac469fe09dec014976ba3b8677fb0 |
|
|
 |
parent df2a31c67a7b6ca782121248f650526a4fbe08d2 |
|
|
 |
Author: Hiltjo Posthuma <hiltjo@codemadness.org> (mailto://) |
application/vnd.lotus-organizer |
|
|
Date: Mon, 3 Jan 2022 12:21:12 +0100 |
|
|
|
|
|
|
|
libgit2 config opts: set the search to an empty path |
|
|
|
|
|
|
|
Otherwise this would search outside the unveiled paths and cause an unveil |
|
|
|
violation. |
|
|
|
|
|
|
|
Reported by Anton Lindqvist, thanks! |
|
|
|
|
|
|
|
Diffstat: |
|
|
|
M stagit-index.c | 4 ++++ |
|
|
|
M stagit.c | 4 ++++ |
|
|
|
|
|
|
|
2 files changed, 8 insertions(+), 0 deletions(-) |
|
|
|
--- |
|
|
 |
diff --git a/stagit-index.c b/stagit-index.c |
|
|
|
@@ -173,7 +173,11 @@ main(int argc, char *argv[]) |
|
|
|
return 1; |
|
|
|
} |
|
|
|
|
|
|
|
+ /* do not search outside the git repository: |
|
|
|
+ GIT_CONFIG_LEVEL_APP is the highest level currently */ |
|
|
|
git_libgit2_init(); |
|
|
|
+ for (i = 1; i <= GIT_CONFIG_LEVEL_APP; i++) |
|
|
|
+ git_libgit2_opts(GIT_OPT_SET_SEARCH_PATH, i, ""); |
|
|
|
|
|
|
|
#ifdef __OpenBSD__ |
|
|
|
if (pledge("stdio rpath", NULL) == -1) |
|
|
 |
diff --git a/stagit.c b/stagit.c |
|
|
|
@@ -1220,7 +1220,11 @@ main(int argc, char *argv[]) |
|
|
|
if (!realpath(repodir, repodirabs)) |
|
|
|
err(1, "realpath"); |
|
|
|
|
|
|
|
+ /* do not search outside the git repository: |
|
|
|
+ GIT_CONFIG_LEVEL_APP is the highest level currently */ |
|
|
|
git_libgit2_init(); |
|
|
|
+ for (i = 1; i <= GIT_CONFIG_LEVEL_APP; i++) |
|
|
|
+ git_libgit2_opts(GIT_OPT_SET_SEARCH_PATH, i, ""); |
|
|
|
|
|
|
|
#ifdef __OpenBSD__ |
|
|
|
if (unveil(repodir, "r") == -1) |
|