diff options
author | gdt <gdt@pkgsrc.org> | 2010-08-31 13:20:13 +0000 |
---|---|---|
committer | gdt <gdt@pkgsrc.org> | 2010-08-31 13:20:13 +0000 |
commit | 31de68bb14cc8ace26ef8e5d533038918c57c688 (patch) | |
tree | d9437651e294511c33abb14d755353051294c470 /net | |
parent | bbd37b9b1306b7bfcb7872b9341ffebb2017fefc (diff) | |
download | pkgsrc-31de68bb14cc8ace26ef8e5d533038918c57c688.tar.gz |
Replace with contents of quagga-devel, thus upgrading to 0.99.17.
Diffstat (limited to 'net')
-rw-r--r-- | net/quagga/DESCR | 7 | ||||
-rw-r--r-- | net/quagga/Makefile | 9 | ||||
-rw-r--r-- | net/quagga/PLIST | 8 | ||||
-rw-r--r-- | net/quagga/distinfo | 11 | ||||
-rw-r--r-- | net/quagga/options.mk | 5 | ||||
-rw-r--r-- | net/quagga/patches/patch-aa | 12 | ||||
-rw-r--r-- | net/quagga/patches/patch-ab | 178 | ||||
-rw-r--r-- | net/quagga/patches/patch-ac | 15 |
8 files changed, 19 insertions, 226 deletions
diff --git a/net/quagga/DESCR b/net/quagga/DESCR index 963d27cc560..94b4d253ce8 100644 --- a/net/quagga/DESCR +++ b/net/quagga/DESCR @@ -1,11 +1,8 @@ Quagga is a routing software suite, providing implementations of OSPFv2, OSPFv3, RIP v1 and v2, RIPv3 and BGPv4 for Unix platforms, -particularly FreeBSD and Linux and also NetBSD, to mention a few. +including NetBSD, FreeBSD, OpenBSD, Linux, and Solaris. Quagga is a fork of GNU Zebra which was developed by Kunihiro Ishiguro. The Quagga tree aims to build a more involved community around Quagga than the current centralised model of GNU Zebra. -This version is obsolete and unmaintained. It is very unlikely that -security issues will be addressed. Users should run 0.99.x instead, -available in ../quagga-devel. - +This package provides a development snapshot of quagga. diff --git a/net/quagga/Makefile b/net/quagga/Makefile index 6bac8aea6ba..d290f66b7f9 100644 --- a/net/quagga/Makefile +++ b/net/quagga/Makefile @@ -1,14 +1,13 @@ -# $NetBSD: Makefile,v 1.36 2010/08/31 12:55:16 gdt Exp $ +# $NetBSD: Makefile,v 1.37 2010/08/31 13:20:13 gdt Exp $ # -DISTNAME= quagga-0.98.6 -PKGREVISION= 5 +DISTNAME= quagga-0.99.17 CATEGORIES= net MASTER_SITES= http://www.quagga.net/download/ MAINTAINER= gdt@NetBSD.org HOMEPAGE= http://www.quagga.net/ -COMMENT= Free multithreaded routing daemon software (fork of zebra) +COMMENT= Free multithreaded routing daemon software LICENSE= gnu-gpl-v2 PKG_DESTDIR_SUPPORT= user-destdir @@ -16,7 +15,7 @@ PKG_DESTDIR_SUPPORT= user-destdir .include "../../mk/bsd.prefs.mk" GNU_CONFIGURE= YES -USE_TOOLS+= gmake perl +USE_TOOLS+= gawk gmake perl USE_LIBTOOL= YES PKG_SYSCONFSUBDIR?= zebra diff --git a/net/quagga/PLIST b/net/quagga/PLIST index e91cc91c885..eb7a407123a 100644 --- a/net/quagga/PLIST +++ b/net/quagga/PLIST @@ -1,5 +1,6 @@ -@comment $NetBSD: PLIST,v 1.10 2009/06/14 18:09:41 joerg Exp $ +@comment $NetBSD: PLIST,v 1.11 2010/08/31 13:20:13 gdt Exp $ include/quagga/buffer.h +include/quagga/checksum.h include/quagga/command.h include/quagga/distribute.h include/quagga/filter.h @@ -11,8 +12,9 @@ include/quagga/jhash.h include/quagga/keychain.h include/quagga/linklist.h include/quagga/log.h -include/quagga/md5-gnu.h +include/quagga/md5.h include/quagga/memory.h +include/quagga/memtypes.h include/quagga/network.h include/quagga/ospfd/ospf_api.h include/quagga/ospfd/ospf_asbr.h @@ -27,6 +29,7 @@ include/quagga/plist.h include/quagga/pqueue.h include/quagga/prefix.h include/quagga/privs.h +include/quagga/route_types.h include/quagga/routemap.h include/quagga/sigevent.h include/quagga/smux.h @@ -39,6 +42,7 @@ include/quagga/thread.h include/quagga/vector.h include/quagga/version.h include/quagga/vty.h +include/quagga/workqueue.h include/quagga/zassert.h include/quagga/zclient.h include/quagga/zebra.h diff --git a/net/quagga/distinfo b/net/quagga/distinfo index 823e7ae8d31..6f4358e6d31 100644 --- a/net/quagga/distinfo +++ b/net/quagga/distinfo @@ -1,8 +1,5 @@ -$NetBSD: distinfo,v 1.10 2008/05/13 22:30:47 tonnerre Exp $ +$NetBSD: distinfo,v 1.11 2010/08/31 13:20:13 gdt Exp $ -SHA1 (quagga-0.98.6.tar.gz) = 2234d1235f504e9dc5865cc8d5fd4e250bf43ed5 -RMD160 (quagga-0.98.6.tar.gz) = e15cd93b5d321660d7e29fc27174352967342879 -Size (quagga-0.98.6.tar.gz) = 2019992 bytes -SHA1 (patch-aa) = 507d9cccd719e31d0710425858a80cef1215093d -SHA1 (patch-ab) = 3165bb9d31ea7a3a3231e3fe3a0c374ef7b98f00 -SHA1 (patch-ac) = 401c64dd7588ca4736079ecd796deaff6a45d447 +SHA1 (quagga-0.99.17.tar.gz) = 31f42fa9f4d96aadf1bf97c3d9bf3308eb0d56c1 +RMD160 (quagga-0.99.17.tar.gz) = f00bf01930f781ae0de9fe9981c74e7bae0798b5 +Size (quagga-0.99.17.tar.gz) = 2202151 bytes diff --git a/net/quagga/options.mk b/net/quagga/options.mk index d976ff23474..4dd865aeddc 100644 --- a/net/quagga/options.mk +++ b/net/quagga/options.mk @@ -1,10 +1,11 @@ -# $NetBSD: options.mk,v 1.2 2007/09/16 11:36:52 gdt Exp $ +# $NetBSD: options.mk,v 1.3 2010/08/31 13:20:13 gdt Exp $ PKG_OPTIONS_VAR= PKG_OPTIONS.quagga PKG_SUPPORTED_OPTIONS= inet6 PKG_SUPPORTED_OPTIONS+= quagga-ospf-opaque-lsa +PKG_SUGGESTED_OPTIONS+= quagga-ospf-opaque-lsa PKG_SUPPORTED_OPTIONS+= quagga-vtysh -PKG_SUGGESTED_OPTIONS= quagga-ospf-opaque-lsa quagga-vtysh +PKG_SUGGESTED_OPTIONS+= quagga-vtysh PKG_OPTIONS_LEGACY_VARS+= USE_ZEBRA_OSPF_OPAQUELSA:quagga-ospf-opaque-lsa PKG_OPTIONS_LEGACY_VARS+= USE_ZEBRA_VTYSH:quagga-vtysh diff --git a/net/quagga/patches/patch-aa b/net/quagga/patches/patch-aa deleted file mode 100644 index b2050c02360..00000000000 --- a/net/quagga/patches/patch-aa +++ /dev/null @@ -1,12 +0,0 @@ -$NetBSD: patch-aa,v 1.3 2006/03/23 12:30:22 joerg Exp $ - ---- ospf6d/ospf6d.h.orig 2006-03-23 12:08:51.000000000 +0000 -+++ ospf6d/ospf6d.h -@@ -25,7 +25,6 @@ - #define OSPF6_DAEMON_VERSION "0.9.7o" - - /* global variables */ --extern int errno; - extern struct thread_master *master; - - #ifdef INRIA_IPV6 diff --git a/net/quagga/patches/patch-ab b/net/quagga/patches/patch-ab deleted file mode 100644 index e0e8810fbd4..00000000000 --- a/net/quagga/patches/patch-ab +++ /dev/null @@ -1,178 +0,0 @@ -$NetBSD: patch-ab,v 1.3 2008/05/13 22:30:47 tonnerre Exp $ - ---- bgpd/bgp_attr.c -+++ bgpd/bgp_attr.c -@@ -39,7 +39,7 @@ Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA - #include "bgpd/bgp_ecommunity.h" - - /* Attribute strings for logging. */ --struct message attr_str [] = -+static struct message attr_str [] = - { - { BGP_ATTR_ORIGIN, "ORIGIN" }, - { BGP_ATTR_AS_PATH, "AS_PATH" }, -@@ -58,6 +58,7 @@ struct message attr_str [] = - { BGP_ATTR_MP_UNREACH_NLRI, "MP_UNREACH_NLRI" }, - { 0, NULL } - }; -+int attr_str_max = sizeof(attr_str)/sizeof(attr_str[0]); - - struct hash *cluster_hash; - -@@ -922,24 +923,30 @@ bgp_mp_reach_parse (struct peer *peer, bgp_size_t length, struct attr *attr, - { - u_int16_t afi; - u_char safi; -- u_char snpa_num; -- u_char snpa_len; -- u_char *lim; - bgp_size_t nlri_len; -+ size_t start; - int ret; - struct stream *s; - - /* Set end of packet. */ -- s = peer->ibuf; -- lim = stream_pnt (s) + length; -- -+ s = BGP_INPUT(peer); -+ start = stream_get_getp(s); -+ -+ /* safe to read statically sized header? */ -+#define BGP_MP_REACH_MIN_SIZE 5 -+ if ((length > STREAM_READABLE(s)) || (length < BGP_MP_REACH_MIN_SIZE)) -+ return -1; -+ - /* Load AFI, SAFI. */ - afi = stream_getw (s); - safi = stream_getc (s); - - /* Get nexthop length. */ - attr->mp_nexthop_len = stream_getc (s); -- -+ -+ if (STREAM_READABLE(s) < attr->mp_nexthop_len) -+ return -1; -+ - /* Nexthop length check. */ - switch (attr->mp_nexthop_len) - { -@@ -986,31 +993,28 @@ bgp_mp_reach_parse (struct peer *peer, bgp_size_t length, struct attr *attr, - break; - } - -- snpa_num = stream_getc (s); -- -- while (snpa_num--) -- { -- snpa_len = stream_getc (s); -- stream_forward (s, (snpa_len + 1) >> 1); -- } -+ if (!STREAM_READABLE(s)) -+ return -1; -+ -+ { -+ u_char val; -+ if ((val = stream_getc (s))) -+ zlog_warn ("%s sent non-zero value, %u, for defunct SNPA-length field", -+ peer->host, val); -+ } -+ -+ /* must have nrli_len, what is left of the attribute */ -+ nlri_len = length - (stream_get_getp(s) - start); -+ if ((!nlri_len) || (nlri_len > STREAM_READABLE(s))) -+ return -1; - -- /* If peer is based on old draft-00. I read NLRI length from the -- packet. */ -- if (peer->version == BGP_VERSION_MP_4_DRAFT_00) -- { -- bgp_size_t nlri_total_len; -- nlri_total_len = stream_getw (s); -- } -- -- nlri_len = lim - stream_pnt (s); -- - if (safi != BGP_SAFI_VPNV4) - { - ret = bgp_nlri_sanity_check (peer, afi, stream_pnt (s), nlri_len); - if (ret < 0) - return -1; - } -- -+ - mp_update->afi = afi; - mp_update->safi = safi; - mp_update->nlri = stream_pnt (s); -@@ -1023,24 +1027,26 @@ bgp_mp_reach_parse (struct peer *peer, bgp_size_t length, struct attr *attr, - - /* Multiprotocol unreachable parse */ - int --bgp_mp_unreach_parse (struct peer *peer, int length, -+bgp_mp_unreach_parse (struct peer *peer, bgp_size_t length, - struct bgp_nlri *mp_withdraw) - { - struct stream *s; - u_int16_t afi; - u_char safi; -- u_char *lim; - u_int16_t withdraw_len; - int ret; - - s = peer->ibuf; -- lim = stream_pnt (s) + length; - -+#define BGP_MP_UNREACH_MIN_SIZE 3 -+ if ((length > STREAM_READABLE(s)) || (length < BGP_MP_UNREACH_MIN_SIZE)) -+ return -1; -+ - afi = stream_getw (s); - safi = stream_getc (s); -- -- withdraw_len = lim - stream_pnt (s); -- -+ -+ withdraw_len = length - BGP_MP_UNREACH_MIN_SIZE; -+ - if (safi != BGP_SAFI_VPNV4) - { - ret = bgp_nlri_sanity_check (peer, afi, stream_pnt (s), withdraw_len); -@@ -1271,13 +1277,23 @@ bgp_attr_parse (struct peer *peer, struct attr *attr, bgp_size_t size, - - /* If error occured immediately return to the caller. */ - if (ret < 0) -- return ret; -+ { -+ zlog (peer->log, LOG_WARNING, -+ "%s: Attribute %s, parse error", -+ peer->host, -+ LOOKUP (attr_str, type)); -+ bgp_notify_send (peer, -+ BGP_NOTIFY_UPDATE_ERR, -+ BGP_NOTIFY_UPDATE_MAL_ATTR); -+ return ret; -+ } - - /* Check the fetched length. */ - if (BGP_INPUT_PNT (peer) != attr_endp) - { - zlog (peer->log, LOG_WARNING, -- "%s BGP attribute fetch error", peer->host); -+ "%s: BGP attribute %s, fetch error", -+ peer->host, LOOKUP (attr_str, type)); - bgp_notify_send (peer, - BGP_NOTIFY_UPDATE_ERR, - BGP_NOTIFY_UPDATE_ATTR_LENG_ERR); -@@ -1289,7 +1305,8 @@ bgp_attr_parse (struct peer *peer, struct attr *attr, bgp_size_t size, - if (BGP_INPUT_PNT (peer) != endp) - { - zlog (peer->log, LOG_WARNING, -- "%s BGP attribute length mismatch", peer->host); -+ "%s BGP attribute %s, length mismatch", -+ peer->host, LOOKUP (attr_str, type)); - bgp_notify_send (peer, - BGP_NOTIFY_UPDATE_ERR, - BGP_NOTIFY_UPDATE_ATTR_LENG_ERR); -diff --git a/doc/quagga.info b/doc/quagga.info -diff --git a/lib/stream.h b/lib/stream.h -index f7a94ea..a85e413 100644 diff --git a/net/quagga/patches/patch-ac b/net/quagga/patches/patch-ac deleted file mode 100644 index 10dfa797722..00000000000 --- a/net/quagga/patches/patch-ac +++ /dev/null @@ -1,15 +0,0 @@ -$NetBSD: patch-ac,v 1.3 2008/05/13 22:30:47 tonnerre Exp $ - ---- lib/stream.h -+++ lib/stream.h -@@ -59,7 +59,9 @@ struct stream_fifo - #define STREAM_SIZE(S) ((S)->size) - #define STREAM_REMAIN(S) ((S)->size - (S)->putp) - #define STREAM_DATA(S) ((S)->data) -- -+/* number of bytes still to be read */ -+#define STREAM_READABLE(S) ((S)->endp - (S)->getp) -+ - /* Stream prototypes. */ - struct stream *stream_new (size_t); - void stream_free (struct stream *); |