summaryrefslogtreecommitdiff
path: root/pcr
diff options
context:
space:
mode:
authorbill-auger <mr.j.spam.me@gmail.com>2023-10-06 20:53:59 -0400
committerbill-auger <mr.j.spam.me@gmail.com>2023-10-21 22:13:15 -0400
commitbda259358f5e1b19fc2097e01f03b863dce7e836 (patch)
tree5a2342821fb33756e241ce1d63404b5354dbc2e5 /pcr
parentd1d7edc56551cdf4300e15952e9c99c2b713a073 (diff)
[xinetd]: adopt package
Diffstat (limited to 'pcr')
-rw-r--r--pcr/xinetd/PKGBUILD46
-rw-r--r--pcr/xinetd/servers10
-rw-r--r--pcr/xinetd/services10
-rw-r--r--pcr/xinetd/xinetd38
-rw-r--r--pcr/xinetd/xinetd.conf14
-rw-r--r--pcr/xinetd/xinetd.service10
6 files changed, 128 insertions, 0 deletions
diff --git a/pcr/xinetd/PKGBUILD b/pcr/xinetd/PKGBUILD
new file mode 100644
index 000000000..daab1e8ea
--- /dev/null
+++ b/pcr/xinetd/PKGBUILD
@@ -0,0 +1,46 @@
+# Maintainer (aur): Tobias Powalowski <tpowa@archlinux.org>
+# Contributor: Judd <jvinet@zeroflux.org>
+# Maintainer: Parabola Hackers <dev@lists.parabola.nu>
+# Maintainer (artix): artoo <artoo@artixlinux.org>
+
+
+pkgname=xinetd
+pkgver=2.3.15.4
+pkgrel=2
+pkgdesc="A secure replacement for inetd"
+arch=(armv7h i686 x86_64)
+url="https://github.com/openSUSE/xinetd"
+license=('custom:xinetd')
+depends=('libtirpc')
+optdepends=('perl: for xconv.pl script')
+backup=('etc/xinetd.conf' 'etc/xinetd.d/servers' 'etc/xinetd.d/services')
+source=("https://github.com/openSUSE/$pkgname/releases/download/$pkgver/$pkgname-$pkgver.tar.xz"
+ xinetd.conf
+ servers
+ services
+ xinetd.service)
+sha256sums=('2baa581010bc70361abdfa37f121e92aeb9c5ce67f9a71913cebd69359cc9654'
+ '389a043503b287a1d096444b7da90c5187388a886687129c125135090bc2c86e'
+ '707a89ec32822f6d146b6ed3d43a38fee909b33d973f6ab7e9742ca8bc9f55f6'
+ '7f709257b08cb19f0a7066d1de6996bfe7c8c510546d11106512a19a76ccf540'
+ 'fa9ffd5ecf71e2dbd6e8cf57eb040ff6ea349420707a7f3c7850974774f7a18d')
+
+build() {
+ cd $pkgname-$pkgver
+ ./configure --prefix=/usr --sbindir=/usr/bin --sysconfdir=/etc --without-libwrap
+ CFLAGS+=' -I/usr/include/tirpc' LDFLAGS+=' -ltirpc' make
+}
+
+package() {
+ cd $pkgname-$pkgver
+ make prefix="$pkgdir/usr" sbindir="$pkgdir/usr/bin" sysconfdir="$pkgdir/etc" install
+
+ install -Dm644 "$srcdir"/xinetd.conf "$pkgdir"/etc/xinetd.conf
+ install -Dm644 "$srcdir"/servers "$pkgdir"/etc/xinetd.d/servers
+ install -Dm644 "$srcdir"/services "$pkgdir"/etc/xinetd.d/services
+
+ # install systemd files
+ install -Dm644 "$srcdir"/xinetd.service "$pkgdir"/usr/lib/systemd/system/xinetd.service
+ # install license
+ install -Dm644 COPYRIGHT "$pkgdir"/usr/share/licenses/$pkgname/COPYRIGHT
+}
diff --git a/pcr/xinetd/servers b/pcr/xinetd/servers
new file mode 100644
index 000000000..f064c8d7a
--- /dev/null
+++ b/pcr/xinetd/servers
@@ -0,0 +1,10 @@
+service servers
+{
+ type = INTERNAL UNLISTED
+ port = 9099
+ socket_type = stream
+ protocol = tcp
+ wait = no
+ disable = yes
+ only_from = 127.0.0.1
+}
diff --git a/pcr/xinetd/services b/pcr/xinetd/services
new file mode 100644
index 000000000..4ea304c4f
--- /dev/null
+++ b/pcr/xinetd/services
@@ -0,0 +1,10 @@
+service services
+{
+ type = INTERNAL UNLISTED
+ port = 9098
+ socket_type = stream
+ protocol = tcp
+ wait = no
+ disable = yes
+ only_from = 127.0.0.1
+}
diff --git a/pcr/xinetd/xinetd b/pcr/xinetd/xinetd
new file mode 100644
index 000000000..4b8fa369a
--- /dev/null
+++ b/pcr/xinetd/xinetd
@@ -0,0 +1,38 @@
+#!/bin/bash
+
+. /etc/rc.conf
+. /etc/rc.d/functions
+
+PID=`pidof -o %PPID /usr/sbin/xinetd`
+case "$1" in
+ start)
+ stat_busy "Starting xinetd"
+ [ -z "$PID" ] && /usr/sbin/xinetd -stayalive -pidfile /var/run/xinetd.pid
+ if [ $? -gt 0 ]; then
+ stat_fail
+ else
+ echo $PID > /var/run/xinetd.pid
+ add_daemon xinetd
+ stat_done
+ fi
+ ;;
+ stop)
+ stat_busy "Stopping xinetd"
+ [ ! -z "$PID" ] && kill $PID &> /dev/null
+ if [ $? -gt 0 ]; then
+ stat_fail
+ else
+ rm -f /var/run/xinetd.pid
+ rm_daemon xinetd
+ stat_done
+ fi
+ ;;
+ restart)
+ $0 stop
+ sleep 1
+ $0 start
+ ;;
+ *)
+ echo "usage: $0 {start|stop|restart}"
+esac
+exit 0
diff --git a/pcr/xinetd/xinetd.conf b/pcr/xinetd/xinetd.conf
new file mode 100644
index 000000000..b15d9f649
--- /dev/null
+++ b/pcr/xinetd/xinetd.conf
@@ -0,0 +1,14 @@
+#
+# /etc/xinetd.conf
+#
+
+defaults
+{
+ instances = 60
+ log_type = SYSLOG authpriv
+ log_on_success = HOST PID
+ log_on_failure = HOST
+ cps = 25 30
+}
+
+includedir /etc/xinetd.d
diff --git a/pcr/xinetd/xinetd.service b/pcr/xinetd/xinetd.service
new file mode 100644
index 000000000..1c587e291
--- /dev/null
+++ b/pcr/xinetd/xinetd.service
@@ -0,0 +1,10 @@
+[Unit]
+Description=A secure replacement for inetd
+After=network.target
+
+[Service]
+ExecStart=/usr/bin/xinetd -dontfork
+ExecReload=/bin/kill -HUP $MAINPID
+
+[Install]
+WantedBy=multi-user.target