All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/3] trace.c: ensure NULL is not passed to printf
@ 2011-01-06  0:30 Brandon Casey
  2011-01-06  0:30 ` [PATCH 2/3] t0001,t1510,t3301: use sane_unset which always returns with status 0 Brandon Casey
  2011-01-06  0:30 ` [PATCH 3/3] t3032: limit sed branch labels to 8 characters Brandon Casey
  0 siblings, 2 replies; 5+ messages in thread
From: Brandon Casey @ 2011-01-06  0:30 UTC (permalink / raw)
  To: gitster; +Cc: git, Brandon Casey

From: Brandon Casey <drafnel@gmail.com>

GNU printf, and many others, will print the string "(null)" if a NULL
pointer is passed as the argument to a "%s" format specifier.  Some
implementations (like on Solaris) do not detect a NULL pointer and will
produce a segfault in this case.

So, fix this by ensuring that pointer variables do not contain the value
NULL.  Assign the string "(null)" to the variables are NULL.

Signed-off-by: Brandon Casey <casey@nrlssc.navy.mil>
---
 trace.c |    9 ++++++++-
 1 files changed, 8 insertions(+), 1 deletions(-)

diff --git a/trace.c b/trace.c
index 02279b8..35d388d 100644
--- a/trace.c
+++ b/trace.c
@@ -154,6 +154,7 @@ static const char *quote_crnl(const char *path)
 /* FIXME: move prefix to startup_info struct and get rid of this arg */
 void trace_repo_setup(const char *prefix)
 {
+	const char *git_work_tree;
 	char cwd[PATH_MAX];
 	char *trace = getenv("GIT_TRACE");
 
@@ -164,8 +165,14 @@ void trace_repo_setup(const char *prefix)
 	if (!getcwd(cwd, PATH_MAX))
 		die("Unable to get current working directory");
 
+	if (!(git_work_tree = get_git_work_tree()))
+		git_work_tree = "(null)";
+
+	if (!prefix)
+		prefix = "(null)";
+
 	trace_printf("setup: git_dir: %s\n", quote_crnl(get_git_dir()));
-	trace_printf("setup: worktree: %s\n", quote_crnl(get_git_work_tree()));
+	trace_printf("setup: worktree: %s\n", quote_crnl(git_work_tree));
 	trace_printf("setup: cwd: %s\n", quote_crnl(cwd));
 	trace_printf("setup: prefix: %s\n", quote_crnl(prefix));
 }
-- 
1.7.3.1

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [PATCH 2/3] t0001,t1510,t3301: use sane_unset which always returns with status 0
  2011-01-06  0:30 [PATCH 1/3] trace.c: ensure NULL is not passed to printf Brandon Casey
