# # spec file for package openslp (Version 1.2.0) # # Copyright (c) 2008 SUSE LINUX Products 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: openslp BuildRequires: bison flex openssl-devel Summary: An OpenSLP Implementation of Service Location Protocol V2 Version: 1.2.0 Release: 158 License: BSD 3-Clause; GPL v2 or later Group: System/Daemons Url: http://www.openslp.org/ BuildRoot: %{_tmppath}/%{name}-%{version}-build Source0: %name-%version.tar.bz2 Source1: slpd.init Source2: README.SuSE Source3: openslp.desktop Source4: openslp-devel.desktop Source5: openslp.logrotate Source6: slpd.xml Patch1: openslp.diff Patch2: openslp.audit.diff Patch3: extensions.diff Patch4: slptool-timeout.diff Patch5: hppa.diff Patch6: v1dadiscovery.diff Patch7: openslp.poll.diff Patch8: openslp.v1sladdr.diff Patch9: openslp.tcpclearovr.diff Patch10: openslp.checkovr.diff Patch11: openslp.truncate.diff Patch12: openslp.emptyanswer.diff Patch13: openslp.doubleequal.diff Patch14: openslp.dereg.diff Patch15: openslp.fixaddrcheck.diff %description Service Location Protocol is an IETF standards track protocol that provides a framework that allows networking applications to discover the existence, location, and configuration of networked services in enterprise networks. OpenSLP is an open source implementation of the SLPv2 protocol as defined by RFC 2608 and RFC 2614. This package includes the slptool and runtime libraries. Authors: -------- Matthew Peterson Ganesan Rajagopal David McCormack Evan Hughes Matthieu Desmons Praveen Kumar Amritaluru %package server License: BSD 3-Clause Group: System/Daemons Summary: The OpenSLP Implementation of the Service Location Protocol V2 PreReq: %fillup_prereq %insserv_prereq %description server Service Location Protocol is an IETF standards track protocol that provides a framework that allows networking applications to discover the existence, location, and configuration of networked services in enterprise networks. This package contains the SLP server. Every system, which provides any services that should be used via an SLP client must run this server and register the service. Authors: -------- Matthew Peterson Ganesan Rajagopal David McCormack Evan Hughes Matthieu Desmons Praveen Kumar Amritaluru %package devel License: BSD 3-Clause Requires: openssl-devel openslp = %version Group: System/Daemons Summary: OpenSLP Development SDK %description devel Service Location Protocol is an IETF standards track protocol that provides a framework that allows networking applications to discover the existence, location, and configuration of networked services in enterprise networks. This package contains header and library files to compile applications with SLP support. It also contains developer documentation to develop such applications. Authors: -------- Matthew Peterson Ganesan Rajagopal David McCormack Evan Hughes Matthieu Desmons Praveen Kumar Amritaluru %prep %setup -q %patch1 %patch2 %patch3 %patch4 %ifarch hppa %patch5 %endif %patch6 %patch7 %patch8 %patch9 %patch10 %patch11 %patch12 %patch13 %patch14 %patch15 autoreconf --force --install %build export CFLAGS="$RPM_OPT_FLAGS -fstack-protector" ./configure \ --prefix=/usr \ --libdir=%_libdir \ --sysconfdir=%_sysconfdir \ --enable-slpv1 \ --enable-async-api \ --enable-slpv2-security make %install mkdir -p ${RPM_BUILD_ROOT}/etc/slp.reg.d cp etc/slp.conf ${RPM_BUILD_ROOT}/etc cp etc/slp.reg ${RPM_BUILD_ROOT}/etc cp etc/slp.spi ${RPM_BUILD_ROOT}/etc mkdir -p ${RPM_BUILD_ROOT}/%_libdir ./libtool --mode=install install libslp/libslp.la ${RPM_BUILD_ROOT}/%_libdir mkdir -p ${RPM_BUILD_ROOT}/usr/sbin ./libtool --mode=install install slpd/slpd ${RPM_BUILD_ROOT}/usr/sbin mkdir -p ${RPM_BUILD_ROOT}/usr/bin ./libtool --mode=install install slptool/slptool ${RPM_BUILD_ROOT}/usr/bin mkdir -p ${RPM_BUILD_ROOT}/usr/include cp libslp/slp.h ${RPM_BUILD_ROOT}/usr/include mkdir -p ${RPM_BUILD_ROOT}%_defaultdocdir/%name find . -name CVS -o -name .cvsignore -o -name .xvpics | xargs rm -rf cp -a AUTHORS COPYING README FAQ doc/rfc doc/html %SOURCE2 \ ${RPM_BUILD_ROOT}%_defaultdocdir/%name mkdir -p ${RPM_BUILD_ROOT}/etc/init.d/ install -m 755 %{SOURCE1} ${RPM_BUILD_ROOT}/etc/init.d/slpd ln -sf ../../etc/init.d/slpd ${RPM_BUILD_ROOT}/usr/sbin/rcslpd ln -sf ../../etc/init.d/slpd ${RPM_BUILD_ROOT}/usr/sbin/rcopenslp install -D -m 0644 %{SOURCE5} ${RPM_BUILD_ROOT}/etc/logrotate.d/openslp-server # install susehelp file mkdir -p $RPM_BUILD_ROOT/usr/share/susehelp/meta/Administration/ install -m 0644 %SOURCE3 \ $RPM_BUILD_ROOT/usr/share/susehelp/meta/Administration/ mkdir -p $RPM_BUILD_ROOT/usr/share/susehelp/meta/Development/Libraries/ install -m 0644 %SOURCE4 \ $RPM_BUILD_ROOT/usr/share/susehelp/meta/Development/Libraries/ install -d -m 755 $RPM_BUILD_ROOT/usr/share/omc/svcinfo.d install -m 0644 %SOURCE6 $RPM_BUILD_ROOT/usr/share/omc/svcinfo.d %if 0 # actually, these files should get translated, but do we really want to # add update-desktop-files to needed_for_build ? %suse_update_desktop_file $RPM_BUILD_ROOT/usr/share/susehelp/meta/Administration/openslp.desktop %suse_update_desktop_file $RPM_BUILD_ROOT/usr/share/susehelp/meta/Development/Libraries/openslp-devel.desktop %endif %post %run_ldconfig %postun %run_ldconfig %post server %if %sles_version > 0 %{fillup_and_insserv -y slpd} %else %{fillup_and_insserv slpd} %endif %postun server %restart_on_update slpd %insserv_cleanup %preun server %stop_on_removal slpd %clean rm -rf $RPM_BUILD_ROOT %files %defattr(-,root,root) %dir %_defaultdocdir/%name %dir %_defaultdocdir/%name/html %doc %_defaultdocdir/%name/AUTHORS %doc %_defaultdocdir/%name/COPYING %doc %_defaultdocdir/%name/README %doc %_defaultdocdir/%name/README.SuSE %_libdir/libslp.so.* /usr/bin/slptool %config(noreplace) /etc/slp.conf %config(noreplace) /etc/slp.spi %files server %defattr(-,root,root) %dir /usr/share/susehelp %dir /usr/share/susehelp/meta %dir /usr/share/susehelp/meta/Administration %doc %dir %_defaultdocdir/%name/FAQ %doc %_defaultdocdir/%name/html/IntroductionToSLP %doc %_defaultdocdir/%name/html/UsersGuide %doc %_defaultdocdir/%name/html/faq.html %doc %_defaultdocdir/%name/rfc %doc /usr/share/susehelp/meta/Administration/openslp.desktop %dir /etc/slp.reg.d/ /usr/sbin/rcopenslp /usr/sbin/rcslpd /usr/sbin/slpd /etc/init.d/slpd %config(noreplace) /etc/slp.reg %config(noreplace) /etc/logrotate.d/openslp-server /usr/share/omc/svcinfo.d/slpd.xml %files devel %defattr(-,root,root) %dir /usr/share/susehelp %dir /usr/share/susehelp/meta %dir /usr/share/susehelp/meta/Development %dir /usr/share/susehelp/meta/Development/Libraries %doc %_defaultdocdir/%name/html/ProgrammersGuide %doc /usr/share/susehelp/meta/Development/Libraries/openslp-devel.desktop /usr/include/slp.h %_libdir/libslp.a %_libdir/libslp.la %_libdir/libslp.so %changelog * Mon Aug 18 2008 ro@suse.de - move prereq to server subpackage - fix init script * Fri May 09 2008 schwab@suse.de - Fix use of libtool. * Thu Apr 10 2008 ro@suse.de - added baselibs.conf file to build xxbit packages for multilib support * Tue Apr 01 2008 mkoenig@suse.de - remove dir /usr/share/omc/svcinfo.d as it is provided now by filesystem * Tue Mar 25 2008 mls@suse.de - fix non-intel little-endian platforms [bnc#372179] * Wed Mar 19 2008 mls@suse.de - initialize peeraddr in unicast case [bnc#370374] * Tue Sep 04 2007 mls@suse.de - fix typo in dereg code [#290333] * Thu Mar 29 2007 rguenther@suse.de - add bison and flex BuildRequires * Thu Jan 11 2007 ro@suse.de - move omc xml file to /usr/share/omc * Mon Jan 08 2007 ro@suse.de - move srvinfo.d to svcinfo.d (typo in fate entry) * Mon Dec 18 2006 ro@suse.de - added slpd.xml to /etc/omc/srvinfo.d (fate#301831) * Thu Nov 16 2006 mls@suse.de - truncate oversized udp messages, finally fixes [#185483] (can be turned of with "net.slp.oversizedUDP" option) - do not try to send back empty answers - add option "net.slp.allowDoubleEqualInPredicate" to make openslp work with some buggy clients that use "==" for comparison [#95043] - changed SLPGetPeer interface to support IPv6 * Tue Sep 12 2006 mls@suse.de - obey OVERFLOW bit of incoming udp messages [#185483] - use right length in send() calls [#185483] - fix errno check in IncomingStreamWrite - add SLPGetPeer method in libslp - add --peerinfo option to slptool to print peerinfo * Wed May 10 2006 mls@suse.de - fix unaligned memory access on ia64 [#171932] * Fri Mar 24 2006 mls@suse.de - fix listening on multiple interfaces [#160008] * Sat Mar 18 2006 schwab@suse.de - Fix file descritor leak [#159303]. * Mon Jan 30 2006 mls@suse.de - fix bug in DropSLPMulticastGroup - add -fstack-protector to CFLAGS - added logrotate script [#143069] * Wed Jan 25 2006 mls@suse.de - converted neededforbuild to BuildRequires * Fri Dec 23 2005 mls@suse.de - clear overflow bit on TCP connections [#135248] * Thu Sep 29 2005 dmueller@suse.de - add norootforbuild * Mon Aug 22 2005 mls@suse.de - also listen on SLPv1 General Multicast address [#64138] - use poll instead of select [#65673] * Tue Feb 15 2005 mls@suse.de - update to version 1.2.0 - fixed security audit findings - disable mdns in slpd for now, libslp still supports it * Fri Dec 03 2004 mls@suse.de - fix slpv DA discovery scope handling (#48728) - use _dns-sd instead of _mdns in mdns findsrvtypes query (#48325) * Thu Oct 14 2004 adrian@suse.de - add meta information for suse help. * Sun Jun 13 2004 bg@suse.de - reduce hardcoded optimization from -O3 to -O2 to circumvent ICE on hppa * Tue Jun 01 2004 mls@suse.de - added fillup and insserv prereq * Thu May 27 2004 mls@suse.de - use /proc/net/tcp_listen and /proc/net/tcp6_listen if available to keep things fast on systems with lots of network connections [#40888] * Wed May 05 2004 mls@suse.de - treat empty attributes as illegal [#39669] - always start slpd on SLES [#39863] * Fri Apr 23 2004 mls@suse.de - libslp: use configured TTL settings [#39030] * Fri Apr 02 2004 mls@suse.de - beta is over, don't always start slpd * Fri Apr 02 2004 kukuk@suse.de - Fix init script * Wed Mar 31 2004 mls@suse.de - fix sighup processing - clean up spi code - fix spi null pointer reference - fix namingauth comparison - added try-restart to rcslpd - fix slp.conf re-read - fix prlist buffer overrun * Mon Mar 29 2004 mls@suse.de - turn around srvtypes order in mdns * Thu Mar 18 2004 mls@suse.de - code cleanup - provide A RR with SRV RRs - don't pack .xvpics * Fri Mar 12 2004 mls@suse.de - added missing SLPGetMDNSName prototype to slp.h * Fri Mar 12 2004 mls@suse.de - slpd: fix hostname detection segfault - slpd: use ttl 255 for mdns - slpd: put attrs in mdns TXT RR - libslp: check mdns ttl - libslp: make getattr work with mdns - libslp: make mdns name available via new SLPGetMDNSName() function * Thu Mar 04 2004 mls@suse.de - libslp: add scope/nameingauth/predicate to query - slpd: reply to mdns service requests - slpd: don't play DA if our hostname expands to loopback - slpd: fix null pointer reference if SrvReg request is sent over tcp (as done by apple) * Fri Feb 27 2004 mls@suse.de - slpd: check port status every 15 seconds for watch-port-tcp/udp entries - libslp: send MDNS queries for scope _mdns * Sun Feb 15 2004 adrian@suse.de - export full qualified hostnames for $HOSTNAME - replace several $HOSTNAME tags in a srvurl - do only accept .reg files (no .rpmsave for instance) * Sat Feb 14 2004 adrian@suse.de - fix /proc/net/tcp* parsing - ONLY FOR BETA: start slpd always * Thu Jan 29 2004 adrian@suse.de - fix reading from slpd.reg.d directory (was broken since chroot run) * Wed Jan 14 2004 adrian@suse.de - slptool register now services with max timeout. * Tue Dec 16 2003 adrian@suse.de - fix sig11 when using the library without spi file * Mon Dec 08 2003 adrian@suse.de - security enhancements: * use chroot and open needed file descriptors before * panic if chroot or setuid fails * pid-file= option in reg files is useless now, so tcp-port= must be used for this now - add SSL support again * Wed Nov 26 2003 adrian@suse.de - add buffer fix from cvs - add README.SuSE with config howto * Thu Nov 20 2003 adrian@suse.de - drop the multicast route creation in runlevel script. we do not need it anymore with 1.1.5 * Wed Nov 19 2003 adrian@suse.de - update to version 1.1.5 * development version, but it contains lots of fixes - use $HOSTNAME instead of $LOCALHOST in reg files * Fri Nov 14 2003 adrian@suse.de - use correct keyword "X-UnitedLinux-Should-Start" in init script (seen by Martin Vidner) * Fri Nov 14 2003 adrian@suse.de - add "tcp-port=" option to test services running via (x)inted - start after (x)inetd * Wed Nov 12 2003 adrian@suse.de - add code to parse .reg files from any package below /etc/slp.reg.d/ * Mon Nov 10 2003 adrian@suse.de - fix security issue in init script * Sat Nov 08 2003 adrian@suse.de - initial package of version 1.0.11