1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-12-23 04:23:08 +00:00

New port: net/mininet, tool to create virtual network, including openflow

and Software-Defined Networks.
Notice usage of maintainer's depot including all FreeBSD's patches.

PR:		223701
Submitted by:	Ayaka Koshibe <akoshibe@gmail.com>
This commit is contained in:
Olivier Cochard 2018-07-12 08:37:35 +00:00
parent 727e2bf03f
commit b4e996498a
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=474493
6 changed files with 306 additions and 0 deletions

View File

@ -470,6 +470,7 @@
SUBDIR += micro_inetd
SUBDIR += micro_proxy
SUBDIR += minidlna
SUBDIR += mininet
SUBDIR += minisapserver
SUBDIR += minissdpd
SUBDIR += miniupnpc

49
net/mininet/Makefile Normal file
View File

@ -0,0 +1,49 @@
# $FreeBSD$
PORTNAME= mininet
PORTVERSION= 2.3.0d1
CATEGORIES= net python
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
MAINTAINER= akoshibe@gmail.com
COMMENT= Emulator for rapid prototyping of software defined networks
LICENSE= BSD3CLAUSE
LICENSE_FILE= ${WRKSRC}/LICENSE
BUILD_DEPENDS= help2man>=0:misc/help2man
RUN_DEPENDS= iperf>=0:benchmarks/iperf \
openvswitch>=0:net/openvswitch \
${PYTHON_PKGNAMEPREFIX}ryu>=0:net/ryu@${PY_FLAVOR} \
socat>=0:net/socat \
bash:shells/bash
USES= python
USE_PYTHON= distutils
USE_GITHUB= yes
GH_ACCOUNT= akoshibe
GH_TAGNAME= b88c58c
do-build:
@${CC} ${WRKSRC}/mnexec.c -o ${BUILD_WRKSRC}/mnexec
@help2man -N -n "create a Mininet network." --no-discard-stderr \
"${PYTHON_CMD} -B ${BUILD_WRKSRC}/bin/mn" -o ${BUILD_WRKSRC}/mn.1
@help2man -N -n "execution utility for Mininet." -h "-h" -v "-v" \
--no-discard-stderr ${BUILD_WRKSRC}/mnexec -o ${BUILD_WRKSRC}/mnexec.1
@(cd ${BUILD_WRKSRC}; ${SETENV} ${MAKE_ENV} ${PYTHON_CMD} ${PYDISTUTILS_SETUP} ${PYDISTUTILS_BUILD_TARGET} ${PYDISTUTILS_BUILDARGS})
do-install:
${INSTALL_PROGRAM} ${BUILD_WRKSRC}/mnexec ${STAGEDIR}${PREFIX}/bin
.for m in mnexec mn
${INSTALL_MAN} ${BUILD_WRKSRC}/$m.1 ${STAGEDIR}${PREFIX}/man/man1
.endfor
${INSTALL} -d ${STAGEDIR}${PREFIX}/share/doc/mininet
${INSTALL_DATA} ${BUILD_WRKSRC}/README.md ${STAGEDIR}${PREFIX}/share/doc/mininet
${INSTALL} -d ${STAGEDIR}${PREFIX}/share/examples/mininet
.for f in examples/README.md examples/*.py
${INSTALL_DATA} ${BUILD_WRKSRC}/$f ${STAGEDIR}${PREFIX}/share/examples/mininet
@(cd ${INSTALL_WRKSRC}; ${SETENV} ${MAKE_ENV} ${PYTHON_CMD} ${PYDISTUTILS_SETUP} ${PYDISTUTILS_INSTALL_TARGET} ${PYDISTUTILS_INSTALLARGS})
.endfor
.include <bsd.port.mk>

3
net/mininet/distinfo Normal file
View File

@ -0,0 +1,3 @@
TIMESTAMP = 1531149591
SHA256 (akoshibe-mininet-2.3.0d1-b88c58c_GH0.tar.gz) = aec939fe49e44bee5c597e3203b21d5bfcec410445c5adc3d7544af5cf4ec85f
SIZE (akoshibe-mininet-2.3.0d1-b88c58c_GH0.tar.gz) = 245050

9
net/mininet/pkg-descr Normal file
View File

@ -0,0 +1,9 @@
Mininet creates a realistic virtual network, running real kernel, switch
and application code, on a single machine (VM, cloud or native), in
seconds, with a single command.
Because you can easily interact with your network using the Mininet CLI
(and API), customize it, share it with others, or deploy it on real
hardware, Mininet is useful for development, teaching, and research.
WWW: https://github.com/mininet/mininet

9
net/mininet/pkg-message Normal file
View File

@ -0,0 +1,9 @@
*******************************************************************************
* *
* Do not forget to add VIMAGE and DUMMYNET into *
* your kernel configuration. *
* *
* To configure and recompile your kernel see: *
* http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/kernelconfig.html *
* *
*******************************************************************************

235
net/mininet/pkg-plist Normal file
View File

@ -0,0 +1,235 @@
bin/mn
bin/mnexec
%%PYTHON_SITELIBDIR%%/mininet/__init__.py
%%PYTHON_SITELIBDIR%%/mininet/__init__.pyc
%%PYTHON_SITELIBDIR%%/mininet/__init__.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/baseintf.py
%%PYTHON_SITELIBDIR%%/mininet/baseintf.pyc
%%PYTHON_SITELIBDIR%%/mininet/baseintf.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/basenode.py
%%PYTHON_SITELIBDIR%%/mininet/basenode.pyc
%%PYTHON_SITELIBDIR%%/mininet/basenode.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/clean.py
%%PYTHON_SITELIBDIR%%/mininet/clean.pyc
%%PYTHON_SITELIBDIR%%/mininet/clean.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/cli.py
%%PYTHON_SITELIBDIR%%/mininet/cli.pyc
%%PYTHON_SITELIBDIR%%/mininet/cli.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/examples/__init__.py
%%PYTHON_SITELIBDIR%%/mininet/examples/__init__.pyc
%%PYTHON_SITELIBDIR%%/mininet/examples/__init__.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/examples/cluster.py
%%PYTHON_SITELIBDIR%%/mininet/examples/cluster.pyc
%%PYTHON_SITELIBDIR%%/mininet/examples/cluster.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/examples/clustercli.py
%%PYTHON_SITELIBDIR%%/mininet/examples/clustercli.pyc
%%PYTHON_SITELIBDIR%%/mininet/examples/clustercli.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/freebsd/__init__.py
%%PYTHON_SITELIBDIR%%/mininet/freebsd/__init__.pyc
%%PYTHON_SITELIBDIR%%/mininet/freebsd/__init__.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/freebsd/intf.py
%%PYTHON_SITELIBDIR%%/mininet/freebsd/intf.pyc
%%PYTHON_SITELIBDIR%%/mininet/freebsd/intf.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/freebsd/node.py
%%PYTHON_SITELIBDIR%%/mininet/freebsd/node.pyc
%%PYTHON_SITELIBDIR%%/mininet/freebsd/node.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/freebsd/util.py
%%PYTHON_SITELIBDIR%%/mininet/freebsd/util.pyc
%%PYTHON_SITELIBDIR%%/mininet/freebsd/util.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/link.py
%%PYTHON_SITELIBDIR%%/mininet/link.pyc
%%PYTHON_SITELIBDIR%%/mininet/link.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/log.py
%%PYTHON_SITELIBDIR%%/mininet/log.pyc
%%PYTHON_SITELIBDIR%%/mininet/log.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/moduledeps.py
%%PYTHON_SITELIBDIR%%/mininet/moduledeps.pyc
%%PYTHON_SITELIBDIR%%/mininet/moduledeps.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/net.py
%%PYTHON_SITELIBDIR%%/mininet/net.pyc
%%PYTHON_SITELIBDIR%%/mininet/net.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/node.py
%%PYTHON_SITELIBDIR%%/mininet/node.pyc
%%PYTHON_SITELIBDIR%%/mininet/node.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/nodelib.py
%%PYTHON_SITELIBDIR%%/mininet/nodelib.pyc
%%PYTHON_SITELIBDIR%%/mininet/nodelib.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/term.py
%%PYTHON_SITELIBDIR%%/mininet/term.pyc
%%PYTHON_SITELIBDIR%%/mininet/term.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/topo.py
%%PYTHON_SITELIBDIR%%/mininet/topo.pyc
%%PYTHON_SITELIBDIR%%/mininet/topo.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/topolib.py
%%PYTHON_SITELIBDIR%%/mininet/topolib.pyc
%%PYTHON_SITELIBDIR%%/mininet/topolib.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/util.py
%%PYTHON_SITELIBDIR%%/mininet/util.pyc
%%PYTHON_SITELIBDIR%%/mininet/util.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/examples/baresshd.py
%%PYTHON_SITELIBDIR%%/mininet/examples/baresshd.pyc
%%PYTHON_SITELIBDIR%%/mininet/examples/baresshd.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/examples/bind.py
%%PYTHON_SITELIBDIR%%/mininet/examples/bind.pyc
%%PYTHON_SITELIBDIR%%/mininet/examples/bind.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/examples/clusterSanity.py
%%PYTHON_SITELIBDIR%%/mininet/examples/clusterSanity.pyc
%%PYTHON_SITELIBDIR%%/mininet/examples/clusterSanity.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/examples/clusterdemo.py
%%PYTHON_SITELIBDIR%%/mininet/examples/clusterdemo.pyc
%%PYTHON_SITELIBDIR%%/mininet/examples/clusterdemo.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/examples/clusterperf.py
%%PYTHON_SITELIBDIR%%/mininet/examples/clusterperf.pyc
%%PYTHON_SITELIBDIR%%/mininet/examples/clusterperf.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/examples/consoles.py
%%PYTHON_SITELIBDIR%%/mininet/examples/consoles.pyc
%%PYTHON_SITELIBDIR%%/mininet/examples/consoles.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/examples/controllers.py
%%PYTHON_SITELIBDIR%%/mininet/examples/controllers.pyc
%%PYTHON_SITELIBDIR%%/mininet/examples/controllers.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/examples/controllers2.py
%%PYTHON_SITELIBDIR%%/mininet/examples/controllers2.pyc
%%PYTHON_SITELIBDIR%%/mininet/examples/controllers2.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/examples/controlnet.py
%%PYTHON_SITELIBDIR%%/mininet/examples/controlnet.pyc
%%PYTHON_SITELIBDIR%%/mininet/examples/controlnet.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/examples/cpu.py
%%PYTHON_SITELIBDIR%%/mininet/examples/cpu.pyc
%%PYTHON_SITELIBDIR%%/mininet/examples/cpu.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/examples/emptynet.py
%%PYTHON_SITELIBDIR%%/mininet/examples/emptynet.pyc
%%PYTHON_SITELIBDIR%%/mininet/examples/emptynet.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/examples/hwintf.py
%%PYTHON_SITELIBDIR%%/mininet/examples/hwintf.pyc
%%PYTHON_SITELIBDIR%%/mininet/examples/hwintf.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/examples/intfoptions.py
%%PYTHON_SITELIBDIR%%/mininet/examples/intfoptions.pyc
%%PYTHON_SITELIBDIR%%/mininet/examples/intfoptions.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/examples/limit.py
%%PYTHON_SITELIBDIR%%/mininet/examples/limit.pyc
%%PYTHON_SITELIBDIR%%/mininet/examples/limit.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/examples/linearbandwidth.py
%%PYTHON_SITELIBDIR%%/mininet/examples/linearbandwidth.pyc
%%PYTHON_SITELIBDIR%%/mininet/examples/linearbandwidth.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/examples/linuxrouter.py
%%PYTHON_SITELIBDIR%%/mininet/examples/linuxrouter.pyc
%%PYTHON_SITELIBDIR%%/mininet/examples/linuxrouter.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/examples/miniedit.py
%%PYTHON_SITELIBDIR%%/mininet/examples/miniedit.pyc
%%PYTHON_SITELIBDIR%%/mininet/examples/miniedit.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/examples/mobility.py
%%PYTHON_SITELIBDIR%%/mininet/examples/mobility.pyc
%%PYTHON_SITELIBDIR%%/mininet/examples/mobility.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/examples/multilink.py
%%PYTHON_SITELIBDIR%%/mininet/examples/multilink.pyc
%%PYTHON_SITELIBDIR%%/mininet/examples/multilink.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/examples/multiping.py
%%PYTHON_SITELIBDIR%%/mininet/examples/multiping.pyc
%%PYTHON_SITELIBDIR%%/mininet/examples/multiping.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/examples/multipoll.py
%%PYTHON_SITELIBDIR%%/mininet/examples/multipoll.pyc
%%PYTHON_SITELIBDIR%%/mininet/examples/multipoll.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/examples/multitest.py
%%PYTHON_SITELIBDIR%%/mininet/examples/multitest.pyc
%%PYTHON_SITELIBDIR%%/mininet/examples/multitest.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/examples/nat.py
%%PYTHON_SITELIBDIR%%/mininet/examples/nat.pyc
%%PYTHON_SITELIBDIR%%/mininet/examples/nat.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/examples/natnet.py
%%PYTHON_SITELIBDIR%%/mininet/examples/natnet.pyc
%%PYTHON_SITELIBDIR%%/mininet/examples/natnet.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/examples/numberedports.py
%%PYTHON_SITELIBDIR%%/mininet/examples/numberedports.pyc
%%PYTHON_SITELIBDIR%%/mininet/examples/numberedports.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/examples/popen.py
%%PYTHON_SITELIBDIR%%/mininet/examples/popen.pyc
%%PYTHON_SITELIBDIR%%/mininet/examples/popen.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/examples/popenpoll.py
%%PYTHON_SITELIBDIR%%/mininet/examples/popenpoll.pyc
%%PYTHON_SITELIBDIR%%/mininet/examples/popenpoll.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/examples/scratchnet.py
%%PYTHON_SITELIBDIR%%/mininet/examples/scratchnet.pyc
%%PYTHON_SITELIBDIR%%/mininet/examples/scratchnet.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/examples/scratchnetuser.py
%%PYTHON_SITELIBDIR%%/mininet/examples/scratchnetuser.pyc
%%PYTHON_SITELIBDIR%%/mininet/examples/scratchnetuser.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/examples/simpleperf.py
%%PYTHON_SITELIBDIR%%/mininet/examples/simpleperf.pyc
%%PYTHON_SITELIBDIR%%/mininet/examples/simpleperf.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/examples/sshd.py
%%PYTHON_SITELIBDIR%%/mininet/examples/sshd.pyc
%%PYTHON_SITELIBDIR%%/mininet/examples/sshd.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/examples/tree1024.py
%%PYTHON_SITELIBDIR%%/mininet/examples/tree1024.pyc
%%PYTHON_SITELIBDIR%%/mininet/examples/tree1024.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/examples/treeping64.py
%%PYTHON_SITELIBDIR%%/mininet/examples/treeping64.pyc
%%PYTHON_SITELIBDIR%%/mininet/examples/treeping64.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/examples/vlanhost.py
%%PYTHON_SITELIBDIR%%/mininet/examples/vlanhost.pyc
%%PYTHON_SITELIBDIR%%/mininet/examples/vlanhost.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/linux/__init__.py
%%PYTHON_SITELIBDIR%%/mininet/linux/__init__.pyc
%%PYTHON_SITELIBDIR%%/mininet/linux/__init__.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/linux/intf.py
%%PYTHON_SITELIBDIR%%/mininet/linux/intf.pyc
%%PYTHON_SITELIBDIR%%/mininet/linux/intf.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/linux/node.py
%%PYTHON_SITELIBDIR%%/mininet/linux/node.pyc
%%PYTHON_SITELIBDIR%%/mininet/linux/node.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/linux/util.py
%%PYTHON_SITELIBDIR%%/mininet/linux/util.pyc
%%PYTHON_SITELIBDIR%%/mininet/linux/util.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/openbsd/__init__.py
%%PYTHON_SITELIBDIR%%/mininet/openbsd/__init__.pyc
%%PYTHON_SITELIBDIR%%/mininet/openbsd/__init__.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/openbsd/intf.py
%%PYTHON_SITELIBDIR%%/mininet/openbsd/intf.pyc
%%PYTHON_SITELIBDIR%%/mininet/openbsd/intf.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/openbsd/node.py
%%PYTHON_SITELIBDIR%%/mininet/openbsd/node.pyc
%%PYTHON_SITELIBDIR%%/mininet/openbsd/node.%%PYTHON_PYOEXTENSION%%
%%PYTHON_SITELIBDIR%%/mininet/openbsd/util.py
%%PYTHON_SITELIBDIR%%/mininet/openbsd/util.pyc
%%PYTHON_SITELIBDIR%%/mininet/openbsd/util.%%PYTHON_PYOEXTENSION%%
man/man1/mn.1.gz
man/man1/mnexec.1.gz
%%PORTDOCS%%%%DOCSDIR%%/README.md
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/README.md
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/__init__.py
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/baresshd.py
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/bind.py
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/cluster.py
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/clusterSanity.py
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/clustercli.py
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/clusterdemo.py
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/clusterperf.py
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/consoles.py
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/controllers.py
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/controllers2.py
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/controlnet.py
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/cpu.py
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/emptynet.py
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/hwintf.py
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/intfoptions.py
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/limit.py
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/linearbandwidth.py
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/linuxrouter.py
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/miniedit.py
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/mobility.py
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/multilink.py
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/multiping.py
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/multipoll.py
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/multitest.py
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/nat.py
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/natnet.py
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/numberedports.py
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/popen.py
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/popenpoll.py
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/scratchnet.py
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/scratchnetuser.py
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/simpleperf.py
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/sshd.py
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/tree1024.py
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/treeping64.py
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/vlanhost.py