@ 2011-01-06  0:30 ` Brandon Casey
  2011-01-06 20:32   ` Junio C Hamano
  2011-01-06  0:30 ` [PATCH 3/3] t3032: limit sed branch labels to 8 characters Brandon Casey
  1 sibling, 1 reply; 5+ messages in thread
From: Brandon Casey @ 2011-01-06  0:30 UTC (permalink / raw)
  To: gitster; +Cc: git, Brandon Casey

From: Brandon Casey <drafnel@gmail.com>

On some shells (like /usr/xpg4/bin/sh on Solaris), unset will exit
non-zero when passed the name of a variable that has not been set.  Use
sane_unset instead so that the return value of unset can be ignored while
the && linkage of the test script can be preserved.

Signed-off-by: Brandon Casey <casey@nrlssc.navy.mil>
---
 t/t0001-init.sh       |    8 +++---
 t/t1510-repo-setup.sh |   64 ++++++++++++++++++++++++------------------------
 t/t3301-notes.sh      |    2 +-
 3 files changed, 37 insertions(+), 37 deletions(-)

diff --git a/t/t0001-init.sh b/t/t0001-init.sh
index af8b9c5..f684993 100755
--- a/t/t0001-init.sh
+++ b/t/t0001-init.sh
@@ -35,7 +35,7 @@ test_expect_success 'plain' '
 
 test_expect_success 'plain nested in bare' '
 	(
-		unset GIT_DIR GIT_WORK_TREE &&
+		sane_unset GIT_DIR GIT_WORK_TREE &&
 		git init --bare bare-ancestor.git &&
 		cd bare-ancestor.git &&
 		mkdir plain-nested &&
@@ -47,7 +47,7 @@ test_expect_success 'plain nested in bare' '
 
 test_expect_success 'plain through aliased command, outside any git repo' '
 	(
-		unset GIT_DIR GIT_WORK_TREE GIT_CONFIG_NOGLOBAL &&
+		sane_unset GIT_DIR GIT_WORK_TREE GIT_CONFIG_NOGLOBAL &&
 		HOME=$(pwd)/alias-config &&
 		export HOME &&
 		mkdir alias-config &&
@@ -65,7 +65,7 @@ test_expect_success 'plain through aliased command, outside any git repo' '
 
 test_expect_failure 'plain nested through aliased command' '
 	(
-		unset GIT_DIR GIT_WORK_TREE &&
+		sane_unset GIT_DIR GIT_WORK_TREE &&
 		git init plain-ancestor-aliased &&
 		cd plain-ancestor-aliased &&
 		echo "[alias] aliasedinit = init" >>.git/config &&
@@ -78,7 +78,7 @@ test_expect_failure 'plain nested through aliased command' '
 
 test_expect_failure 'plain nested in bare through aliased command' '
 	(
-		unset GIT_DIR GIT_WORK_TREE &&
+		sane_unset GIT_DIR GIT_WORK_TREE &&
 		git init --bare bare-ancestor-aliased.git &&
 		cd bare-ancestor-aliased.git &&
 		echo "[alias] aliasedinit = init" >>config &&
diff --git a/t/t1510-repo-setup.sh b/t/t1510-repo-setup.sh
index 500ffaf..c3798ce 100755
--- a/t/t1510-repo-setup.sh
+++ b/t/t1510-repo-setup.sh
@@ -80,7 +80,7 @@ test_repo() {
 #  - cwd can't be outside worktree
 
 test_expect_success '#0: setup' '
-	unset GIT_DIR GIT_WORK_TREE &&
+	sane_unset GIT_DIR GIT_WORK_TREE &&
 	mkdir 0 0/sub &&
 	cd 0 && git init && cd ..
 '
@@ -123,7 +123,7 @@ EOF
 # GIT_WORK_TREE is ignored -> #0
 
 test_expect_success '#1: setup' '
-	unset GIT_DIR GIT_WORK_TREE &&
+	sane_unset GIT_DIR GIT_WORK_TREE &&
 	mkdir 1 1/sub 1.wt 1.wt/sub 1/wt 1/wt/sub &&
 	cd 1 &&
 	git init &&
@@ -174,7 +174,7 @@ EOF
 #  - cwd can't be outside worktree
 
 test_expect_success '#2: setup' '
-	unset GIT_DIR GIT_WORK_TREE &&
+	sane_unset GIT_DIR GIT_WORK_TREE &&
 	mkdir 2 2/sub &&
 	cd 2 && git init && cd ..
 '
@@ -241,7 +241,7 @@ EOF
 #  - cwd can be outside worktree
 
 test_expect_success '#3: setup' '
-	unset GIT_DIR GIT_WORK_TREE &&
+	sane_unset GIT_DIR GIT_WORK_TREE &&
 	mkdir 3 3/sub 3/sub/sub 3.wt 3.wt/sub 3/wt 3/wt/sub &&
 	cd 3 && git init && cd ..
 '
@@ -504,7 +504,7 @@ EOF
 # core.worktree is ignored -> #0
 
 test_expect_success '#4: setup' '
-	unset GIT_DIR GIT_WORK_TREE &&
+	sane_unset GIT_DIR GIT_WORK_TREE &&
 	mkdir 4 4/sub &&
 	cd 4 &&
 	git init &&
@@ -550,7 +550,7 @@ EOF
 # GIT_WORK_TREE/core.worktree are ignored -> #0
 
 test_expect_success '#5: setup' '
-	unset GIT_DIR GIT_WORK_TREE &&
+	sane_unset GIT_DIR GIT_WORK_TREE &&
 	mkdir 5 5/sub &&
 	cd 5 &&
 	git init &&
@@ -602,7 +602,7 @@ EOF
 #  - cwd can be outside worktree
 
 test_expect_success '#6: setup' '
-	unset GIT_DIR GIT_WORK_TREE &&
+	sane_unset GIT_DIR GIT_WORK_TREE &&
 	mkdir 6 6/sub 6/sub/sub 6.wt 6.wt/sub 6/wt 6/wt/sub &&
 	cd 6 && git init && cd ..
 '
@@ -889,7 +889,7 @@ EOF
 # core.worktree is overridden by GIT_WORK_TREE -> #3
 
 test_expect_success '#7: setup' '
-	unset GIT_DIR GIT_WORK_TREE &&
+	sane_unset GIT_DIR GIT_WORK_TREE &&
 	mkdir 7 7/sub 7/sub/sub 7.wt 7.wt/sub 7/wt 7/wt/sub &&
 	cd 7 &&
 	git init &&
@@ -1155,7 +1155,7 @@ EOF
 # #0 except that git_dir is set by .git file
 
 test_expect_success '#8: setup' '
-	unset GIT_DIR GIT_WORK_TREE &&
+	sane_unset GIT_DIR GIT_WORK_TREE &&
 	mkdir 8 8/sub &&
 	cd 8 &&
 	git init &&
@@ -1202,7 +1202,7 @@ EOF
 # #1 except that git_dir is set by .git file
 
 test_expect_success '#9: setup' '
-	unset GIT_DIR GIT_WORK_TREE &&
+	sane_unset GIT_DIR GIT_WORK_TREE &&
 	mkdir 9 9/sub 9.wt 9.wt/sub 9/wt 9/wt/sub &&
 	cd 9 &&
 	git init &&
@@ -1251,7 +1251,7 @@ EOF
 # #2 except that git_dir is set by .git file
 
 test_expect_success '#10: setup' '
-	unset GIT_DIR GIT_WORK_TREE &&
+	sane_unset GIT_DIR GIT_WORK_TREE &&
 	mkdir 10 10/sub &&
 	cd 10 &&
 	git init &&
@@ -1318,7 +1318,7 @@ EOF
 # #3 except that git_dir is set by .git file
 
 test_expect_success '#11: setup' '
-	unset GIT_DIR GIT_WORK_TREE &&
+	sane_unset GIT_DIR GIT_WORK_TREE &&
 	mkdir 11 11/sub 11/sub/sub 11.wt 11.wt/sub 11/wt 11/wt/sub &&
 	cd 11 &&
 	git init &&
@@ -1586,7 +1586,7 @@ EOF
 
 
 test_expect_success '#12: setup' '
-	unset GIT_DIR GIT_WORK_TREE &&
+	sane_unset GIT_DIR GIT_WORK_TREE &&
 	mkdir 12 12/sub 12/sub/sub 12.wt 12.wt/sub 12/wt 12/wt/sub &&
 	cd 12 &&
 	git init &&
@@ -1634,7 +1634,7 @@ EOF
 # #5 except that git_dir is set by .git file
 
 test_expect_success '#13: setup' '
-	unset GIT_DIR GIT_WORK_TREE &&
+	sane_unset GIT_DIR GIT_WORK_TREE &&
 	mkdir 13 13/sub 13/sub/sub 13.wt 13.wt/sub 13/wt 13/wt/sub &&
 	cd 13 &&
 	git init &&
@@ -1684,7 +1684,7 @@ EOF
 # #6 except that git_dir is set by .git file
 
 test_expect_success '#14: setup' '
-	unset GIT_DIR GIT_WORK_TREE &&
+	sane_unset GIT_DIR GIT_WORK_TREE &&
 	mkdir 14 14/sub 14/sub/sub 14.wt 14.wt/sub 14/wt 14/wt/sub &&
 	cd 14 &&
 	git init &&
@@ -1975,7 +1975,7 @@ EOF
 # #7 except that git_dir is set by .git file
 
 test_expect_success '#15: setup' '
-	unset GIT_DIR GIT_WORK_TREE &&
+	sane_unset GIT_DIR GIT_WORK_TREE &&
 	mkdir 15 15/sub 15/sub/sub 15.wt 15.wt/sub 15/wt 15/wt/sub &&
 	cd 15 &&
 	git init &&
@@ -2247,7 +2247,7 @@ EOF
 #  - cwd can't be outside worktree
 
 test_expect_success '#16.1: setup' '
-	unset GIT_DIR GIT_WORK_TREE &&
+	sane_unset GIT_DIR GIT_WORK_TREE &&
 	mkdir 16 16/sub &&
 	cd 16 &&
 	git init &&
@@ -2378,7 +2378,7 @@ EOF
 # GIT_WORK_TREE is ignored -> #16.1 (with warnings perhaps)
 
 test_expect_success '#17.1: setup' '
-	unset GIT_DIR GIT_WORK_TREE &&
+	sane_unset GIT_DIR GIT_WORK_TREE &&
 	mkdir 17 17/sub &&
 	cd 17 &&
 	git init &&
@@ -2511,7 +2511,7 @@ EOF
 #  - cwd can't be outside worktree
 
 test_expect_success '#18: setup' '
-	unset GIT_DIR GIT_WORK_TREE &&
+	sane_unset GIT_DIR GIT_WORK_TREE &&
 	mkdir 18 18/sub &&
 	cd 18 &&
 	git init &&
@@ -2578,7 +2578,7 @@ EOF
 # bare repo is overridden by GIT_WORK_TREE -> #3
 
 test_expect_success '#19: setup' '
-	unset GIT_DIR GIT_WORK_TREE &&
+	sane_unset GIT_DIR GIT_WORK_TREE &&
 	mkdir 19 19/sub 19/sub/sub 19.wt 19.wt/sub 19/wt 19/wt/sub &&
 	cd 19 &&
 	git init &&
@@ -2844,7 +2844,7 @@ EOF
 # core.worktree is ignored -> #16.1
 
 test_expect_success '#20.1: setup' '
-	unset GIT_DIR GIT_WORK_TREE &&
+	sane_unset GIT_DIR GIT_WORK_TREE &&
 	mkdir 20 20/sub &&
 	cd 20 &&
 	git init &&
@@ -2972,7 +2972,7 @@ EOF
 # GIT_WORK_TREE/core.worktree are ignored -> #20.1
 
 test_expect_success '#21.1: setup' '
-	unset GIT_DIR GIT_WORK_TREE &&
+	sane_unset GIT_DIR GIT_WORK_TREE &&
 	mkdir 21 21/sub &&
 	cd 21 &&
 	git init &&
@@ -3108,7 +3108,7 @@ EOF
 #  - cwd can be outside worktree
 
 test_expect_success '#22.1: setup' '
-	unset GIT_DIR GIT_WORK_TREE &&
+	sane_unset GIT_DIR GIT_WORK_TREE &&
 	mkdir 22 &&
 	cd 22 &&
 	git init &&
@@ -3439,7 +3439,7 @@ test_expect_success '#22.2: at root' '
 # core.worktree is overridden by GIT_WORK_TREE -> #19
 
 test_expect_success '#23: setup' '
-	unset GIT_DIR GIT_WORK_TREE &&
+	sane_unset GIT_DIR GIT_WORK_TREE &&
 	mkdir 23 23/sub 23/sub/sub 23.wt 23.wt/sub 23/wt 23/wt/sub &&
 	cd 23 &&
 	git init &&
@@ -3706,7 +3706,7 @@ EOF
 # #16.2 except git_dir is set according to .git file
 
 test_expect_success '#24: setup' '
-	unset GIT_DIR GIT_WORK_TREE &&
+	sane_unset GIT_DIR GIT_WORK_TREE &&
 	mkdir 24 24/sub &&
 	cd 24 &&
 	git init &&
@@ -3754,7 +3754,7 @@ EOF
 # #17.2 except git_dir is set according to .git file
 
 test_expect_success '#25: setup' '
-	unset GIT_DIR GIT_WORK_TREE &&
+	sane_unset GIT_DIR GIT_WORK_TREE &&
 	mkdir 25 25/sub &&
 	cd 25 &&
 	git init &&
@@ -3804,7 +3804,7 @@ EOF
 # #18 except git_dir is set according to .git file
 
 test_expect_success '#26: setup' '
-	unset GIT_DIR GIT_WORK_TREE &&
+	sane_unset GIT_DIR GIT_WORK_TREE &&
 	mkdir 26 26/sub &&
 	cd 26 &&
 	git init &&
@@ -3872,7 +3872,7 @@ EOF
 # #19 except git_dir is set according to .git file
 
 test_expect_success '#27: setup' '
-	unset GIT_DIR GIT_WORK_TREE &&
+	sane_unset GIT_DIR GIT_WORK_TREE &&
 	mkdir 27 27/sub 27/sub/sub 27.wt 27.wt/sub 27/wt 27/wt/sub &&
 	cd 27 &&
 	git init &&
@@ -4140,7 +4140,7 @@ EOF
 # core.worktree is ignored -> #24
 
 test_expect_success '#28: setup' '
-	unset GIT_DIR GIT_WORK_TREE &&
+	sane_unset GIT_DIR GIT_WORK_TREE &&
 	mkdir 28 28/sub &&
 	cd 28 &&
 	git init &&
@@ -4189,7 +4189,7 @@ EOF
 # GIT_WORK_TREE/core.worktree are ignored -> #28
 
 test_expect_success '#29: setup' '
-	unset GIT_DIR GIT_WORK_TREE &&
+	sane_unset GIT_DIR GIT_WORK_TREE &&
 	mkdir 29 29/sub &&
 	cd 29 &&
 	git init &&
@@ -4239,7 +4239,7 @@ EOF
 # core.worktree and core.bare conflict, won't fly.
 
 test_expect_success '#30: setup' '
-	unset GIT_DIR GIT_WORK_TREE &&
+	sane_unset GIT_DIR GIT_WORK_TREE &&
 	mkdir 30 &&
 	cd 30 &&
 	git init &&
@@ -4278,7 +4278,7 @@ test_expect_success '#30: at root' '
 # #23 except git_dir is set according to .git file
 
 test_expect_success '#31: setup' '
-	unset GIT_DIR GIT_WORK_TREE &&
+	sane_unset GIT_DIR GIT_WORK_TREE &&
 	mkdir 31 31/sub 31/sub/sub 31.wt 31.wt/sub 31/wt 31/wt/sub &&
 	cd 31 &&
 	git init &&
diff --git a/t/t3301-notes.sh b/t/t3301-notes.sh
index dc2e04a..1921ca3 100755
--- a/t/t3301-notes.sh
+++ b/t/t3301-notes.sh
@@ -1067,7 +1067,7 @@ test_expect_success 'git notes copy diagnoses too many or too few parameters' '
 
 test_expect_success 'git notes get-ref (no overrides)' '
 	git config --unset core.notesRef &&
-	unset GIT_NOTES_REF &&
+	sane_unset GIT_NOTES_REF &&
 	test "$(git notes get-ref)" = "refs/notes/commits"
 '
 
-- 
1.7.3.1

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [PATCH 3/3] t3032: limit sed branch labels to 8 characters
  2011-01-06  0:30 [PATCH 1/3] trace.c: ensure NULL is not passed to printf Brandon Casey
  2011-01-06  0:30 ` [PATCH 2/3] t0001,t1510,t3301: use sane_unset which always returns with status 0 Brandon Casey
