summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAmir Guindehi <amir@gentoo.org>2004-03-29 12:29:03 +0000
committerAmir Guindehi <amir@gentoo.org>2004-03-29 12:29:03 +0000
commite9b908ed711c06b00f2fb9096d1fd7f7bbcc9ddc (patch)
tree1333d6e7bbced7855c6d716a87e2ea724350e579 /net-misc/quagga/files
parentnew version; bumped as a dep of bricolage (Manifest recommit) (diff)
downloadgentoo-2-e9b908ed711c06b00f2fb9096d1fd7f7bbcc9ddc.tar.gz
gentoo-2-e9b908ed711c06b00f2fb9096d1fd7f7bbcc9ddc.tar.bz2
gentoo-2-e9b908ed711c06b00f2fb9096d1fd7f7bbcc9ddc.zip
Added net-misc/quagga a replacement for net-misc/zebra
Diffstat (limited to 'net-misc/quagga/files')
-rw-r--r--net-misc/quagga/files/digest-quagga-0.96.4-r61
-rw-r--r--net-misc/quagga/files/init/bgpd32
-rw-r--r--net-misc/quagga/files/init/ospf6d32
-rw-r--r--net-misc/quagga/files/init/ospfd32
-rw-r--r--net-misc/quagga/files/init/ripd32
-rw-r--r--net-misc/quagga/files/init/ripngd32
-rw-r--r--net-misc/quagga/files/init/zebra47
-rw-r--r--net-misc/quagga/files/patches-0.96.4/opaque-ready.patch56
-rw-r--r--net-misc/quagga/files/patches-0.96.4/ospf_refcount.patch34
9 files changed, 298 insertions, 0 deletions
diff --git a/net-misc/quagga/files/digest-quagga-0.96.4-r6 b/net-misc/quagga/files/digest-quagga-0.96.4-r6
new file mode 100644
index 000000000000..bde17a662186
--- /dev/null
+++ b/net-misc/quagga/files/digest-quagga-0.96.4-r6
@@ -0,0 +1 @@
+MD5 55f5a307c453f90d7dfcc13f0dabb83d quagga-0.96.4.tar.gz 1401066
diff --git a/net-misc/quagga/files/init/bgpd b/net-misc/quagga/files/init/bgpd
new file mode 100644
index 000000000000..a684202a640a
--- /dev/null
+++ b/net-misc/quagga/files/init/bgpd
@@ -0,0 +1,32 @@
+#!/sbin/runscript
+# Copyright 1999-2003 DataCore GmbH, Amir Guindehi
+# Distributed under the terms of the GNU General Public License, v2 or later
+# $Header: /var/cvsroot/gentoo-x86/net-misc/quagga/files/init/bgpd,v 1.1 2004/03/29 12:29:03 amir Exp $
+
+depend() {
+ need net zebra
+}
+
+checkconfig() {
+ if [ ! -e /etc/quagga/bgpd.conf ] ; then
+ eerror "You need to create /etc/quagga/bgpd.conf first."
+ eerror "An example can be found in /etc/quagga/bgpd.conf.sample"
+ return 1
+ fi
+}
+
+start() {
+ ebegin "Starting bgpd"
+ start-stop-daemon --start --quiet --exec /usr/sbin/bgpd \
+ -- -d -f /etc/quagga/bgpd.conf \
+ --pid_file /var/run/quagga/ospfd.pid
+ result=$?
+ eend $result
+}
+
+stop() {
+ ebegin "Stopping bgpd"
+ start-stop-daemon --stop --quiet --pidfile /var/run/quagga/bgpd.pid
+ result=$?
+ eend $result
+}
diff --git a/net-misc/quagga/files/init/ospf6d b/net-misc/quagga/files/init/ospf6d
new file mode 100644
index 000000000000..e44f941b5245
--- /dev/null
+++ b/net-misc/quagga/files/init/ospf6d
@@ -0,0 +1,32 @@
+#!/sbin/runscript
+# Copyright 1999-2003 DataCore GmbH, Amir Guindehi
+# Distributed under the terms of the GNU General Public License, v2 or later
+# $Header: /var/cvsroot/gentoo-x86/net-misc/quagga/files/init/ospf6d,v 1.1 2004/03/29 12:29:03 amir Exp $
+
+depend() {
+ need net zebra
+}
+
+checkconfig() {
+ if [ ! -e /etc/quagga/ospf6d.conf ] ; then
+ eerror "You need to create /etc/quagga/ospf6d.conf first."
+ eerror "An example can be found in /etc/quagga/ospf6d.conf.sample"
+ return 1
+ fi
+}
+
+start() {
+ ebegin "Starting ospf6d"
+ start-stop-daemon --start --quiet --exec /usr/sbin/ospf6d \
+ -- -d -f /etc/quagga/ospf6d.conf \
+ --pid_file /var/run/quagga/ospf6d.pid
+ result=$?
+ eend $result
+}
+
+stop() {
+ ebegin "Stopping ospf6d"
+ start-stop-daemon --stop --quiet --pidfile /var/run/quagga/ospf6d.pid
+ result=$?
+ eend $result
+}
diff --git a/net-misc/quagga/files/init/ospfd b/net-misc/quagga/files/init/ospfd
new file mode 100644
index 000000000000..4320a3dd7a5b
--- /dev/null
+++ b/net-misc/quagga/files/init/ospfd
@@ -0,0 +1,32 @@
+#!/sbin/runscript
+# Copyright 1999-2003 DataCore GmbH, Amir Guindehi
+# Distributed under the terms of the GNU General Public License, v2 or later
+# $Header: /var/cvsroot/gentoo-x86/net-misc/quagga/files/init/ospfd,v 1.1 2004/03/29 12:29:03 amir Exp $
+
+depend() {
+ need net zebra
+}
+
+checkconfig() {
+ if [ ! -e /etc/quagga/ospfd.conf ] ; then
+ eerror "You need to create /etc/quagga/ospfd.conf first."
+ eerror "An example can be found in /etc/quagga/ospfd.conf.sample"
+ return 1
+ fi
+}
+
+start() {
+ ebegin "Starting ospfd"
+ start-stop-daemon --start --quiet --exec /usr/sbin/ospfd \
+ -- -d -f /etc/quagga/ospfd.conf \
+ --pid_file /var/run/quagga/ospfd.pid
+ result=$?
+ eend $result
+}
+
+stop() {
+ ebegin "Stopping ospfd"
+ start-stop-daemon --stop --quiet --pidfile /var/run/quagga/ospfd.pid
+ result=$?
+ eend $result
+}
diff --git a/net-misc/quagga/files/init/ripd b/net-misc/quagga/files/init/ripd
new file mode 100644
index 000000000000..91b7ac896716
--- /dev/null
+++ b/net-misc/quagga/files/init/ripd
@@ -0,0 +1,32 @@
+#!/sbin/runscript
+# Copyright 1999-2003 DataCore GmbH, Amir Guindehi
+# Distributed under the terms of the GNU General Public License, v2 or later
+# $Header: /var/cvsroot/gentoo-x86/net-misc/quagga/files/init/ripd,v 1.1 2004/03/29 12:29:03 amir Exp $
+
+depend() {
+ need net zebra
+}
+
+checkconfig() {
+ if [ ! -e /etc/quagga/ripd.conf ] ; then
+ eerror "You need to create /etc/quagga/ripd.conf first."
+ eerror "An example can be found in /etc/quagga/ripd.conf.sample"
+ return 1
+ fi
+}
+
+start() {
+ ebegin "Starting ripd"
+ start-stop-daemon --start --quiet --exec /usr/sbin/ripd \
+ -- -d -f /etc/quagga/ripd.conf \
+ --pid_file /var/run/quagga/ripd.pid
+ result=$?
+ eend $result
+}
+
+stop() {
+ ebegin "Stopping ripd"
+ start-stop-daemon --stop --quiet --pidfile /var/run/quagga/ripd.pid
+ result=$?
+ eend $result
+}
diff --git a/net-misc/quagga/files/init/ripngd b/net-misc/quagga/files/init/ripngd
new file mode 100644
index 000000000000..b0face4ccf46
--- /dev/null
+++ b/net-misc/quagga/files/init/ripngd
@@ -0,0 +1,32 @@
+#!/sbin/runscript
+# Copyright 1999-2003 DataCore GmbH, Amir Guindehi
+# Distributed under the terms of the GNU General Public License, v2 or later
+# $Header: /var/cvsroot/gentoo-x86/net-misc/quagga/files/init/ripngd,v 1.1 2004/03/29 12:29:03 amir Exp $
+
+depend() {
+ need net zebra
+}
+
+checkconfig() {
+ if [ ! -e /etc/quagga/ripngd.conf ] ; then
+ eerror "You need to create /etc/quagga/ripngd.conf first."
+ eerror "An example can be found in /etc/quagga/ripngd.conf.sample"
+ return 1
+ fi
+}
+
+start() {
+ ebegin "Starting ripngd"
+ start-stop-daemon --start --quiet --exec /usr/sbin/ripngd \
+ -- -d -f /etc/quagga/ripngd.conf \
+ --pid_file /var/run/quagga/ripngd.pid
+ result=$?
+ eend $result
+}
+
+stop() {
+ ebegin "Stopping ripngd"
+ start-stop-daemon --stop --quiet --pidfile /var/run/quagga/ripngd.pid
+ result=$?
+ eend $result
+}
diff --git a/net-misc/quagga/files/init/zebra b/net-misc/quagga/files/init/zebra
new file mode 100644
index 000000000000..59c586d2a5cc
--- /dev/null
+++ b/net-misc/quagga/files/init/zebra
@@ -0,0 +1,47 @@
+#!/sbin/runscript
+# Copyright 1999-2002 Gentoo Technologies, Inc.
+# Distributed under the terms of the GNU General Public License, v2 or later
+# $Header: /var/cvsroot/gentoo-x86/net-misc/quagga/files/init/zebra,v 1.1 2004/03/29 12:29:03 amir Exp $
+
+depend() {
+ need net
+}
+
+checkconfig() {
+ if [ ! -e /etc/quagga/zebra.conf ] ; then
+ eerror "You need to create /etc/quagga/zebra.conf first."
+ eerror "An example can be found in /etc/quagga/zebra.conf.sample"
+ return 1
+ fi
+}
+
+cleanup() {
+ stale=`ip route | grep 'proto zebra' | awk '{ print $1 }'`
+ if [ ! -z "$stale" ] ; then
+ einfo "Cleaning up stale zebra routes..."
+ fi
+ for r in $stale; do
+ ebegin "Removing stale route to $r..."
+ ip route del $r;
+ eend $?
+ done
+}
+
+start() {
+ checkconfig
+ cleanup
+
+ ebegin "Starting zebra"
+ start-stop-daemon --start --quiet --exec /usr/sbin/zebra \
+ -- -d -l 255 -f /etc/quagga/zebra.conf \
+ --pid_file /var/run/quagga/zebra.pid
+ result=$?
+ eend $result
+}
+
+stop() {
+ ebegin "Stopping zebra"
+ start-stop-daemon --stop --quiet --pidfile /var/run/quagga/zebra.pid
+ result=$?
+ eend $result
+}
diff --git a/net-misc/quagga/files/patches-0.96.4/opaque-ready.patch b/net-misc/quagga/files/patches-0.96.4/opaque-ready.patch
new file mode 100644
index 000000000000..e2db1538c182
--- /dev/null
+++ b/net-misc/quagga/files/patches-0.96.4/opaque-ready.patch
@@ -0,0 +1,56 @@
+--- ospfd/ospf_opaque.c.orig 2003-04-04 04:44:32.000000000 +0200
++++ ospfd/ospf_opaque.c 2004-02-02 23:58:48.171864248 +0100
+@@ -1385,10 +1385,15 @@
+ {
+ for (node = listhead (oi->opaque_lsa_self); node; nextnode (node))
+ {
++ /*
++ * removed the test for
++ * (! list_isempty (oipt->id_list)) * Handler is already active. *
++ * because opaque cababilities ON -> OFF -> ON result in list_isempty (oipt->id_list)
++ * not being empty.
++ */
+ if ((oipt = getdata (node)) == NULL /* Something wrong? */
+ || oipt->t_opaque_lsa_self != NULL /* Waiting for a thread call. */
+- || oipt->status == PROC_SUSPEND /* Cannot originate now. */
+- || ! list_isempty (oipt->id_list)) /* Handler is already active. */
++ || oipt->status == PROC_SUSPEND) /* Cannot originate now. */
+ continue;
+
+ ospf_opaque_lsa_reoriginate_schedule ((void *) oi,
+@@ -1401,10 +1406,15 @@
+ {
+ for (node = listhead (area->opaque_lsa_self); node; nextnode (node))
+ {
++ /*
++ * removed the test for
++ * (! list_isempty (oipt->id_list)) * Handler is already active. *
++ * because opaque cababilities ON -> OFF -> ON result in list_isempty (oipt->id_list)
++ * not being empty.
++ */
+ if ((oipt = getdata (node)) == NULL /* Something wrong? */
+ || oipt->t_opaque_lsa_self != NULL /* Waiting for a thread call. */
+- || oipt->status == PROC_SUSPEND /* Cannot originate now. */
+- || ! list_isempty (oipt->id_list)) /* Handler is already active. */
++ || oipt->status == PROC_SUSPEND) /* Cannot originate now. */
+ continue;
+
+ ospf_opaque_lsa_reoriginate_schedule ((void *) area,
+@@ -1417,10 +1427,15 @@
+ {
+ for (node = listhead (top->opaque_lsa_self); node; nextnode (node))
+ {
++ /*
++ * removed the test for
++ * (! list_isempty (oipt->id_list)) * Handler is already active. *
++ * because opaque cababilities ON -> OFF -> ON result in list_isempty (oipt->id_list)
++ * not being empty.
++ */
+ if ((oipt = getdata (node)) == NULL /* Something wrong? */
+ || oipt->t_opaque_lsa_self != NULL /* Waiting for a thread call. */
+- || oipt->status == PROC_SUSPEND /* Cannot originate now. */
+- || ! list_isempty (oipt->id_list)) /* Handler is already active. */
++ || oipt->status == PROC_SUSPEND) /* Cannot originate now. */
+ continue;
+
+ ospf_opaque_lsa_reoriginate_schedule ((void *) top,
diff --git a/net-misc/quagga/files/patches-0.96.4/ospf_refcount.patch b/net-misc/quagga/files/patches-0.96.4/ospf_refcount.patch
new file mode 100644
index 000000000000..08718c1808b1
--- /dev/null
+++ b/net-misc/quagga/files/patches-0.96.4/ospf_refcount.patch
@@ -0,0 +1,34 @@
+--- ospfd/ospf_lsa.c.orig 2003-10-13 11:02:40.000000000 +0200
++++ ospfd/ospf_lsa.c 2004-03-12 17:22:20.099902466 +0100
+@@ -288,6 +288,10 @@
+ struct ospf_lsa *
+ ospf_lsa_lock (struct ospf_lsa *lsa)
+ {
++#ifdef DEBUG_LSA_LOCKS
++ zlog_info("LSA: lock(lsa = %p, lsa->data = %p, lsa->id = %s, lsa->lock = %d)", lsa, lsa->data, (lsa && (lsa->data))?inet_ntoa(lsa->data->id):"undef", lsa->lock);
++#endif /* DEBUG_LSA_LOCKS */
++
+ lsa->lock++;
+ return lsa;
+ }
+@@ -300,6 +304,20 @@
+ if (!lsa)
+ return;
+
++#ifdef DEBUG_LSA_LOCKS
++ zlog_info("LSA: unlock(lsa = %p, lsa->data = %p, lsa->id = %s, lsa->lock = %d, lsa->discard = %s)", lsa, (lsa)?lsa->data:"undef", (lsa && (lsa->data))?inet_ntoa(lsa->data->id):"undef", lsa->lock, (CHECK_FLAG (lsa->flags, OSPF_LSA_DISCARD))?"true":"false");
++#endif /* DEBUG_LSA_LOCKS */
++
++#ifndef ORGINAL_BEHAVIOR
++ if (lsa->lock == 0)
++ {
++ int discard = (CHECK_FLAG (lsa->flags, OSPF_LSA_DISCARD));
++
++ zlog_info("LSA: unlock(lsa = %p, lsa->data = %p, lsa->id = %s, lsa->lock = %d, lsa->discard = %s): reference count error! unlocking not locked resource... ignoring!", lsa, lsa->data, (lsa->data)?inet_ntoa(lsa->data->id):"undef", lsa->lock, discard);
++ return;
++ }
++#endif /* ! ORGINAL_BEHAVIOR */
++
+ lsa->lock--;
+
+ assert (lsa->lock >= 0);