diff --git a/quagga-0.99.15-perl_pth.patch b/quagga-0.99.15-perl_pth.patch
deleted file mode 100644
index e0e25e9..0000000
--- a/quagga-0.99.15-perl_pth.patch
+++ /dev/null
@@ -1,9 +0,0 @@
-diff -up quagga-0.99.15/tools/rrlookup.pl.perl_pth quagga-0.99.15/tools/rrlookup.pl
---- quagga-0.99.15/tools/rrlookup.pl.perl_pth 2010-01-26 10:46:58.705919109 +0100
-+++ quagga-0.99.15/tools/rrlookup.pl 2010-01-26 10:47:23.937134146 +0100
-@@ -1,4 +1,4 @@
--#! /usr/local/bin/perl
-+#!/usr/bin/perl
- ##
- ## Read BGPd logfile and lookup RR's whois database.
- ##
diff --git a/quagga-0.99.16-man.patch b/quagga-0.99.16-man.patch
deleted file mode 100644
index a43b25b..0000000
--- a/quagga-0.99.16-man.patch
+++ /dev/null
@@ -1,304 +0,0 @@
-diff -up quagga-0.99.16/doc/Makefile.am.man quagga-0.99.16/doc/Makefile.am
---- quagga-0.99.16/doc/Makefile.am.man 2009-12-09 13:37:12.000000000 +0100
-+++ quagga-0.99.16/doc/Makefile.am 2010-07-20 09:45:13.768782383 +0200
-@@ -61,7 +61,7 @@ quagga_TEXINFOS = appendix.texi basic.te
- .dia.png:
- $(DIATOPNG) "$@" $<
-
--man_MANS = vtysh.1 bgpd.8 ospf6d.8 ospfd.8 ripd.8 ripngd.8 zebra.8 isisd.8
-+man_MANS = vtysh.1 bgpd.8 ospf6d.8 ospfd.8 ripd.8 ripngd.8 zebra.8 isisd.8 ospfclient.8 watchquagga.8
-
- EXTRA_DIST = BGP-TypeCode draft-zebra-00.ms draft-zebra-00.txt $(man_MANS) \
- mpls/ChangeLog.opaque.txt mpls/cli_summary.txt \
-diff -up quagga-0.99.16/doc/Makefile.in.man quagga-0.99.16/doc/Makefile.in
---- quagga-0.99.16/doc/Makefile.in.man 2010-03-09 11:55:53.000000000 +0100
-+++ quagga-0.99.16/doc/Makefile.in 2010-07-20 09:45:13.769794338 +0200
-@@ -271,7 +271,7 @@ quagga_TEXINFOS = appendix.texi basic.te
- vtysh.texi routeserver.texi defines.texi $(figures_png) snmptrap.texi \
- $(figures_txt)
-
--man_MANS = vtysh.1 bgpd.8 ospf6d.8 ospfd.8 ripd.8 ripngd.8 zebra.8 isisd.8
-+man_MANS = vtysh.1 bgpd.8 ospf6d.8 ospfd.8 ripd.8 ripngd.8 zebra.8 isisd.8 ospfclient.8 watchquagga.8
- EXTRA_DIST = BGP-TypeCode draft-zebra-00.ms draft-zebra-00.txt $(man_MANS) \
- mpls/ChangeLog.opaque.txt mpls/cli_summary.txt \
- mpls/opaque_lsa.txt mpls/ospfd.conf \
-diff -up quagga-0.99.16/doc/ospfclient.8.man quagga-0.99.16/doc/ospfclient.8
---- quagga-0.99.16/doc/ospfclient.8.man 2010-07-20 09:45:13.796017658 +0200
-+++ quagga-0.99.16/doc/ospfclient.8 2010-07-20 17:09:50.099039258 +0200
-@@ -0,0 +1,42 @@
-+.\" This file was originally generated by help2man 1.36.
-+.TH OSPFCLIENT "1" "July 2010"
-+.SH NAME
-+ospfclient \- an example ospf-api client
-+.SH SYNOPSIS
-+.B ospfclient
-+.I ospfd
-+.I lsatype
-+.I opaquetype
-+.I opaqueid
-+.I ifaddr
-+.I areaid
-+.SH DESCRIPTION
-+.B ospfclient
-+is a an example ospf-api client to test the ospfd daemon.
-+.SH OPTIONS
-+.TP
-+.I ospfd
-+A router where the API\-enabled OSPF daemon is running.
-+.TP
-+.I lsatype
-+The value has to be either "9", "10", or "11", depending on the flooding
-+scope.
-+.TP
-+.I opaquetype
-+The value has to be in the range of 0\-255 (for example, experimental
-+applications use
-+.I opaquetype
-+larger than 128).
-+.TP
-+.I opaqueid
-+Arbitrary application instance (24 bits).
-+.TP
-+.I ifaddr
-+Interface IP address for type 9, otherwise it will be ignored.
-+.TP
-+.I areaid
-+Area in the IP address format for type 10, otherwise it will be ignored.
-+.SH "SEE ALSO"
-+.BR ospfd (8).
-+.SH AUTHORS
-+See the project homepage at .
-diff -up quagga-0.99.16/doc/watchquagga.8.man quagga-0.99.16/doc/watchquagga.8
---- quagga-0.99.16/doc/watchquagga.8.man 2010-07-20 09:45:13.798019148 +0200
-+++ quagga-0.99.16/doc/watchquagga.8 2010-07-20 17:10:04.052794938 +0200
-@@ -0,0 +1,230 @@
-+.\" This file was originally generated by help2man 1.36.
-+.TH WATCHQUAGGA 8 "July 2010"
-+.SH NAME
-+watchquagga \- a program to monitor the status of quagga daemons
-+.SH SYNOPSIS
-+.B watchquagga
-+.RI [ option ...]
-+.IR daemon ...
-+.br
-+.B watchquagga
-+.BR \-h " | " \-v
-+.SH DESCRIPTION
-+.B watchquagga
-+is a watchdog program that monitors the status of supplied quagga
-+.IR daemon s
-+and tries to restart them in case they become unresponsive or shut down.
-+.PP
-+To determine whether a daemon is running, it tries to connect to the
-+daemon's VTY UNIX stream socket, and send echo commands to ensure the
-+daemon responds. When the daemon crashes, EOF is received from the socket,
-+so that watchquagga can react immediately.
-+.PP
-+This program can run in one of the following 5 modes:
-+.TP
-+.B Mode 0: monitor
-+In this mode, the program serves as a monitor and reports status changes.
-+.IP
-+Example usage: watchquagga \-d zebra ospfd bgpd
-+.TP
-+.B Mode 1: global restart
-+In this mode, whenever a daemon hangs or crashes, the given command is used
-+to restart all watched daemons.
-+.IP
-+Example usage: watchquagga \-dz \e
-+.br
-+-R '/sbin/service zebra restart; /sbin/service ospfd restart' \e
-+.br
-+zebra ospfd
-+.TP
-+.B Mode 2: individual daemon restart
-+In this mode, whenever a single daemon hangs or crashes, the given command
-+is used to restart this daemon only.
-+.IP
-+Example usage: watchquagga \-dz \-r '/sbin/service %s restart' \e
-+.br
-+zebra ospfd bgpd
-+.TP
-+.B Mode 3: phased zebra restart
-+In this mode, whenever a single daemon hangs or crashes, the given command
-+is used to restart this daemon only. The only exception is the zebra
-+daemon; in this case, the following steps are taken: (1) all other daemons
-+are stopped, (2) zebra is restarted, and (3) other daemons are started
-+again.
-+.IP
-+Example usage: watchquagga \-adz \-r '/sbin/service %s restart' \e
-+.br
-+\-s '/sbin/service %s start' \e
-+.br
-+\-k '/sbin/service %s stop' zebra ospfd bgpd
-+.TP
-+.B Mode 4: phased global restart for any failure
-+In this mode, whenever a single daemon hangs or crashes, the following
-+steps are taken: (1) all other daemons are stopped, (2) zebra is restarted,
-+and (3) other daemons are started again.
-+.IP
-+Example usage: watchquagga \-Adz \-r '/sbin/service %s restart' \e
-+.br
-+\-s '/sbin/service %s start' \e
-+.br
-+\-k '/sbin/service %s stop' zebra ospfd bgpd
-+.PP
-+Important: It is believed that mode 2 (individual daemon restart) is not
-+safe, and mode 3 (phased zebra restart) may not be safe with certain
-+routing daemons.
-+.PP
-+In order to avoid restarting the daemons in quick succession, you can
-+supply the
-+.B \-m
-+and
-+.B \-M
-+options to set the minimum and maximum delay between the restart commands.
-+The minimum restart delay is recalculated each time a restart is attempted.
-+If the time since the last restart attempt exceeds twice the value of
-+.BR \-M ,
-+the restart delay is set to the value of
-+.BR \-m ,
-+otherwise the interval is doubled (but capped at the value of
-+.BR \-M ).
-+.SH OPTIONS
-+.TP
-+.BR \-d ", " \-\-daemon
-+Run in daemon mode. When supplied, error messages are sent to Syslog
-+instead of standard output (stdout).
-+.TP
-+.BI \-S " directory" "\fR, \fB\-\-statedir " directory
-+Set the VTY socket
-+.I directory
-+(the default value is "/var/run/quagga").
-+.TP
-+.BR \-e ", " \-\-no\-echo
-+Do not ping the daemons to test whether they respond. This option is
-+necessary if one or more daemons do not support the echo command.
-+.TP
-+.BI \-l " level" "\fR, \fB\-\-loglevel " level
-+Set the logging
-+.I level
-+(the default value is "6"). The value should range from 0 (LOG_EMERG) to 7
-+(LOG_DEBUG), but higher number can be supplied if extra debugging messages
-+are required.
-+.TP
-+.BI \-m " number" "\fR, \fB\-\-min\-restart\-interval " number
-+Set the minimum
-+.I number
-+of seconds to wait between invocations of the daemon restart commands (the
-+default value is "60").
-+.TP
-+.BI \-M " number" "\fR, \fB\-\-max\-restart\-interval " number
-+Set the maximum
-+.I number
-+of seconds to wait between invocations of the daemon restart commands (the
-+default value is "600").
-+.TP
-+.BI \-i " number" "\fR, \fB\-\-interval " number
-+Set the status polling interval in seconds (the default value is "5").
-+.TP
-+.BI \-t " number" "\fR, \fB\-\-timeout " number
-+Set the unresponsiveness timeout in seconds (the default value is "10").
-+.TP
-+.BI \-T " number" "\fR, \fB\-\-restart\-timeout " number
-+Set the restart (kill) timeout in seconds (the default value is "20"). If
-+any background jobs are still running after this period has elapsed, they
-+will be killed.
-+.TP
-+.BI \-r " command" "\fR, \fB\-\-restart " command
-+Supply a Bourne shell
-+.I command
-+to restart a single daemon. The command string should contain the '%s'
-+placeholder to be substituted with the daemon name.
-+.IP
-+Note that
-+.B \-r
-+and
-+.B \-R
-+options are not compatible.
-+.TP
-+.BI \-s " command" "\fR, \fB\-\-start\-command " command
-+Supply a Bourne shell
-+.I command
-+to start a single daemon. The command string should contain the '%s'
-+placeholder to be substituted with the daemon name.
-+.TP
-+.BI \-k " command" "\fR, \fB\-\-kill\-command " command
-+Supply a Bourne shell
-+.I command
-+to stop a single daemon. The command string should contain the '%s'
-+placeholder to be substituted with the daemon name.
-+.TP
-+.BR \-R ", " \-\-restart\-all
-+When one or more daemons are shut down, try to restart them using the
-+Bourne shell command supplied on the command line.
-+.IP
-+Note that
-+.B \-r
-+and
-+.B \-R
-+options are not compatible.
-+.TP
-+.BR \-z ", " \-\-unresponsive\-restart
-+When a daemon is in an unresponsive state, treat it as being shut down for
-+the restart purposes.
-+.TP
-+.BR \-a ", " \-\-all\-restart
-+When zebra hangs or crashes, restart all daemons taking the following
-+steps: (1) stop all other daemons, (2) restart zebra, and (3) start other
-+daemons again.
-+.IP
-+Note that this option also requires
-+.BR \-r ,
-+.BR \-s ,
-+and
-+.B \-k
-+options to be specified.
-+.TP
-+.BR \-A ", " \-\-always\-all\-restart
-+When any daemon (i.e., not just zebra) hangs or crashes, restart all
-+daemons taking the following steps: (1) stop all other daemons, (2) restart
-+zebra, and (3) start other daemons again.
-+.IP
-+Note that this option also requires
-+.BR \-r ,
-+.BR \-s ,
-+and
-+.B \-k
-+options to be specified.
-+.TP
-+.BI \-p " filename" "\fR, \fB\-\-pid\-file " filename
-+Set the process identifier
-+.I filename
-+(the default value is "/var/run/quagga/watchquagga.pid").
-+.TP
-+.BI \-b " string" "\fR, \fB\-\-blank\-string " string
-+When the supplied
-+.I string
-+is found in any of the command line option arguments (i.e.,
-+.BR \-r ,
-+.BR \-s ,
-+.BR \-k ,
-+or
-+.BR \-R ),
-+replace it with a space.
-+.IP
-+This is an ugly hack to circumvent problems with passing the command line
-+arguments containing embedded spaces.
-+.TP
-+.BR \-v ", " \-\-version
-+Display the version information and exit.
-+.TP
-+.BR \-h ", " \-\-help
-+Display the usage information and exit.
-+.SH SEE ALSO
-+.BR bgpd (8),
-+.BR ripd (8),
-+.BR ripngd (8),
-+.BR ospfd (8),
-+.BR ospf6d (8),
-+.BR isisd (8).
-+.PP
-+See the project homepage at .
-+.SH AUTHORS
-+Copyright 2004 Andrew J. Schorr
diff --git a/quagga-0.99.16-posix.patch b/quagga-0.99.16-posix.patch
deleted file mode 100644
index f811cd9..0000000
--- a/quagga-0.99.16-posix.patch
+++ /dev/null
@@ -1,766 +0,0 @@
-diff -up quagga-0.99.16/redhat/bgpd.init.posix quagga-0.99.16/redhat/bgpd.init
---- quagga-0.99.16/redhat/bgpd.init.posix 2010-03-17 14:11:26.681170285 +0100
-+++ quagga-0.99.16/redhat/bgpd.init 2010-03-17 14:13:47.943170024 +0100
-@@ -1,10 +1,12 @@
- #!/bin/bash
--#
--# chkconfig: 2345 16 84
--# description: A BGPv4, BGPv4+, BGPv4- routing engine for use with Zebra
--#
--# processname: bgpd
--# config: /etc/zebra/bgpd.conf
-+# chkconfig: - 16 84
-+# config: /etc/quagga/bgpd.conf
-+
-+### BEGIN INIT INFO
-+# Provides: bgpd
-+# Short-Description: A BGPv4, BGPv4+, BGPv4- routing engine
-+# Description: A BGPv4, BGPv4+, BGPv4- routing engine for use with Zebra
-+### END INIT INFO
-
- # source function library
- . /etc/rc.d/init.d/functions
-@@ -15,49 +17,57 @@
- # quagga command line options
- . /etc/sysconfig/quagga
-
--# Check that networking is up.
--[ "${NETWORKING}" = "no" ] && exit 0
--
--# The process must be configured first.
--[ -f /etc/quagga/bgpd.conf ] || exit 0
-
- RETVAL=0
--prog="bgpd"
-+PROG="bgpd"
-+cmd=bgpd
-+LOCK_FILE=/var/lock/subsys/bgpd
-+CONF_FILE=/etc/quagga/bgpd.conf
-
- case "$1" in
- start)
-- echo -n $"Starting $prog: "
-- daemon /usr/sbin/bgpd -d $BGPD_OPTS
-+ # Check that networking is up.
-+ [ "${NETWORKING}" = "no" ] && exit 1
-+
-+ # The process must be configured first.
-+ [ -f $CONF_FILE ] || exit 6
-+ if [ `id -u` -ne 0 ]; then
-+ echo $"Insufficient privilege" 1>&2
-+ exit 4
-+ fi
-+
-+ echo -n $"Starting $PROG: "
-+ daemon $cmd -d $BGPD_OPTS
- RETVAL=$?
-- [ $RETVAL -eq 0 ] && touch /var/lock/subsys/bgpd
-+ [ $RETVAL -eq 0 ] && touch $LOCK_FILE
- echo
- ;;
- stop)
-- echo -n $"Shutting down $prog: "
-- killproc bgpd
-+ echo -n $"Shutting down $PROG: "
-+ killproc $cmd
- RETVAL=$?
-- [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/bgpd
-+ [ $RETVAL -eq 0 ] && rm -f $LOCK_FILE
- echo
- ;;
-- restart|reload)
-+ restart|reload|force-reload)
- $0 stop
- $0 start
- RETVAL=$?
- ;;
-- condrestart)
-- if [ -f /var/lock/subsys/bgpd ]; then
-+ condrestart|try-restart)
-+ if [ -f $LOCK_FILE ]; then
- $0 stop
- $0 start
- fi
- RETVAL=$?
- ;;
- status)
-- status bgpd
-+ status $cmd
- RETVAL=$?
- ;;
- *)
-- echo $"Usage: $0 {start|stop|restart|reload|condrestart|status}"
-- exit 1
-+ echo $"Usage: $0 {start|stop|restart|reload|force-reload|try-restart|status}"
-+ exit 2
- esac
-
- exit $RETVAL
-diff -up quagga-0.99.16/redhat/isisd.init.posix quagga-0.99.16/redhat/isisd.init
---- quagga-0.99.16/redhat/isisd.init.posix 2010-03-17 14:11:26.704385156 +0100
-+++ quagga-0.99.16/redhat/isisd.init 2010-03-17 14:13:47.943170024 +0100
-@@ -1,40 +1,44 @@
- #!/bin/bash
--#
--# chkconfig: 2345 16 84
--# description: An ISIS routing engine for use with Quagga
--#
--# processname: isisd
-+# chkconfig: - 16 84
- # config: /etc/quagga/isisd.conf
-
-+### BEGIN INIT INFO
-+# Provides: isisd
-+# Short-Description: An ISIS routing engine
-+# Description: An ISIS routing engine for use with Quagga
-+### END INIT INFO
-+
- # source function library
- . /etc/rc.d/init.d/functions
-
- # Get network config
- . /etc/sysconfig/network
-
--# Check that networking is up.
--[ "${NETWORKING}" = "no" ] && exit 0
--
--# The process must be configured first.
--[ -f /etc/quagga/isisd.conf ] || exit 0
--
- RETVAL=0
--
--prog="isisd"
-+PROG="isisd"
-+cmd=isisd
-+LOCK_FILE=/var/lock/subsys/isisd
-+CONF_FILE=/etc/quagga/isisd.conf
-
- case "$1" in
- start)
-- echo -n $"Starting $prog: "
-- daemon /usr/sbin/isisd -d
-+ # Check that networking is up.
-+ [ "${NETWORKING}" = "no" ] && exit 1
-+
-+ # The process must be configured first.
-+ [ -f $CONF_FILE] || exit 6
-+
-+ echo -n $"Starting $PROG: "
-+ daemon $cmd -d
- RETVAL=$?
-- [ $RETVAL -eq 0 ] && touch /var/lock/subsys/isisd
-+ [ $RETVAL -eq 0 ] && touch $LOCK_FILE
- echo
- ;;
- stop)
-- echo -n $"Shutting down $prog: "
-- killproc isisd
-+ echo -n $"Shutting down $PROG: "
-+ killproc $cmd
- RETVAL=$?
-- [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/isisd
-+ [ $RETVAL -eq 0 ] && rm -f $LOCK_FILE
- echo
- ;;
- restart|reload)
-@@ -43,19 +47,19 @@ case "$1" in
- RETVAL=$?
- ;;
- condrestart)
-- if [ -f /var/lock/subsys/isisd ]; then
-+ if [ -f $LOCK_FILE ]; then
- $0 stop
- $0 start
- fi
- RETVAL=$?
- ;;
- status)
-- status isisd
-+ status $cmd
- RETVAL=$?
- ;;
- *)
- echo $"Usage: $0 {start|stop|restart|reload|condrestart|status}"
-- exit 1
-+ exit 2
- esac
-
- exit $RETVAL
-diff -up quagga-0.99.16/redhat/ospf6d.init.posix quagga-0.99.16/redhat/ospf6d.init
---- quagga-0.99.16/redhat/ospf6d.init.posix 2010-03-17 14:11:26.707387563 +0100
-+++ quagga-0.99.16/redhat/ospf6d.init 2010-03-17 14:13:47.944168987 +0100
-@@ -1,11 +1,13 @@
- #!/bin/bash
--#
--# chkconfig: 2345 16 84
--# description: An OSPF routing engine for use with Zebra and IPv6
--#
--# processname: ospf6d
-+# chkconfig: - 16 84
- # config: /etc/quagga/ospf6d.conf
-
-+### BEGIN INIT INFO
-+# Provides: ospf6d
-+# Short-Description: A OSPF routing engine for IPv6
-+# Description: An OSPF routing engine for use with Zebra and IPv6
-+### END INIT INFO
-+
- # source function library
- . /etc/rc.d/init.d/functions
-
-@@ -15,49 +17,56 @@
- # quagga command line options
- . /etc/sysconfig/quagga
-
--# Check that networking is up.
--[ "${NETWORKING_IPV6}" = "no" ] && exit 0
--
--# The process must be configured first.
--[ -f /etc/quagga/ospf6d.conf ] || exit 0
--
- RETVAL=0
--prog="ospf6d"
-+PROG="ospf6d"
-+cmd=ospf6d
-+LOCK_FILE=/var/lock/subsys/ospf6d
-+CONF_FILE=/etc/quagga/ospf6d.conf
-
- case "$1" in
- start)
-- echo -n $"Starting $prog: "
-- daemon /usr/sbin/ospf6d -d $OSPF6D_OPTS
-+ # Check that networking is up.
-+ [ "${NETWORKING}" = "no" ] && exit 1
-+
-+ # The process must be configured first.
-+ [ -f $CONF_FILE ] || exit 6
-+ if [ `id -u` -ne 0 ]; then
-+ echo $"Insufficient privilege" 1>&2
-+ exit 4
-+ fi
-+
-+ echo -n $"Starting $PROG: "
-+ daemon $cmd -d $OSPF6D_OPTS
- RETVAL=$?
-- [ $RETVAL -eq 0 ] && touch /var/lock/subsys/ospf6d
-+ [ $RETVAL -eq 0 ] && touch $LOCK_FILE
- echo
- ;;
- stop)
-- echo -n $"Shutting down $prog: "
-- killproc ospf6d
-+ echo -n $"Shutting down $PROG: "
-+ killproc $cmd
- RETVAL=$?
-- [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/ospf6d
-+ [ $RETVAL -eq 0 ] && rm -f $LOCK_FILE
- echo
- ;;
-- restart|reload)
-+ restart|reload|force-reload)
- $0 stop
- $0 start
- RETVAL=$?
- ;;
-- condrestart)
-- if [ -f /var/lock/subsys/ospf6d ]; then
-+ condrestart|try-restart)
-+ if [ -f $LOCK_FILE ]; then
- $0 stop
- $0 start
- fi
- RETVAL=$?
- ;;
- status)
-- status ospf6d
-+ status $cmd
- RETVAL=$?
- ;;
- *)
-- echo $"Usage: $prog {start|stop|restart|reload|condrestart|status}"
-- exit 1
-+ echo $"Usage: $PROG {start|stop|restart|reload|force-reload|try-restart|status}"
-+ exit 2
- esac
-
- exit $RETVAL
-diff -up quagga-0.99.16/redhat/ospfd.init.posix quagga-0.99.16/redhat/ospfd.init
---- quagga-0.99.16/redhat/ospfd.init.posix 2010-03-17 14:11:26.709400924 +0100
-+++ quagga-0.99.16/redhat/ospfd.init 2010-03-17 14:13:47.944168987 +0100
-@@ -1,11 +1,13 @@
- #!/bin/bash
--#
--# chkconfig: 2345 16 84
--# description: An OSPF v2 routing engine for use with Zebra
--#
--# processname: ospfd
-+# chkconfig: - 16 84
- # config: /etc/quagga/ospfd.conf
-
-+### BEGIN INIT INFO
-+# Provides: ospfd
-+# Short-Description: A OSPF v2 routing engine
-+# Description: An OSPF v2 routing engine for use with Zebra
-+### END INIT INFO
-+
- # source function library
- . /etc/rc.d/init.d/functions
-
-@@ -15,50 +17,56 @@
- # quagga command line options
- . /etc/sysconfig/quagga
-
--# Check that networking is up.
--[ "${NETWORKING}" = "no" ] && exit 0
--
--# The process must be configured first.
--[ -f /etc/quagga/ospfd.conf ] || exit 0
--
- RETVAL=0
--
--prog="ospfd"
-+PROG="ospfd"
-+cmd=ospfd
-+LOCK_FILE=/var/lock/subsys/ospfd
-+CONF_FILE=/etc/quagga/ospfd.conf
-
- case "$1" in
- start)
-- echo -n $"Starting $prog: "
-- daemon /usr/sbin/ospfd -d $OSPFD_OPTS
-+ # Check that networking is up.
-+ [ "${NETWORKING}" = "no" ] && exit 1
-+
-+ # The process must be configured first.
-+ [ -f $CONF_FILE ] || exit 6
-+ if [ `id -u` -ne 0 ]; then
-+ echo $"Insufficient privilege" 1>&2
-+ exit 4
-+ fi
-+
-+ echo -n $"Starting $PROG: "
-+ daemon $cmd -d $OSPFD_OPTS
- RETVAL=$?
-- [ $RETVAL -eq 0 ] && touch /var/lock/subsys/ospfd
-+ [ $RETVAL -eq 0 ] && touch $LOCK_FILE
- echo
- ;;
- stop)
-- echo -n $"Shutting down $prog: "
-- killproc ospfd
-+ echo -n $"Shutting down $PROG: "
-+ killproc $cmd
- RETVAL=$?
-- [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/ospfd
-+ [ $RETVAL -eq 0 ] && rm -f $LOCK_FILE
- echo
- ;;
-- restart|reload)
-+ restart|reload|force-reload)
- $0 stop
- $0 start
- RETVAL=$?
- ;;
-- condrestart)
-- if [ -f /var/lock/subsys/ospfd ]; then
-+ condrestart|try-restart)
-+ if [ -f $LOCK_FILE ]; then
- $0 stop
- $0 start
- fi
- RETVAL=$?
- ;;
- status)
-- status ospfd
-+ status $cmd
- RETVAL=$?
- ;;
- *)
-- echo $"Usage: $0 {start|stop|restart|reload|condrestart|status}"
-- exit 1
-+ echo $"Usage: $PROG {start|stop|restart|reload|force-reload|try-restart|status}"
-+ exit 2
- esac
-
- exit $RETVAL
-diff -up quagga-0.99.16/redhat/ripd.init.posix quagga-0.99.16/redhat/ripd.init
---- quagga-0.99.16/redhat/ripd.init.posix 2010-03-17 14:11:26.711384881 +0100
-+++ quagga-0.99.16/redhat/ripd.init 2010-03-17 14:13:47.944168987 +0100
-@@ -1,11 +1,13 @@
- #!/bin/bash
--#
--# chkconfig: 2345 16 84
--# description: A RIP routing engine for use with Zebra
--#
--# processname: ripd
-+# chkconfig: - 16 84
- # config: /etc/quagga/ripd.conf
-
-+### BEGIN INIT INFO
-+# Provides: ripd
-+# Short-Description: A RIP routing engine
-+# Description: A RIP routing engine for use with Zebra
-+### END INIT INFO
-+
- # source function library
- . /etc/rc.d/init.d/functions
-
-@@ -15,49 +17,56 @@
- # quagga command line options
- . /etc/sysconfig/quagga
-
--# Check that networking is up.
--[ "${NETWORKING}" = "no" ] && exit 0
--
--# The process must be configured first.
--[ -f /etc/quagga/ripd.conf ] || exit 0
--
- RETVAL=0
--prog="ripd"
-+PROG="ripd"
-+cmd=ripd
-+LOCK_FILE=/var/lock/subsys/ripd
-+CONF_FILE=/etc/quagga/ripd.conf
-
- case "$1" in
- start)
-- echo -n $"Starting $prog: "
-- daemon /usr/sbin/ripd -d $RIPD_OPTS
-+ # Check that networking is up.
-+ [ "${NETWORKING}" = "no" ] && exit 1
-+
-+ # The process must be configured first.
-+ [ -f $CONF_FILE ] || exit 6
-+ if [ `id -u` -ne 0 ]; then
-+ echo $"Insufficient privilege" 1>&2
-+ exit 4
-+ fi
-+
-+ echo -n $"Starting $PROG: "
-+ daemon $cmd -d $RIPD_OPTS
- RETVAL=$?
-- [ $RETVAL -eq 0 ] && touch /var/lock/subsys/ripd
-+ [ $RETVAL -eq 0 ] && touch $LOCK_FILE
- echo
- ;;
- stop)
-- echo -n $"Shutting down $prog: "
-- killproc ripd
-+ echo -n $"Shutting down $PROG: "
-+ killproc $cmd
- RETVAL=$?
-- [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/ripd
-+ [ $RETVAL -eq 0 ] && rm -f $LOCK_FILE
- echo
- ;;
-- restart|reload)
-+ restart|reload|force-reload)
- $0 stop
- $0 start
- RETVAL=$?
- ;;
-- condrestart)
-- if [ -f /var/lock/subsys/ripd ]; then
-+ condrestart|try-restart)
-+ if [ -f $LOCK_FILE ]; then
- $0 stop
- $0 start
- fi
- RETVAL=$?
- ;;
- status)
-- status ripd
-+ status $cmd
- RETVAL=$?
- ;;
- *)
-- echo $"Usage: $0 {start|stop|restart|reload|condrestart|status}"
-- exit 1
-+ echo $"Usage: $0 {start|stop|restart|reload|force-reload|try-restart|status}"
-+ exit 2
- esac
-
- exit $RETVAL
-diff -up quagga-0.99.16/redhat/ripngd.init.posix quagga-0.99.16/redhat/ripngd.init
---- quagga-0.99.16/redhat/ripngd.init.posix 2010-03-17 14:11:26.713385042 +0100
-+++ quagga-0.99.16/redhat/ripngd.init 2010-03-17 14:13:47.945166204 +0100
-@@ -1,11 +1,13 @@
- #!/bin/bash
--#
--# chkconfig: 2345 16 84
--# description: A RIP routing engine for use with Zebra and IPv6
--#
--# processname: ripngd
-+# chkconfig: - 16 84
- # config: /etc/quagga/ripngd.conf
-
-+### BEGIN INIT INFO
-+# Provides: ripngd
-+# Short-Description: A RIP routing engine for IPv6
-+# Description: A RIP routing engine for use with Zebra and IPv6
-+### END INIT INFO
-+
- # source function library
- . /etc/rc.d/init.d/functions
-
-@@ -15,49 +17,56 @@
- # quagga command line options
- . /etc/sysconfig/quagga
-
--# Check that networking is up.
--[ "${NETWORKING_IPV6}" = "no" ] && exit 0
--
--# The process must be configured first.
--[ -f /etc/quagga/ripngd.conf ] || exit 0
--
- RETVAL=0
--prog="ripngd"
-+PROG="ripngd"
-+cmd=ripngd
-+LOCK_FILE=/var/lock/subsys/ripngd
-+CONF_FILE=/etc/quagga/ripngd.conf
-
- case "$1" in
- start)
-- echo -n $"Starting $prog: "
-- daemon /usr/sbin/ripngd -d $RIPNGD_OPTS
-+ # Check that networking is up.
-+ [ "${NETWORKING}" = "no" ] && exit 1
-+
-+ # The process must be configured first.
-+ [ -f $CONF_FILE ] || exit 6
-+ if [ `id -u` -ne 0 ]; then
-+ echo $"Insufficient privilege" 1>&2
-+ exit 4
-+ fi
-+
-+ echo -n $"Starting $PROG: "
-+ daemon $cmd -d $RIPNGD_OPTS
- RETVAL=$?
-- [ $RETVAL -eq 0 ] && touch /var/lock/subsys/ripngd
-+ [ $RETVAL -eq 0 ] && touch $LOCK_FILE
- echo
- ;;
- stop)
-- echo -n $"Shutting down $prog: "
-- killproc ripngd
-+ echo -n $"Shutting down $PROG: "
-+ killproc $cmd
- RETVAL=$?
-- [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/ripngd
-+ [ $RETVAL -eq 0 ] && rm -f $LOCK_FILE
- echo
- ;;
-- restart|reload)
-+ restart|reload|force-reload)
- $0 stop
- $0 start
- RETVAL=$?
- ;;
-- condrestart)
-- if [ -f /var/lock/subsys/ripngd ]; then
-+ condrestart|try-restart)
-+ if [ -f $LOCK_FILE ]; then
- $0 stop
- $0 start
- fi
- RETVAL=$?
- ;;
- status)
-- status ripngd
-+ status $cmd
- RETVAL=$?
- ;;
- *)
-- echo $"Usage: $0 {start|stop|restart|reload|condrestart|status}"
-- exit 1
-+ echo $"Usage: $0 {start|stop|restart|reload|force-reload|try-restart|status}"
-+ exit 2
- esac
-
- exit $RETVAL
-diff -up quagga-0.99.16/redhat/watchquagga.init.posix quagga-0.99.16/redhat/watchquagga.init
---- quagga-0.99.16/redhat/watchquagga.init.posix 2010-03-17 14:11:26.715399800 +0100
-+++ quagga-0.99.16/redhat/watchquagga.init 2010-03-17 14:13:47.945166204 +0100
-@@ -1,9 +1,10 @@
- #!/bin/bash
--#
-+### BEGIN INIT INFO
-+# Provides: watchquagga
- # chkconfig: 2345 17 83
--# description: A Quagga watchdog for use with Zebra
--#
--# processname: watchquagga
-+# Short-Description: A Quagga watchdog
-+# Description: A Quagga watchdog for use with Zebra
-+### END INIT INFO
-
- # source function library
- . /etc/rc.d/init.d/functions
-@@ -14,28 +15,30 @@
- # quagga command line options
- . /etc/sysconfig/quagga
-
--# Check that networking is up.
--[ "${NETWORKING}" = "no" ] && exit 0
--
--# Check that there are daemons to be monitored.
--[ -z "$WATCH_DAEMONS" ] && exit 0
--
- RETVAL=0
--prog="watchquagga"
-+PROG="watchquagga"
-+cmd=watchquagga
-+LOCK_FILE=/var/lock/subsys/watchquagga
-
- case "$1" in
- start)
-+ # Check that networking is up.
-+ [ "${NETWORKING}" = "no" ] && exit 1
-+
-+ # Check that there are daemons to be monitored.
-+ [ -z "$WATCH_DAEMONS" ] && exit 1
-+
- echo -n $"Starting $prog: "
-- daemon /usr/sbin/watchquagga -d $WATCH_OPTS $WATCH_DAEMONS
-+ daemon $cmd -d $WATCH_OPTS $WATCH_DAEMONS
- RETVAL=$?
-- [ $RETVAL -eq 0 ] && touch /var/lock/subsys/watchquagga
-+ [ $RETVAL -eq 0 ] && touch $LOCK_FILE
- echo
- ;;
- stop)
-- echo -n $"Shutting down $prog: "
-- killproc watchquagga
-+ echo -n $"Shutting down $PROG: "
-+ killproc $cmd
- RETVAL=$?
-- [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/watchquagga
-+ [ $RETVAL -eq 0 ] && rm -f $LOCK_FILE
- echo
- ;;
- restart|reload)
-@@ -44,19 +47,19 @@ case "$1" in
- RETVAL=$?
- ;;
- condrestart)
-- if [ -f /var/lock/subsys/watchquagga ]; then
-+ if [ -f $LOCK_FILE ]; then
- $0 stop
- $0 start
- fi
- RETVAL=$?
- ;;
- status)
-- status watchquagga
-+ status $cmd
- RETVAL=$?
- ;;
- *)
- echo $"Usage: $0 {start|stop|restart|reload|condrestart|status}"
-- exit 1
-+ exit 2
- esac
-
- exit $RETVAL
-diff -up quagga-0.99.16/redhat/zebra.init.posix quagga-0.99.16/redhat/zebra.init
---- quagga-0.99.16/redhat/zebra.init.posix 2010-03-17 14:11:26.717385084 +0100
-+++ quagga-0.99.16/redhat/zebra.init 2010-03-17 14:13:47.945166204 +0100
-@@ -1,64 +1,72 @@
- #!/bin/bash
--#
--# chkconfig: 2345 15 85
--# description: GNU Zebra routing manager
--#
--# processname: zebra
-+# chkconfig: - 15 85
- # config: /etc/quagga/zebra.conf
-
-+### BEGIN INIT INFO
-+# Provides: zebra
-+# Short-Description: GNU Zebra routing manager
-+# Description: GNU Zebra routing manager
-+### END INIT INFO
-+
- # source function library
- . /etc/rc.d/init.d/functions
-
- # quagga command line options
- . /etc/sysconfig/quagga
-
--# Check that networking is up.
--[ "${NETWORKING}" = "no" ] && exit 0
--
--# The process must be configured first.
--[ -f /etc/quagga/zebra.conf ] || exit 0
--
- RETVAL=0
--
--prog="zebra"
-+PROG="zebra"
-+cmd=zebra
-+LOCK_FILE=/var/lock/subsys/zebra
-+CONF_FILE=/etc/quagga/zebra.conf
-
- case "$1" in
- start)
-- echo -n $"Starting $prog: "
-+ # Check that networking is up.
-+ [ "${NETWORKING}" = "no" ] && exit 1
-+
-+ # The process must be configured first.
-+ [ -f $CONF_FILE ] || exit 6
-+ if [ `id -u` -ne 0 ]; then
-+ echo $"Insufficient privilege" 1>&2
-+ exit 4
-+ fi
-+
-+ echo -n $"Starting $PROG: "
-
- /sbin/ip route flush proto zebra
-
-- daemon /usr/sbin/zebra -d $ZEBRA_OPTS
-+ daemon $cmd -d $ZEBRA_OPTS
- RETVAL=$?
-- [ $RETVAL -eq 0 ] && touch /var/lock/subsys/zebra
-+ [ $RETVAL -eq 0 ] && touch $LOCK_FILE
- echo
- ;;
- stop)
-- echo -n $"Shutting down $prog: "
-- killproc zebra
-+ echo -n $"Shutting down $PROG: "
-+ killproc $cmd
- RETVAL=$?
-- [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/zebra
-+ [ $RETVAL -eq 0 ] && rm -f $LOCK_FILE
- echo
- ;;
-- restart|reload)
-+ restart|reload|force-reload)
- $0 stop
- $0 start
- RETVAL=$?
- ;;
-- condrestart)
-- if [ -f /var/lock/subsys/zebra ]; then
-+ condrestart|try-restart)
-+ if [ -f $LOCK_FILE ]; then
- $0 stop
- $0 start
- fi
- RETVAL=$?
- ;;
- status)
-- status zebra
-+ status $cmd
- RETVAL=$?
- ;;
- *)
-- echo $"Usage: $0 {start|stop|restart|reload|condrestart|status}"
-- exit 1
-+ echo $"Usage: $0 {start|stop|restart|reload|force-reload|try-restart|status}"
-+ exit 2
- esac
-
- exit $RETVAL
diff --git a/quagga-0.99.18-sysd.patch b/quagga-0.99.18-sysd.patch
deleted file mode 100644
index d4348dd..0000000
--- a/quagga-0.99.18-sysd.patch
+++ /dev/null
@@ -1,152 +0,0 @@
-diff -up quagga-0.99.18/redhat/bgpd.service.sysd quagga-0.99.18/redhat/bgpd.service
---- quagga-0.99.18/redhat/bgpd.service.sysd 2011-07-19 11:16:11.810667234 +0200
-+++ quagga-0.99.18/redhat/bgpd.service 2011-07-19 11:16:11.810667234 +0200
-@@ -0,0 +1,11 @@
-+[Unit]
-+Description=BGP routing daemon
-+After=syslog.target network.target
-+
-+[Service]
-+Type=forking
-+EnvironmentFile=/etc/sysconfig/quagga
-+ExecStart=/usr/sbin/bgpd -d $BGPD_OPTS
-+
-+[Install]
-+WantedBy=multi-user.target
-diff -up quagga-0.99.18/redhat/isisd.service.sysd quagga-0.99.18/redhat/isisd.service
---- quagga-0.99.18/redhat/isisd.service.sysd 2011-07-19 11:16:11.811667244 +0200
-+++ quagga-0.99.18/redhat/isisd.service 2011-07-19 11:16:11.811667244 +0200
-@@ -0,0 +1,12 @@
-+[Unit]
-+Description=ISIS routing daemon
-+After=syslog.target network.target
-+
-+[Service]
-+Type=forking
-+EnvironmentFile=/etc/sysconfig/quagga
-+ExecStart=/usr/sbin/isisd -d
-+
-+[Install]
-+WantedBy=multi-user.target
-+
-diff -up quagga-0.99.18/redhat/ospf6d.service.sysd quagga-0.99.18/redhat/ospf6d.service
---- quagga-0.99.18/redhat/ospf6d.service.sysd 2011-07-19 11:16:11.812667254 +0200
-+++ quagga-0.99.18/redhat/ospf6d.service 2011-07-19 11:16:11.812667254 +0200
-@@ -0,0 +1,12 @@
-+[Unit]
-+Description=OSPF routing daemon for IPv6
-+After=syslog.target network.target
-+
-+[Service]
-+Type=forking
-+EnvironmentFile=/etc/sysconfig/quagga
-+ExecStart=/usr/sbin/ospf6d -d $OSPF6D_OPTS
-+
-+[Install]
-+WantedBy=multi-user.target
-+
-diff -up quagga-0.99.18/redhat/ospfd.service.sysd quagga-0.99.18/redhat/ospfd.service
---- quagga-0.99.18/redhat/ospfd.service.sysd 2011-07-19 11:16:11.813667264 +0200
-+++ quagga-0.99.18/redhat/ospfd.service 2011-07-19 11:16:11.813667264 +0200
-@@ -0,0 +1,12 @@
-+[Unit]
-+Description=OSPF routing daemon
-+After=syslog.target network.target
-+
-+[Service]
-+Type=forking
-+EnvironmentFile=/etc/sysconfig/quagga
-+ExecStart=/usr/sbin/ospfd -d $OSPFD_OPTS
-+
-+[Install]
-+WantedBy=multi-user.target
-+
-diff -up quagga-0.99.18/redhat/quagga.sysconfig.sysd quagga-0.99.18/redhat/quagga.sysconfig
---- quagga-0.99.18/redhat/quagga.sysconfig.sysd 2011-03-21 10:43:52.000000000 +0100
-+++ quagga-0.99.18/redhat/quagga.sysconfig 2011-07-19 11:46:07.141576149 +0200
-@@ -1,14 +1,13 @@
- #
- # Default: Bind all daemon vtys to the loopback(s) only
- #
--QCONFDIR="/etc/quagga"
--BGPD_OPTS="-A 127.0.0.1 -f ${QCONFDIR}/bgpd.conf"
--OSPF6D_OPTS="-A ::1 -f ${QCONFDIR}/ospf6d.conf"
--OSPFD_OPTS="-A 127.0.0.1 -f ${QCONFDIR}/ospfd.conf"
--RIPD_OPTS="-A 127.0.0.1 -f ${QCONFDIR}/ripd.conf"
--RIPNGD_OPTS="-A ::1 -f ${QCONFDIR}/ripngd.conf"
--ZEBRA_OPTS="-A 127.0.0.1 -f ${QCONFDIR}/zebra.conf"
--ISISD_OPTS="-A ::1 -f ${QCONFDIR}/isisd.conf"
-+BGPD_OPTS="-A 127.0.0.1 -f /etc/quagga/bgpd.conf"
-+OSPF6D_OPTS="-A ::1 -f /etc/quagga/ospf6d.conf"
-+OSPFD_OPTS="-A 127.0.0.1 -f /etc/quagga/ospfd.conf"
-+RIPD_OPTS="-A 127.0.0.1 -f /etc/quagga/ripd.conf"
-+RIPNGD_OPTS="-A ::1 -f /etc/quagga/ripngd.conf"
-+ZEBRA_OPTS="-A 127.0.0.1 -f /etc/quagga/zebra.conf"
-+ISISD_OPTS="-A ::1 -f /etc/quagga/isisd.conf"
-
- # Watchquagga configuration (please check timer values before using):
- WATCH_OPTS=""
-diff -up quagga-0.99.18/redhat/ripd.service.sysd quagga-0.99.18/redhat/ripd.service
---- quagga-0.99.18/redhat/ripd.service.sysd 2011-07-19 11:16:11.815667284 +0200
-+++ quagga-0.99.18/redhat/ripd.service 2011-07-19 11:16:11.815667284 +0200
-@@ -0,0 +1,12 @@
-+[Unit]
-+Description=RIP routing daemon
-+After=syslog.target network.target
-+
-+[Service]
-+Type=forking
-+EnvironmentFile=/etc/sysconfig/quagga
-+ExecStart=/usr/sbin/ripd -d $RIPD_OPTS
-+
-+[Install]
-+WantedBy=multi-user.target
-+
-diff -up quagga-0.99.18/redhat/ripngd.service.sysd quagga-0.99.18/redhat/ripngd.service
---- quagga-0.99.18/redhat/ripngd.service.sysd 2011-07-19 11:16:11.816667293 +0200
-+++ quagga-0.99.18/redhat/ripngd.service 2011-07-19 11:16:11.816667293 +0200
-@@ -0,0 +1,12 @@
-+[Unit]
-+Description=RIP routing daemon for IPv6
-+After=syslog.target network.target
-+
-+[Service]
-+Type=forking
-+EnvironmentFile=/etc/sysconfig/quagga
-+ExecStart=/usr/sbin/ripngd -d $RIPNGD_OPTS
-+
-+[Install]
-+WantedBy=multi-user.target
-+
-diff -up quagga-0.99.18/redhat/watchquagga.service.sysd quagga-0.99.18/redhat/watchquagga.service
---- quagga-0.99.18/redhat/watchquagga.service.sysd 2011-07-19 11:16:11.817667302 +0200
-+++ quagga-0.99.18/redhat/watchquagga.service 2011-07-19 11:16:11.817667302 +0200
-@@ -0,0 +1,12 @@
-+[Unit]
-+Description=Quagga watchdog for use with Zebra
-+After=syslog.target network.target
-+
-+[Service]
-+Type=forking
-+EnvironmentFile=/etc/sysconfig/quagga
-+ExecStart=/usr/sbin/watchquagga -d $WATCH_OPTS $WATCH_DAEMONS
-+
-+[Install]
-+WantedBy=multi-user.target
-+
-diff -up quagga-0.99.18/redhat/zebra.service.sysd quagga-0.99.18/redhat/zebra.service
---- quagga-0.99.18/redhat/zebra.service.sysd 2011-07-19 11:16:11.818667311 +0200
-+++ quagga-0.99.18/redhat/zebra.service 2011-07-19 11:16:11.818667311 +0200
-@@ -0,0 +1,12 @@
-+[Unit]
-+Description=GNU Zebra routing manager
-+After=syslog.target network.target
-+
-+[Service]
-+Type=forking
-+EnvironmentFile=-/etc/sysconfig/quagga
-+ExecStartPre=/sbin/ip route flush proto zebra
-+ExecStart=/usr/sbin/zebra -d $ZEBRA_OPTS
-+
-+[Install]
-+WantedBy=multi-user.target
diff --git a/quagga.spec b/quagga.spec
index 00702cf..dfa9f86 100644
--- a/quagga.spec
+++ b/quagga.spec
@@ -2,11 +2,11 @@
%define with_snmp 1
%define with_vtysh 1
%define with_ospf_te 1
-%define with_nssa 1
%define with_opaque_lsa 1
%define with_tcp_zebra 0
%define with_pam 0
%define with_ipv6 1
+%define with_isisd 1
%define with_ospfclient 1
%define with_ospfapi 1
%define with_rtadv 1
@@ -31,23 +31,14 @@
Summary: Routing daemon
Name: quagga
-Version: 0.99.20.1
+Version: 0.99.21
Release: 1%{?dist}
License: GPLv2+
Group: System Environment/Daemons
-Source0: http://www.quagga.net/download/%{name}-%{version}.tar.gz
+Source0: http://www.quagga.net/download/%{name}-%{version}.tar.xz
Source1: quagga-filter-perl-requires.sh
Source2: quagga-tmpfs.conf
-# upstream patches
-
-# Fedora patches
-Patch101: quagga-0.99.15-perl_pth.patch
-Patch102: quagga-0.99.16-posix.patch
-Patch103: quagga-0.99.16-man.patch
-Patch104: quagga-0.99.18-sysd.patch
-Patch105: quagga-0.99.20-memleak.patch
-
URL: http://www.quagga.net
%if %with_snmp
BuildRequires: net-snmp-devel
@@ -57,7 +48,7 @@ Requires: net-snmp
BuildRequires: readline readline-devel ncurses ncurses-devel
Requires: ncurses
%endif
-BuildRequires: texinfo tetex autoconf patch libcap-devel texi2html
+BuildRequires: texinfo tetex libcap-devel texi2html
%if %with_pam
BuildRequires: pam-devel
@@ -80,14 +71,15 @@ Provides: routingdaemon = %{version}-%{release}
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
%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 is free software that operates TCP/IP-based routing protocols. It takes
+a multi-server and multi-threaded approach to resolving the current complexity
+of the Internet.
-Quagga supports BGP4, BGP4+, OSPFv2, OSPFv3, RIPv1, RIPv2, and RIPng.
+Quagga supports Babel, BGP4, BGP4+, BGP4-, IS-IS (experimental), 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.
+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.
@@ -100,7 +92,7 @@ Requires(preun): /sbin/service
Requires(postun): /sbin/service
%description sysvinit
-The quagga-sysvinit contains SysV initscritps support.
+The quagga-sysvinit contains SysV initscripts support.
%package contrib
Summary: Contrib tools for quagga
@@ -121,22 +113,20 @@ developing OSPF-API and quagga applications.
%prep
%setup -q
-%patch101 -p1 -b .perl_pth
-%patch102 -p1 -b .posix
-%patch103 -p1 -b .man
-%patch104 -p1 -b .sysd
-%patch105 -p1 -b .memleak
-
%build
# FC5+ automatic -fstack-protector-all switch
export RPM_OPT_FLAGS=${RPM_OPT_FLAGS//-fstack-protector/-fstack-protector-all}
-#./autogen.sh
export CFLAGS="$RPM_OPT_FLAGS $CPPFLAGS"
export CXXFLAGS="$RPM_OPT_FLAGS $CPPFLAGS"
%configure \
%if %with_ipv6
--enable-ipv6=yes \
+%else
+ --enable-ipv6=no \
+%endif
+%if %with_isisd
+ --enable-isisd=yes \
%endif
%if %with_snmp
--enable-snmp=yes \
@@ -147,9 +137,6 @@ export CXXFLAGS="$RPM_OPT_FLAGS $CPPFLAGS"
%if %with_tcp_zebra
--enable-tcp-zebra \
%endif
-%if %with_nssa
- --enable-nssa \
-%endif
%if %with_opaque_lsa
--enable-opaque-lsa \
%endif
@@ -182,10 +169,9 @@ export CXXFLAGS="$RPM_OPT_FLAGS $CPPFLAGS"
%if %with_rtadv
--enable-rtadv \
%endif
+--disable-exampledir \
--enable-netlink
-for X in Makefile */Makefile ; do perl -pe 's/^COMPILE \= \$\(CC\) /COMPILE = \$(CC) -fPIE /;s/^LDFLAGS = $/LDFLAGS = -pie/' < $X > $X.tmp ; mv $X.tmp $X ; done
-
make %{?_smp_mflags} MAKEINFO="makeinfo --no-split"
pushd doc
@@ -198,6 +184,7 @@ rm -rf $RPM_BUILD_ROOT
install -d $RPM_BUILD_ROOT/etc/{rc.d/init.d,sysconfig,logrotate.d} \
$RPM_BUILD_ROOT/var/log/quagga $RPM_BUILD_ROOT%{_infodir}
mkdir -p $RPM_BUILD_ROOT/lib/systemd/system
+mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}
%if %with_pam
install -d $RPM_BUILD_ROOT/etc/pam.d
@@ -210,18 +197,22 @@ make install \
rm -rf $RPM_BUILD_ROOT/usr/share/info/dir
install -m 644 %{zeb_rh_src}/zebra.service $RPM_BUILD_ROOT/lib/systemd/system
+%if %with_isisd
install -m 644 %{zeb_rh_src}/isisd.service $RPM_BUILD_ROOT/lib/systemd/system
+%endif
install -m 644 %{zeb_rh_src}/ripd.service $RPM_BUILD_ROOT/lib/systemd/system
install -m 644 %{zeb_rh_src}/ospfd.service $RPM_BUILD_ROOT/lib/systemd/system
install -m 644 %{zeb_rh_src}/bgpd.service $RPM_BUILD_ROOT/lib/systemd/system
-install -m 644 %{zeb_rh_src}/watchquagga.service $RPM_BUILD_ROOT/lib/systemd/system
+install -m 644 %{zeb_rh_src}/babeld.service $RPM_BUILD_ROOT/lib/systemd/system
%if %with_ipv6
install -m 644 %{zeb_rh_src}/ospf6d.service $RPM_BUILD_ROOT/lib/systemd/system
install -m 644 %{zeb_rh_src}/ripngd.service $RPM_BUILD_ROOT/lib/systemd/system
%endif
install %{zeb_rh_src}/zebra.init $RPM_BUILD_ROOT/etc/rc.d/init.d/zebra
+%if %with_isisd
install %{zeb_rh_src}/isisd.init $RPM_BUILD_ROOT/etc/rc.d/init.d/isisd
+%endif
install %{zeb_rh_src}/bgpd.init $RPM_BUILD_ROOT/etc/rc.d/init.d/bgpd
%if %with_ipv6
install %{zeb_rh_src}/ospf6d.init $RPM_BUILD_ROOT/etc/rc.d/init.d/ospf6d
@@ -229,7 +220,7 @@ install %{zeb_rh_src}/ripngd.init $RPM_BUILD_ROOT/etc/rc.d/init.d/ripngd
%endif
install %{zeb_rh_src}/ospfd.init $RPM_BUILD_ROOT/etc/rc.d/init.d/ospfd
install %{zeb_rh_src}/ripd.init $RPM_BUILD_ROOT/etc/rc.d/init.d/ripd
-
+install %{zeb_rh_src}/babeld.init $RPM_BUILD_ROOT/etc/rc.d/init.d/babeld
install %{zeb_rh_src}/watchquagga.init $RPM_BUILD_ROOT/etc/rc.d/init.d/watchquagga
install -m644 %{zeb_rh_src}/quagga.sysconfig $RPM_BUILD_ROOT/etc/sysconfig/quagga
@@ -279,7 +270,13 @@ fi
if [ ! -e %{_sysconfdir}/vtysh.conf ]; then
touch %{_sysconfdir}/vtysh.conf
chmod 640 %{_sysconfdir}/vtysh.conf
+%if %quagga_user
+%if %vty_group
chown %{quagga_user}:%{vty_group} %{_sysconfdir}/vtysh.conf
+%else
+ chown %{quagga_user}:%{quagga_user} %{_sysconfdir}/vtysh.conf
+%endif
+%endif
fi
%postun
@@ -297,12 +294,14 @@ if [ "$1" = "0" ]; then
/bin/systemctl stop bgpd.service > /dev/null 2>&1 || :
/bin/systemctl disable zebra.service > /dev/null 2>&1 || :
/bin/systemctl stop zebra.service > /dev/null 2>&1 || :
+%if %with_isisd
/bin/systemctl disable isisd.service > /dev/null 2>&1 || :
/bin/systemctl stop isisd.service > /dev/null 2>&1 || :
+%endif
/bin/systemctl disable ospfd.service > /dev/null 2>&1 || :
/bin/systemctl stop ospfd.service > /dev/null 2>&1 || :
- /bin/systemctl disable watchquagga.service > /dev/null 2>&1 || :
- /bin/systemctl stop watchquagga.service > /dev/null 2>&1 || :
+ /bin/systemctl disable babeld.service > /dev/null 2>&1 || :
+ /bin/systemctl stop babeld.service > /dev/null 2>&1 || :
%if %with_ipv6
/bin/systemctl disable ospf6d.service > /dev/null 2>&1 || :
/bin/systemctl stop ospf6d.service > /dev/null 2>&1 || :
@@ -311,29 +310,44 @@ if [ "$1" = "0" ]; then
%endif
fi
+%triggerun -- %{name} < 0.99.21-1
+ /bin/systemctl disable watchquagga.service > /dev/null 2>&1 || :
+ /bin/systemctl stop watchquagga.service > /dev/null 2>&1 || :
+
%triggerun -- %{name} < 0.99.18-6
+ /sbin/service watchquagga stop >/dev/null 2>&1 || :
/sbin/chkconfig --del zebra >/dev/null 2>&1 || :
+%if !%with_isisd
+ /sbin/service isisd stop >/dev/null 2>&1 || :
+%endif
/sbin/chkconfig --del isisd >/dev/null 2>&1 || :
/sbin/chkconfig --del ripd >/dev/null 2>&1 || :
/sbin/chkconfig --del bgpd >/dev/null 2>&1 || :
/sbin/chkconfig --del ospfd >/dev/null 2>&1 || :
/sbin/chkconfig --del watchquagga >/dev/null 2>&1 || :
+%if !%with_ipv6
+ /sbin/service ospf6d stop >/dev/null 2>&1 || :
+ /sbin/service ripngd stop >/dev/null 2>&1 || :
+%endif
+ /sbin/chkconfig --del ospf6d >/dev/null 2>&1 || :
+ /sbin/chkconfig --del ripngd >/dev/null 2>&1 || :
/bin/systemctl try-restart zebra.service >/dev/null 2>&1 || :
+%if %with_isisd
/bin/systemctl try-restart isisd.service >/dev/null 2>&1 || :
+%endif
/bin/systemctl try-restart ripd.service >/dev/null 2>&1 || :
/bin/systemctl try-restart bgpd.service >/dev/null 2>&1 || :
/bin/systemctl try-restart ospfd.service >/dev/null 2>&1 || :
- /bin/systemctl try-restart watchquagga.service >/dev/null 2>&1 || :
%if %with_ipv6
- /sbin/chkconfig --del ospf6d >/dev/null 2>&1 || :
- /sbin/chkconfig --del ripngd >/dev/null 2>&1 || :
/bin/systemctl try-restart ospf6d.service >/dev/null 2>&1 || :
/bin/systemctl try-restart ripngd.service >/dev/null 2>&1 || :
%endif
%triggerpostun -n %{name}-sysvinit -- %{name} < 0.99.18-6
/sbin/chkconfig --add zebra >/dev/null 2>&1 || :
+%if %with_isisd
/sbin/chkconfig --add isisd >/dev/null 2>&1 || :
+%endif
/sbin/chkconfig --add ripd >/dev/null 2>&1 || :
/sbin/chkconfig --add bgpd >/dev/null 2>&1 || :
/sbin/chkconfig --add ospfd >/dev/null 2>&1 || :
@@ -348,7 +362,19 @@ rm -rf $RPM_BUILD_ROOT
%files
%defattr(-,root,root)
-%doc */*.sample* AUTHORS COPYING
+%doc AUTHORS COPYING
+%doc zebra/zebra.conf.sample
+%if %with_isisd
+%doc isisd/isisd.conf.sample
+%endif
+%doc ripd/ripd.conf.sample
+%doc bgpd/bgpd.conf.sample*
+%doc ospfd/ospfd.conf.sample
+%doc babeld/babeld.conf.sample
+%if %with_ipv6
+%doc ospf6d/ospf6d.conf.sample
+%doc ripngd/ripngd.conf.sample
+%endif
%doc doc/quagga.html
%doc doc/mpls
%doc ChangeLog INSTALL NEWS README REPORTING-BUGS SERVICES TODO
@@ -362,20 +388,16 @@ rm -rf $RPM_BUILD_ROOT
%dir %attr(755,root,root) /usr/share/info
%dir %attr(750,root,root) /var/run/quagga
%endif
-%if %vty_group
-# noreplace not used due to smaple conf file
-%config %attr(644,%quagga_user,%vty_group) %{_sysconfdir}/vtysh.conf.sample
-%endif
%{_infodir}/*info*
%{_mandir}/man*/*
+%exclude %{_mandir}/man*/watchquagga.*
%{_sbindir}/*
+%exclude %{_sbindir}/watchquagga
%if %with_vtysh
%{_bindir}/*
%endif
%dir %{_libdir}
%{_libdir}/*.so.*
-# noreplace not used due to smaple conf files
-%config /etc/quagga/[!v]*
%if %with_pam
%config(noreplace) /etc/pam.d/quagga
%endif
@@ -385,7 +407,11 @@ rm -rf $RPM_BUILD_ROOT
/lib/systemd/system/*.service
%files sysvinit
+%defattr(-,root,root)
+%doc AUTHORS COPYING
%attr(755,root,root) /etc/rc.d/init.d/*
+%{_mandir}/man*/watchquagga.*
+%{_sbindir}/watchquagga
%files contrib
%defattr(-,root,root)
@@ -406,6 +432,10 @@ rm -rf $RPM_BUILD_ROOT
%endif
%changelog
+* Thu May 03 2012 Adam Tkac 0.99.21
+- update to 0.99.21
+- various packaging fixes
+
* Thu Mar 15 2012 Jiri Skala - 0.99.20.1-1
- updated to latest upstream version 0.99.20.1
diff --git a/sources b/sources
index 7b102d6..14baba9 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-270ddd464407f8ce6fa8ada8bc1abbd7 quagga-0.99.20.1.tar.gz
+0980758b1865b9aa0c60975120bf3453 quagga-0.99.21.tar.xz