# $Id: ipsvd.spec,v 1.5 2014/04/24 14:52:22 wellsi Exp $ Summary: internet protocol service daemons Name: ipsvd Version: 0.12.1 Release: 7%{?dist} License: BSD style Group: System Enviornment/Daemons Url: http://smarden.org/ipsvd/ Source: %{name}-%{version}.tar.gz Source1: matrixssl-1-8-3-open.tar.gz Patch0: matrix.decode.debug.patch Patch1: tcpsvd_keepalive.patch BuildRequires: dietlibc BuildRoot: %{_tmppath}/%{name}-root %description ipsvd is a set of internet protocol service daemons. It currently includes a TCP/IP service daemon, and a UDP/IP service daemon. An internet protocol service (ipsv) daemon waits for incoming connections on a local socket. On incoming connections, the ipsv daemon conditionally runs an arbitrary program with standard input reading from the socket, and standard output writing to the socket, that handles the connection. The network connection optionally can be encrypted using SSLv3. Standard error is used for logging. ipsv daemons can be told to read and follow pre-defined instructions on how to handle incoming connections. It's possible to run different programs, or to set a different environment, or to deny a connection, or to set a per host concurrency limit, depending on the client's address or hostname. Normally the ipsv daemons are run by a supervisor process, such as runsv from the runit package, or supervise from the daemontools package. ipsvd can be used to run services normally run by inetd, xinetd, or tcpserver. %changelog * Wed Apr 23 2014 Ian Wells 0.12.1-07.sme - Modifed patch and spec file to avoid build errors [SME: 8084] * Wed Dec 25 2013 Charlie Brady 0.12.1-06 - Add option to tcpsvd to set socket keepalive. Code provided by Chris Maltby. [SME: 8084] * Sat Oct 6 2007 Charlie Brady 0.12.1-05 - Remove extra debugging code. [SME: 3438] * Tue Oct 2 2007 Charlie Brady 0.12.1-04 - Add more debugging of client hello parsing. [SME: 3438] * Fri Aug 17 2007 Charlie Brady 0.12.1-03 - Send all debugging to stderr rather than stdout. - Fix bug parsing SSL 3.0 client hello (if hello extensions are included, as in Thunderbird 2). [SME: 3438] * Thu Aug 16 2007 Charlie Brady 0.12.1-02 - Enable DEBUG during matrixssl build. * Sun Apr 29 2007 Shad L. Lords - Clean up spec so package can be built by koji/plague * Thu Apr 12 2007 Charlie Brady 0.12.1-01 - Update to latest upstream ipsvd. * Thu Mar 15 2007 Charlie Brady 0.12.0-04 - Update to latest upstream matrixssl library. * Thu Dec 07 2006 Shad L. Lords - Update to new release naming. No functional changes. - Make Packager generic * Sat Feb 4 2006 Charlie Brady 0.12.0-02 - Fix build error in Makefile. * Sat Feb 4 2006 Charlie Brady 0.12.0-01 - Upgrade to new version. * Mon Nov 21 2005 Charlie Brady 0.11.1-03 - Rebuild with new dietlibc (0.27-4). * Wed Nov 16 2005 Charlie Brady 0.11.1-02 - Update to latest matrixssl. * Wed Nov 16 2005 Charlie Brady 0.11.1-01 - Update to new ipsvd version. - Remove matrixssl build issue patch. * Mon Oct 24 2005 Charlie Brady 0.11.0-04 - Update to latest matrixssl. * Tue Jul 12 2005 Charlie Brady 0.11.0-03 - Rebuild on CentOS 4.1 build server, to correct segfault problem. * Tue Mar 15 2005 Charlie Brady 0.11.0-02 - Fix install of sslio * Wed Feb 23 2005 Charlie Brady 0.11.0-01 - Upgrade to 0.11.0 - Remove bogus dietlibc Requires: header (statically linked) * Sat Jan 15 2005 Charlie Brady 0.10.1-01 - Upgrade to 0.10.1 - Upgrade martixssl to 1.2.2. - Don't bundle djbdns client library. * Mon Dec 20 2004 Charlie Brady 0.9.7-01 - Upgrade to 0.9.7. * Thu Sep 30 2004 Charlie Brady 0.9.6-01 - Upgrade to 0.9.6. - Upgrade martixssl to 1.2. * Mon Jun 07 2004 Charlie Brady 0.9.3-01 - Upgrade to 0.9.3. * Mon May 03 2004 Charlie Brady 0.9.1-01 - Upgrade to 0.9.1. * Sun May 02 2004 Charlie Brady 0.9.0-01 - Upgrade to 0.9.0 (now includes sslio). - Build/link with dietlibc and matrixssl. * Tue Nov 04 2003 Charlie Brady 0.6.0-02 - Build/link with uClibc. - Add missing man(8) pages. * Thu Oct 16 2003 Charlie Brady 0.6.0-01 - Upgrade to 0.6.0. * Tue Jul 22 2003 Charlie Brady 0.4.1-01 - Initial %prep %setup -c -n %{name}-%{version} cp -v %{SOURCE1} net/%{name}-%{version}/src/matrixssl.tar.gz mkdir -p net/%{name}-%{version}/compile perl -p -i -e 's:CC=../../compile:CC=../../compile -DDEBUG:' \ net/%{name}-%{version}/src/Makefile.matrixssl ln -s matrixssl-1-8-3-open net/%{name}-%{version}/compile/matrixssl %patch1 -p1 %build cd net/%{name}-%{version} echo 'diet -Os gcc -O2 -Wall' >src/conf-cc echo 'diet -Os gcc -s -Os -pipe' >src/conf-ld ./package/compile cd compile #patch -p0 < %{PATCH0} perl -p -i -e "s/printf.m/fprintf(stderr, m/" matrixssl/src/os/debug.c perl -p -i -e "s/ssl.*TLS_MIN_VER .. c/c/" matrixssl/src/sslDecode.c rm matrixssl.a sslio sslsvd cd .. ./package/compile %install cd net/%{name}-%{version} mkdir -p $RPM_BUILD_ROOT/%{_bindir} for i in $(cat package/commands compile/command.ssl) do install command/$i $RPM_BUILD_ROOT/%{_bindir} done mkdir -p $RPM_BUILD_ROOT/%{_mandir}/man1 #install man/*.1 $RPM_BUILD_ROOT/%{_mandir}/man1 mkdir -p $RPM_BUILD_ROOT/%{_mandir}/man8 install man/*.8 $RPM_BUILD_ROOT/%{_mandir}/man8 %clean rm -r $RPM_BUILD_ROOT %files %defattr(-,root,root) %{_bindir}/* %{_mandir}/man8/* #%{_mandir}/man1/* %doc net/%{name}-%{version}/package/COPYING %doc net/%{name}-%{version}/doc/*