import ports/net/irtt, ok/tweak tb@

IRTT (Isochronous Round-Trip Tester) is software that runs on a client
and server, using its own UDP-based protocol to allow measurements
including round-trip time, one-way delay (assuming the clocks are
synchronized), and lost/out-of-order/duplicate packets.

It has features for reasonably secure use on both public and private
servers, including optional HMAC (access control) and three-way
handshake (anti-spoofing).
This commit is contained in:
sthen 2021-05-28 10:54:30 +00:00
parent 6f54f4b455
commit b4c3b59b76
4 changed files with 146 additions and 0 deletions

55
net/irtt/Makefile Normal file
View File

@ -0,0 +1,55 @@
# $OpenBSD: Makefile,v 1.1.1.1 2021/05/28 10:54:30 sthen Exp $
COMMENT= UDP latency tester, round-trip/1-way/jitter etc
MODGO_MODNAME= github.com/heistp/irtt
MODGO_VERSION= v0.9.1
DISTNAME= irtt-${MODGO_VERSION}
CATEGORIES= net
MAINTAINER= Stuart Henderson <stu.ports@spacehopper.org>
# GPLv2
PERMIT_PACKAGE= Yes
WANTLIB += c pthread
MODULES= lang/go
HOMEPAGE= https://github.com/heistp/irtt
MODGO_MODULES= \
github.com/ogier/pflag v0.0.2-0.20160129220114-45c278ab3607 \
github.com/pkg/profile v1.3.0 \
github.com/yuin/goldmark v1.3.5 \
golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550 \
golang.org/x/mod v0.4.2 \
golang.org/x/net v0.0.0-20210405180319-a5a99cb37ef4 \
golang.org/x/sync v0.0.0-20210220032951-036812b2e83c \
golang.org/x/sys v0.0.0-20210514084401-e8d321eab015 \
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1 \
golang.org/x/text v0.3.3 \
golang.org/x/tools v0.1.1 \
golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1
MODGO_MODFILES= \
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2 \
golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3 \
golang.org/x/net v0.0.0-20190620200207-3b0461eec859 \
golang.org/x/sync v0.0.0-20190423024810-112230192c58 \
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a \
golang.org/x/sys v0.0.0-20190412213103-97732733099d \
golang.org/x/sys v0.0.0-20201119102817-f84b799fce68 \
golang.org/x/sys v0.0.0-20210330210617-4fbd30eecc44 \
golang.org/x/sys v0.0.0-20210510120138-977fb7262007 \
golang.org/x/text v0.3.0 \
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e \
golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e \
golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7 \
golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898
post-install:
${INSTALL_MAN} ${WRKSRC}/doc/*.1 ${PREFIX}/man/man1/
.include <bsd.port.mk>

78
net/irtt/distinfo Normal file
View File

@ -0,0 +1,78 @@
SHA256 (go_modules/github.com/ogier/pflag/@v/v0.0.2-0.20160129220114-45c278ab3607.mod) = 1JyxIwWdXfFxUCbprR8WDIV389stDlBHvPWHUETjoJw=
SHA256 (go_modules/github.com/ogier/pflag/@v/v0.0.2-0.20160129220114-45c278ab3607.zip) = 1ttxBCjxeT20gC/22nrEoGkXiFwVMPyoHYo/HbBEB64=
SHA256 (go_modules/github.com/pkg/profile/@v/v1.3.0.mod) = WbNk4Z1GA9v7C9owGpc5j9OxEE1nbWeHaucEwQtiyuQ=
SHA256 (go_modules/github.com/pkg/profile/@v/v1.3.0.zip) = XyDAB6yBAZkA8Gzx5NRRzo4dmBRg454EeU+8xgY5+FE=
SHA256 (go_modules/github.com/yuin/goldmark/@v/v1.3.5.mod) = 2rHWY7hg6+VF/NzsJOX5M9UXvSAZr2jXprWodkqmGw8=
SHA256 (go_modules/github.com/yuin/goldmark/@v/v1.3.5.zip) = KZ83ljX6sY9KloHDcALcZnJwSaQaaPGbefnmpgT3Hgk=
SHA256 (go_modules/golang.org/x/crypto/@v/v0.0.0-20190308221718-c2843e01d9a2.mod) = M+0HClpm4JYGhaxThkQOG1mJnnTYo4oRgGhecqIZXe0=
SHA256 (go_modules/golang.org/x/crypto/@v/v0.0.0-20191011191535-87dc89f01550.mod) = OrnwH0YQ/ns5vYXWjo2XglNR5+KCw5zaQUV8KidvO+M=
SHA256 (go_modules/golang.org/x/crypto/@v/v0.0.0-20191011191535-87dc89f01550.zip) = iOR6oF6yXGq9rXOHzMz8OedFQYlth7exJp6d0voAEA0=
SHA256 (go_modules/golang.org/x/mod/@v/v0.4.2.mod) = sojwiP2FGIWm00gzni9YjlipTmx25eY0rh1nwnSetBM=
SHA256 (go_modules/golang.org/x/mod/@v/v0.4.2.zip) = ObybFXBmYwC6XIYkRiH/vMY7AHzmnmt6Rv+6dpGSliE=
SHA256 (go_modules/golang.org/x/net/@v/v0.0.0-20190404232315-eb5bcb51f2a3.mod) = 9wRnadqsAr61fLzEgSgN9Z+0A8lv6CYigquoWMf3+k0=
SHA256 (go_modules/golang.org/x/net/@v/v0.0.0-20190620200207-3b0461eec859.mod) = 5u/a94opUD8IDPbSYV4onPsdnjq31XD1NmjsorSrQdo=
SHA256 (go_modules/golang.org/x/net/@v/v0.0.0-20210405180319-a5a99cb37ef4.mod) = 9rD5lo9afZhvy1fr4qFAlRGLvRy/Z4XQA/ev1xHcsb0=
SHA256 (go_modules/golang.org/x/net/@v/v0.0.0-20210405180319-a5a99cb37ef4.zip) = Z+H3VLD2p3AWAFZ9dNDi/Nmuihug3+XXx4KEKuF8Tfg=
SHA256 (go_modules/golang.org/x/sync/@v/v0.0.0-20190423024810-112230192c58.mod) = Qh9hOWhtWJHz3FpWPQmVeA0yefZcrU0iXOpSaGeUFhw=
SHA256 (go_modules/golang.org/x/sync/@v/v0.0.0-20210220032951-036812b2e83c.mod) = Qh9hOWhtWJHz3FpWPQmVeA0yefZcrU0iXOpSaGeUFhw=
SHA256 (go_modules/golang.org/x/sync/@v/v0.0.0-20210220032951-036812b2e83c.zip) = kqhmOvA1poMdzJzJ2JWh9LtR/CHv6X8E+gZ2/BSZKkY=
SHA256 (go_modules/golang.org/x/sys/@v/v0.0.0-20190215142949-d0b11bdaac8a.mod) = iWkRXko5EIhIMk55ob2KhEUjDm46rMvp+AV/tQ//yME=
SHA256 (go_modules/golang.org/x/sys/@v/v0.0.0-20190412213103-97732733099d.mod) = GBl56L1X0tngZBgtqGyaYRGqaXVeiI8IQx7OR0Kuw0M=
SHA256 (go_modules/golang.org/x/sys/@v/v0.0.0-20201119102817-f84b799fce68.mod) = GBl56L1X0tngZBgtqGyaYRGqaXVeiI8IQx7OR0Kuw0M=
SHA256 (go_modules/golang.org/x/sys/@v/v0.0.0-20210330210617-4fbd30eecc44.mod) = GBl56L1X0tngZBgtqGyaYRGqaXVeiI8IQx7OR0Kuw0M=
SHA256 (go_modules/golang.org/x/sys/@v/v0.0.0-20210510120138-977fb7262007.mod) = 8DMzMJb+GY8xUd7tk/LeunTlC7/nc5E0BFvDt85KUCQ=
SHA256 (go_modules/golang.org/x/sys/@v/v0.0.0-20210514084401-e8d321eab015.mod) = 8DMzMJb+GY8xUd7tk/LeunTlC7/nc5E0BFvDt85KUCQ=
SHA256 (go_modules/golang.org/x/sys/@v/v0.0.0-20210514084401-e8d321eab015.zip) = RPe5VVFBe76FvHb6UozLQb8z3WrxvCRz1jL19sFJyTg=
SHA256 (go_modules/golang.org/x/term/@v/v0.0.0-20201126162022-7de9c90e9dd1.mod) = TLqxT3cGdxsnHZlaGzzBMf5aJGqtx+5tG6bwvYlHgfo=
SHA256 (go_modules/golang.org/x/term/@v/v0.0.0-20201126162022-7de9c90e9dd1.zip) = R1qG8R3RSLR0zkBcXb3V9ryuBWw+ROUkRaRZJt1ppVI=
SHA256 (go_modules/golang.org/x/text/@v/v0.3.0.mod) = NoedWG/YAB6E2oeHGQoR5PeHSeKoHf6Lm2kxiZ//Mc8=
SHA256 (go_modules/golang.org/x/text/@v/v0.3.3.mod) = +7eojtFAUV55Dsp6EP/TGcl4axHGpsfln4D3+ze7RUI=
SHA256 (go_modules/golang.org/x/text/@v/v0.3.3.zip) = iolto0a6+Uq08ksOOW3wt5OTyTqgXFDvB83dVhof+Nc=
SHA256 (go_modules/golang.org/x/tools/@v/v0.0.0-20180917221912-90fa682c2a6e.mod) = oOAvBnj+Ytw8S0vHf6kSybcN4Q+p988veq0DNzkrUq8=
SHA256 (go_modules/golang.org/x/tools/@v/v0.0.0-20191119224855-298f0cb1881e.mod) = iNR5Jl+Ib15ZjXbAA9DyV7QtvxuJXYIKErWrCzUBrKE=
SHA256 (go_modules/golang.org/x/tools/@v/v0.1.1.mod) = A2l2BTdO47D6m1AupFbZxq4YNdrCLjW6oqmcQFig/jE=
SHA256 (go_modules/golang.org/x/tools/@v/v0.1.1.zip) = I2bC5nnQXQ0HyF4aBR3q0wL6tYon92/KMaosv7xXo5s=
SHA256 (go_modules/golang.org/x/xerrors/@v/v0.0.0-20190717185122-a985d3407aa7.mod) = ql4+ybt7n2gWCe+sAZ2d4ae6dxkkj/Hqon54iC2z1/U=
SHA256 (go_modules/golang.org/x/xerrors/@v/v0.0.0-20191011141410-1b5146add898.mod) = ql4+ybt7n2gWCe+sAZ2d4ae6dxkkj/Hqon54iC2z1/U=
SHA256 (go_modules/golang.org/x/xerrors/@v/v0.0.0-20200804184101-5ec99f83aff1.mod) = ql4+ybt7n2gWCe+sAZ2d4ae6dxkkj/Hqon54iC2z1/U=
SHA256 (go_modules/golang.org/x/xerrors/@v/v0.0.0-20200804184101-5ec99f83aff1.zip) = OAqqM2iuFlYou0h89OaVpVwUIAcri3pvWcEi9qI7slU=
SHA256 (irtt-v0.9.1.zip) = aq8gDdjA/1tvHfavk1ZUpmyCKTuA3J0d5zWngkhDt0Y=
SIZE (go_modules/github.com/ogier/pflag/@v/v0.0.2-0.20160129220114-45c278ab3607.mod) = 30
SIZE (go_modules/github.com/ogier/pflag/@v/v0.0.2-0.20160129220114-45c278ab3607.zip) = 28852
SIZE (go_modules/github.com/pkg/profile/@v/v1.3.0.mod) = 30
SIZE (go_modules/github.com/pkg/profile/@v/v1.3.0.zip) = 8345
SIZE (go_modules/github.com/yuin/goldmark/@v/v1.3.5.mod) = 41
SIZE (go_modules/github.com/yuin/goldmark/@v/v1.3.5.zip) = 268257
SIZE (go_modules/golang.org/x/crypto/@v/v0.0.0-20190308221718-c2843e01d9a2.mod) = 88
SIZE (go_modules/golang.org/x/crypto/@v/v0.0.0-20191011191535-87dc89f01550.mod) = 146
SIZE (go_modules/golang.org/x/crypto/@v/v0.0.0-20191011191535-87dc89f01550.zip) = 1844911
SIZE (go_modules/golang.org/x/mod/@v/v0.4.2.mod) = 214
SIZE (go_modules/golang.org/x/mod/@v/v0.4.2.zip) = 141789
SIZE (go_modules/golang.org/x/net/@v/v0.0.0-20190404232315-eb5bcb51f2a3.mod) = 119
SIZE (go_modules/golang.org/x/net/@v/v0.0.0-20190620200207-3b0461eec859.mod) = 181
SIZE (go_modules/golang.org/x/net/@v/v0.0.0-20210405180319-a5a99cb37ef4.mod) = 179
SIZE (go_modules/golang.org/x/net/@v/v0.0.0-20210405180319-a5a99cb37ef4.zip) = 1565731
SIZE (go_modules/golang.org/x/sync/@v/v0.0.0-20190423024810-112230192c58.mod) = 25
SIZE (go_modules/golang.org/x/sync/@v/v0.0.0-20210220032951-036812b2e83c.mod) = 25
SIZE (go_modules/golang.org/x/sync/@v/v0.0.0-20210220032951-036812b2e83c.zip) = 28693
SIZE (go_modules/golang.org/x/sys/@v/v0.0.0-20190215142949-d0b11bdaac8a.mod) = 24
SIZE (go_modules/golang.org/x/sys/@v/v0.0.0-20190412213103-97732733099d.mod) = 33
SIZE (go_modules/golang.org/x/sys/@v/v0.0.0-20201119102817-f84b799fce68.mod) = 33
SIZE (go_modules/golang.org/x/sys/@v/v0.0.0-20210330210617-4fbd30eecc44.mod) = 33
SIZE (go_modules/golang.org/x/sys/@v/v0.0.0-20210510120138-977fb7262007.mod) = 33
SIZE (go_modules/golang.org/x/sys/@v/v0.0.0-20210514084401-e8d321eab015.mod) = 33
SIZE (go_modules/golang.org/x/sys/@v/v0.0.0-20210514084401-e8d321eab015.zip) = 1635348
SIZE (go_modules/golang.org/x/term/@v/v0.0.0-20201126162022-7de9c90e9dd1.mod) = 95
SIZE (go_modules/golang.org/x/term/@v/v0.0.0-20201126162022-7de9c90e9dd1.zip) = 23281
SIZE (go_modules/golang.org/x/text/@v/v0.3.0.mod) = 25
SIZE (go_modules/golang.org/x/text/@v/v0.3.3.mod) = 97
SIZE (go_modules/golang.org/x/text/@v/v0.3.3.zip) = 8010747
SIZE (go_modules/golang.org/x/tools/@v/v0.0.0-20180917221912-90fa682c2a6e.mod) = 26
SIZE (go_modules/golang.org/x/tools/@v/v0.0.0-20191119224855-298f0cb1881e.mod) = 212
SIZE (go_modules/golang.org/x/tools/@v/v0.1.1.mod) = 323
SIZE (go_modules/golang.org/x/tools/@v/v0.1.1.zip) = 3430655
SIZE (go_modules/golang.org/x/xerrors/@v/v0.0.0-20190717185122-a985d3407aa7.mod) = 37
SIZE (go_modules/golang.org/x/xerrors/@v/v0.0.0-20191011141410-1b5146add898.mod) = 37
SIZE (go_modules/golang.org/x/xerrors/@v/v0.0.0-20200804184101-5ec99f83aff1.mod) = 37
SIZE (go_modules/golang.org/x/xerrors/@v/v0.0.0-20200804184101-5ec99f83aff1.zip) = 22295
SIZE (irtt-v0.9.1.zip) = 143860

8
net/irtt/pkg/DESCR Normal file
View File

@ -0,0 +1,8 @@
IRTT (Isochronous Round-Trip Tester) is software that runs on a client
and server, using its own UDP-based protocol to allow measurements
including round-trip time, one-way delay (assuming the clocks are
synchronized), and lost/out-of-order/duplicate packets.
It has features for reasonably secure use on both public and private
servers, including optional HMAC (access control) and three-way
handshake (anti-spoofing).

5
net/irtt/pkg/PLIST Normal file
View File

@ -0,0 +1,5 @@
@comment $OpenBSD: PLIST,v 1.1.1.1 2021/05/28 10:54:30 sthen Exp $
@bin bin/irtt
@man man/man1/irtt-client.1
@man man/man1/irtt-server.1
@man man/man1/irtt.1