Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE
quagga.30717
quagga.spec
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File quagga.spec of Package quagga.30717
# # spec file for package quagga # # Copyright (c) 2018 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/ # #Compat macro for new _fillupdir macro introduced in Nov 2017 %if ! %{defined _fillupdir} %define _fillupdir /var/adm/fillup-templates %endif %if 0%{?suse_version} > 1230 %bcond_without systemd %else %bcond_with systemd %endif %bcond_with tcp_zebra %bcond_without irdp %bcond_with isis %bcond_with isis_topology %bcond_without pcre %if %{defined _rundir} %define quagga_statedir %{_rundir}/%{name} %else %define quagga_statedir %{_localstatedir}/run/%{name} %endif Name: quagga Version: 1.1.1 Release: 0 Summary: Routing Software for BGP, OSPF and RIP License: LGPL-2.1+ Group: Productivity/Networking/Routing Url: http://www.quagga.net Source: http://download.savannah.gnu.org/releases/quagga/%{name}-%{version}.tar.gz Source1: %{name}-SUSE.tar.bz2 Source2: %{name}.pam Source3: http://download.savannah.gnu.org/releases/quagga/%{name}-%{version}.tar.gz.asc # downloaded from: http://download.savannah.gnu.org/releases/quagga/pgp-54CD2E60.asc # new download from: # http://www.nongnu.org/quagga/quagga.net.pgp.asc Source4: %{name}.keyring Source5: %{name}-tmpfs.conf Source6: sysconfig.%{name} Source7: %{name}.logrotate Patch1: %{name}-add-ospf6_main-return-value.patch Patch2: %{name}-add-table_test-return-value.patch Patch3: 0001-systemd-change-the-WantedBy-target.patch Patch4: quagga-CVE-2017-16227-bgpd-Fix-AS_PATH-size-calculation.patch Patch5: Quagga-2018-0543-bgpd.bsc1079798.patch Patch6: Quagga-2018-1114-bgpd.bsc1079799.patch Patch7: Quagga-2018-1550-bgpd-bsc1079800.patch Patch8: Quagga-2018-1975-bdpd.bsc1079801.patch Patch9: Quagga-CVE-2023-41358-bgpd-NLRIs.bsc1214735.patch Patch10: Quagga-CVE-2023-38802-bgpd-withdraw.bsc1213284.patch BuildRequires: autoconf >= 2.6 BuildRequires: automake >= 1.6 BuildRequires: libtool BuildRequires: net-snmp-devel BuildRequires: pam-devel BuildRequires: readline-devel BuildRequires: xz Requires(post): %fillup_prereq Requires(post): %{install_info_prereq} # pwdutils for useradd and groupadd Requires(pre): pwdutils Recommends: logrotate Provides: zebra = %{version} Obsoletes: zebra < %{version} BuildRoot: %{_tmppath}/%{name}-%{version}-build %if %{with pcre} BuildRequires: pcre-devel %endif %if 0%{?suse_version} > 1220 BuildRequires: makeinfo %endif %if %{with systemd} BuildRequires: systemd-rpm-macros %{?systemd_requires} %else Requires(post): %insserv_prereq %endif %description Quagga is a routing software suite, providing implementations of OSPFv2, OSPFv3, RIP v1 and v2, RIPv3 and BGPv4. Quagga is a fork of GNU Zebra. %package -n libospf0 Summary: Quagga's implementation of the OSPF protocol Group: System/Libraries %description -n libospf0 This library contains part of the OSPFv2 implementation of Quagga. %package -n libospfapiclient0 Summary: API for Quagga's OSPFv2 implementation Group: System/Libraries %description -n libospfapiclient0 This library contains part of the OSPFv2 implementation of Quagga. %package -n libzebra1 Summary: Quagga utility library Group: System/Libraries %description -n libzebra1 This library contains various utility functions to Quagga, such as data types, buffers and socket handling. %package -n libfpm_pb0 Summary: Quagga fpm protobuf library Group: System/Libraries %description -n libfpm_pb0 This library contains forwarding plane manager protobuf definitions for Quagga. %package -n libquagga_pb0 Summary: Quagga quagga protobuf library Group: System/Libraries %description -n libquagga_pb0 This library contains protobuf memory management for Quagga. %package devel Summary: Development files for quagga, a routing software for BGP, OSPF, RIP Group: Development/Libraries/C and C++ Requires: libfpm_pb0 = %{version} Requires: libospf0 = %{version} Requires: libospfapiclient0 = %{version} Requires: libquagga_pb0 = %{version} Requires: libzebra1 = %{version} %description devel Quagga is a routing software suite, providing implementations of OSPFv2, OSPFv3, RIP v1 and v2, RIPv3 and BGPv4. Quagga is a fork of GNU Zebra. This subpackage contains the headers for the Quagga libraries. %prep %setup -q -a 1 %patch1 -p 1 %patch2 -p 1 %patch3 -p 1 %patch4 -p 1 %patch5 -p 1 %patch6 -p 1 %patch7 -p 1 %patch8 -p 1 %patch9 -p 1 %patch10 -p 1 %build export CFLAGS="%{optflags} -fno-strict-aliasing" %configure --disable-static --with-pic \ --enable-vtysh \ --enable-rtadv \ --enable-snmp \ --enable-ipv6 \ --with-libpam \ --enable-netlink \ %if %{with isis} --enable-isisd \ %endif %if %{with isis_topology} --enable-isis-topology \ %endif %if %{with tcp_zebra} --enable-tcp-zebra \ %endif %if %{with irdp} --enable-irdp \ %endif %if %{with pcre} --enable-pcreposix \ %endif --sysconfdir=%{_sysconfdir}/quagga \ --localstatedir=%{quagga_statedir} \ --enable-multipath=0 make %{?_smp_mflags} %install rm -r doc/quagga.info %make_install find %{buildroot} -type f -name "*.la" -delete -print install -d %{buildroot}%{_sysconfdir}/{init.d,quagga,pam.d,logrotate.d} %if %{with systemd} install -d %{buildroot}%{_unitdir} install -p -m 0644 redhat/zebra.service %{buildroot}%{_unitdir}/zebra.service ln -s %{_sbindir}/service %{buildroot}%{_sbindir}/rczebra install -p -m 0644 redhat/isisd.service %{buildroot}%{_unitdir}/isisd.service ln -s %{_sbindir}/service %{buildroot}%{_sbindir}/rcisisd install -p -m 0644 redhat/ripd.service %{buildroot}%{_unitdir}/ripd.service ln -s %{_sbindir}/service %{buildroot}%{_sbindir}/rcripd install -p -m 0644 redhat/ospfd.service %{buildroot}%{_unitdir}/ospfd.service ln -s %{_sbindir}/service %{buildroot}%{_sbindir}/rcospfd install -p -m 0644 redhat/bgpd.service %{buildroot}%{_unitdir}/bgpd.service ln -s %{_sbindir}/service %{buildroot}%{_sbindir}/rcbgpd install -p -m 0644 redhat/ospf6d.service %{buildroot}%{_unitdir}/ospf6d.service ln -s %{_sbindir}/service %{buildroot}%{_sbindir}/rcospf6d install -p -m 0644 redhat/ripngd.service %{buildroot}%{_unitdir}/ripngd.service ln -s %{_sbindir}/service %{buildroot}%{_sbindir}/rcripngd install -d -m 0755 %{buildroot}/%{_tmpfilesdir} install -p -m 0644 %{SOURCE5} %{buildroot}/%{_tmpfilesdir}/quagga.conf sed -e "s|@quagga_statedir@|%{quagga_statedir}|g" -i \ %{buildroot}/%{_tmpfilesdir}/quagga.conf %else install -m 0755 SUSE/* %{buildroot}%{_sysconfdir}/init.d/ ln -sf %{_sysconfdir}/init.d/zebra %{buildroot}%{_sbindir}/rczebra ln -sf %{_sysconfdir}/init.d/bgpd %{buildroot}%{_sbindir}/rcbgpd ln -sf %{_sysconfdir}/init.d/ospf6d %{buildroot}%{_sbindir}/rcospf6d ln -sf %{_sysconfdir}/init.d/ospfd %{buildroot}%{_sbindir}/rcospfd ln -sf %{_sysconfdir}/init.d/ripngd %{buildroot}%{_sbindir}/rcripngd ln -sf %{_sysconfdir}/init.d/ripd %{buildroot}%{_sbindir}/rcripd %endif install -d -m 0755 %{buildroot}%{_fillupdir}/ install -m 0644 %{SOURCE6} %{buildroot}%{_fillupdir}/sysconfig.%{name} install -m 0644 %{SOURCE2} %{buildroot}%{_sysconfdir}/pam.d/quagga install -d -m 0750 %{buildroot}%{_localstatedir}/log/quagga install -d -m 0751 %{buildroot}%{quagga_statedir} install -m 0644 %{SOURCE7} %{buildroot}%{_sysconfdir}/logrotate.d/quagga rm -f %{buildroot}%{_sysconfdir}/quagga/*.sample* cat > %{buildroot}%{_sysconfdir}/quagga/zebra.conf << __EOF__ !hostname quagga !password quagga !enable password quagga log file %{_localstatedir}/log/quagga/zebra.log __EOF__ cat > %{buildroot}%{_sysconfdir}/quagga/vtysh.conf << __EOF__ ! vtysh is using PAM authentication allowing root to use it. __EOF__ %pre getent group quagga >/dev/null || %{_sbindir}/groupadd -r quagga || : getent passwd quagga >/dev/null || \ %{_sbindir}/useradd -r -g quagga -s %{_bindir}/false \ -c "Quagga routing daemon" \ -d %{quagga_statedir} quagga || : %if %{with systemd} %service_add_pre zebra.service isisd.service ripd.service ospfd.service bgpd.service ospf6d.service ripngd.service %endif %post %if %{with systemd} # Use %%tmpfiles_create when Leap 43.0 is oldest in support scope %{_bindir}/systemd-tmpfiles --create %{_tmpfilesdir}/%{name}.conf || : %service_add_post zebra.service isisd.service ripd.service ospfd.service bgpd.service ospf6d.service ripngd.service %fillup_only %else %fillup_and_insserv test -d %{quagga_statedir} || mkdir -m 0751 -p %{quagga_statedir} %endif %install_info --info-dir=%{_infodir} %{_infodir}/%{name}.info%{ext_info} %preun %if %{with systemd} %service_del_preun zebra.service isisd.service ripd.service ospfd.service bgpd.service ospf6d.service ripngd.service %else %stop_on_removal zebra bgpd ospf6d ospfd ripd ripngd %endif %postun %install_info_delete --info-dir=%{_infodir} %{_infodir}/%{name}.info%{ext_info} %if %{with systemd} %service_del_postun zebra.service isisd.service ripd.service ospfd.service bgpd.service ospf6d.service ripngd.service %else %restart_on_update zebra bgpd ospf6d ospfd ripd ripngd %insserv_cleanup %endif %post -n libospf0 -p /sbin/ldconfig %postun -n libospf0 -p /sbin/ldconfig %post -n libospfapiclient0 -p /sbin/ldconfig %postun -n libospfapiclient0 -p /sbin/ldconfig %post -n libzebra1 -p /sbin/ldconfig %postun -n libzebra1 -p /sbin/ldconfig %post -n libfpm_pb0 -p /sbin/ldconfig %postun -n libfpm_pb0 -p /sbin/ldconfig %post -n libquagga_pb0 -p /sbin/ldconfig %postun -n libquagga_pb0 -p /sbin/ldconfig %files %defattr(-,root,root) %doc */*.sample* AUTHORS COPYING* ChangeLog NEWS README REPORTING-BUGS SERVICES TODO %{_sbindir}/* %dir %attr(750,quagga,quagga) %{_sysconfdir}/quagga/ %config(noreplace) %attr(640,quagga,quagga) %{_sysconfdir}/%{name}/*.conf %config(noreplace) %{_sysconfdir}/logrotate.d/* %{_fillupdir}/sysconfig.quagga %if %{with systemd} %{_unitdir}/*.service %dir %{_tmpfilesdir} %{_tmpfilesdir}/quagga.conf %else %config %{_sysconfdir}/init.d/* %endif %config (noreplace)%{_sysconfdir}/pam.d/* %{_bindir}/* %dir %attr(-,quagga,quagga) %{_localstatedir}/log/quagga %dir %attr(-,quagga,quagga) %ghost %{quagga_statedir} %{_infodir}/quagga.info* %{_mandir}/man?/* %files -n libospf0 %defattr(-,root,root) %{_libdir}/libospf.so.* %files -n libospfapiclient0 %defattr(-,root,root) %{_libdir}/libospfapiclient.so.* %files -n libzebra1 %defattr(-,root,root) %{_libdir}/libzebra.so.* %files -n libfpm_pb0 %defattr(-,root,root) %{_libdir}/libfpm_pb.so.* %files -n libquagga_pb0 %defattr(-,root,root) %{_libdir}/libquagga_pb.so.* %files devel %defattr(-,root,root) %{_libdir}/*.so %dir %{_includedir}/%{name} %{_includedir}/%{name}/*.h %dir %{_includedir}/%{name}/ospfd %{_includedir}/%{name}/ospfd/*.h %dir %{_includedir}/%{name}/ospfapi %{_includedir}/%{name}/ospfapi/*.h %changelog
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor