aboutsummaryrefslogtreecommitdiff
path: root/net-mgmt/py-aggregate6
diff options
context:
space:
mode:
authorMuhammad Moinur Rahman <bofh@FreeBSD.org>2020-04-24 00:49:01 +0000
committerMuhammad Moinur Rahman <bofh@FreeBSD.org>2020-04-24 00:49:01 +0000
commit65a65003839d00c07cc266d68e52c552cbb7aa5d (patch)
tree99474a633c20d5ca205b5a826f12bdeef8bb37b6 /net-mgmt/py-aggregate6
parent32020bd38c653bcb5d3463598ce2a69ec161f420 (diff)
downloadports-65a65003839d00c07cc266d68e52c552cbb7aa5d.tar.gz
ports-65a65003839d00c07cc266d68e52c552cbb7aa5d.zip
[NEW] net-mgmt/py-aggregate6:Compress an unsorted list of IPv4 and IPv6 prefixes
Takes a list of IPv6 prefixes in conventional format on stdin, and performs two optimisations to attempt to reduce the length of the prefix list. The first optimisation is to remove any supplied prefixes which are superfluous because they are already included in another supplied prefix. The second optimisation identifies adjacent prefixes that can be combined under a single, shorter-length prefix. The above optimalisation steps are often useful in context of compressing firewall rules or BGP prefix-list filters. WWW: https://github.com/job/aggregate6
Notes
Notes: svn path=/head/; revision=532725
Diffstat (limited to 'net-mgmt/py-aggregate6')
-rw-r--r--net-mgmt/py-aggregate6/Makefile36
-rw-r--r--net-mgmt/py-aggregate6/distinfo3
-rw-r--r--net-mgmt/py-aggregate6/files/patch-setup.py12
-rw-r--r--net-mgmt/py-aggregate6/pkg-descr9
4 files changed, 60 insertions, 0 deletions
diff --git a/net-mgmt/py-aggregate6/Makefile b/net-mgmt/py-aggregate6/Makefile
new file mode 100644
index 000000000000..643f68b0879d
--- /dev/null
+++ b/net-mgmt/py-aggregate6/Makefile
@@ -0,0 +1,36 @@
+# Created by: Muhammad Moinur Rahman <bofh@FreeBSD.org>
+# $FreeBSD$
+
+PORTNAME= aggregate6
+PORTVERSION= 1.0.12
+CATEGORIES= net-mgmt python
+MASTER_SITES= CHEESESHOP
+PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
+
+MAINTAINER= bofh@FreeBSD.org
+COMMENT= Compress an unsorted list of IPv4 and IPv6 prefixes
+
+LICENSE= BSD2CLAUSE
+
+BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}radix>=0.10.0:net/py-radix@${PY_FLAVOR}
+TEST_DEPENDS= \
+ ${PYTHON_PKGNAMEPREFIX}coverage>0:devel/py-coverage@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}mock>0:devel/py-mock@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}nose>0:devel/py-nose@${PY_FLAVOR}
+
+USES= python
+USE_PYTHON= autoplist concurrent distutils
+
+NO_ARCH= yes
+
+.include <bsd.port.pre.mk>
+
+.if ${PYTHON_REL} < 3000
+BUILD_DEPENDS+= ${PYTHON_PKGNAMEPREFIX}future>0:devel/py-future@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}ipaddress>0:net/py-ipaddress@${PY_FLAVOR}
+.endif
+
+do-test:
+ @(cd ${WRKSRC} && ${SETENV} ${PYTHON_CMD} ${PYSETUP} nosetests --with-coverage)
+
+.include <bsd.port.post.mk>
diff --git a/net-mgmt/py-aggregate6/distinfo b/net-mgmt/py-aggregate6/distinfo
new file mode 100644
index 000000000000..c26cde3a55a1
--- /dev/null
+++ b/net-mgmt/py-aggregate6/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1587684276
+SHA256 (aggregate6-1.0.12.tar.gz) = be0d78b8e84f96db2fc67d17955d16f60cbd76adfebd9a62fe1dc7cad9b273d9
+SIZE (aggregate6-1.0.12.tar.gz) = 6026
diff --git a/net-mgmt/py-aggregate6/files/patch-setup.py b/net-mgmt/py-aggregate6/files/patch-setup.py
new file mode 100644
index 000000000000..42a57573eabd
--- /dev/null
+++ b/net-mgmt/py-aggregate6/files/patch-setup.py
@@ -0,0 +1,12 @@
+--- setup.py.orig 2017-12-01 09:46:38 UTC
++++ setup.py
+@@ -70,8 +70,7 @@ setup(
+ 'Programming Language :: Python :: 3',
+ 'Programming Language :: Python :: 3.6'
+ ],
+- setup_requires=["nose", "coverage", "mock"],
+- install_requires=["py-radix==0.10.0"] + (
++ install_requires=["py-radix>=0.10.0"] + (
+ ["future", "ipaddress"] if sys.version_info.major == 2 else []
+ ),
+ packages=find_packages(exclude=['tests', 'tests.*']),
diff --git a/net-mgmt/py-aggregate6/pkg-descr b/net-mgmt/py-aggregate6/pkg-descr
new file mode 100644
index 000000000000..c3abe8884ba6
--- /dev/null
+++ b/net-mgmt/py-aggregate6/pkg-descr
@@ -0,0 +1,9 @@
+Takes a list of IPv6 prefixes in conventional format on stdin, and performs two
+optimisations to attempt to reduce the length of the prefix list. The first
+optimisation is to remove any supplied prefixes which are superfluous because
+they are already included in another supplied prefix. The second optimisation
+identifies adjacent prefixes that can be combined under a single, shorter-length
+prefix. The above optimalisation steps are often useful in context of
+compressing firewall rules or BGP prefix-list filters.
+
+WWW: https://github.com/job/aggregate6