From: Jonas Lochmann Date: Mon, 22 Dec 2025 00:00:00 +0000 (+0100) Subject: xinetd: update to 2.3.15.4 X-Git-Url: http://git.cdn.openwrt.org/?a=commitdiff_plain;h=47a54ba42d0f11f32e43f9fe3902cf050ffa2760;p=feed%2Fpackages.git xinetd: update to 2.3.15.4 Changelog: https://github.com/openSUSE/xinetd/blob/1c4d1766d466ec253ed82eee480d2ea534462ac5/CHANGELOG#L935 Instead of the xinetd-org sources, the OpenSUSE fork is used now because the xinetd-org version is not maintained anymore. This fork is used by Debian too and obsoletes the patches that were used previously for the packaging at OpenWrt. [1] https://github.com/xinetd-org/xinetd/issues/37 [2] https://packages.debian.org/trixie/xinetd Signed-off-by: Jonas Lochmann --- diff --git a/net/xinetd/Makefile b/net/xinetd/Makefile index 4015d37995..c33709dfe4 100644 --- a/net/xinetd/Makefile +++ b/net/xinetd/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2006-2015 OpenWrt.org +# Copyright (C) 2006-2025 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -8,19 +8,20 @@ include $(TOPDIR)/rules.mk PKG_NAME:=xinetd -PKG_VERSION:=2.3.15 -PKG_RELEASE:=18 +PKG_VERSION:=2.3.15.4 +PKG_RELEASE:=1 PKG_SOURCE_PROTO:=git -PKG_SOURCE_VERSION:=$(PKG_NAME)-2-3-15 -PKG_SOURCE_URL:=https://github.com/xinetd-org/xinetd -PKG_MIRROR_HASH:=f2fc2c6decb2334848c277915e10dee7463aacd1411d61c953ff908aaad8d275 +PKG_SOURCE_VERSION:=$(PKG_VERSION) +PKG_SOURCE_URL:=https://github.com/openSUSE/xinetd +PKG_MIRROR_HASH:=7268c75ce6f4cd64fa62172849c5361d38f05b6be0fac889ed2012d3d9547639 PKG_MAINTAINER:=Florian Eckert PKG_LICENSE:=xinetd PKG_LICENSE_FILES:=COPYRIGHT PKG_CPE_ID:=cpe:/a:xinetd:xinetd +PKG_FIXUP:=autoreconf PKG_INSTALL:=1 include $(INCLUDE_DIR)/package.mk @@ -29,7 +30,7 @@ define Package/xinetd SECTION:=net CATEGORY:=Network TITLE:=A powerful and secure super-server - URL:=https://github.com/xinetd-org + URL:=https://github.com/openSUSE/xinetd DEPENDS:= +USE_GLIBC:libcrypt-compat endef @@ -46,17 +47,11 @@ define Package/xinetd/conffiles /etc/xinetd.d endef -TARGET_CFLAGS += -DNO_RPC -std=gnu11 -TARGET_CPPFLAGS += -DHAVE_RLIM_T - CONFIGURE_ARGS += \ --without-libwrap \ - --with-loadavg - -CONFIGURE_VARS += \ - ac_cv_header_rpc_pmap_clnt_h=no \ - ac_cv_header_rpc_rpc_h=no \ - ac_cv_header_rpc_rpcent_h=no + --with-loadavg \ + --without-rpc \ + --without-labeled-networking define Package/xinetd/install $(INSTALL_DIR) $(1)/usr/sbin diff --git a/net/xinetd/patches/001-ar.patch b/net/xinetd/patches/001-ar.patch deleted file mode 100644 index 4d961ba205..0000000000 --- a/net/xinetd/patches/001-ar.patch +++ /dev/null @@ -1,66 +0,0 @@ ---- a/libs/src/misc/Makefile.in -+++ b/libs/src/misc/Makefile.in -@@ -62,7 +62,7 @@ libopt: clean - - - $(LIBNAME): $(OBJECTS) -- ar r $@ $? -+ $(AR) r $@ $? - $(RANLIB) $@ - - install: $(LIBNAME) ---- a/libs/src/portable/Makefile.in -+++ b/libs/src/portable/Makefile.in -@@ -57,7 +57,7 @@ libopt: clean - - - $(LIBNAME): $(OBJECTS) -- ar r $@ $? -+ $(AR) r $@ $? - $(RANLIB) $@ - - install: $(LIBNAME) ---- a/libs/src/pset/Makefile.in -+++ b/libs/src/pset/Makefile.in -@@ -53,7 +53,7 @@ libopt: clean - mv $(LIBNAME) $(LIBDIR)/optimized - - $(LIBNAME): $(OBJECTS) -- ar r $@ $? -+ $(AR) r $@ $? - $(RANLIB) $@ - - install: $(LIBNAME) ---- a/libs/src/sio/Makefile.in -+++ b/libs/src/sio/Makefile.in -@@ -52,7 +52,7 @@ libopt: clean - $(INSTALL) $(FMODE) $(LIBNAME) $(LIBDIR)/optimized - - $(LIBNAME): $(OBJECTS) -- ar r $@ $? -+ $(AR) r $@ $? - $(RANLIB) $@ - - install: $(LIBNAME) ---- a/libs/src/str/Makefile.in -+++ b/libs/src/str/Makefile.in -@@ -63,7 +63,7 @@ libopt: clean - $(INSTALL) $(FMODE) $(LIBNAME) $(LIBDIR)-O - - $(LIBNAME): $(OBJECTS) -- ar r $@ $? -+ $(AR) r $@ $? - $(RANLIB) $@ - - LINT_IGNORE=possible pointer alignment|RCSid unused ---- a/libs/src/xlog/Makefile.in -+++ b/libs/src/xlog/Makefile.in -@@ -58,7 +58,7 @@ libopt: clean - $(INSTALL) $(FMODE) $(LIBNAME) $(LIBDIR)/optimized - - $(LIBNAME): $(OBJECTS) -- ar r $@ $? -+ $(AR) r $@ $? - $(RANLIB) $@ - - install: $(LIBNAME) diff --git a/net/xinetd/patches/001-sprint-gnu-extensions.patch b/net/xinetd/patches/001-sprint-gnu-extensions.patch new file mode 100644 index 0000000000..b48a262b05 --- /dev/null +++ b/net/xinetd/patches/001-sprint-gnu-extensions.patch @@ -0,0 +1,10 @@ +--- a/src/sio/sprint.c ++++ b/src/sio/sprint.c +@@ -6,6 +6,7 @@ + + + #include "config.h" ++#define _GNU_SOURCE + #include + #include + #include diff --git a/net/xinetd/patches/002-destdir.patch b/net/xinetd/patches/002-destdir.patch deleted file mode 100644 index 89075c8984..0000000000 --- a/net/xinetd/patches/002-destdir.patch +++ /dev/null @@ -1,27 +0,0 @@ ---- a/Makefile.in -+++ b/Makefile.in -@@ -75,15 +75,15 @@ dlibxlog: dlibsio dlibstr - - install: build - for i in $(DAEMONDIR) $(BINDIR) $(MANDIR)/man5 $(MANDIR)/man8 ; do \ -- test -d $$i || mkdir -p $$i ; done -- $(INSTALL_CMD) -m 755 xinetd/xinetd $(DAEMONDIR) -- $(INSTALL_CMD) -m 755 xinetd/itox $(DAEMONDIR) -- $(INSTALL_CMD) -m 755 $(SRCDIR)/xinetd/xconv.pl $(DAEMONDIR) -- $(INSTALL_CMD) -m 644 $(SRCDIR)/xinetd/xinetd.conf.man $(MANDIR)/man5/xinetd.conf.5 -- $(INSTALL_CMD) -m 644 $(SRCDIR)/xinetd/xinetd.log.man $(MANDIR)/man8/xinetd.log.8 -- $(INSTALL_CMD) -m 644 $(SRCDIR)/xinetd/xinetd.man $(MANDIR)/man8/xinetd.8 -- $(INSTALL_CMD) -m 644 $(SRCDIR)/xinetd/itox.8 $(MANDIR)/man8/itox.8 -- $(INSTALL_CMD) -m 644 $(SRCDIR)/xinetd/xconv.pl.8 $(MANDIR)/man8/xconv.pl.8 -+ test -d $(DESTDIR)$$i || mkdir -p $(DESTDIR)$$i ; done -+ $(INSTALL_CMD) -m 755 xinetd/xinetd $(DESTDIR)$(DAEMONDIR) -+ $(INSTALL_CMD) -m 755 xinetd/itox $(DESTDIR)$(DAEMONDIR) -+ $(INSTALL_CMD) -m 755 $(SRCDIR)/xinetd/xconv.pl $(DESTDIR)$(DAEMONDIR) -+ $(INSTALL_CMD) -m 644 $(SRCDIR)/xinetd/xinetd.conf.man $(DESTDIR)$(MANDIR)/man5/xinetd.conf.5 -+ $(INSTALL_CMD) -m 644 $(SRCDIR)/xinetd/xinetd.log.man $(DESTDIR)$(MANDIR)/man8/xinetd.log.8 -+ $(INSTALL_CMD) -m 644 $(SRCDIR)/xinetd/xinetd.man $(DESTDIR)$(MANDIR)/man8/xinetd.8 -+ $(INSTALL_CMD) -m 644 $(SRCDIR)/xinetd/itox.8 $(DESTDIR)$(MANDIR)/man8/itox.8 -+ $(INSTALL_CMD) -m 644 $(SRCDIR)/xinetd/xconv.pl.8 $(DESTDIR)$(MANDIR)/man8/xconv.pl.8 - @echo "You must put your xinetd.conf in /etc/xinetd.conf" - @echo "There is a sample config file in xinetd/sample.conf and you can" - @echo "use xconv.pl to convert your old inetd.conf file to an xinetd format" diff --git a/net/xinetd/patches/003-rpc_fix.patch b/net/xinetd/patches/003-rpc_fix.patch deleted file mode 100644 index 11f47e72e6..0000000000 --- a/net/xinetd/patches/003-rpc_fix.patch +++ /dev/null @@ -1,19 +0,0 @@ ---- a/xinetd/confparse.c -+++ b/xinetd/confparse.c -@@ -745,7 +745,7 @@ static status_e check_entry( struct serv - } - } - --/* #ifndef NO_RPC */ -+#ifndef NO_RPC - #if defined(HAVE_RPC_RPCENT_H) || defined(HAVE_NETDB_H) - if ( SC_IS_RPC( scp ) && !SC_IS_UNLISTED( scp ) ) - { -@@ -759,6 +759,7 @@ static status_e check_entry( struct serv - SC_RPCDATA( scp )->rd_program_number = rep->r_number ; - } - else -+#endif - #endif /* ! NO_RPC */ - { - if ( !SC_IS_UNLISTED( scp ) ) diff --git a/net/xinetd/patches/004-ident-bind.patch b/net/xinetd/patches/004-ident-bind.patch deleted file mode 100644 index 0da01484d2..0000000000 --- a/net/xinetd/patches/004-ident-bind.patch +++ /dev/null @@ -1,42 +0,0 @@ -xinetd: socket bind: Invalid argument (errno = 22) when using USERID on ipv6 - -Use right size of addresses in bind() call. Also use getpeername addresses when -connecting to ident service to prevent address family mismatch between socket(), -bind() and connect() calls. - -Author: Jan Safranek -Reviewed-By: Adam Tkac - -#diff -up xinetd-2.3.14/xinetd/ident.c.orig xinetd-2.3.14/xinetd/ident.c ---- a/xinetd/ident.c -+++ b/xinetd/ident.c -@@ -97,7 +97,13 @@ idresult_e log_remote_user( const struct - } - - CLEAR( sin_contact ); -- sin_remote = *CONN_XADDRESS( SERVER_CONNECTION( serp ) ) ; -+ -+ sin_len = sizeof( sin_remote ); -+ if ( getpeername( SERVER_FD( serp ), &sin_remote.sa, &sin_len ) == -1 ) -+ { -+ msg( LOG_ERR, func, "(%d) getpeername: %m", getpid() ) ; -+ return( IDR_ERROR ) ; -+ } - sin_contact = sin_remote; - memcpy( &sin_bind, &sin_local, sizeof(sin_bind) ) ; - local_port = 0; -@@ -127,7 +133,13 @@ idresult_e log_remote_user( const struct - msg( LOG_ERR, func, "socket creation: %m" ) ; - return( IDR_ERROR ) ; - } -- if ( bind(sd, &sin_bind.sa, sizeof(sin_bind.sa)) == -1 ) -+ -+ if ( sin_bind.sa.sa_family == AF_INET ) -+ sin_len = sizeof( sin_bind.sa_in ) ; -+ else -+ sin_len = sizeof( sin_bind.sa_in6 ) ; -+ -+ if ( bind(sd, &sin_bind.sa, sin_len) == -1 ) - { - msg( LOG_ERR, func, "socket bind: %m" ) ; - (void) Sclose( sd ) ; diff --git a/net/xinetd/patches/005-format.patch b/net/xinetd/patches/005-format.patch deleted file mode 100644 index 30700c85b1..0000000000 --- a/net/xinetd/patches/005-format.patch +++ /dev/null @@ -1,23 +0,0 @@ ---- a/xinetd/connection.c -+++ b/xinetd/connection.c -@@ -14,6 +14,7 @@ - #include - #include - #include -+#include - - #include - -@@ -218,11 +219,7 @@ void conn_dump( const connection_s *cp, - - tabprint( fd, 1, "service = %s\n", SVC_ID( cp->co_sp ) ) ; - tabprint( fd, 1, "descriptor = %d\n", cp->co_descriptor ) ; --#if defined(__GNUC__) && !defined(__arch64__) && !defined(__alpha__) -- tabprint( fd, 1, "flags = %#llx\n", cp->co_flags ) ; --#else -- tabprint( fd, 1, "flags = %#lx\n", cp->co_flags ) ; --#endif -+ tabprint( fd, 1, "flags = %#" PRIx64 "\n", cp->co_flags ) ; - tabprint( fd, 1, "remote_address = %s,%d\n", name, - ntohs( cp->co_remote_address.sa_in.sin_port ) ) ; - } diff --git a/net/xinetd/patches/010-gcc14.patch b/net/xinetd/patches/010-gcc14.patch deleted file mode 100644 index 71e26e61ad..0000000000 --- a/net/xinetd/patches/010-gcc14.patch +++ /dev/null @@ -1,64 +0,0 @@ ---- a/libs/src/sio/sprint.c -+++ b/libs/src/sio/sprint.c -@@ -6,6 +6,11 @@ - - - #include "config.h" -+ -+#ifndef _GNU_SOURCE -+#define _GNU_SOURCE -+#endif -+ - #include - #include - #include ---- a/xinetd/redirect.c -+++ b/xinetd/redirect.c -@@ -24,9 +24,6 @@ - #ifdef HAVE_ARPA_INET_H - #include - #endif --#ifdef HAVE_SYS_SIGNAL_H --#include --#endif - - #include "redirect.h" - #include "service.h" ---- a/xinetd/sconf.c -+++ b/xinetd/sconf.c -@@ -311,7 +311,7 @@ void sc_dump( struct service_config *scp - tabprint( fd, tab_level+1, "Nice = %d\n", SC_NICE(scp) ) ; - - if ( SC_SPECIFIED( scp, A_CPS ) ) -- tabprint( fd, tab_level+1, "CPS = max conn:%lu wait:%lu\n", -+ tabprint( fd, tab_level+1, "CPS = max conn:%" PRId64 " wait:%" PRId64 "\n", - SC_TIME_CONN_MAX(scp), SC_TIME_WAIT(scp) ); - - if ( SC_SPECIFIED( scp, A_PER_SOURCE ) ) ---- a/xinetd/sensor.c -+++ b/xinetd/sensor.c -@@ -76,7 +76,7 @@ void process_sensor( const struct servic - if (SC_DENY_TIME(SVC_CONF(sp)) == -1) - strcpy(time_buf, "-1"); - else -- strx_nprint(time_buf, 38, "%ld", -+ strx_nprint(time_buf, 38, "%" PRId64, - (time_t)nowtime+(60*SC_DENY_TIME(SVC_CONF(sp)))); - - tmp = new_string(time_buf); ---- a/xinetd/util.c -+++ b/xinetd/util.c -@@ -18,11 +18,10 @@ - * The following ifdef is for TIOCNOTTY - */ - #ifndef NO_TERMIOS --#ifdef HAVE_SYS_TERMIOS_H --#include --#endif - #ifdef HAVE_TERMIOS_H - #include -+#elif defined(HAVE_SYS_TERMIOS_H) -+#include - #endif - #else - #include