aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--www-misc/slowcgi/Manifest3
-rw-r--r--www-misc/slowcgi/files/7.3-Add-flag-to-run-in-the-foreground.patch97
-rw-r--r--www-misc/slowcgi/slowcgi-7.3.ebuild30
3 files changed, 130 insertions, 0 deletions
diff --git a/www-misc/slowcgi/Manifest b/www-misc/slowcgi/Manifest
index db8591c..f9c463b 100644
--- a/www-misc/slowcgi/Manifest
+++ b/www-misc/slowcgi/Manifest
@@ -1,6 +1,9 @@
AUX 7.0-Add-flag-to-run-in-the-foreground.patch 2634 BLAKE2B 969b1829ac576dd2ed80be33f92ebda679907586552ae14881595ba9a3557e6d6f52dbcc8308df3108606a4acbad84d5ccb6faa32c2ff869544469a656972c10 SHA512 7ed4d597c2057bb99d1e97ababe28f68f99da5efe1290b1d9e5bef9a73e136c53f91d370cca94ee29b659d9768d227f199b729d15aca9b7c4254bc18c5bce9da
+AUX 7.3-Add-flag-to-run-in-the-foreground.patch 2658 BLAKE2B 242dd2fa937121b09f739c63fbef70fb5acbbb8c6b44297a0c95fa9f10839fabfb81144d84b29822130eee2a27dfc29d0e99b604c5ff1a0342965a15f749353d SHA512 130185c3ea612acebd2b75b58dd420e7a64e5434f28b62be6312fbc3d41e605b903f9d50261a6a6108f461cfc4597c9e88828e7fd8f49a5cbaf65b98fe649d21
AUX slowcgi.confd 141 BLAKE2B 7b2880ddcbd1cb4e9976925d8f01085e26323edc4c33d292ed472eee2268134672967246e7fc520aec252e0be439fc6b4b462af1a83dbd7009cfea1d62f8958e SHA512 4b255b338a873f830ac569c04e19a35d2e069abb9bd593657f97651f582158139a2d9fb187446c97dede0d436699fdefa6648034403a240bcebb0a6ea9a9b2c6
AUX slowcgi.initd 297 BLAKE2B 9c1fb1867104beed84725c658a76b606b4ff3a78dc4b8e6722ddff40eee8eefd40522d17c1fefc8869750bc0ebed50a513b62866da9c19ab6e527d378dee2bea SHA512 a24a584c4cbedfa604a22d74851f9d74988037422c765e58174950143d2b481c17527400e178879dd342fb4bc4ce4c26b67095b2c26b5b19672f9a5647e9047a
DIST slowcgi-7.0.tar.gz 14302 BLAKE2B c0adccb1ef7a3b61495443be6018e2a7e56f0e0657083758862989f1c8f19d2a8d77be04ee0c729d99de9b0c6a39500cdcf08d3cd0daec74a8f8e6e8b95ab772 SHA512 6c3c8f13f66132428e7c341c87fb2466f4b31c70b0927af4c6aad597c696764483eeaba38f476ae90052d1e0f674bc72afb3ed25b62ae795eed53f6b3e21e8e8
+DIST slowcgi-7.3.tar.gz 14924 BLAKE2B 3f4d1dec35ac69976b9aa0d8be16accfb9ad48180328aa38d11460d31e7960ba24828cd1dd4954b9b88868ebc614bb38bbe26d0264da89414e206b22ba46792b SHA512 0bb11242abd5e3d96056e21553b478b28011e1b4838049cbe1e3940a76322a2d329c106fceabc33fa5f32bae38995d418b8a7bf9413f226083b09c5f5b99b522
EBUILD slowcgi-7.0.ebuild 613 BLAKE2B 2287eeb44f695b31a950a54e1ffeb125be773a686294918aeee137b80745ace3c1bc5dcdf680a1477cb8a13d83497c948e60b01ffa27d0748d588e67b130b2c2 SHA512 060e1efb68bfd68bfa2c397780c08f5315e9de8f9f39506768626ce6ce6652300cce5df71ea623d41059fdbcd943a93a5f0a525e0318112572296e061324c7f7
+EBUILD slowcgi-7.3.ebuild 613 BLAKE2B 2287eeb44f695b31a950a54e1ffeb125be773a686294918aeee137b80745ace3c1bc5dcdf680a1477cb8a13d83497c948e60b01ffa27d0748d588e67b130b2c2 SHA512 060e1efb68bfd68bfa2c397780c08f5315e9de8f9f39506768626ce6ce6652300cce5df71ea623d41059fdbcd943a93a5f0a525e0318112572296e061324c7f7
MISC metadata.xml 223 BLAKE2B 2c1cd83f1f1d25a43ea978cd66b5c9f6020889613dfaed65d6745858a45d4bf50fda775305420e41c36cafd63d63746ed894411acbced66ab8ae04906dfb8592 SHA512 4f71eacfeb2b21a4ea746ce1663777937b920e942c94eef1fe93c3557e207c9fdb2569369d56637cba563dc50179d62195db6225123ecfedc303600b8a0bb49b
diff --git a/www-misc/slowcgi/files/7.3-Add-flag-to-run-in-the-foreground.patch b/www-misc/slowcgi/files/7.3-Add-flag-to-run-in-the-foreground.patch
new file mode 100644
index 0000000..ddedaca
--- /dev/null
+++ b/www-misc/slowcgi/files/7.3-Add-flag-to-run-in-the-foreground.patch
@@ -0,0 +1,97 @@
+From 4c2f7e55877aec6ede5dac7354ca401891750962 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Wolfgang=20M=C3=BCller?= <wolf@oriole.systems>
+Date: Fri, 29 Oct 2021 11:45:32 +0200
+Subject: [PATCH] Add flag to run in the foreground
+
+slowcgi already has the -d flag to disable forking, but that particular
+flag also stops slowcgi from logging to syslog and is intended for
+debugging purposes.
+
+Ordinarily this would be fine, but sadly we know of no clean way to
+track the PID of a forked process with Gentoo's OpenRC and its
+start-stop-daemon(8). We could add support to write a pidfile instead,
+but since we want to support multiple invocations of slowcgi through
+OpenRC and ${RC_SVCNAME}, we need a way of specifying the pidfile
+location in the init script itself.
+
+To solve this reasonably cleanly, add a flag that *only* controls
+whether or not the program daemonizes or not. Make sure to mention this
+in the manual too.
+---
+ slowcgi.8 | 6 +++++-
+ slowcgi.c | 10 +++++++---
+ 2 files changed, 12 insertions(+), 4 deletions(-)
+
+diff --git a/slowcgi.8 b/slowcgi.8
+index e1f0afb..34f5f53 100644
+--- a/slowcgi.8
++++ b/slowcgi.8
+@@ -22,7 +22,7 @@
+ .Nd a FastCGI to CGI wrapper server
+ .Sh SYNOPSIS
+ .Nm
+-.Op Fl dv
++.Op Fl dfv
+ .Op Fl p Ar path
+ .Op Fl s Ar socket
+ .Op Fl t Ar timeout
+@@ -65,6 +65,10 @@ Do not daemonize.
+ If this option is specified,
+ .Nm
+ will run in the foreground and log to stderr.
++.It Fl f
++As
++.Fl d ,
++but log to syslog.
+ .It Fl p Ar path
+ .Xr chroot 2
+ to
+diff --git a/slowcgi.c b/slowcgi.c
+index ce1530c..fe4c3d3 100644
+--- a/slowcgi.c
++++ b/slowcgi.c
+@@ -278,7 +278,7 @@ usage(void)
+ {
+ extern char *__progname;
+ fprintf(stderr,
+- "usage: %s [-dv] [-p path] [-s socket] [-t timeout] [-U user] "
++ "usage: %s [-dfv] [-p path] [-s socket] [-t timeout] [-U user] "
+ "[-u user]\n", __progname);
+ exit(1);
+ }
+@@ -286,6 +286,7 @@ usage(void)
+ struct timeval timeout = { TIMEOUT_DEFAULT, 0 };
+ struct slowcgi_proc slowcgi_proc;
+ int debug = 0;
++int foreground = 0;
+ int verbose = 0;
+ int on = 1;
+ char *fcgi_socket = "/var/www/run/slowcgi.sock";
+@@ -320,11 +321,14 @@ main(int argc, char *argv[])
+ }
+ }
+
+- while ((c = getopt(argc, argv, "dp:s:t:U:u:v")) != -1) {
++ while ((c = getopt(argc, argv, "dfp:s:t:U:u:v")) != -1) {
+ switch (c) {
+ case 'd':
+ debug++;
+ break;
++ case 'f':
++ foreground = 1;
++ break;
+ case 'p':
+ chrootpath = optarg;
+ break;
+@@ -355,7 +359,7 @@ main(int argc, char *argv[])
+ if (geteuid() != 0)
+ errx(1, "need root privileges");
+
+- if (!debug && daemon(0, 0) == -1)
++ if (!debug && !foreground && daemon(0, 0) == -1)
+ err(1, "daemon");
+
+ if (!debug) {
+--
+2.42.0
+
diff --git a/www-misc/slowcgi/slowcgi-7.3.ebuild b/www-misc/slowcgi/slowcgi-7.3.ebuild
new file mode 100644
index 0000000..8ed5723
--- /dev/null
+++ b/www-misc/slowcgi/slowcgi-7.3.ebuild
@@ -0,0 +1,30 @@
+# Copyright 2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DESCRIPTION="a FastCGI to CGI wrapper server"
+HOMEPAGE="https://git.oriole.systems/slowcgi"
+SRC_URI="https://git.oriole.systems/slowcgi/snapshot/${P}.tar.gz"
+
+RESTRICT="mirror"
+
+LICENSE="ISC"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE=""
+
+DEPEND="
+ acct-user/slowcgi
+ acct-group/http"
+
+PATCHES=(
+ "${FILESDIR}/${PV}-Add-flag-to-run-in-the-foreground.patch"
+)
+
+src_install() {
+ emake PREFIX=/usr DESTDIR="${D}" install
+
+ newinitd "${FILESDIR}"/slowcgi.initd slowcgi
+ newconfd "${FILESDIR}"/slowcgi.confd slowcgi
+}