[PATCH] git-instaweb: detect difference between mod_cgi and mod_cgid for apache2
From: Mark A Rada <hidden>
Date: 2016-06-15 22:47:12
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@uwaterloo.ca --->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 <redacted> --- 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