aboutsummaryrefslogtreecommitdiff
path: root/net/quagga
diff options
context:
space:
mode:
authorSam Lawrance <lawrance@FreeBSD.org>2006-05-29 20:28:35 +0000
committerSam Lawrance <lawrance@FreeBSD.org>2006-05-29 20:28:35 +0000
commitc34e741cef59c762e51a8e26194e4319b95b0950 (patch)
tree3eb1cec13fa82855a440fd390f2f5952dee4ff26 /net/quagga
parent37b8de34ec41ace0c93992d6506e4fe5cead43b3 (diff)
downloadports-c34e741cef59c762e51a8e26194e4319b95b0950.tar.gz
ports-c34e741cef59c762e51a8e26194e4319b95b0950.zip
Notes
Diffstat (limited to 'net/quagga')
-rw-r--r--net/quagga/Makefile18
-rw-r--r--net/quagga/distinfo7
-rw-r--r--net/quagga/files/extra-tcpmd5-patch-lib-sockopt.h9
-rw-r--r--net/quagga/files/patch-configure29
-rw-r--r--net/quagga/files/patch-doc-Makefile.in11
-rw-r--r--net/quagga/files/patch-memory.c11
-rw-r--r--net/quagga/files/patch-ripd-ripd.c19
-rw-r--r--net/quagga/files/patch-zebra-connected.c48
-rw-r--r--net/quagga/files/quagga.sh.in2
-rw-r--r--net/quagga/files/watchquagga.sh.in2
-rw-r--r--net/quagga/pkg-plist2
11 files changed, 103 insertions, 55 deletions
diff --git a/net/quagga/Makefile b/net/quagga/Makefile
index c1e82466ae64..20ac4d7e93ec 100644
--- a/net/quagga/Makefile
+++ b/net/quagga/Makefile
@@ -6,8 +6,7 @@
#
PORTNAME= quagga
-PORTVERSION= 0.99.3
-PORTREVISION= 2
+PORTVERSION= 0.99.4
CATEGORIES= net ipv6
MASTER_SITES= http://quagga.net/download/
@@ -27,7 +26,6 @@ LIBTOOLFILES= configure
MAN1= vtysh.1
MAN8= bgpd.8 ospf6d.8 ospfd.8 ripd.8 ripngd.8 zebra.8
-INFO= quagga
OPTIONS= ISISD "Enable experimental ISIS daemon" off \
PAM "PAM authentication for vtysh" off \
@@ -105,27 +103,18 @@ CONFIGURE_ARGS+=--enable-rtadv
.if defined(WITH_SNMP) && !defined(WITHOUT_SNMP)
CONFIGURE_ARGS+=--enable-snmp
-.if defined(WITH_SNMP_4)
-LIB_DEPENDS+=snmp.4:${PORTSDIR}/net-mgmt/net-snmp4
-.else
LIB_DEPENDS+=netsnmp.9:${PORTSDIR}/net-mgmt/net-snmp
.endif
-.endif
.if defined(WITH_TCPMD5) && !defined(WITHOUT_TCPMD5)
.if ${OSVERSION} < 491000
-BROKEN= "This version of FreeBSD does not have TCP MD5 signature support"
+BROKEN= This version of FreeBSD does not have TCP MD5 signature support
.endif
EXTRA_PATCHES+=${PATCHDIR}/extra-tcpmd5-patch-bgpd-bgp_network.c ${PATCHDIR}/extra-tcpmd5-patch-bgpd-bgp_vty.c ${PATCHDIR}/extra-tcpmd5-patch-bgpd-bgpd.c ${PATCHDIR}/extra-tcpmd5-patch-bgpd-bgpd.h ${PATCHDIR}/extra-tcpmd5-patch-lib-sockopt.c ${PATCHDIR}/extra-tcpmd5-patch-lib-sockopt.h
CFLAGS+= -DQUAGGA_TCP_MD5SIG
.endif
-USE_RC_SUBR= watchquagga.sh
-.if ${OSVERSION} < 500000
-USE_RC_SUBR+= quagga.sh
-.else
-USE_RCORDER= quagga.sh
-.endif
+USE_RC_SUBR= quagga.sh watchquagga.sh
SUB_LIST+= LOCALSTATE_DIR=${LOCALSTATE_DIR} \
SYSCONF_DIR=${SYSCONF_DIR}
@@ -140,7 +129,6 @@ pre-everything::
@${ECHO}
@${ECHO} "You can build ${PORTNAME} with the following options:"
@${ECHO}
- @${ECHO} "WITH_SNMP_4 Force net-snmp 4.x to be used"
@${ECHO} "ENABLE_USER Specify user to run Quagga suite as"
@${ECHO} "ENABLE_GROUP Specify group to run Quagga suite as"
@${ECHO} "ENABLE_VTY_GROUP Specify group for vty socket ownership"
diff --git a/net/quagga/distinfo b/net/quagga/distinfo
index 4ccb07fef638..e54b282131e9 100644
--- a/net/quagga/distinfo
+++ b/net/quagga/distinfo
@@ -1,4 +1,3 @@
-MD5 (quagga-0.99.3.tar.gz) = d11dfb2d0eb9fa93e1aca882541e45d8
-SHA256 (quagga-0.99.3.tar.gz) = 3e319fa854d84eaf6a57513256b903f0d068be85dbce27cb7ec3cbac08e26aac
-SIZE (quagga-0.99.3.tar.gz) = 2203788
-SIZE (quagga-0.98.5.tar.gz) = 2018058
+MD5 (quagga-0.99.4.tar.gz) = a75d3f5ed0b3354274c28d195e3f6479
+SHA256 (quagga-0.99.4.tar.gz) = 4044bfacb44ec9fa9160b56aeb1e76e1ca62b17115ae38298065cbaad16491a7
+SIZE (quagga-0.99.4.tar.gz) = 2207774
diff --git a/net/quagga/files/extra-tcpmd5-patch-lib-sockopt.h b/net/quagga/files/extra-tcpmd5-patch-lib-sockopt.h
index 495f26707b10..84a5eab334e4 100644
--- a/net/quagga/files/extra-tcpmd5-patch-lib-sockopt.h
+++ b/net/quagga/files/extra-tcpmd5-patch-lib-sockopt.h
@@ -1,12 +1,13 @@
---- lib/sockopt.h.orig Mon Nov 15 10:51:15 2004
-+++ lib/sockopt.h Fri Jan 28 17:52:57 2005
-@@ -40,6 +40,9 @@
+--- lib/sockopt.h.orig Wed May 4 01:13:05 2005
++++ lib/sockopt.h Thu May 11 10:08:05 2006
+@@ -40,6 +40,10 @@
*/
#define SOPT_SIZE_CMSG_PKTINFO_IPV6() (sizeof (struct in6_pktinfo));
+#ifdef QUAGGA_TCP_MD5SIG
-+int sockopt_tcp_signature(int family, int sock, int enable);
++extern int sockopt_tcp_signature(int family, int sock, int enable);
+#endif /* QUAGGA_TCP_MD5SIG */
++
/*
* Size defines for control messages used to get ifindex. We define
* values for each method, and define a macro that can be used by code
diff --git a/net/quagga/files/patch-configure b/net/quagga/files/patch-configure
deleted file mode 100644
index b4ba2dcfd408..000000000000
--- a/net/quagga/files/patch-configure
+++ /dev/null
@@ -1,29 +0,0 @@
---- configure.orig Fri Jan 20 07:24:48 2006
-+++ configure Mon Jan 30 09:36:38 2006
-@@ -15056,7 +15056,7 @@
- fi
-
- if test "${HAVE_SNMP}" = "yes"; then
-- for ac_snmp in /usr/include/net-snmp/library/asn1.h /usr/include/ucd-snmp/asn1.h /usr/local/include/ucd-snmp/asn1.h /dev/null
-+ for ac_snmp in /usr/include/net-snmp/library/asn1.h /usr/include/ucd-snmp/asn1.h /usr/local/include/net-snmp/library/asn1.h /usr/local/include/ucd-snmp/asn1.h /dev/null
- do
- test -f "${ac_snmp}" && break
- done
-@@ -15111,7 +15111,7 @@
-
-
- cat >>confdefs.h <<\_ACEOF
--#define HAVE_NET_SNMP
-+#define HAVE_NETSNMP
- _ACEOF
-
-
-@@ -15119,7 +15119,7 @@
- #define UCD_COMPATIBLE
- _ACEOF
-
-- SNMP_INCLUDES="${SNMP_INCLUDES} -I/usr/local/include/net-snmp"
-+ SNMP_INCLUDES="${SNMP_INCLUDES} -I/usr/local/include/net-snmp -I/usr/local/include/net-snmp/library"
- LIBS="${LIBS} -L/usr/local/lib -lnetsnmp"
- ;;
- esac
diff --git a/net/quagga/files/patch-doc-Makefile.in b/net/quagga/files/patch-doc-Makefile.in
new file mode 100644
index 000000000000..4aefe1fb9f14
--- /dev/null
+++ b/net/quagga/files/patch-doc-Makefile.in
@@ -0,0 +1,11 @@
+--- doc/Makefile.in.orig Thu May 11 01:53:06 2006
++++ doc/Makefile.in Mon May 29 19:17:40 2006
+@@ -600,7 +600,7 @@
+
+ info-am: $(INFO_DEPS)
+
+-install-data-am: install-info-am install-man
++install-data-am: install-man
+
+ install-exec-am:
+
diff --git a/net/quagga/files/patch-memory.c b/net/quagga/files/patch-memory.c
new file mode 100644
index 000000000000..d8e37bf8e648
--- /dev/null
+++ b/net/quagga/files/patch-memory.c
@@ -0,0 +1,11 @@
+--- lib/memory.c.orig Thu Mar 30 19:47:38 2006
++++ lib/memory.c Thu May 11 10:18:36 2006
+@@ -21,7 +21,7 @@
+ */
+
+ #include <zebra.h>
+-#include <malloc.h>
++#include <stdlib.h>
+
+ #include "log.h"
+ #include "memory.h"
diff --git a/net/quagga/files/patch-ripd-ripd.c b/net/quagga/files/patch-ripd-ripd.c
new file mode 100644
index 000000000000..2c1f0d3b3e3e
--- /dev/null
+++ b/net/quagga/files/patch-ripd-ripd.c
@@ -0,0 +1,19 @@
+--- ripd/ripd.c.orig Thu May 4 13:33:44 2006
++++ ripd/ripd.c Thu May 11 12:58:35 2006
+@@ -1822,6 +1822,7 @@
+ struct interface *ifp;
+ struct connected *ifc;
+ struct rip_interface *ri;
++ int vrecv;
+
+ /* Fetch socket then register myself. */
+ sock = THREAD_FD (t);
+@@ -1937,7 +1938,7 @@
+ }
+
+ /* RIP Version check. RFC2453, 4.6 and 5.1 */
+- int vrecv = ((ri->ri_receive == RI_RIP_UNSPEC) ?
++ vrecv = ((ri->ri_receive == RI_RIP_UNSPEC) ?
+ rip->version_recv : ri->ri_receive);
+ if ((packet->version == RIPv1) && !(vrecv & RIPv1))
+ {
diff --git a/net/quagga/files/patch-zebra-connected.c b/net/quagga/files/patch-zebra-connected.c
new file mode 100644
index 000000000000..7742cc8e0d8f
--- /dev/null
+++ b/net/quagga/files/patch-zebra-connected.c
@@ -0,0 +1,48 @@
+--- zebra/connected.c.orig Mon May 22 11:48:55 2006
++++ zebra/connected.c Mon May 22 11:49:48 2006
+@@ -60,8 +60,11 @@
+ UNSET_FLAG (ifc->conf, ZEBRA_IFC_REAL);
+ }
+
+- listnode_delete (ifc->ifp->connected, ifc);
+- connected_free (ifc);
++ if (!CHECK_FLAG (ifc->conf, ZEBRA_IFC_CONFIGURED))
++ {
++ listnode_delete (ifc->ifp->connected, ifc);
++ connected_free (ifc);
++ }
+ }
+
+ static void
+@@ -225,7 +228,14 @@
+
+ /* Check same connected route. */
+ if ((current = connected_check (ifp, (struct prefix *) ifc->address)))
+- connected_withdraw (current); /* implicit withdraw - freebsd does this */
++ {
++ if (CHECK_FLAG(current->conf, ZEBRA_IFC_CONFIGURED))
++ {
++ SET_FLAG(ifc->conf, ZEBRA_IFC_CONFIGURED);
++ UNSET_FLAG(current->conf, ZEBRA_IFC_CONFIGURED);
++ }
++ connected_withdraw (current); /* implicit withdraw - freebsd does this */
++ }
+
+ connected_announce (ifp, ifc);
+ }
+@@ -364,7 +374,14 @@
+ ifc->label = XSTRDUP (MTYPE_CONNECTED_LABEL, label);
+
+ if ((current = connected_check (ifp, (struct prefix *) ifc->address)))
+- connected_withdraw (current); /* implicit update of existing address */
++ {
++ if (CHECK_FLAG(current->conf, ZEBRA_IFC_CONFIGURED))
++ {
++ SET_FLAG(ifc->conf, ZEBRA_IFC_CONFIGURED);
++ UNSET_FLAG(current->conf, ZEBRA_IFC_CONFIGURED);
++ }
++ connected_withdraw (current); /* implicit update of existing address */
++ }
+
+ connected_announce (ifp, ifc);
+ }
diff --git a/net/quagga/files/quagga.sh.in b/net/quagga/files/quagga.sh.in
index 005f5ccbebed..868b00db1d69 100644
--- a/net/quagga/files/quagga.sh.in
+++ b/net/quagga/files/quagga.sh.in
@@ -4,7 +4,7 @@
# PROVIDE: quagga
# REQUIRE: netif routing mountcritlocal
# BEFORE: NETWORKING
-# KEYWORD: NetBSD
+# KEYWORD: shutdown
#
# Add the following line to /etc/rc.conf to enable quagga:
diff --git a/net/quagga/files/watchquagga.sh.in b/net/quagga/files/watchquagga.sh.in
index dfb9ca42fdd5..d9af072e47f6 100644
--- a/net/quagga/files/watchquagga.sh.in
+++ b/net/quagga/files/watchquagga.sh.in
@@ -4,7 +4,7 @@
# PROVIDE: watchquagga
# REQUIRE: netif routing mountcritlocal quagga
# BEFORE: NETWORKING
-# KEYWORD: NetBSD
+# KEYWORD: shutdown
#
# Add the following line to /etc/rc.conf to enable quagga:
diff --git a/net/quagga/pkg-plist b/net/quagga/pkg-plist
index fd561764c545..8b0dc72cffaf 100644
--- a/net/quagga/pkg-plist
+++ b/net/quagga/pkg-plist
@@ -81,4 +81,4 @@ include/quagga/zebra.h
@dirrm include/quagga
@dirrm share/examples/quagga
@dirrm etc/quagga
-@unexec rmdir %%LOCALSTATE_DIR%% 2>/dev/null || true
+@dirrmtry %%LOCALSTATE_DIR%%