@ 2011-01-06  0:30 ` Brandon Casey
  1 sibling, 0 replies; 5+ messages in thread
From: Brandon Casey @ 2011-01-06  0:30 UTC (permalink / raw)
  To: gitster; +Cc: git, Brandon Casey

From: Brandon Casey <drafnel@gmail.com>

POSIX leaves as unspecified the handling of labels greater than 8
characters.  Apparently, Sun decided to treat them as errors.  Make sed on
Solaris happy by trimming the length of labels to 8 characters.

Signed-off-by: Brandon Casey <casey@nrlssc.navy.mil>
---
 t/t3032-merge-recursive-options.sh |    6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/t/t3032-merge-recursive-options.sh b/t/t3032-merge-recursive-options.sh
index 2293797..de9ff89 100755
--- a/t/t3032-merge-recursive-options.sh
+++ b/t/t3032-merge-recursive-options.sh
@@ -16,13 +16,13 @@ test_description='merge-recursive options
 test_expect_success 'setup' '
 	conflict_hunks () {
 		sed -n -e "
-			/^<<<</ b inconflict
+			/^<<<</ b conflict
 			b
-			: inconflict
+			: conflict
 			p
 			/^>>>>/ b
 			n
-			b inconflict
+			b conflict
 		" "$@"
 	} &&
 
-- 
1.7.3.1

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [PATCH 2/3] t0001,t1510,t3301: use sane_unset which always returns with status 0
  2011-01-06  0:30 ` [PATCH 2/3] t0001,t1510,t3301: use sane_unset which always returns with status 0 Brandon Casey
@ 2011-01-06 20:32   ` Junio C Hamano
  2011-01-06 21:39     ` Brandon Casey
  0 siblings, 1 reply; 5+ messages in thread
From: Junio C Hamano @ 2011-01-06 20:32 UTC (permalink / raw)
  To: Brandon Casey; +Cc: git, Brandon Casey

Thanks; there are a bit more from 

 $git grep -n -e '^[ 	]*unset[ 	].*&&' t

* t/t4150-am.sh:132:	unset test_tick &&

This should be safe, as we have already run test_tick to set it earlier.

* t/t5560-http-backend-noserver.sh:20:	unset REQUEST_METHOD &&
* t/t5560-http-backend-noserver.sh:33:	unset REQUEST_METHOD &&
* t/t5560-http-backend-noserver.sh:34:	unset CONTENT_TYPE &&

The varilable was earlier set inside the same function; safe.

* t/t5601-clone.sh:167:		unset GIT_CONFIG_NOGLOBAL &&

test-lib.sh sets this for us and this unsets it inside a subshell; safe.

* t/t6032-merge-large-rename.sh:98:	unset GIT_MERGE_VERBOSITY &&

test-lib.sh sets this for us and this unsets it; safe.

However, this unsets the variable permanently, damaging the environment
for tests other people later may add at the end of the script, which is
bad.  But that is outside the scope of your fix.

