[PATCH 1/4] Refactor list of environment variables to be sanitized

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: Junio C Hamano
Date: Saturday, February 28, 2009 - 5:03 pm

When local process-to-process pipe transport spawns a subprocess,
it cleans up various git related variables to give the new process
a fresh environment.  The list of variables to cleanse is useful
in other places.
---
 cache.h   |    2 ++
 connect.c |   26 +++++++++++++++-----------
 2 files changed, 17 insertions(+), 11 deletions(-)

diff --git a/cache.h b/cache.h
index 189151d..b72434f 100644
--- a/cache.h
+++ b/cache.h
@@ -389,6 +389,8 @@ extern void set_git_work_tree(const char *tree);
 
 #define ALTERNATE_DB_ENVIRONMENT "GIT_ALTERNATE_OBJECT_DIRECTORIES"
 
+extern const char *sanitize_git_env[];
+
 extern const char **get_pathspec(const char *prefix, const char **pathspec);
 extern void setup_work_tree(void);
 extern const char *setup_git_directory_gently(int *);
diff --git a/connect.c b/connect.c
index 2f23ab3..b4705ff 100644
--- a/connect.c
+++ b/connect.c
@@ -6,6 +6,20 @@
 #include "run-command.h"
 #include "remote.h"
 
+/*
+ * When spawning a subprocess in a fresh environment,
+ * these variables may need to be cleared
+ */
+const char *sanitize_git_env[] = {
+	ALTERNATE_DB_ENVIRONMENT,
+	DB_ENVIRONMENT,
+	GIT_DIR_ENVIRONMENT,
+	GIT_WORK_TREE_ENVIRONMENT,
+	GRAFT_ENVIRONMENT,
+	INDEX_ENVIRONMENT,
+	NULL
+};
+
 static char *server_capabilities;
 
 static int check_ref(const char *name, int len, unsigned int flags)
@@ -625,17 +639,7 @@ struct child_process *git_connect(int fd[2], const char *url_orig,
 		*arg++ = host;
 	}
 	else {
-		/* remove these from the environment */
-		const char *env[] = {
-			ALTERNATE_DB_ENVIRONMENT,
-			DB_ENVIRONMENT,
-			GIT_DIR_ENVIRONMENT,
-			GIT_WORK_TREE_ENVIRONMENT,
-			GRAFT_ENVIRONMENT,
-			INDEX_ENVIRONMENT,
-			NULL
-		};
-		conn->env = env;
+		conn->env = sanitize_git_env;
 		*arg++ = "sh";
 		*arg++ = "-c";
 	}
-- 
1.6.2.rc2.99.g9f3bb

--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[PATCH 1/4] Refactor list of environment variables to be s ..., Junio C Hamano, (Sat Feb 28, 5:03 pm)
[PATCH 4/4] "git init --remote=host:path", Junio C Hamano, (Sat Feb 28, 5:03 pm)
Subject: [PATCH] Push to create, Junio C Hamano, (Mon Mar 2, 11:50 pm)
Re: Subject: [PATCH] Push to create, Jay Soffian, (Tue Mar 3, 12:09 am)
Re: Subject: [PATCH] Push to create, Jeff King, (Tue Mar 3, 12:09 am)
Re: Subject: [PATCH] Push to create, Jay Soffian, (Tue Mar 3, 12:37 am)
Re: Subject: [PATCH] Push to create, Jay Soffian, (Tue Mar 3, 12:39 am)
Re: Subject: [PATCH] Push to create, Junio C Hamano, (Tue Mar 3, 12:55 am)
Re: Subject: [PATCH] Push to create, Junio C Hamano, (Tue Mar 3, 12:56 am)
Re: Subject: [PATCH] Push to create, Jay Soffian, (Tue Mar 3, 1:02 am)
Re: Subject: [PATCH] Push to create, Junio C Hamano, (Tue Mar 3, 1:04 am)
Re: Subject: [PATCH] Push to create, Junio C Hamano, (Tue Mar 3, 1:04 am)
Re: Subject: [PATCH] Push to create, Jeff King, (Tue Mar 3, 1:06 am)
Re: Subject: [PATCH] Push to create, Jay Soffian, (Tue Mar 3, 1:16 am)
Re: Subject: [PATCH] Push to create, Junio C Hamano, (Tue Mar 3, 1:22 am)
Re: Subject: [PATCH] Push to create, Jeff King, (Tue Mar 3, 1:23 am)
Re: Subject: [PATCH] Push to create, Jeff King, (Tue Mar 3, 1:27 am)
Re: Subject: [PATCH] Push to create, Junio C Hamano, (Tue Mar 3, 1:30 am)
Re: Subject: [PATCH] Push to create, Jay Soffian, (Tue Mar 3, 1:41 am)
Re: Subject: [PATCH] Push to create, Theodore Tso, (Tue Mar 3, 2:23 am)
Re: Subject: [PATCH] Push to create, Johannes Schindelin, (Tue Mar 3, 3:39 am)
Re: Subject: [PATCH] Push to create, Shawn O. Pearce, (Tue Mar 3, 11:41 am)
Re: Subject: [PATCH] Push to create, Jay Soffian, (Tue Mar 3, 12:57 pm)
Re: Subject: [PATCH] Push to create, Daniel Barkalow, (Tue Mar 3, 2:08 pm)
Re: Subject: [PATCH] Push to create, Jeff King, (Tue Mar 3, 10:42 pm)
Re: Subject: [PATCH] Push to create, Junio C Hamano, (Tue Mar 3, 11:35 pm)
Re: Subject: [PATCH] Push to create, Jay Soffian, (Wed Mar 4, 6:06 am)
Re: Subject: [PATCH] Push to create, Theodore Tso, (Wed Mar 4, 10:58 am)
Re: [RFC/PATCH 1/2] improve missing repository error message, Shawn O. Pearce, (Wed Mar 4, 11:57 am)