%define with_snmp 1 %define with_tcp_zebra 1 %define with_multipath 64 Name: quagga Version: 1.2.4 Release: 3mamba Summary: Quagga Routing Daemon Group: Network/Routing Vendor: openmamba Distribution: openmamba Packager: Silvan Calarco URL: https://www.quagga.net/ Source: http://download.savannah.gnu.org/releases/quagga/quagga-%{version}.tar.gz Patch0: %{name}-0.99.11-conf.patch Patch1: %{name}-0.98.1-snmp_headers.patch Patch2: %{name}-0.99.18-opaque-refresh-fixes.patch License: GPL ## AUTOBUILDREQ-BEGIN BuildRequires: glibc-devel BuildRequires: ldconfig BuildRequires: libaudit-devel BuildRequires: libbzip2-devel BuildRequires: libcap-devel BuildRequires: libcares-devel BuildRequires: libdb53-devel BuildRequires: libe2fs-devel BuildRequires: libelf-devel BuildRequires: libkrb5-devel BuildRequires: liblmdb-devel BuildRequires: liblua-devel BuildRequires: liblzma-devel BuildRequires: libnetsnmp-devel BuildRequires: libnl-devel BuildRequires: libnsl-devel BuildRequires: libnss-devel BuildRequires: libopenssl-devel BuildRequires: libpam-devel BuildRequires: libpci-devel BuildRequires: libpcre-devel BuildRequires: libperl BuildRequires: libpopt-devel BuildRequires: libreadline-devel BuildRequires: librpm-devel BuildRequires: libtermcap-devel BuildRequires: libtirpc-devel BuildRequires: libwrap-devel BuildRequires: libz-devel BuildRequires: libzstd-devel ## AUTOBUILDREQ-END BuildRequires: librpm-devel >= 4.16.1.2-1mamba BuildRequires: libncurses-devel BuildRequires: tetex BuildRequires: libnetsnmp-devel >= 5.9 Requires: net-snmp >= 5.9 Requires: pam >= 0.77 Requires(post):%{__install_info} Obsoletes: zebra Provides: routingdaemon %description Quagga is a free software that manages TCP/IP based routing protocol. It takes multi-server and multi-thread approach to resolve the current complexity of the Internet. Quagga supports BGP4, BGP4+, OSPFv2, OSPFv3, RIPv1, RIPv2, and RIPng. Quagga is intended to be used as a Route Server and a Route Reflector. It is not a toolkit, it provides full routing power under a new architecture. Quagga by design has a process for each protocol. Quagga is a fork of GNU Zebra. %package ipv6 Summary: Quagga Routing Daemon - IPv6 extensions Group: Network/Routing Requires: %{name} = %{?epoch:%epoch:}%{version}-%{release} %description ipv6 Quagga is a free software that manages TCP/IP based routing protocol. It takes multi-server and multi-thread approach to resolve the current complexity of the Internet. Quagga supports BGP4, BGP4+, OSPFv2, OSPFv3, RIPv1, RIPv2, and RIPng. Quagga is intended to be used as a Route Server and a Route Reflector. It is not a toolkit, it provides full routing power under a new architecture. Quagga by design has a process for each protocol. Quagga is a fork of GNU Zebra. %package devel Summary: Header and object files for quagga development Group: Network/Routing Requires: %{name} = %{?epoch:%epoch:}%{version}-%{release} %description devel Quagga is a free software that manages TCP/IP based routing protocol. It takes multi-server and multi-thread approach to resolve the current complexity of the Internet. The quagga-devel package contains the header and object files neccessary for developing OSPF-API and quagga applications. %package contrib Summary: Contrib tools for quagga Group: Network/Routing Requires: %{name} = %{?epoch:%epoch:}%{version}-%{release} Requires: perl-Net-Telnet %description contrib Quagga is a free software that manages TCP/IP based routing protocol. It takes multi-server and multi-thread approach to resolve the current complexity of the Internet. Contributed/3rd party tools which may be of use with quagga. %debug_package %prep %setup -q #%patch0 -p1 #%patch1 -p1 #%patch2 -p1 autoreconf -f -i %build %configure \ --with-cflags='%{optflags} -fcommon' \ --sysconfdir=%{_sysconfdir}/quagga \ --with-libpam \ --enable-ipv6 \ --enable-isisd \ --enable-irdp=yes \ --enable-rtadv \ --enable-opaque-lsa --enable-ospf-te \ --enable-ospfclient=yes --enable-ospfapi=yes \ --enable-vtysh \ --enable-user=quagga --enable-group=quagga \ --enable-vty-group=quaggavty \ --enable-gcc-rdynamic \ %if %with_snmp --enable-snmp \ %endif %if %with_tcp_zebra --enable-tcp-zebra \ %endif %if %with_multipath --enable-multipath=%with_multipath %endif # --enable-nssa --enable-tcp-signature \ # --disable-bgp-announce # --enable-rtadv %make #cd doc && texi2html quagga.texi %install [ "%{buildroot}" != / ] && rm -rf %{buildroot} %makeinstall \ exampledir=%{_sysconfdir}/quagga \ sysconfdir=%{_sysconfdir}/quagga for f in bgpd ospf6d ospfd ripd ripngd zebra; do install -D -m755 redhat/${f}.service %{buildroot}%{_unitdir}/${f}.service done install -d -m750 %{buildroot}/var/{log/quagga,run/quagga} install -D -m644 redhat/quagga.pam \ %{buildroot}%{_sysconfdir}/pam.d/quagga install -D -m644 redhat/quagga.logrotate \ %{buildroot}%{_sysconfdir}/logrotate.d/quagga %pre /usr/sbin/groupadd quaggavty -g 65003 &>/dev/null /usr/sbin/groupadd quagga -g 65004 &>/dev/null /usr/sbin/useradd -c "Quagga routing suite" -d /var/quagga -s /bin/false \ -u 65004 -g quagga quagga &> /dev/null || : : %post # zebra_spec_add_service # e.g. z_add_service hpstgmgr zebrasrv 2600 "HPSTGMGR" function z_add_service() { # add port /etc/services entry if it isn't already there [ -f /etc/services ] || exit 1 grep -q "^$1[^a-zA-Z0-9]" /etc/services && cat >> /etc/services << _EOF $1 $3/tcp $2 # $4 $1 $3/udp $2 # $4 _EOF } eval z_add_service hpstgmgr zebrasrv 2600 "HPSTGMGR" eval z_add_service discp-client zebra 2601 "discp client" eval z_add_service discp-server ripd 2602 "discp server" eval z_add_service servicemeter ripngd 2603 "Service Meter" eval z_add_service nsc-ccs ospfd 2604 "NSC CCS" eval z_add_service nsc-posa bgpd 2605 "NSC POSA" eval z_add_service netmon ospf6d 2606 "Dell Netmon" %systemd_post bgpd %systemd_post ospdf %systemd_post ripd %systemd_post zebra # create dummy files so basic functions can be used if [ ! -e %{_sysconfdir}/quagga/zebra.conf ]; then echo "hostname `hostname`" > %{_sysconfdir}/quagga/zebra.conf chmod 640 %{_sysconfdir}/quagga/zebra.conf fi if [ ! -e %{_sysconfdir}/quagga/vtysh.conf ]; then touch %{_sysconfdir}/quagga/vtysh.conf chmod 640 %{_sysconfdir}/quagga/vtysh.conf fi /sbin/ldconfig %install_info %{name}.info exit 0 %preun %systemd_preun bgpd %systemd_preun ospdf %systemd_preun ripd %systemd_preun zebra if [ $1 -eq 0 ]; then /usr/sbin/userdel quagga &>/dev/null /usr/sbin/groupdel quagga &>/dev/null /usr/sbin/groupdel quaggavty &>/dev/null fi %uninstall_info %{name}.info : %postun /sbin/ldconfig %systemd_postun bgpd %systemd_postun ospdf %systemd_postun ripd %systemd_postun zebra : %preun ipv6 if [ $1 -eq 0 ]; then %systemd_preun ospf6d %systemd_preun ripngd : %post ipv6 %systemd_post ospf6d %systemd_post ripngd : %postun ipv6 %systemd_postun ospf6d %systemd_postun ripngd : %clean [ "%{buildroot}" != / ] && rm -rf %{buildroot} %files %defattr(-,root,root) %dir %{_sysconfdir}/quagga %{_sysconfdir}/quagga/pimd.conf.sample %{_sysconfdir}/quagga/bgpd.conf.sample %{_sysconfdir}/quagga/bgpd.conf.sample2 %{_sysconfdir}/quagga/isisd.conf.sample %{_sysconfdir}/quagga/ospfd.conf.sample %{_sysconfdir}/quagga/ripd.conf.sample %attr(640,quagga,quaggavty) %{_sysconfdir}/quagga/vtysh.conf.sample %{_sysconfdir}/quagga/zebra.conf.sample %config(noreplace) %{_sysconfdir}/pam.d/quagga %config(noreplace) %attr(640,root,root) %{_sysconfdir}/logrotate.d/* %{_bindir}/vtysh %{_bindir}/bgp_btoa %{_bindir}/test_igmpv3_join %{_sbindir}/* %{_libdir}/lib*.so.* %config %{_unitdir}/bgpd.service %config %{_unitdir}/ospfd.service %config %{_unitdir}/ripd.service %config %{_unitdir}/zebra.service %dir %attr(750,quagga,quagga) /var/log/quagga %dir %attr(751,quagga,quagga) /var/run/quagga %{_infodir}/* %{_mandir}/man1/vtysh.* %{_mandir}/man8/bgpd.* %{_mandir}/man8/isisd.* %{_mandir}/man8/nhrpd.8* %{_mandir}/man8/ospfclient.8* %{_mandir}/man8/ospfd.* %{_mandir}/man8/pimd.8* %{_mandir}/man8/ripd.* %{_mandir}/man8/watchquagga.8* %{_mandir}/man8/zebra.* %doc AUTHORS COPYING* %files ipv6 %defattr(-,root,root) %{_sysconfdir}/quagga/ospf6d.conf.sample %{_sysconfdir}/quagga/ripngd.conf.sample %config %{_unitdir}/ospf6d.service %config %{_unitdir}/ripngd.service %{_mandir}/man8/ospf6d.* %{_mandir}/man8/ripngd.* %files devel %defattr(-,root,root) %{_libdir}/*.a %{_libdir}/*.la %{_libdir}/*.so %dir %{_includedir}/quagga %{_includedir}/quagga/*.h %dir %{_includedir}/quagga/ospfapi %{_includedir}/quagga/ospfapi/* %dir %{_includedir}/quagga/ospfd %{_includedir}/quagga/ospfd/* #%doc ChangeLog NEWS README REPORTING-BUGS SERVICES TODO #%files contrib #%defattr(-,root,root) #%doc ospf6d/ospf6d.conf.sample ripngd/ripngd.conf.sample #%doc tools %changelog * Sun Mar 07 2021 Silvan Calarco 1.2.4-3mamba - rebuilt by autoport with build requirements: librpm-devel>=4.16.1.2-1mamba * Mon Dec 14 2020 Silvan Calarco 1.2.4-2mamba - rebuilt with net-snmp 5.9 * Mon Mar 05 2018 Automatic Build System 1.2.4-1mamba - automatic version update by autodist * Sun Nov 19 2017 Automatic Build System 1.2.2-1mamba - automatic update by autodist * Mon Aug 14 2017 Automatic Build System 1.2.1-1mamba - automatic version update by autodist * Wed Dec 14 2016 Silvan Calarco 1.1.0-1mamba - update to 1.1.0 * Sat Apr 23 2016 Automatic Build System 1.0.20160315-1mamba - automatic version update by autodist * Tue Mar 10 2015 Automatic Build System 0.99.24.1-1mamba - automatic version update by autodist * Wed Mar 04 2015 Automatic Build System 0.99.24-1mamba - automatic version update by autodist * Tue Aug 26 2014 Automatic Build System 0.99.23.1-1mamba - automatic version update by autodist * Thu Jun 26 2014 Automatic Build System 0.99.23-1mamba - automatic version update by autodist * Sun Oct 20 2013 Automatic Build System 0.99.22.4-1mamba - automatic version update by autodist * Wed Jul 31 2013 Automatic Build System 0.99.22.3-1mamba - automatic version update by autodist * Mon Jun 03 2013 Automatic Build System 0.99.22.1-1mamba - automatic version update by autodist * Thu May 12 2011 Automatic Build System 0.99.18-1mamba - automatic update by autodist * Thu Oct 21 2010 Davide Madrisan 0.99.17-2mamba - rebuilt againt the latest net-snmp library * Fri Oct 01 2010 Automatic Build System 0.99.17-1mamba - automatic update by autodist * Mon Aug 09 2010 Automatic Build System 0.99.16-2mamba - automatic rebuild by autodist * Fri Mar 12 2010 Automatic Build System 0.99.16-1mamba - automatic update by autodist * Tue Sep 01 2009 Automatic Build System 0.99.15-1mamba - automatic update by autodist * Sun Jul 26 2009 Automatic Build System 0.99.14-1mamba - automatic update by autodist * Fri Jun 26 2009 Automatic Build System 0.99.13-1mamba - automatic update by autodist * Sun May 24 2009 Automatic Build System 0.99.12-1mamba - automatic update by autodist * Wed Dec 10 2008 Silvan Calarco 0.99.11-1mamba - automatic update by autodist * Thu Apr 05 2007 Davide Madrisan 0.98.6-2mamba - rebuilt against new libnetsnmp libraries - contrib subpackage: requires perl-Net-Telnet * Tue May 09 2006 Davide Madrisan 0.98.6-1qilnx - update to version 0.98.6 by autospec - this release fix 3 security issues (see qibug#164) * Thu Sep 01 2005 Davide Madrisan 0.98.5-1qilnx - update to version 0.98.5 by autospec * Thu Jun 30 2005 Davide Madrisan 0.98.4-2qilnx - fixed quagga-ipv6 %%postun script * Tue Jun 28 2005 Davide Madrisan 0.98.4-1qilnx - update to version 0.98.4 by autospec * Fri May 20 2005 Davide Madrisan 0.98.3-2qilnx - updated quagga module for pam * Fri Apr 08 2005 Davide Madrisan 0.98.3-1qilnx - update to version 0.98.3 by autospec * Wed Mar 16 2005 Davide Madrisan 0.98.1-4qilnx - fixed bug from quagga bugzilla #160 * Mon Feb 28 2005 Davide Madrisan 0.98.1-3qilnx - fixed a bgpd regression bug: see bugzilla.quagga.net/show_bug.cgi?id=157 - enabled tcp signatures (BGP authentication) - enabled support for the snmp protocol * Thu Feb 10 2005 Davide Madrisan 0.98.1-2qilnx - fixed the OSPF bug: quagga-dev 2612 * Wed Feb 02 2005 Davide Madrisan 0.98.1-1qilnx - update to version 0.98.1 by autospec * Fri May 07 2004 Davide Madrisan 0.96.5-1qilnx - new version rebuild * Sat Nov 08 2003 Davide Madrisan 0.96.4-2qilnx - added userdel/groupdel commands in %%preun * Tue Nov 04 2003 Davide Madrisan 0.96.4-1qilnx - first build