summaryrefslogtreecommitdiff
path: root/net/exabgp
diff options
context:
space:
mode:
authorhe <he@pkgsrc.org>2015-02-19 12:23:52 +0000
committerhe <he@pkgsrc.org>2015-02-19 12:23:52 +0000
commit304d1d5b73909557e852ecaf301c6569fe90f0d2 (patch)
treeb6ff34ecc29cf1504c588c50a8f36c6e7e148e92 /net/exabgp
parente63b556ab72c32c21ca6a55608539fd7f9c35e26 (diff)
downloadpkgsrc-304d1d5b73909557e852ecaf301c6569fe90f0d2.tar.gz
Update exabgp to version 3.4.7.
Most of our patches (mostly == for test in Bourne Shell) have been integrated upstream. Retain a more minimal fix to the healthcheck script. Add dependency on python setuptools. The helper scripts of exabgp are now in share/exabgp/, to make pkglint happy. Upstream changes: Version 3.4.7 * Package: be more pythonic and use enty points with pip installation * Package: automatically update debian's changelog on release * Fix: issue with aggregator generation reported by: Yan Filyurin Version 3.4.6 * Fix: a badly formated flow route would throw the parser in limbo reported by: NickGudov (issue #203) * Fix: allow multiple extended attribute (like flow rediction with a origin/target) * Fix: use ICMP Type and Code when printing flows (respectively using name and number) * Fix: do not use space printing redirect extended community * Fix: not parsing correctly multisession configurations * Fix: bug in ASPath parsing reported by: Terry Hardie (issue #205) * Feature: use ETC environment variable for configuration location if set * Feature: JSON now includes ASN (local,peer) and IP (local,IP) requested by: jtkdpu (issue #196) patch by: Ryan Tinianov (pull #199) for the IP * Feature: API support for sending eor requested by: spakka (issue #109) * Feature: allow routes to have a name (which can be used as comment) requested by: lazy404 (issue #167) * Feature: improve release code to prevent version mismatch (issue #202) reported by: Anand Buddhdev * Fix: systemd file is not installed anymore by default (issue #202) to add to the file installation list use "python setup.py install systemd" requested by: Anand Buddhdev * QA: moved all testing code (used by travis-ci) in the ./qa folder * QA: added nosetest, updating some of the old unittest code * QA: integrated travis-ci with coveralls.io to have real time code coverage * QA: ExaBGP can take more than one configuration file and on configuration reload rotate between them * QA: checking that broken flows do not break the parser * QA: checking that configuration routes are well added and removed on SIGUSR1 * QA: checking that incoming notifications are handled correctly * QA: moved many sample configuration file from etc/exabgp to the new qa/conf Version 3.4.5 * Fix: improper distribution of events to process workers reported by: Tim Epkes Version 3.4.4 * Fix: bug with IPv4 / ipv6 handling * Fix: better peer isolation when parsing messages * Fix: IPv6 decoding when the routes includes link-local * Fix: missing text API paramter * Fix: no JSON for Aggregator * Fix: show route extensive patch by: Michal Grzedzicki, thank you * Fix: 4-Octet AS Specific BGP Extended Community (RFC 5668) patch by: Michal Grzedzicki * Fix: bug with label encoding patch by: Jesse Mather * Improvement: add support for add-path with family MPLS requested by: Tim Epkes * Fix: bug when process writes multiple lines reported by: Ilya Voronin * Feature: accept packet with confedation (RFC 3065) requested by: oriordan (with a patch, thank you) * Fix: do not bark if an unknown ASPath attribute is found * Fix: correctly accept connection on AF_INET6 socket patch by: John W. O'Brien * Fix: restore lost python2.6 compatibility reported by: Minsuk Song * Fix: IPv6 MD5 reported by: Dave J Knight * Add framework to debug SIGUSR1 related problems * Fix: do not drop session when receiving an unknown capability patch by: Peter van Dijk (PowerDNS) Version 3.4.3 * Fix: JSON message increment reported by: Daniel Neiter, with a patch, thank you. * Fix: JSON message format for operational reported by: Rob Barnes, with a patch, thank you. * Fix: JSON message for route-refresh * Fix: EOR unpack issue * Fix: ASPath encoding * Fix: possible bad notify call * Fix: Aggregator configuration issue * Fix: pycharm reported issues * operational, using afi instead of safi * bad function paramters * missing return keyword * many cleanups * Change: use RFC MULTISESSION capability and not CISCO variant anymore Version 3.4.2 * Feature: add more information in crash report * Fix: problem when trying to report exception errors * Fix: better handling of on PIPE errors reported by: Thomas Raabo * Fix: could not split MPLS routes reported by: Hideaki HAYASHI * Fix: not correctly handling NOTIFICATION message reported by: Hideaki HAYASHI * Fix: do not block on a peer should a socket become blocking reported by: Wouter Miltenburg * Fix: API JSON message id incrementation reported by: Wouter Miltenburg Version 3.4.1 * Fix: on bad JSON message patch from: Wouter Miltenburg * Fix: parsing of default route reported by: Wouter Miltenburg * Fix: remove legacy exabgp.tcp.timeout * Fix: forgot some processes options when printing neighbor * Fix: bad function call for API * Fix: correct JSON for OPEN * Fix: issues with bad naming of APIOption patch from: Wouter Miltenburg * Fix: do not try to be clever (and possibly get it wrong) and rely on keepalive timer to detect TCP faults * Fix: formating issue of extended community * Fix: issue with EOR * Fix: caching issue reported by: Wouter Miltenburg * Fix: make sure we do not call select with a negative time reported by: Wouter Miltenburg, Daniel Piekacz patch from: Wouter Miltenburg * Fix: handle AS4_PATH with PARTIAL bit set reported by: Daniel Piekacz * Fix: bug with generic attribute generation * Fix: bad Notification patch from: Wouter Miltenburg * Fix: bad Keepalive JSON message patch from: Wouter Miltenburg Version 3.4.0 * Feature: add support for extended-attribute for FlowSpec * Feature: more detailed JSON objects patch from: Wouter Miltenburg * Feature: support for L2VPN (experimental) patch from: Nikita V. Shirokov * Improvement: better handling of NOTIFICATION received during OPEN negotiation * Improvement: ExaBGP can restart failed helper process * Fix: Do not reconnect too fast when connection fails reported by: Robert Barnes * Fix: Invalid JSON object for route-refresh reported by: Robert Barnes * Fix: We were not reporting the NLRI of the route received when exabgp.log.routes was set * Fix: accept exabgp_tcp_port as configuration option and not only exabgp.tcp.port * Fix: duplicate line output * Fix: bad refactorisation which caused an bad ASN4 bug * Fix: change EOR from IPv4 multicast (mistake) to IPv4 unicast reported by: Mark Treacy * Fix: bad encoding of flow fragment encoding reported by: Andrei-Marius Radu * Fix: bad reporting of process open sending reported by: Mark Treacy (with patch, thank you) * Fix: Incorporating NETBSD compatibility patches * Fix: Generation of Generic Attributes * Fix: Faster reactor (should be able to process much more API/BGP messages) * Change: new commands for the configuration of the API * Change: JSON objects now include a unique neighbor identifier * Change: JSON objects now include a counter for unique message id * Change: JSON objects now include a "type" to now how to best parse them * Change: JSON new EOR object * Change: JSON new Flow format * Change: slight variation with the command line option names, now using docopt patch from: Michael Robert Watson * Change: the profile information is now exported in kcachegrind format * Compatibility: JSON re-introduced the family under the "announce" section (removed by mistake) * Compatibility: restoring integer as default time, high resolution must be enabled to not break older installations * Change: JSON and Text shutdown object now shows the PID and PPID
Diffstat (limited to 'net/exabgp')
-rw-r--r--net/exabgp/Makefile23
-rw-r--r--net/exabgp/PLIST268
-rw-r--r--net/exabgp/distinfo24
-rw-r--r--net/exabgp/patches/patch-dev_bin_selfcheck15
-rw-r--r--net/exabgp/patches/patch-dev_self_api_first20
-rw-r--r--net/exabgp/patches/patch-dev_self_api_second20
-rw-r--r--net/exabgp/patches/patch-dev_self_attribute_send20
-rw-r--r--net/exabgp/patches/patch-dev_self_big_receive20
-rw-r--r--net/exabgp/patches/patch-dev_self_big_send20
-rw-r--r--net/exabgp/patches/patch-dev_self_load_recieve20
-rw-r--r--net/exabgp/patches/patch-dev_self_load_send20
-rw-r--r--net/exabgp/patches/patch-dev_self_refresh_first20
-rw-r--r--net/exabgp/patches/patch-dev_self_refresh_second20
-rw-r--r--net/exabgp/patches/patch-dev_self_simple_first20
-rw-r--r--net/exabgp/patches/patch-dev_self_simple_second20
-rw-r--r--net/exabgp/patches/patch-etc_exabgp_processes_healthcheck.py29
-rw-r--r--net/exabgp/patches/patch-setup.py36
17 files changed, 250 insertions, 365 deletions
diff --git a/net/exabgp/Makefile b/net/exabgp/Makefile
index fae02e6ebce..4a378b25a88 100644
--- a/net/exabgp/Makefile
+++ b/net/exabgp/Makefile
@@ -1,21 +1,24 @@
-# $NetBSD: Makefile,v 1.9 2015/02/17 13:41:36 he Exp $
+# $NetBSD: Makefile,v 1.10 2015/02/19 12:23:52 he Exp $
-DISTNAME= exabgp-3.3.2
-EGG_NAME= exabgp-0.0.0
-PKGREVISION= 2
+VERSION= 3.4.7
+DISTNAME= ${VERSION}
+PKGNAME= exabgp-${VERSION}
+EGG_NAME= exabgp-${VERSION}
CATEGORIES= net
-MASTER_SITES= https://github.com/Exa-Networks/exabgp/tarball/3.3.2
+MASTER_SITES= https://github.com/Exa-Networks/exabgp/archive/
+DIST_SUBDIR= exabgp
MAINTAINER= pettai@NetBSD.org
HOMEPAGE= https://github.com/Exa-Networks/exabgp/
COMMENT= ExaBGP is a userspace BGP daemon written in python
LICENSE= modified-bsd
-WRKSRC= ${WRKDIR}/Exa-Networks-exabgp-d73251b
+WRKSRC= ${WRKDIR}/exabgp-${VERSION}
USE_TOOLS+= perl:run
DEPENDS+= ${PYPKGPREFIX}-ipaddr>=0:../../devel/py-ipaddr
+DEPENDS+= ${PYPKGPREFIX}-setuptools-[0-9]*:../../devel/py-setuptools
REPLACE_PERL= etc/exabgp/processes/dynamic-1.pl
REPLACE_PERL+= etc/exabgp/processes/watchdog-1.pl
@@ -29,21 +32,17 @@ REPLACE_PYTHON+= etc/exabgp/processes/healthcheck.py
REPLACE_PYTHON+= etc/exabgp/processes/read-write.py
REPLACE_PYTHON+= etc/exabgp/processes/tcp-server
REPLACE_PYTHON+= etc/exabgp/processes/syslog-1.py
+REPLACE_PYTHON+= etc/exabgp/processes/stderr-1.py
PYTHON_VERSIONS_INCOMPATIBLE= 33 34 # not yet ported as of 3.2.19
USE_LANGUAGES= # none
-INSTALLATION_DIRS= bin/exabgp sbin
+INSTALLATION_DIRS= share/exabgp bin
pre-install:
find work -name '*.orig' | xargs rm -f
-post-install:
- rm -f ${DESTDIR}${PREFIX}/sbin/exabgp
- ${LN} -s ${DESTDIR}${PREFIX}/bin/exabgp/exabgp \
- ${DESTDIR}${PREFIX}/sbin/
-
.include "../../lang/python/distutils.mk"
.include "../../lang/python/application.mk"
.include "../../lang/python/pyversion.mk"
diff --git a/net/exabgp/PLIST b/net/exabgp/PLIST
index 0efa9e50782..a4686db0264 100644
--- a/net/exabgp/PLIST
+++ b/net/exabgp/PLIST
@@ -1,32 +1,40 @@
-@comment $NetBSD: PLIST,v 1.4 2014/06/09 10:42:38 pettai Exp $
-bin/exabgp/dynamic-1.pl
-bin/exabgp/dynamic-1.sh
-bin/exabgp/exabgp
-bin/exabgp/healthcheck.py
-bin/exabgp/read-write.py
-bin/exabgp/syslog-1.py
-bin/exabgp/tcp-server
-bin/exabgp/watchdog-1.pl
-bin/exabgp/watchdog-1.sh
-${PYSITELIB}/${EGG_FILE}
+@comment $NetBSD: PLIST,v 1.5 2015/02/19 12:23:52 he Exp $
+bin/exabgp
+share/exabgp/dynamic-1.pl
+share/exabgp/dynamic-1.sh
+share/exabgp/healthcheck.py
+share/exabgp/read-write.py
+share/exabgp/stderr-1.py
+share/exabgp/syslog-1.py
+share/exabgp/tcp-server
+share/exabgp/watchdog-1.pl
+share/exabgp/watchdog-1.sh
+${PYSITELIB}/${EGG_FILE}/PKG-INFO
+${PYSITELIB}/${EGG_FILE}/SOURCES.txt
+${PYSITELIB}/${EGG_FILE}/dependency_links.txt
+${PYSITELIB}/${EGG_FILE}/entry_points.txt
+${PYSITELIB}/${EGG_FILE}/top_level.txt
${PYSITELIB}/exabgp/__init__.py
${PYSITELIB}/exabgp/__init__.pyc
${PYSITELIB}/exabgp/__init__.pyo
+${PYSITELIB}/exabgp/application/__init__.py
+${PYSITELIB}/exabgp/application/__init__.pyc
+${PYSITELIB}/exabgp/application/__init__.pyo
${PYSITELIB}/exabgp/application/bgp.py
${PYSITELIB}/exabgp/application/bgp.pyc
${PYSITELIB}/exabgp/application/bgp.pyo
${PYSITELIB}/exabgp/application/bmp.py
${PYSITELIB}/exabgp/application/bmp.pyc
${PYSITELIB}/exabgp/application/bmp.pyo
+${PYSITELIB}/exabgp/application/cli.py
+${PYSITELIB}/exabgp/application/cli.pyc
+${PYSITELIB}/exabgp/application/cli.pyo
${PYSITELIB}/exabgp/bgp/__init__.py
${PYSITELIB}/exabgp/bgp/__init__.pyc
${PYSITELIB}/exabgp/bgp/__init__.pyo
${PYSITELIB}/exabgp/bgp/message/__init__.py
${PYSITELIB}/exabgp/bgp/message/__init__.pyc
${PYSITELIB}/exabgp/bgp/message/__init__.pyo
-${PYSITELIB}/exabgp/bgp/message/direction.py
-${PYSITELIB}/exabgp/bgp/message/direction.pyc
-${PYSITELIB}/exabgp/bgp/message/direction.pyo
${PYSITELIB}/exabgp/bgp/message/keepalive.py
${PYSITELIB}/exabgp/bgp/message/keepalive.pyc
${PYSITELIB}/exabgp/bgp/message/keepalive.pyo
@@ -48,12 +56,12 @@ ${PYSITELIB}/exabgp/bgp/message/open/capability/__init__.pyo
${PYSITELIB}/exabgp/bgp/message/open/capability/addpath.py
${PYSITELIB}/exabgp/bgp/message/open/capability/addpath.pyc
${PYSITELIB}/exabgp/bgp/message/open/capability/addpath.pyo
+${PYSITELIB}/exabgp/bgp/message/open/capability/asn4.py
+${PYSITELIB}/exabgp/bgp/message/open/capability/asn4.pyc
+${PYSITELIB}/exabgp/bgp/message/open/capability/asn4.pyo
${PYSITELIB}/exabgp/bgp/message/open/capability/graceful.py
${PYSITELIB}/exabgp/bgp/message/open/capability/graceful.pyc
${PYSITELIB}/exabgp/bgp/message/open/capability/graceful.pyo
-${PYSITELIB}/exabgp/bgp/message/open/capability/id.py
-${PYSITELIB}/exabgp/bgp/message/open/capability/id.pyc
-${PYSITELIB}/exabgp/bgp/message/open/capability/id.pyo
${PYSITELIB}/exabgp/bgp/message/open/capability/mp.py
${PYSITELIB}/exabgp/bgp/message/open/capability/mp.pyc
${PYSITELIB}/exabgp/bgp/message/open/capability/mp.pyo
@@ -69,6 +77,9 @@ ${PYSITELIB}/exabgp/bgp/message/open/capability/operational.pyo
${PYSITELIB}/exabgp/bgp/message/open/capability/refresh.py
${PYSITELIB}/exabgp/bgp/message/open/capability/refresh.pyc
${PYSITELIB}/exabgp/bgp/message/open/capability/refresh.pyo
+${PYSITELIB}/exabgp/bgp/message/open/capability/unknown.py
+${PYSITELIB}/exabgp/bgp/message/open/capability/unknown.pyc
+${PYSITELIB}/exabgp/bgp/message/open/capability/unknown.pyo
${PYSITELIB}/exabgp/bgp/message/open/holdtime.py
${PYSITELIB}/exabgp/bgp/message/open/holdtime.pyc
${PYSITELIB}/exabgp/bgp/message/open/holdtime.pyo
@@ -105,18 +116,36 @@ ${PYSITELIB}/exabgp/bgp/message/update/attribute/aspath.pyo
${PYSITELIB}/exabgp/bgp/message/update/attribute/atomicaggregate.py
${PYSITELIB}/exabgp/bgp/message/update/attribute/atomicaggregate.pyc
${PYSITELIB}/exabgp/bgp/message/update/attribute/atomicaggregate.pyo
+${PYSITELIB}/exabgp/bgp/message/update/attribute/attribute.py
+${PYSITELIB}/exabgp/bgp/message/update/attribute/attribute.pyc
+${PYSITELIB}/exabgp/bgp/message/update/attribute/attribute.pyo
${PYSITELIB}/exabgp/bgp/message/update/attribute/clusterlist.py
${PYSITELIB}/exabgp/bgp/message/update/attribute/clusterlist.pyc
${PYSITELIB}/exabgp/bgp/message/update/attribute/clusterlist.pyo
-${PYSITELIB}/exabgp/bgp/message/update/attribute/communities.py
-${PYSITELIB}/exabgp/bgp/message/update/attribute/communities.pyc
-${PYSITELIB}/exabgp/bgp/message/update/attribute/communities.pyo
-${PYSITELIB}/exabgp/bgp/message/update/attribute/flag.py
-${PYSITELIB}/exabgp/bgp/message/update/attribute/flag.pyc
-${PYSITELIB}/exabgp/bgp/message/update/attribute/flag.pyo
-${PYSITELIB}/exabgp/bgp/message/update/attribute/id.py
-${PYSITELIB}/exabgp/bgp/message/update/attribute/id.pyc
-${PYSITELIB}/exabgp/bgp/message/update/attribute/id.pyo
+${PYSITELIB}/exabgp/bgp/message/update/attribute/community/__init__.py
+${PYSITELIB}/exabgp/bgp/message/update/attribute/community/__init__.pyc
+${PYSITELIB}/exabgp/bgp/message/update/attribute/community/__init__.pyo
+${PYSITELIB}/exabgp/bgp/message/update/attribute/community/extended/__init__.py
+${PYSITELIB}/exabgp/bgp/message/update/attribute/community/extended/__init__.pyc
+${PYSITELIB}/exabgp/bgp/message/update/attribute/community/extended/__init__.pyo
+${PYSITELIB}/exabgp/bgp/message/update/attribute/community/extended/encapsulation.py
+${PYSITELIB}/exabgp/bgp/message/update/attribute/community/extended/encapsulation.pyc
+${PYSITELIB}/exabgp/bgp/message/update/attribute/community/extended/encapsulation.pyo
+${PYSITELIB}/exabgp/bgp/message/update/attribute/community/extended/l2info.py
+${PYSITELIB}/exabgp/bgp/message/update/attribute/community/extended/l2info.pyc
+${PYSITELIB}/exabgp/bgp/message/update/attribute/community/extended/l2info.pyo
+${PYSITELIB}/exabgp/bgp/message/update/attribute/community/extended/origin.py
+${PYSITELIB}/exabgp/bgp/message/update/attribute/community/extended/origin.pyc
+${PYSITELIB}/exabgp/bgp/message/update/attribute/community/extended/origin.pyo
+${PYSITELIB}/exabgp/bgp/message/update/attribute/community/extended/rt.py
+${PYSITELIB}/exabgp/bgp/message/update/attribute/community/extended/rt.pyc
+${PYSITELIB}/exabgp/bgp/message/update/attribute/community/extended/rt.pyo
+${PYSITELIB}/exabgp/bgp/message/update/attribute/community/extended/traffic.py
+${PYSITELIB}/exabgp/bgp/message/update/attribute/community/extended/traffic.pyc
+${PYSITELIB}/exabgp/bgp/message/update/attribute/community/extended/traffic.pyo
+${PYSITELIB}/exabgp/bgp/message/update/attribute/generic.py
+${PYSITELIB}/exabgp/bgp/message/update/attribute/generic.pyc
+${PYSITELIB}/exabgp/bgp/message/update/attribute/generic.pyo
${PYSITELIB}/exabgp/bgp/message/update/attribute/localpref.py
${PYSITELIB}/exabgp/bgp/message/update/attribute/localpref.pyc
${PYSITELIB}/exabgp/bgp/message/update/attribute/localpref.pyo
@@ -138,39 +167,75 @@ ${PYSITELIB}/exabgp/bgp/message/update/attribute/origin.pyo
${PYSITELIB}/exabgp/bgp/message/update/attribute/originatorid.py
${PYSITELIB}/exabgp/bgp/message/update/attribute/originatorid.pyc
${PYSITELIB}/exabgp/bgp/message/update/attribute/originatorid.pyo
-${PYSITELIB}/exabgp/bgp/message/update/attribute/unknown.py
-${PYSITELIB}/exabgp/bgp/message/update/attribute/unknown.pyc
-${PYSITELIB}/exabgp/bgp/message/update/attribute/unknown.pyo
-${PYSITELIB}/exabgp/bgp/message/update/attributes/__init__.py
-${PYSITELIB}/exabgp/bgp/message/update/attributes/__init__.pyc
-${PYSITELIB}/exabgp/bgp/message/update/attributes/__init__.pyo
-${PYSITELIB}/exabgp/bgp/message/update/attributes/factory.py
-${PYSITELIB}/exabgp/bgp/message/update/attributes/factory.pyc
-${PYSITELIB}/exabgp/bgp/message/update/attributes/factory.pyo
+${PYSITELIB}/exabgp/bgp/message/update/attribute/pmsi.py
+${PYSITELIB}/exabgp/bgp/message/update/attribute/pmsi.pyc
+${PYSITELIB}/exabgp/bgp/message/update/attribute/pmsi.pyo
${PYSITELIB}/exabgp/bgp/message/update/eor.py
${PYSITELIB}/exabgp/bgp/message/update/eor.pyc
${PYSITELIB}/exabgp/bgp/message/update/eor.pyo
-${PYSITELIB}/exabgp/bgp/message/update/factory.py
-${PYSITELIB}/exabgp/bgp/message/update/factory.pyc
-${PYSITELIB}/exabgp/bgp/message/update/factory.pyo
${PYSITELIB}/exabgp/bgp/message/update/nlri/__init__.py
${PYSITELIB}/exabgp/bgp/message/update/nlri/__init__.pyc
${PYSITELIB}/exabgp/bgp/message/update/nlri/__init__.pyo
-${PYSITELIB}/exabgp/bgp/message/update/nlri/bgp.py
-${PYSITELIB}/exabgp/bgp/message/update/nlri/bgp.pyc
-${PYSITELIB}/exabgp/bgp/message/update/nlri/bgp.pyo
-${PYSITELIB}/exabgp/bgp/message/update/nlri/eor.py
-${PYSITELIB}/exabgp/bgp/message/update/nlri/eor.pyc
-${PYSITELIB}/exabgp/bgp/message/update/nlri/eor.pyo
-${PYSITELIB}/exabgp/bgp/message/update/nlri/factory.py
-${PYSITELIB}/exabgp/bgp/message/update/nlri/factory.pyc
-${PYSITELIB}/exabgp/bgp/message/update/nlri/factory.pyo
+${PYSITELIB}/exabgp/bgp/message/update/nlri/cidr.py
+${PYSITELIB}/exabgp/bgp/message/update/nlri/cidr.pyc
+${PYSITELIB}/exabgp/bgp/message/update/nlri/cidr.pyo
+${PYSITELIB}/exabgp/bgp/message/update/nlri/evpn/__init__.py
+${PYSITELIB}/exabgp/bgp/message/update/nlri/evpn/__init__.pyc
+${PYSITELIB}/exabgp/bgp/message/update/nlri/evpn/__init__.pyo
+${PYSITELIB}/exabgp/bgp/message/update/nlri/evpn/ethernetad.py
+${PYSITELIB}/exabgp/bgp/message/update/nlri/evpn/ethernetad.pyc
+${PYSITELIB}/exabgp/bgp/message/update/nlri/evpn/ethernetad.pyo
+${PYSITELIB}/exabgp/bgp/message/update/nlri/evpn/mac.py
+${PYSITELIB}/exabgp/bgp/message/update/nlri/evpn/mac.pyc
+${PYSITELIB}/exabgp/bgp/message/update/nlri/evpn/mac.pyo
+${PYSITELIB}/exabgp/bgp/message/update/nlri/evpn/multicast.py
+${PYSITELIB}/exabgp/bgp/message/update/nlri/evpn/multicast.pyc
+${PYSITELIB}/exabgp/bgp/message/update/nlri/evpn/multicast.pyo
+${PYSITELIB}/exabgp/bgp/message/update/nlri/evpn/nlri.py
+${PYSITELIB}/exabgp/bgp/message/update/nlri/evpn/nlri.pyc
+${PYSITELIB}/exabgp/bgp/message/update/nlri/evpn/nlri.pyo
+${PYSITELIB}/exabgp/bgp/message/update/nlri/evpn/segment.py
+${PYSITELIB}/exabgp/bgp/message/update/nlri/evpn/segment.pyc
+${PYSITELIB}/exabgp/bgp/message/update/nlri/evpn/segment.pyo
${PYSITELIB}/exabgp/bgp/message/update/nlri/flow.py
${PYSITELIB}/exabgp/bgp/message/update/nlri/flow.pyc
${PYSITELIB}/exabgp/bgp/message/update/nlri/flow.pyo
+${PYSITELIB}/exabgp/bgp/message/update/nlri/mpls.py
+${PYSITELIB}/exabgp/bgp/message/update/nlri/mpls.pyc
+${PYSITELIB}/exabgp/bgp/message/update/nlri/mpls.pyo
+${PYSITELIB}/exabgp/bgp/message/update/nlri/nlri.py
+${PYSITELIB}/exabgp/bgp/message/update/nlri/nlri.pyc
+${PYSITELIB}/exabgp/bgp/message/update/nlri/nlri.pyo
${PYSITELIB}/exabgp/bgp/message/update/nlri/prefix.py
${PYSITELIB}/exabgp/bgp/message/update/nlri/prefix.pyc
${PYSITELIB}/exabgp/bgp/message/update/nlri/prefix.pyo
+${PYSITELIB}/exabgp/bgp/message/update/nlri/qualifier/__init__.py
+${PYSITELIB}/exabgp/bgp/message/update/nlri/qualifier/__init__.pyc
+${PYSITELIB}/exabgp/bgp/message/update/nlri/qualifier/__init__.pyo
+${PYSITELIB}/exabgp/bgp/message/update/nlri/qualifier/esi.py
+${PYSITELIB}/exabgp/bgp/message/update/nlri/qualifier/esi.pyc
+${PYSITELIB}/exabgp/bgp/message/update/nlri/qualifier/esi.pyo
+${PYSITELIB}/exabgp/bgp/message/update/nlri/qualifier/etag.py
+${PYSITELIB}/exabgp/bgp/message/update/nlri/qualifier/etag.pyc
+${PYSITELIB}/exabgp/bgp/message/update/nlri/qualifier/etag.pyo
+${PYSITELIB}/exabgp/bgp/message/update/nlri/qualifier/labels.py
+${PYSITELIB}/exabgp/bgp/message/update/nlri/qualifier/labels.pyc
+${PYSITELIB}/exabgp/bgp/message/update/nlri/qualifier/labels.pyo
+${PYSITELIB}/exabgp/bgp/message/update/nlri/qualifier/mac.py
+${PYSITELIB}/exabgp/bgp/message/update/nlri/qualifier/mac.pyc
+${PYSITELIB}/exabgp/bgp/message/update/nlri/qualifier/mac.pyo
+${PYSITELIB}/exabgp/bgp/message/update/nlri/qualifier/path.py
+${PYSITELIB}/exabgp/bgp/message/update/nlri/qualifier/path.pyc
+${PYSITELIB}/exabgp/bgp/message/update/nlri/qualifier/path.pyo
+${PYSITELIB}/exabgp/bgp/message/update/nlri/qualifier/rd.py
+${PYSITELIB}/exabgp/bgp/message/update/nlri/qualifier/rd.pyc
+${PYSITELIB}/exabgp/bgp/message/update/nlri/qualifier/rd.pyo
+${PYSITELIB}/exabgp/bgp/message/update/nlri/rtc.py
+${PYSITELIB}/exabgp/bgp/message/update/nlri/rtc.pyc
+${PYSITELIB}/exabgp/bgp/message/update/nlri/rtc.pyo
+${PYSITELIB}/exabgp/bgp/message/update/nlri/vpls.py
+${PYSITELIB}/exabgp/bgp/message/update/nlri/vpls.pyc
+${PYSITELIB}/exabgp/bgp/message/update/nlri/vpls.pyo
${PYSITELIB}/exabgp/bgp/neighbor.py
${PYSITELIB}/exabgp/bgp/neighbor.pyc
${PYSITELIB}/exabgp/bgp/neighbor.pyo
@@ -204,21 +269,69 @@ ${PYSITELIB}/exabgp/compatibility/ordereddict.pyo
${PYSITELIB}/exabgp/configuration/__init__.py
${PYSITELIB}/exabgp/configuration/__init__.pyc
${PYSITELIB}/exabgp/configuration/__init__.pyo
+${PYSITELIB}/exabgp/configuration/ancient.py
+${PYSITELIB}/exabgp/configuration/ancient.pyc
+${PYSITELIB}/exabgp/configuration/ancient.pyo
+${PYSITELIB}/exabgp/configuration/bgp/__init__.py
+${PYSITELIB}/exabgp/configuration/bgp/__init__.pyc
+${PYSITELIB}/exabgp/configuration/bgp/__init__.pyo
+${PYSITELIB}/exabgp/configuration/bgp/capability.py
+${PYSITELIB}/exabgp/configuration/bgp/capability.pyc
+${PYSITELIB}/exabgp/configuration/bgp/capability.pyo
+${PYSITELIB}/exabgp/configuration/bgp/family.py
+${PYSITELIB}/exabgp/configuration/bgp/family.pyc
+${PYSITELIB}/exabgp/configuration/bgp/family.pyo
+${PYSITELIB}/exabgp/configuration/bgp/neighbor.py
+${PYSITELIB}/exabgp/configuration/bgp/neighbor.pyc
+${PYSITELIB}/exabgp/configuration/bgp/neighbor.pyo
+${PYSITELIB}/exabgp/configuration/bgp/process.py
+${PYSITELIB}/exabgp/configuration/bgp/process.pyc
+${PYSITELIB}/exabgp/configuration/bgp/process.pyo
+${PYSITELIB}/exabgp/configuration/bgp/session.py
+${PYSITELIB}/exabgp/configuration/bgp/session.pyc
+${PYSITELIB}/exabgp/configuration/bgp/session.pyo
+${PYSITELIB}/exabgp/configuration/bmp/__init__.py
+${PYSITELIB}/exabgp/configuration/bmp/__init__.pyc
+${PYSITELIB}/exabgp/configuration/bmp/__init__.pyo
+${PYSITELIB}/exabgp/configuration/check.py
+${PYSITELIB}/exabgp/configuration/check.pyc
+${PYSITELIB}/exabgp/configuration/check.pyo
+${PYSITELIB}/exabgp/configuration/engine/__init__.py
+${PYSITELIB}/exabgp/configuration/engine/__init__.pyc
+${PYSITELIB}/exabgp/configuration/engine/__init__.pyo
+${PYSITELIB}/exabgp/configuration/engine/location.py
+${PYSITELIB}/exabgp/configuration/engine/location.pyc
+${PYSITELIB}/exabgp/configuration/engine/location.pyo
+${PYSITELIB}/exabgp/configuration/engine/parser.py
+${PYSITELIB}/exabgp/configuration/engine/parser.pyc
+${PYSITELIB}/exabgp/configuration/engine/parser.pyo
+${PYSITELIB}/exabgp/configuration/engine/raised.py
+${PYSITELIB}/exabgp/configuration/engine/raised.pyc
+${PYSITELIB}/exabgp/configuration/engine/raised.pyo
+${PYSITELIB}/exabgp/configuration/engine/reader.py
+${PYSITELIB}/exabgp/configuration/engine/reader.pyc
+${PYSITELIB}/exabgp/configuration/engine/reader.pyo
+${PYSITELIB}/exabgp/configuration/engine/registry.py
+${PYSITELIB}/exabgp/configuration/engine/registry.pyc
+${PYSITELIB}/exabgp/configuration/engine/registry.pyo
+${PYSITELIB}/exabgp/configuration/engine/section.py
+${PYSITELIB}/exabgp/configuration/engine/section.pyc
+${PYSITELIB}/exabgp/configuration/engine/section.pyo
+${PYSITELIB}/exabgp/configuration/engine/tokeniser.py
+${PYSITELIB}/exabgp/configuration/engine/tokeniser.pyc
+${PYSITELIB}/exabgp/configuration/engine/tokeniser.pyo
${PYSITELIB}/exabgp/configuration/environment.py
${PYSITELIB}/exabgp/configuration/environment.pyc
${PYSITELIB}/exabgp/configuration/environment.pyo
-${PYSITELIB}/exabgp/configuration/file.py
-${PYSITELIB}/exabgp/configuration/file.pyc
-${PYSITELIB}/exabgp/configuration/file.pyo
-${PYSITELIB}/exabgp/configuration/json.py
-${PYSITELIB}/exabgp/configuration/json.pyc
-${PYSITELIB}/exabgp/configuration/json.pyo
-${PYSITELIB}/exabgp/configuration/loader.py
-${PYSITELIB}/exabgp/configuration/loader.pyc
-${PYSITELIB}/exabgp/configuration/loader.pyo
-${PYSITELIB}/exabgp/configuration/validation.py
-${PYSITELIB}/exabgp/configuration/validation.pyc
-${PYSITELIB}/exabgp/configuration/validation.pyo
+${PYSITELIB}/exabgp/configuration/neighbor/capability.py
+${PYSITELIB}/exabgp/configuration/neighbor/capability.pyc
+${PYSITELIB}/exabgp/configuration/neighbor/capability.pyo
+${PYSITELIB}/exabgp/configuration/setup.py
+${PYSITELIB}/exabgp/configuration/setup.pyc
+${PYSITELIB}/exabgp/configuration/setup.pyo
+${PYSITELIB}/exabgp/configuration/usage.py
+${PYSITELIB}/exabgp/configuration/usage.pyc
+${PYSITELIB}/exabgp/configuration/usage.pyo
${PYSITELIB}/exabgp/data/__init__.py
${PYSITELIB}/exabgp/data/__init__.pyc
${PYSITELIB}/exabgp/data/__init__.pyo
@@ -228,6 +341,21 @@ ${PYSITELIB}/exabgp/data/check.pyo
${PYSITELIB}/exabgp/debug.py
${PYSITELIB}/exabgp/debug.pyc
${PYSITELIB}/exabgp/debug.pyo
+${PYSITELIB}/exabgp/dep/__init__.py
+${PYSITELIB}/exabgp/dep/__init__.pyc
+${PYSITELIB}/exabgp/dep/__init__.pyo
+${PYSITELIB}/exabgp/dep/cmd2.py
+${PYSITELIB}/exabgp/dep/cmd2.pyc
+${PYSITELIB}/exabgp/dep/cmd2.pyo
+${PYSITELIB}/exabgp/dep/docopt.py
+${PYSITELIB}/exabgp/dep/docopt.pyc
+${PYSITELIB}/exabgp/dep/docopt.pyo
+${PYSITELIB}/exabgp/dep/lsprofcalltree.py
+${PYSITELIB}/exabgp/dep/lsprofcalltree.pyc
+${PYSITELIB}/exabgp/dep/lsprofcalltree.pyo
+${PYSITELIB}/exabgp/dep/pyparsing.py
+${PYSITELIB}/exabgp/dep/pyparsing.pyc
+${PYSITELIB}/exabgp/dep/pyparsing.pyo
${PYSITELIB}/exabgp/logger.py
${PYSITELIB}/exabgp/logger.pyc
${PYSITELIB}/exabgp/logger.pyo
@@ -261,9 +389,6 @@ ${PYSITELIB}/exabgp/protocol/ip/fragment.pyo
${PYSITELIB}/exabgp/protocol/ip/icmp.py
${PYSITELIB}/exabgp/protocol/ip/icmp.pyc
${PYSITELIB}/exabgp/protocol/ip/icmp.pyo
-${PYSITELIB}/exabgp/protocol/ip/inet.py
-${PYSITELIB}/exabgp/protocol/ip/inet.pyc
-${PYSITELIB}/exabgp/protocol/ip/inet.pyo
${PYSITELIB}/exabgp/protocol/ip/tcp/__init__.py
${PYSITELIB}/exabgp/protocol/ip/tcp/__init__.pyc
${PYSITELIB}/exabgp/protocol/ip/tcp/__init__.pyo
@@ -276,6 +401,9 @@ ${PYSITELIB}/exabgp/reactor/__init__.pyo
${PYSITELIB}/exabgp/reactor/api/__init__.py
${PYSITELIB}/exabgp/reactor/api/__init__.pyc
${PYSITELIB}/exabgp/reactor/api/__init__.pyo
+${PYSITELIB}/exabgp/reactor/api/decoding.py
+${PYSITELIB}/exabgp/reactor/api/decoding.pyc
+${PYSITELIB}/exabgp/reactor/api/decoding.pyo
${PYSITELIB}/exabgp/reactor/api/encoding.py
${PYSITELIB}/exabgp/reactor/api/encoding.pyc
${PYSITELIB}/exabgp/reactor/api/encoding.pyo
@@ -321,12 +449,24 @@ ${PYSITELIB}/exabgp/rib/change.pyo
${PYSITELIB}/exabgp/rib/store.py
${PYSITELIB}/exabgp/rib/store.pyc
${PYSITELIB}/exabgp/rib/store.pyo
+${PYSITELIB}/exabgp/test/json.py
+${PYSITELIB}/exabgp/test/json.pyc
+${PYSITELIB}/exabgp/test/json.pyo
+${PYSITELIB}/exabgp/test/loader.py
+${PYSITELIB}/exabgp/test/loader.pyc
+${PYSITELIB}/exabgp/test/loader.pyo
+${PYSITELIB}/exabgp/test/validation.py
+${PYSITELIB}/exabgp/test/validation.pyc
+${PYSITELIB}/exabgp/test/validation.pyo
${PYSITELIB}/exabgp/util/__init__.py
${PYSITELIB}/exabgp/util/__init__.pyc
${PYSITELIB}/exabgp/util/__init__.pyo
${PYSITELIB}/exabgp/util/cache.py
${PYSITELIB}/exabgp/util/cache.pyc
${PYSITELIB}/exabgp/util/cache.pyo
+${PYSITELIB}/exabgp/util/cmd2.py
+${PYSITELIB}/exabgp/util/cmd2.pyc
+${PYSITELIB}/exabgp/util/cmd2.pyo
${PYSITELIB}/exabgp/util/coroutine.py
${PYSITELIB}/exabgp/util/coroutine.pyc
${PYSITELIB}/exabgp/util/coroutine.pyo
@@ -345,6 +485,9 @@ ${PYSITELIB}/exabgp/util/ip.pyo
${PYSITELIB}/exabgp/util/od.py
${PYSITELIB}/exabgp/util/od.pyc
${PYSITELIB}/exabgp/util/od.pyo
+${PYSITELIB}/exabgp/util/panic.py
+${PYSITELIB}/exabgp/util/panic.pyc
+${PYSITELIB}/exabgp/util/panic.pyo
${PYSITELIB}/exabgp/util/trace.py
${PYSITELIB}/exabgp/util/trace.pyc
${PYSITELIB}/exabgp/util/trace.pyo
@@ -366,4 +509,3 @@ ${PYSITELIB}/netlink/test/get.pyo
${PYSITELIB}/netlink/test/route.py
${PYSITELIB}/netlink/test/route.pyc
${PYSITELIB}/netlink/test/route.pyo
-sbin/exabgp
diff --git a/net/exabgp/distinfo b/net/exabgp/distinfo
index 1dca37fa665..e4b68891041 100644
--- a/net/exabgp/distinfo
+++ b/net/exabgp/distinfo
@@ -1,19 +1,7 @@
-$NetBSD: distinfo,v 1.6 2015/02/17 13:41:36 he Exp $
+$NetBSD: distinfo,v 1.7 2015/02/19 12:23:52 he Exp $
-SHA1 (exabgp-3.3.2.tar.gz) = e6a883ceb513b9c21fcf7092b720dbf13784ebf7
-RMD160 (exabgp-3.3.2.tar.gz) = 3ed5b73e244678c5b4f7f01fea4c3438e7e4d0dd
-Size (exabgp-3.3.2.tar.gz) = 602064 bytes
-SHA1 (patch-dev_bin_selfcheck) = c70220d037d3b351370856c0171edca4db02ee42
-SHA1 (patch-dev_self_api_first) = b37b6e6b8d7f955c16de256fd0919aa466ca28b9
-SHA1 (patch-dev_self_api_second) = 6fcee097d8ecf0e96e8947629c23843f70b1e0e7
-SHA1 (patch-dev_self_attribute_send) = c62c39ae06d28b7fa1100811c7f633c7abc3756f
-SHA1 (patch-dev_self_big_receive) = a6e9f7589275781e39c12fdf30981829bbe42a26
-SHA1 (patch-dev_self_big_send) = acd6b83d97f0864f3c5603e11fb89d3d62677a72
-SHA1 (patch-dev_self_load_recieve) = 6520ed4635304c27847362c27b66f09f1b2248fe
-SHA1 (patch-dev_self_load_send) = 792ba8fd213f691d443ff41b1cf1fd3f0b13fef2
-SHA1 (patch-dev_self_refresh_first) = b3b1315e9f3a5f053178f9adeb9451dfe1af736b
-SHA1 (patch-dev_self_refresh_second) = 2c3bbe93e93ac908b75842aa46b79876bb10c78f
-SHA1 (patch-dev_self_simple_first) = c5210d4b5a2d65bb9cf2e68752662a13b73b96ab
-SHA1 (patch-dev_self_simple_second) = 1dad8e64ac4cfdcb5f5bcb6457ea6f7b7099e224
-SHA1 (patch-etc_exabgp_processes_healthcheck.py) = d2c97f08be1834295744e7f9a26c9907310c6207
-SHA1 (patch-setup.py) = 95da865dfcbdb4b09c78efffa2c5f7ba9b1e31ca
+SHA1 (exabgp/3.4.7.tar.gz) = 5fccd3e4215581bc073e0a86a36875f6ed7a25f3
+RMD160 (exabgp/3.4.7.tar.gz) = 390018a498722724a3085fdb066e8331db91460a
+Size (exabgp/3.4.7.tar.gz) = 548464 bytes
+SHA1 (patch-etc_exabgp_processes_healthcheck.py) = 7c0b9ab3bf7afe75d245922a9b8ed0e64c4503f4
+SHA1 (patch-setup.py) = 9863e53efe87323ecd7808f9d550e005273a4feb
diff --git a/net/exabgp/patches/patch-dev_bin_selfcheck b/net/exabgp/patches/patch-dev_bin_selfcheck
deleted file mode 100644
index fb88bfa41d3..00000000000
--- a/net/exabgp/patches/patch-dev_bin_selfcheck
+++ /dev/null
@@ -1,15 +0,0 @@
-$NetBSD: patch-dev_bin_selfcheck,v 1.1 2013/12/15 22:22:44 pettai Exp $
-
-Portability fix
-
---- dev/bin/selfcheck.orig 2013-11-26 10:33:49.000000000 +0000
-+++ dev/bin/selfcheck
-@@ -24,7 +24,7 @@ do
- retcode=$?
- problem=`echo $result | grep 'Problem with the configuration file'`
-
-- if [ $retcode -eq 0 ] && [ "$problem" == "" ]
-+ if [ $retcode -eq 0 ] && [ "$problem" = "" ]
- then
- printf "\rok\n"
- else
diff --git a/net/exabgp/patches/patch-dev_self_api_first b/net/exabgp/patches/patch-dev_self_api_first
deleted file mode 100644
index 6c3bd38cf4a..00000000000
--- a/net/exabgp/patches/patch-dev_self_api_first
+++ /dev/null
@@ -1,20 +0,0 @@
-$NetBSD: patch-dev_self_api_first,v 1.1 2013/12/15 22:22:44 pettai Exp $
-
-Portability fix
-
---- dev/self/api/first.orig 2013-11-26 10:24:34.000000000 +0000
-+++ dev/self/api/first
-@@ -1,11 +1,11 @@
- #!/bin/sh
-
- ip=`ifconfig | grep -A10 en0 | grep "inet " | head -1 | awk '{ print $2; }'`
--if [ "$ip" == "" ]
-+if [ "$ip" = "" ]
- then
- ip=`ifconfig | grep -A10 en1 | grep "inet " | head -1 | awk '{ print $2; }'`
- fi
--if [ "$ip" == "" ]
-+if [ "$ip" = "" ]
- then
- ip=`ifconfig | grep -A10 vnic0 | grep "inet " | head -1 | awk '{ print $2; }'`
- fi
diff --git a/net/exabgp/patches/patch-dev_self_api_second b/net/exabgp/patches/patch-dev_self_api_second
deleted file mode 100644
index 33ae12b03b1..00000000000
--- a/net/exabgp/patches/patch-dev_self_api_second
+++ /dev/null
@@ -1,20 +0,0 @@
-$NetBSD: patch-dev_self_api_second,v 1.1 2013/12/15 22:22:44 pettai Exp $
-
-Portability fix
-
---- dev/self/api/second.orig 2013-11-26 10:24:41.000000000 +0000
-+++ dev/self/api/second
-@@ -1,11 +1,11 @@
- #!/bin/sh
-
- ip=`ifconfig | grep -A10 en0 | grep "inet " | head -1 | awk '{ print $2; }'`
--if [ "$ip" == "" ]
-+if [ "$ip" = "" ]
- then
- ip=`ifconfig | grep -A10 en1 | grep "inet " | head -1 | awk '{ print $2; }'`
- fi
--if [ "$ip" == "" ]
-+if [ "$ip" = "" ]
- then
- ip=`ifconfig | grep -A10 vnic0 | grep "inet " | head -1 | awk '{ print $2; }'`
- fi
diff --git a/net/exabgp/patches/patch-dev_self_attribute_send b/net/exabgp/patches/patch-dev_self_attribute_send
deleted file mode 100644
index 7c31b42bdc1..00000000000
--- a/net/exabgp/patches/patch-dev_self_attribute_send
+++ /dev/null
@@ -1,20 +0,0 @@
-$NetBSD: patch-dev_self_attribute_send,v 1.1 2013/12/15 22:22:44 pettai Exp $
-
-Portability fix
-
---- dev/self/attribute/send.orig 2013-11-26 10:28:02.000000000 +0000
-+++ dev/self/attribute/send
-@@ -1,11 +1,11 @@
- #!/bin/sh
-
- ip=`ifconfig | grep -A10 en0 | grep "inet " | head -1 | awk '{ print $2; }'`
--if [ "$ip" == "" ]
-+if [ "$ip" = "" ]
- then
- ip=`ifconfig | grep -A10 en1 | grep "inet " | head -1 | awk '{ print $2; }'`
- fi
--if [ "$ip" == "" ]
-+if [ "$ip" = "" ]
- then
- ip=`ifconfig | grep -A10 vnic0 | grep "inet " | head -1 | awk '{ print $2; }'`
- fi
diff --git a/net/exabgp/patches/patch-dev_self_big_receive b/net/exabgp/patches/patch-dev_self_big_receive
deleted file mode 100644
index 39ad576e08e..00000000000
--- a/net/exabgp/patches/patch-dev_self_big_receive
+++ /dev/null
@@ -1,20 +0,0 @@
-$NetBSD: patch-dev_self_big_receive,v 1.1 2013/12/15 22:22:44 pettai Exp $
-
-Portability fix
-
---- dev/self/big/receive.orig 2013-11-26 10:20:54.000000000 +0000
-+++ dev/self/big/receive
-@@ -1,11 +1,11 @@
- #!/bin/sh
-
- ip=`ifconfig | grep -A10 en0 | grep "inet " | head -1 | awk '{ print $2; }'`
--if [ "$ip" == "" ]
-+if [ "$ip" = "" ]
- then
- ip=`ifconfig | grep -A10 en1 | grep "inet " | head -1 | awk '{ print $2; }'`
- fi
--if [ "$ip" == "" ]
-+if [ "$ip" = "" ]
- then
- ip=`ifconfig | grep -A10 vnic0 | grep "inet " | head -1 | awk '{ print $2; }'`
- fi
diff --git a/net/exabgp/patches/patch-dev_self_big_send b/net/exabgp/patches/patch-dev_self_big_send
deleted file mode 100644
index 8bce9b5ec3c..00000000000
--- a/net/exabgp/patches/patch-dev_self_big_send
+++ /dev/null
@@ -1,20 +0,0 @@
-$NetBSD: patch-dev_self_big_send,v 1.1 2013/12/15 22:22:44 pettai Exp $
-
-Portability fix
-
---- dev/self/big/send.orig 2013-11-26 10:21:14.000000000 +0000
-+++ dev/self/big/send
-@@ -1,11 +1,11 @@
- #!/bin/sh
-
- ip=`ifconfig | grep -A10 en0 | grep "inet " | head -1 | awk '{ print $2; }'`
--if [ "$ip" == "" ]
-+if [ "$ip" = "" ]
- then
- ip=`ifconfig | grep -A10 en1 | grep "inet " | head -1 | awk '{ print $2; }'`
- fi
--if [ "$ip" == "" ]
-+if [ "$ip" = "" ]
- then
- ip=`ifconfig | grep -A10 vnic0 | grep "inet " | head -1 | awk '{ print $2; }'`
- fi
diff --git a/net/exabgp/patches/patch-dev_self_load_recieve b/net/exabgp/patches/patch-dev_self_load_recieve
deleted file mode 100644
index a9da146ba42..00000000000
--- a/net/exabgp/patches/patch-dev_self_load_recieve
+++ /dev/null
@@ -1,20 +0,0 @@
-$NetBSD: patch-dev_self_load_recieve,v 1.1 2013/12/15 22:22:44 pettai Exp $
-
-Portability fix
-
---- dev/self/load/receive.orig 2013-11-26 10:14:04.000000000 +0000
-+++ dev/self/load/receive
-@@ -1,11 +1,11 @@
- #!/bin/sh
-
- ip=`ifconfig | grep -A10 en0 | grep "inet " | head -1 | awk '{ print $2; }'`
--if [ "$ip" == "" ]
-+if [ "$ip" = "" ]
- then
- ip=`ifconfig | grep -A10 en1 | grep "inet " | head -1 | awk '{ print $2; }'`
- fi
--if [ "$ip" == "" ]
-+if [ "$ip" = "" ]
- then
- ip=`ifconfig | grep -A10 vnic0 | grep "inet " | head -1 | awk '{ print $2; }'`
- fi
diff --git a/net/exabgp/patches/patch-dev_self_load_send b/net/exabgp/patches/patch-dev_self_load_send
deleted file mode 100644
index d1967d51ea3..00000000000
--- a/net/exabgp/patches/patch-dev_self_load_send
+++ /dev/null
@@ -1,20 +0,0 @@
-$NetBSD: patch-dev_self_load_send,v 1.1 2013/12/15 22:22:44 pettai Exp $
-
-Portability fix
-
---- dev/self/load/send.orig 2013-11-26 10:13:39.000000000 +0000
-+++ dev/self/load/send
-@@ -1,11 +1,11 @@
- #!/bin/sh
-
- ip=`ifconfig | grep -A10 en0 | grep "inet " | head -1 | awk '{ print $2; }'`
--if [ "$ip" == "" ]
-+if [ "$ip" = "" ]
- then
- ip=`ifconfig | grep -A10 en1 | grep "inet " | head -1 | awk '{ print $2; }'`
- fi
--if [ "$ip" == "" ]
-+if [ "$ip" = "" ]
- then
- ip=`ifconfig | grep -A10 vnic0 | grep "inet " | head -1 | awk '{ print $2; }'`
- fi
diff --git a/net/exabgp/patches/patch-dev_self_refresh_first b/net/exabgp/patches/patch-dev_self_refresh_first
deleted file mode 100644
index c1c566f0679..00000000000
--- a/net/exabgp/patches/patch-dev_self_refresh_first
+++ /dev/null
@@ -1,20 +0,0 @@
-$NetBSD: patch-dev_self_refresh_first,v 1.1 2013/12/15 22:22:44 pettai Exp $
-
-Portability fix
-
---- dev/self/refresh/first.orig 2013-11-26 10:10:01.000000000 +0000
-+++ dev/self/refresh/first
-@@ -1,11 +1,11 @@
- #!/bin/sh
-
- ip=`ifconfig | grep -A10 en0 | grep "inet " | head -1 | awk '{ print $2; }'`
--if [ "$ip" == "" ]
-+if [ "$ip" = "" ]
- then
- ip=`ifconfig | grep -A10 en1 | grep "inet " | head -1 | awk '{ print $2; }'`
- fi
--if [ "$ip" == "" ]
-+if [ "$ip" = "" ]
- then
- ip=`ifconfig | grep -A10 vnic0 | grep "inet " | head -1 | awk '{ print $2; }'`
- fi
diff --git a/net/exabgp/patches/patch-dev_self_refresh_second b/net/exabgp/patches/patch-dev_self_refresh_second
deleted file mode 100644
index 3acf3f94924..00000000000
--- a/net/exabgp/patches/patch-dev_self_refresh_second
+++ /dev/null
@@ -1,20 +0,0 @@
-$NetBSD: patch-dev_self_refresh_second,v 1.1 2013/12/15 22:22:44 pettai Exp $
-
-Portability fix
-
---- dev/self/refresh/second.orig 2013-11-26 10:10:07.000000000 +0000
-+++ dev/self/refresh/second
-@@ -1,11 +1,11 @@
- #!/bin/sh
-
- ip=`ifconfig | grep -A10 en0 | grep "inet " | head -1 | awk '{ print $2; }'`
--if [ "$ip" == "" ]
-+if [ "$ip" = "" ]
- then
- ip=`ifconfig | grep -A10 en1 | grep "inet " | head -1 | awk '{ print $2; }'`
- fi
--if [ "$ip" == "" ]
-+if [ "$ip" = "" ]
- then
- ip=`ifconfig | grep -A10 vnic0 | grep "inet " | head -1 | awk '{ print $2; }'`
- fi
diff --git a/net/exabgp/patches/patch-dev_self_simple_first b/net/exabgp/patches/patch-dev_self_simple_first
deleted file mode 100644
index 024663d3734..00000000000
--- a/net/exabgp/patches/patch-dev_self_simple_first
+++ /dev/null
@@ -1,20 +0,0 @@
-$NetBSD: patch-dev_self_simple_first,v 1.1 2013/12/15 22:22:44 pettai Exp $
-
-Portability fix
-
---- dev/self/simple/first.orig 2013-11-26 10:04:02.000000000 +0000
-+++ dev/self/simple/first
-@@ -1,11 +1,11 @@
- #!/bin/sh
-
- ip=`ifconfig | grep -A10 en0 | grep "inet " | head -1 | awk '{ print $2; }'`
--if [ "$ip" == "" ]
-+if [ "$ip" = "" ]
- then
- ip=`ifconfig | grep -A10 en1 | grep "inet " | head -1 | awk '{ print $2; }'`
- fi
--if [ "$ip" == "" ]
-+if [ "$ip" = "" ]
- then
- ip=`ifconfig | grep -A10 vnic0 | grep "inet " | head -1 | awk '{ print $2; }'`
- fi
diff --git a/net/exabgp/patches/patch-dev_self_simple_second b/net/exabgp/patches/patch-dev_self_simple_second
deleted file mode 100644
index 23c13bfde7e..00000000000
--- a/net/exabgp/patches/patch-dev_self_simple_second
+++ /dev/null
@@ -1,20 +0,0 @@
-$NetBSD: patch-dev_self_simple_second,v 1.1 2013/12/15 22:22:44 pettai Exp $
-
-Portability fix
-
---- dev/self/simple/second.orig 2013-11-26 10:04:26.000000000 +0000
-+++ dev/self/simple/second
-@@ -1,11 +1,11 @@
- #!/bin/sh
-
- ip=`ifconfig | grep -A10 en0 | grep "inet " | head -1 | awk '{ print $2; }'`
--if [ "$ip" == "" ]
-+if [ "$ip" = "" ]
- then
- ip=`ifconfig | grep -A10 en1 | grep "inet " | head -1 | awk '{ print $2; }'`
- fi
--if [ "$ip" == "" ]
-+if [ "$ip" = "" ]
- then
- ip=`ifconfig | grep -A10 vnic0 | grep "inet " | head -1 | awk '{ print $2; }'`
- fi
diff --git a/net/exabgp/patches/patch-etc_exabgp_processes_healthcheck.py b/net/exabgp/patches/patch-etc_exabgp_processes_healthcheck.py
index bdcf0a69ec0..ac82d7e1ad3 100644
--- a/net/exabgp/patches/patch-etc_exabgp_processes_healthcheck.py
+++ b/net/exabgp/patches/patch-etc_exabgp_processes_healthcheck.py
@@ -1,35 +1,16 @@
-$NetBSD: patch-etc_exabgp_processes_healthcheck.py,v 1.1 2015/02/17 13:41:36 he Exp $
+$NetBSD: patch-etc_exabgp_processes_healthcheck.py,v 1.2 2015/02/19 12:23:52 he Exp $
Also match interface alias addresses, and spaces at the front
-are optional, particularly after "strip"...
-Also, provide more debugging output.
+are already removed after strip().
--- etc/exabgp/processes/healthcheck.py.orig 2014-03-25 19:39:16.000000000 +0000
+++ etc/exabgp/processes/healthcheck.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/pkg/bin/python2.7
-
- """Healthchecker for exabgp.
-
-@@ -210,16 +210,19 @@ def loopback_ips():
+@@ -222,7 +222,7 @@ def loopback_ips(label):
cmd = subprocess.Popen("/sbin/ip -o address show dev lo".split(), shell=False, stdout=subprocess.PIPE)
else:
# Try with ifconfig
- ipre = re.compile(r"^\s+inet6?\s+(?P<ip>[\da-f.:]+)\s+(?:netmask 0x(?P<netmask>[0-9a-f]+)|prefixlen (?P<mask>\d+)).*")
-+ ipre = re.compile(r"^\s*inet6?\s+(alias )?(?P<ip>[\da-f.:]+)\s+(?:netmask 0x(?P<netmask>[0-9a-f]+)|prefixlen (?P<mask>\d+)).*")
++ ipre = re.compile(r"^inet6?\s+(alias )?(?P<ip>[\da-f.:]+)\s+(?:netmask 0x(?P<netmask>[0-9a-f]+)|prefixlen (?P<mask>\d+)).*")
cmd = subprocess.Popen("/sbin/ifconfig lo0".split(), shell=False, stdout=subprocess.PIPE)
+ labelre = re.compile(r"")
for line in cmd.stdout:
- line = line.decode("ascii", "ignore").strip()
- mo = ipre.match(line)
- if not mo:
-+ logger.debug("Skipping line: {0}".format(line))
- continue
- ip = ip_address(mo.group("ip"))
- if not ip.is_loopback:
- addresses.append(ip)
-+ else:
-+ logger.debug("Skipping loopback address: {0}".format(ip))
- if not addresses:
- raise RuntimeError("No loopback IP found")
- logger.debug("Loopback addresses: {0}".format(addresses))
diff --git a/net/exabgp/patches/patch-setup.py b/net/exabgp/patches/patch-setup.py
index fbca854738d..ab22ff39cab 100644
--- a/net/exabgp/patches/patch-setup.py
+++ b/net/exabgp/patches/patch-setup.py
@@ -1,17 +1,27 @@
-$NetBSD: patch-setup.py,v 1.2 2013/12/25 14:59:10 pettai Exp $
+$NetBSD: patch-setup.py,v 1.3 2015/02/19 12:23:52 he Exp $
-Fix installation to proper directories
+Do away with the special handling for NetBSD, to avoid PLIST issues.
+Install helper scripts outside of the config tree (use share/exabgp).
+On the other hand, only do the systemd dance on Linux.
---- setup.py.orig 2013-11-18 14:13:24.000000000 +0000
+--- setup.py.orig 2015-01-08 09:15:39.000000000 +0000
+++ setup.py
-@@ -55,8 +55,8 @@ setup(name='exabgp',
- scripts=['sbin/exabgp',],
- download_url='https://github.com/Exa-Networks/exabgp/archive/%s.tar.gz' % version,
- data_files=[
+@@ -371,14 +371,10 @@ def configuration (etc):
+
+ os_name = platform.system()
+
+-if os_name == 'NetBSD':
+- files_definition= [
+- ('bin/exabgp',configuration('etc/exabgp')),
+- ]
+-else:
+- files_definition = [
- ('etc/exabgp',configuration('etc/exabgp')),
-- ('/usr/lib/systemd/system',configuration('etc/systemd')),
-+ ('bin/exabgp',configuration('etc/exabgp')),
-+ # ('/usr/lib/systemd/system',configuration('etc/systemd')),
- ],
- classifiers=[
- 'Development Status :: 5 - Production/Stable',
+- ]
++files_definition= [
++ ('share/exabgp',configuration('etc/exabgp')),
++]
++if os_name == 'Linux':
+ if sys.argv[-1] == 'systemd':
+ files_definition.append(('/usr/lib/systemd/system',configuration('etc/systemd')))
+