Accepting request 248039 from network:utilities

Automatic submission by obs-autosubmit

OBS-URL: https://build.opensuse.org/request/show/248039
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/openslp?expand=0&rev=41
This commit is contained in:
Stephan Kulow 2014-09-10 05:28:30 +00:00 committed by Git OBS Bridge
commit f51030705b
4 changed files with 79 additions and 8 deletions

View File

@ -1,3 +1,20 @@
-------------------------------------------------------------------
Mon Sep 1 15:58:06 CEST 2014 - mls@suse.de
- fix last commit
-------------------------------------------------------------------
Mon Jul 28 02:36:48 UTC 2014 - crrodriguez@opensuse.org
- Do not apply previous patch to distros without systemd.
- Limit init script usage only to legacy products.
-------------------------------------------------------------------
Sun Jul 27 21:18:25 UTC 2014 - crrodriguez@opensuse.org
- openslp.sd_notify.diff make slpd systemd service of type
notify instead of simple, to avoid startup races.
-------------------------------------------------------------------
Thu Apr 10 16:56:24 CEST 2014 - mls@suse.de

41
openslp.sd_notify.diff Normal file
View File

@ -0,0 +1,41 @@
--- slpd/slpd_main.c.orig
+++ slpd/slpd_main.c
@@ -59,6 +59,8 @@
#include "slp_net.h"
#include "slp_network.h"
+#include <systemd/sd-daemon.h>
+
int G_SIGALRM;
int G_SIGTERM;
int G_SIGHUP;
@@ -748,6 +750,7 @@ int main(int argc, char * argv[])
alarm(2);
/* Main loop */
+ sd_notify(0, "READY=1");
SLPDLog("Startup complete entering main run loop ...\n\n");
G_SIGALRM = 0;
G_SIGTERM = 0;
--- configure.ac.orig
+++ configure.ac
@@ -35,6 +35,10 @@ AC_CHECK_LIB([nsl], [gethostbyname])
AC_CHECK_LIB([m], [log10])
AC_CHECK_LIB([pthread], [pthread_create])
+PKG_PROG_PKG_CONFIG
+
+PKG_CHECK_MODULES([SYSTEMD], [libsystemd-daemon])
+
#
# Checks for header files
#
--- slpd/Makefile.am.orig
+++ slpd/Makefile.am
@@ -95,5 +95,5 @@ noinst_HEADERS = \
slpd_initda.h
#if you're building on Irix, replace .la with .a below
-slpd_LDADD = ../common/libcommonslpd.la ../libslpattr/libslpattr.la
+slpd_LDADD = $(SYSTEMD_LIBS) ../common/libcommonslpd.la ../libslpattr/libslpattr.la

View File

@ -22,6 +22,8 @@ BuildRequires: flex
BuildRequires: libtool
BuildRequires: openssl-devel
%if 0%{?suse_version} > 1140
BuildRequires: pkgconfig
BuildRequires: pkgconfig(libsystemd-daemon)
BuildRequires: pkgconfig(systemd)
%define has_systemd 1
%endif
@ -58,6 +60,7 @@ Patch8: openslp.cloexec.diff
Patch9: openslp.hardmtu.diff
Patch10: openslp.tcplocal.diff
Patch11: openslp.localtime.diff
Patch12: openslp.sd_notify.diff
%description
Service Location Protocol is an IETF standards track protocol that
@ -122,7 +125,9 @@ such applications.
%patch9
%patch10
%patch11
%if 0%{?has_systemd}
%patch12
%endif
%build
autoreconf -fiv
%configure --disable-static --with-pic --enable-slpv1 \
@ -148,10 +153,15 @@ 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/doc/rfc doc/doc/html %SOURCE2 \
${RPM_BUILD_ROOT}%_defaultdocdir/%name
%if 0%{?has_systemd}
ln -s %{_sbindir}/service ${RPM_BUILD_ROOT}/usr/sbin/rcslpd
ln -s %{_sbindir}/service ${RPM_BUILD_ROOT}/usr/sbin/rcopenslp
%else
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
%endif
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/
@ -192,13 +202,10 @@ install -D -m 644 %{S:9} %{buildroot}%{_unitdir}/slpd.service
%endif
%post server
%if 0%{?sles_version} == 9 || 0%{?sles_version} == 10
%{fillup_and_insserv -y slpd}
%else
%{fillup_and_insserv slpd}
%endif
%if 0%{?has_systemd}
%service_add_post slpd.service
%else
%{fillup_and_insserv slpd}
%endif
%postun server
@ -206,12 +213,16 @@ install -D -m 644 %{S:9} %{buildroot}%{_unitdir}/slpd.service
%insserv_cleanup
%if 0%{?has_systemd}
%service_del_postun slpd.service
%else
%restart_on_update slpd
%insserv_cleanup
%endif
%preun server
%stop_on_removal slpd
%if 0%{?has_systemd}
%service_del_preun slpd.service
%else
%stop_on_removal slpd
%endif
%files
@ -243,7 +254,6 @@ install -D -m 644 %{S:9} %{buildroot}%{_unitdir}/slpd.service
/usr/sbin/rcopenslp
/usr/sbin/rcslpd
/usr/sbin/slpd
%config /etc/init.d/slpd
%config(noreplace) /etc/slp.reg
%config(noreplace) /etc/logrotate.d/openslp-server
/usr/share/omc/svcinfo.d/slpd.xml
@ -252,6 +262,8 @@ install -D -m 644 %{S:9} %{buildroot}%{_unitdir}/slpd.service
%endif
%if 0%{?has_systemd}
%{_unitdir}/slpd.service
%else
%config /etc/init.d/slpd
%endif
%files devel

View File

@ -3,6 +3,7 @@ Description=OpenSLP daemon for the Service Location Protocol
After=network.target nss-lookup.target
[Service]
Type=notify
ExecStart=/usr/sbin/slpd -d
ExecReload=/bin/kill -HUP $MAINPID
[Install]