* t/t9130-git-svn-authors-file.sh:99:		unset GIT_CONFIG_NOGLOBAL &&
* t/t9130-git-svn-authors-file.sh:100:		unset GIT_DIR &&

test-lib.sh and then lib-git-svn.sh set these for us and this unsets them
inside a subshell; safe.

* t/t9130-git-svn-authors-file.sh:101:		unset GIT_CONFIG &&

As far as I can tell, this is unsafe; nobody has set GIT_CONFIG up to this
point.

* t/t9200-git-cvsexportcommit.sh:324:	 unset GIT_DIR &&

test-lib.sh sets this for us and this unsets it inside a subshell; safe.

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH 2/3] t0001,t1510,t3301: use sane_unset which always returns with status 0
  2011-01-06 20:32   ` Junio C Hamano
@ 2011-01-06 21:39     ` Brandon Casey
  0 siblings, 0 replies; 5+ messages in thread
From: Brandon Casey @ 2011-01-06 21:39 UTC (permalink / raw)
  To: Junio C Hamano; +Cc: git, Brandon Casey

On 01/06/2011 02:32 PM, Junio C Hamano wrote:
> Thanks; there are a bit more from 
> 
>  $git grep -n -e '^[ 	]*unset[ 	].*&&' t
> 
> * t/t9130-git-svn-authors-file.sh:101:		unset GIT_CONFIG &&
> 
> As far as I can tell, this is unsafe; nobody has set GIT_CONFIG up to this
> point.

Ah, svn isn't installed on the Solaris box I tested on, so
this test wasn't run.

-Brandon

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2011-01-06 21:39 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-01-06  0:30 [PATCH 1/3] trace.c: ensure NULL is not passed to printf Brandon Casey
2011-01-06  0:30 ` [PATCH 2/3] t0001,t1510,t3301: use sane_unset which always returns with status 0 Brandon Casey
2011-01-06 20:32   ` Junio C Hamano
2011-01-06 21:39     ` Brandon Casey
2011-01-06  0:30 ` [PATCH 3/3] t3032: limit sed branch labels to 8 characters Brandon Casey

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.