[PATCH] git-instaweb: detect difference between mod_cgi and mod_cgid for apache2

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



I'm not sure if this should have been two patches or just one.

First I changed the check of whether mod_cgi is built in or not from matching against 'mod_cgi.c' to 'mod_cgi' because I made the assumption that mod_cgid would be called 'mod_cgid.c' (I haven't actually checked this, but it sounds reasonable). Then, the second change handles the two cases when no cgi module is built in, which I did try
(for mod_cgid that is).

Also, should the socket needed for mod_cgid be put in $GIT_DIR or somewhere else?


tl;dr I only actually tried 1/4 cases, everything else looks reasonable


--
Mark A Rada (ferrous26)
marada@xxxxxxxxxxxx


--->8---
Some people have mod_cgid in place of mod_cgi, this will check which one
the user has available to them first, and then act accordingly.

Signed-off-by: Mark Rada <marada@xxxxxxxxxxxx>
---
 git-instaweb.sh |   10 ++++++++--
 1 files changed, 8 insertions(+), 2 deletions(-)

diff --git a/git-instaweb.sh b/git-instaweb.sh
index 5f5cac7..fdac0d0 100755
--- a/git-instaweb.sh
+++ b/git-instaweb.sh
@@ -297,8 +297,14 @@ EOF
 		# plain-old CGI
 		resolve_full_httpd
 		list_mods=$(echo "$full_httpd" | sed "s/-f$/-l/")
-		$list_mods | grep 'mod_cgi\.c' >/dev/null 2>&1 || \
-		echo "LoadModule cgi_module $module_path/mod_cgi.so" >> "$conf"
+		$list_mods | grep 'mod_cgi' >/dev/null 2>&1 || \
+		if test -f "$module_path/mod_cgi.so"
+		then
+			echo "LoadModule cgi_module $module_path/mod_cgi.so" >> "$conf"
+		else
+			echo "LoadModule cgi_module $module_path/mod_cgid.so" >> "$conf"
+			echo "ScriptSock $GIT_DIR/gitweb.sock" >> "$conf"
+		fi
 		cat >> "$conf" <<EOF
 AddHandler cgi-script .cgi
 <Location /gitweb.cgi>
--
1.6.4

--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]