File xinetd.spec of Package xinetd.5694
#
# spec file for package xinetd
#
# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
Name: xinetd
Version: 2.3.15
Release: 0
Url: http://www.xinetd.org/
Summary: An 'inetd' with Expanded Functionality
License: xinetd
Group: Productivity/Networking/System
Source0: http://www.xinetd.org/%{name}-%{version}.tar.gz
Source1: xinetd.service
Source2: FAQ
Source3: README.SUSE
Source4: %{name}-service_files.tar.bz2
Source5: logrotate
Source6: sysconfig.xinetd
Patch0: %{name}-2.3.14-man.dif
Patch4: %{name}-2.3.14-server_args-fix.diff
Patch5: %{name}-2.3.14-strict-aliasing-fix.diff
Patch6: %{name}-2.3.14-nodeadlock.diff
Patch8: %{name}-2.3.14-pie.patch
Patch9: %{name}-2.3.14-ipv6-ipv4-fallback.patch
Patch10: %{name}-2.3.14-honour_disable.patch
Patch11: %{name}-2.3.14-ident-bind.patch
Patch12: %{name}-2.3.14-nodeadlock-revisited.patch
#PATCH-FIX-SUSE: merge the SUSE's default xinetd.conf with upstream one
Patch13: xinetd-config.patch
Patch15: xinetd-CVE-2013-4342.patch
Patch16: xinetd-2.3.14-file-limit.patch
Patch17: xinetd-2.3.14-restore-nofile-limits.patch
Patch18: xinetd-deactivating-error.patch
# xinetd-2.3.14-restore-nofile-limits.patch (bsc#972961)
Patch19: xinetd-2.3.14-retry-binds.patch
# xinetd-2.3.15-allow-single-log-only.patch (bsc#1054532)
Patch20: xinetd-2.3.15-allow-single-log-only.patch
Patch21: xinetd-configlength.patch
Patch22: xinetd-ipv6-fallback.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRequires: autoconf
BuildRequires: systemd
BuildRequires: tcpd-devel
Requires(post): %{fillup_prereq}
%{systemd_requires}
Provides: inet-daemon
%description
xinetd takes the abilities of inetd and appends additional
functionality:
- Access Control
- Prevention of 'denial of access' attacks
- Extensive logging abilities
- Clear configuration file
%prep
%setup -b 0 -T -D -a 4
%patch0
%patch4
%patch5
%patch6
%patch8
%patch9
%patch10
%patch11 -p1
%patch12 -p1
%patch13 -p1
%patch15 -p1
%patch16 -p1
%patch17 -p1
%patch18 -p1
%patch19 -p1
%patch20 -p1
%patch21 -p1
%patch22 -p1
# FAQ, README.SUSE and logrotate
cp %{SOURCE2} %{SOURCE3} %{SOURCE5} .
%build
autoconf
export CFLAGS="$RPM_OPT_FLAGS -Wformat=2"
./configure \
--prefix=%{_prefix} \
--sysconfdir=%{_sysconfdir} \
--mandir=%{_mandir}\
--with-loadavg \
--with-libwrap
make %{?_smp_mflags}
%install
install -d -m 755 %{buildroot}%{_mandir}
make install DAEMONDIR=%{buildroot}%{_sbindir} MANDIR=${RPM_BUILD_ROOT}/%{_mandir}
#config file and initial services
install -d -m 0755 %{buildroot}%{_sysconfdir}
install -m 644 contrib/%{name}.conf %{buildroot}%{_sysconfdir}/%{name}.conf
cp -a etc %{buildroot}
install -d -m 755 %{buildroot}/var/adm/fillup-templates
install -m 644 %{SOURCE6} %{buildroot}/var/adm/fillup-templates
#xinetd.service
install -d -m 0755 %{buildroot}%{_unitdir}
install -m 0644 %{SOURCE1} %{buildroot}%{_unitdir}/%{name}.service
ln -sf ../../sbin/service %{buildroot}%{_sbindir}/rc%{name}
%pre
%service_add_pre %{name}.service
%post
%{fillup_only -n xinetd}
%service_add_post %{name}.service
%preun
if [ -x /etc/init.d/%{name} ]; then
%stop_on_removal xinetd
fi
%service_del_preun %{name}.service
%postun
%service_del_postun %{name}.service
%files
%defattr(-,root,root)
%doc README CHANGELOG COPYRIGHT FAQ README.SUSE logrotate
%doc %{_mandir}/man5/%{name}.conf.*
%doc %{_mandir}/man8/*
%config(noreplace) %{_sysconfdir}/xinetd.d/*
%config(noreplace) %{_sysconfdir}/%{name}.conf
/var/adm/fillup-templates/sysconfig.xinetd
%{_sbindir}/*
%{_unitdir}/%{name}.service
%changelog