aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEugen Wissner <belka@caraus.de>2026-07-09 19:34:55 +0200
committerEugen Wissner <belka@caraus.de>2026-07-09 19:34:55 +0200
commit6e6752c7076cc32a66f1223293ae44108562f664 (patch)
tree66939a4b6ca63fc61d860b93410cbfcd41c56e20
parent125fa7f6c6e163de52c97f3c482dcd72849c6744 (diff)
downloads6-6e6752c7076cc32a66f1223293ae44108562f664.tar.gz
Add spawn-fcgi
-rw-r--r--rc.spawn-fcgi/fcgiwrap-srv/dependencies6
-rw-r--r--rc.spawn-fcgi/fcgiwrap-srv/env/CMD1
-rw-r--r--rc.spawn-fcgi/fcgiwrap-srv/env/SOCKET_GROUP1
-rw-r--r--rc.spawn-fcgi/fcgiwrap-srv/env/SOCKET_OWNER1
-rw-r--r--rc.spawn-fcgi/fcgiwrap-srv/env/SOCKET_PATH1
-rw-r--r--rc.spawn-fcgi/fcgiwrap-srv/env/SOCKET_PERMS1
-rw-r--r--rc.spawn-fcgi/fcgiwrap-srv/run24
-rw-r--r--rc.spawn-fcgi/fcgiwrap-srv/type1
8 files changed, 36 insertions, 0 deletions
diff --git a/rc.spawn-fcgi/fcgiwrap-srv/dependencies b/rc.spawn-fcgi/fcgiwrap-srv/dependencies
new file mode 100644
index 0000000..6c7200d
--- /dev/null
+++ b/rc.spawn-fcgi/fcgiwrap-srv/dependencies
@@ -0,0 +1,6 @@
+tmpfs-run
+network
+# Comment out "remount-root" and uncomment "local-fs"
+# if you use separate partition for /var
+remount-root
+#local-fs
diff --git a/rc.spawn-fcgi/fcgiwrap-srv/env/CMD b/rc.spawn-fcgi/fcgiwrap-srv/env/CMD
new file mode 100644
index 0000000..9333836
--- /dev/null
+++ b/rc.spawn-fcgi/fcgiwrap-srv/env/CMD
@@ -0,0 +1 @@
+/usr/sbin/fcgiwrap
diff --git a/rc.spawn-fcgi/fcgiwrap-srv/env/SOCKET_GROUP b/rc.spawn-fcgi/fcgiwrap-srv/env/SOCKET_GROUP
new file mode 100644
index 0000000..a6b6519
--- /dev/null
+++ b/rc.spawn-fcgi/fcgiwrap-srv/env/SOCKET_GROUP
@@ -0,0 +1 @@
+apache
diff --git a/rc.spawn-fcgi/fcgiwrap-srv/env/SOCKET_OWNER b/rc.spawn-fcgi/fcgiwrap-srv/env/SOCKET_OWNER
new file mode 100644
index 0000000..a6b6519
--- /dev/null
+++ b/rc.spawn-fcgi/fcgiwrap-srv/env/SOCKET_OWNER
@@ -0,0 +1 @@
+apache
diff --git a/rc.spawn-fcgi/fcgiwrap-srv/env/SOCKET_PATH b/rc.spawn-fcgi/fcgiwrap-srv/env/SOCKET_PATH
new file mode 100644
index 0000000..73c29a1
--- /dev/null
+++ b/rc.spawn-fcgi/fcgiwrap-srv/env/SOCKET_PATH
@@ -0,0 +1 @@
+/run/fcgiwrap/cgi.sock
diff --git a/rc.spawn-fcgi/fcgiwrap-srv/env/SOCKET_PERMS b/rc.spawn-fcgi/fcgiwrap-srv/env/SOCKET_PERMS
new file mode 100644
index 0000000..e9745d1
--- /dev/null
+++ b/rc.spawn-fcgi/fcgiwrap-srv/env/SOCKET_PERMS
@@ -0,0 +1 @@
+0700
diff --git a/rc.spawn-fcgi/fcgiwrap-srv/run b/rc.spawn-fcgi/fcgiwrap-srv/run
new file mode 100644
index 0000000..90a232b
--- /dev/null
+++ b/rc.spawn-fcgi/fcgiwrap-srv/run
@@ -0,0 +1,24 @@
+#!/bin/execlineb -P
+
+####################################################
+# Start fcgiwrap (FastCGI wrapper for CGI scripts) #
+####################################################
+
+s6-envdir env
+multisubstitute {
+ importas -u SOCKET_OWNER SOCKET_OWNER
+ importas -u SOCKET_GROUP SOCKET_GROUP
+ importas -u SOCKET_PERMS SOCKET_PERMS
+ importas -u SOCKET_PATH SOCKET_PATH
+ importas -u CMD CMD
+}
+s6-envuidgid -B ${SOCKET_OWNER}:${SOCKET_GROUP}
+multisubstitute {
+ importas -u UID UID
+ importas -u GID GID
+}
+foreground { install -dm $SOCKET_PERMS -o $UID -g $GID /run/fcgiwrap }
+s6-ipcserver-socketbinder -B -d -a $SOCKET_PERMS $SOCKET_PATH
+foreground { chown ${SOCKET_OWNER}:${SOCKET_GROUP} $SOCKET_PATH }
+s6-setuidgid ${UID}:${GID}
+exec -c $CMD
diff --git a/rc.spawn-fcgi/fcgiwrap-srv/type b/rc.spawn-fcgi/fcgiwrap-srv/type
new file mode 100644
index 0000000..5883cff
--- /dev/null
+++ b/rc.spawn-fcgi/fcgiwrap-srv/type
@@ -0,0 +1 @@
+longrun