iAdd xinetd gopher request filter example daemon. - geomyidae - A small C-based gopherd. Err bitreich.org 70 hgit clone git://bitreich.org/geomyidae/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/geomyidae/ URL:git://bitreich.org/geomyidae/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/geomyidae/ bitreich.org 70 1Log /scm/geomyidae/log.gph bitreich.org 70 1Files /scm/geomyidae/files.gph bitreich.org 70 1Refs /scm/geomyidae/refs.gph bitreich.org 70 1Tags /scm/geomyidae/tag bitreich.org 70 1README /scm/geomyidae/file/README.gph bitreich.org 70 1LICENSE /scm/geomyidae/file/LICENSE.gph bitreich.org 70 i--- Err bitreich.org 70 1commit 72b56b76bbd9616ec82b59b4a6541ca40ab4e660 /scm/geomyidae/commit/72b56b76bbd9616ec82b59b4a6541ca40ab4e660.gph bitreich.org 70 1parent 147e063355b1560f40584b7ddb11f8831e350753 /scm/geomyidae/commit/147e063355b1560f40584b7ddb11f8831e350753.gph bitreich.org 70 hAuthor: Christoph Lohmann <20h@r-36.net> URL:mailto:20h@r-36.net bitreich.org 70 iDate: Wed, 17 Mar 2021 22:18:34 +0100 Err bitreich.org 70 i Err bitreich.org 70 iAdd xinetd gopher request filter example daemon. Err bitreich.org 70 i Err bitreich.org 70 iDiffstat: Err bitreich.org 70 i A xinetd-gopher-request-filter.conf | 23 +++++++++++++++++++++++ Err bitreich.org 70 i A xinetd-gopher-request-filter.sh | 18 ++++++++++++++++++ Err bitreich.org 70 i Err bitreich.org 70 i2 files changed, 41 insertions(+), 0 deletions(-) Err bitreich.org 70 i--- Err bitreich.org 70 1diff --git a/xinetd-gopher-request-filter.conf b/xinetd-gopher-request-filter.conf /scm/geomyidae/file/xinetd-gopher-request-filter.conf.gph bitreich.org 70 i@@ -0,0 +1,23 @@ Err bitreich.org 70 i+# Adopt service to your needs. Err bitreich.org 70 i+service gopher Err bitreich.org 70 i+{ Err bitreich.org 70 i+ socket_type = stream Err bitreich.org 70 i+ protocol = tcp Err bitreich.org 70 i+ only_from = 0.0.0.0/0 ::/0 Err bitreich.org 70 i+ flags = IPv6 Err bitreich.org 70 i+ Err bitreich.org 70 i+ wait = no Err bitreich.org 70 i+ user = gopherd Err bitreich.org 70 i+ group = gopherd Err bitreich.org 70 i+ groups = yes Err bitreich.org 70 i+ server = /path/to/xinetd-gopher-request-filter.sh Err bitreich.org 70 i+ instances = 50 Err bitreich.org 70 i+ nice = 19 Err bitreich.org 70 i+ Err bitreich.org 70 i+ log_type = SYSLOG daemon debug Err bitreich.org 70 i+ log_on_success = PID HOST EXIT DURATION Err bitreich.org 70 i+ log_on_failure = HOST Err bitreich.org 70 i+ Err bitreich.org 70 i+ disable = no Err bitreich.org 70 i+} Err bitreich.org 70 i+ Err bitreich.org 70 1diff --git a/xinetd-gopher-request-filter.sh b/xinetd-gopher-request-filter.sh /scm/geomyidae/file/xinetd-gopher-request-filter.sh.gph bitreich.org 70 i@@ -0,0 +1,18 @@ Err bitreich.org 70 i+#!/bin/sh Err bitreich.org 70 i+# Err bitreich.org 70 i+# Copy me if you can. Err bitreich.org 70 i+# Err bitreich.org 70 i+# Change to fit to your original running geomyidae instance. Err bitreich.org 70 i+dstserver="localhost" Err bitreich.org 70 i+dstport="7070" Err bitreich.org 70 i+ Err bitreich.org 70 i+read -r request Err bitreich.org 70 i+case "${request}" in Err bitreich.org 70 i+/bill-gates-chips-us-all|/something-secret) Err bitreich.org 70 i+ printf "3The request cannot be handled\terror\t70\r\n" Err bitreich.org 70 i+ ;; Err bitreich.org 70 i+*) Err bitreich.org 70 i+ printf "%s\r\n" "${request}" | nc "${dstserver}" "${dstport}" Err bitreich.org 70 i+ ;; Err bitreich.org 70 i+esac Err bitreich.org 70 i+ Err bitreich.org 70 .