Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 4 Oct 2021 21:44:09 GMT
From:      Daniel Engberg <diizzy@FreeBSD.org>
To:        ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org
Subject:   git: bfcb458976fe - main - dns/dnsjit: New port: Engine for capturing, parsing and replaying DNS
Message-ID:  <202110042144.194Li9cG053069@gitrepo.freebsd.org>

next in thread | raw e-mail | index | archive | help
The branch main has been updated by diizzy:

URL: https://cgit.FreeBSD.org/ports/commit/?id=bfcb458976fe81177098555c5f259f2d076a2b3a

commit bfcb458976fe81177098555c5f259f2d076a2b3a
Author:     Kurt Jaeger <pi@FreeBSD.org>
AuthorDate: 2021-10-04 21:31:10 +0000
Commit:     Daniel Engberg <diizzy@FreeBSD.org>
CommitDate: 2021-10-04 21:43:54 +0000

    dns/dnsjit: New port: Engine for capturing, parsing and replaying DNS
    
    dnsjit is a combination of parts taken from dsc, dnscap, drool, and
    put together around Lua to create a script-based engine for easy
    capturing, parsing and statistics gathering of DNS messages while
    also providing facilities for replaying DNS traffic.
    
    WWW: https://github.com/DNS-OARC/dnsjit
    
    Originally submitted by pi, updated by Leo Vandewoestijne and I made
    some minor fixes on top of Leo's patch
    
    PR:             235461
    Approved by:    arrowd (mentor)
    Differential Revision:  https://reviews.freebsd.org/D32268
---
 dns/Makefile         |   1 +
 dns/dnsjit/Makefile  |  35 ++++++++++++
 dns/dnsjit/distinfo  |   5 ++
 dns/dnsjit/pkg-descr |  13 +++++
 dns/dnsjit/pkg-plist | 158 +++++++++++++++++++++++++++++++++++++++++++++++++++
 5 files changed, 212 insertions(+)

diff --git a/dns/Makefile b/dns/Makefile
index 83a25830788b..4de49cd05ccc 100644
--- a/dns/Makefile
+++ b/dns/Makefile
@@ -44,6 +44,7 @@
     SUBDIR += dnsforwarder
     SUBDIR += dnshistory
     SUBDIR += dnsjava
+    SUBDIR += dnsjit
     SUBDIR += dnsmasq
     SUBDIR += dnsmasq-devel
     SUBDIR += dnsmax-perl
diff --git a/dns/dnsjit/Makefile b/dns/dnsjit/Makefile
new file mode 100644
index 000000000000..d058a50519b9
--- /dev/null
+++ b/dns/dnsjit/Makefile
@@ -0,0 +1,35 @@
+PORTNAME=	dnsjit
+DISTVERSIONPREFIX=	v
+DISTVERSION=	1.2.1
+CATEGORIES=	dns net
+
+PATCH_SITES=	https://github.com/DNS-OARC/dnsjit/commit/
+PATCHFILES=	3cdd801153373a316027920e5c650f111777fab4.patch:-p1
+
+MAINTAINER=	freebsd@dns.company
+COMMENT=	Engine for capturing, parsing and replaying DNS
+
+LICENSE=	GPLv3
+LICENSE_FILE=	${WRKSRC}/LICENSE
+
+LIB_DEPENDS=	libck.so:devel/concurrencykit \
+		libgnutls.so:security/gnutls \
+		liblmdb.so:databases/lmdb \
+		libluajit-5.1.so:lang/luajit-openresty \
+		liblz4.so:archivers/liblz4 \
+		libpcap.so:net/libpcap \
+		libzstd.so:archivers/zstd
+
+USES=		autoreconf libtool pkgconfig
+USE_GITHUB=	yes
+GH_ACCOUNT=	DNS-OARC
+
+GNU_CONFIGURE=	yes
+
+OPTIONS_DEFINE=	EXAMPLES
+
+post-install-EXAMPLES-on:
+	${MKDIR} ${STAGEDIR}${EXAMPLESDIR}
+	${INSTALL_DATA} ${WRKSRC}/examples/*.lua ${STAGEDIR}${EXAMPLESDIR}
+
+.include <bsd.port.mk>
diff --git a/dns/dnsjit/distinfo b/dns/dnsjit/distinfo
new file mode 100644
index 000000000000..3734d8a07249
--- /dev/null
+++ b/dns/dnsjit/distinfo
@@ -0,0 +1,5 @@
+TIMESTAMP = 1631872554
+SHA256 (DNS-OARC-dnsjit-v1.2.1_GH0.tar.gz) = ecac17974d104c17d1df775c2b548109ad7e53d05fbc2acd823fa43fce330d51
+SIZE (DNS-OARC-dnsjit-v1.2.1_GH0.tar.gz) = 187114
+SHA256 (3cdd801153373a316027920e5c650f111777fab4.patch) = dfebe484d81e35c13f87b060eba4878cee88c0edd00a6caa57573f897e5f9a9b
+SIZE (3cdd801153373a316027920e5c650f111777fab4.patch) = 1009
diff --git a/dns/dnsjit/pkg-descr b/dns/dnsjit/pkg-descr
new file mode 100644
index 000000000000..9182b6f39c4b
--- /dev/null
+++ b/dns/dnsjit/pkg-descr
@@ -0,0 +1,13 @@
+dnsjit is a combination of parts taken from dsc, dnscap, drool, and
+put together around Lua to create a script-based engine for easy
+capturing, parsing and statistics gathering of DNS messages while
+also providing facilities for replaying DNS traffic.
+
+One of the core functionality that dnsjit brings is to tie together
+C and Lua modules through a receiver/receive interface. This allows
+creation of custom chains of functionality to meet various requirements.
+Another core functionality is the ability to parse and process DNS
+messages even if the messages are non-compliant with the DNS
+standards.
+
+WWW: https://www.dns-oarc.net/tools/dnsjit
diff --git a/dns/dnsjit/pkg-plist b/dns/dnsjit/pkg-plist
new file mode 100644
index 000000000000..6bb99d122095
--- /dev/null
+++ b/dns/dnsjit/pkg-plist
@@ -0,0 +1,158 @@
+bin/dnsjit
+include/dnsjit/core/assert.h
+include/dnsjit/core/channel.h
+include/dnsjit/core/channel.hh
+include/dnsjit/core/compat.h
+include/dnsjit/core/file.h
+include/dnsjit/core/file.hh
+include/dnsjit/core/log.h
+include/dnsjit/core/log.hh
+include/dnsjit/core/object.h
+include/dnsjit/core/object.hh
+include/dnsjit/core/object/dns.h
+include/dnsjit/core/object/dns.hh
+include/dnsjit/core/object/ether.h
+include/dnsjit/core/object/ether.hh
+include/dnsjit/core/object/gre.h
+include/dnsjit/core/object/gre.hh
+include/dnsjit/core/object/icmp.h
+include/dnsjit/core/object/icmp.hh
+include/dnsjit/core/object/icmp6.h
+include/dnsjit/core/object/icmp6.hh
+include/dnsjit/core/object/ieee802.h
+include/dnsjit/core/object/ieee802.hh
+include/dnsjit/core/object/ip.h
+include/dnsjit/core/object/ip.hh
+include/dnsjit/core/object/ip6.h
+include/dnsjit/core/object/ip6.hh
+include/dnsjit/core/object/linuxsll.h
+include/dnsjit/core/object/linuxsll.hh
+include/dnsjit/core/object/loop.h
+include/dnsjit/core/object/loop.hh
+include/dnsjit/core/object/null.h
+include/dnsjit/core/object/null.hh
+include/dnsjit/core/object/payload.h
+include/dnsjit/core/object/payload.hh
+include/dnsjit/core/object/pcap.h
+include/dnsjit/core/object/pcap.hh
+include/dnsjit/core/object/tcp.h
+include/dnsjit/core/object/tcp.hh
+include/dnsjit/core/object/udp.h
+include/dnsjit/core/object/udp.hh
+include/dnsjit/core/producer.h
+include/dnsjit/core/producer.hh
+include/dnsjit/core/receiver.h
+include/dnsjit/core/receiver.hh
+include/dnsjit/core/thread.h
+include/dnsjit/core/thread.hh
+include/dnsjit/core/timespec.h
+include/dnsjit/core/timespec.hh
+include/dnsjit/filter/copy.h
+include/dnsjit/filter/copy.hh
+include/dnsjit/filter/ipsplit.h
+include/dnsjit/filter/ipsplit.hh
+include/dnsjit/filter/layer.h
+include/dnsjit/filter/layer.hh
+include/dnsjit/filter/split.h
+include/dnsjit/filter/split.hh
+include/dnsjit/filter/timing.h
+include/dnsjit/filter/timing.hh
+include/dnsjit/globals.h
+include/dnsjit/input/fpcap.h
+include/dnsjit/input/fpcap.hh
+include/dnsjit/input/mmpcap.h
+include/dnsjit/input/mmpcap.hh
+include/dnsjit/input/pcap.h
+include/dnsjit/input/pcap.hh
+include/dnsjit/input/zpcap.h
+include/dnsjit/input/zpcap.hh
+include/dnsjit/lib/base64url.h
+include/dnsjit/lib/base64url.hh
+include/dnsjit/lib/clock.h
+include/dnsjit/lib/clock.hh
+include/dnsjit/lib/trie.h
+include/dnsjit/lib/trie.hh
+include/dnsjit/output/dnscli.h
+include/dnsjit/output/dnscli.hh
+include/dnsjit/output/pcap.h
+include/dnsjit/output/pcap.hh
+include/dnsjit/output/respdiff.h
+include/dnsjit/output/respdiff.hh
+include/dnsjit/output/tcpcli.h
+include/dnsjit/output/tcpcli.hh
+include/dnsjit/output/tlscli.h
+include/dnsjit/output/tlscli.hh
+include/dnsjit/output/udpcli.h
+include/dnsjit/output/udpcli.hh
+include/dnsjit/version.h
+man/man1/dnsjit.1.gz
+man/man3/dnsjit.core.3.gz
+man/man3/dnsjit.core.channel.3.gz
+man/man3/dnsjit.core.compat.3.gz
+man/man3/dnsjit.core.file.3.gz
+man/man3/dnsjit.core.loader.3.gz
+man/man3/dnsjit.core.log.3.gz
+man/man3/dnsjit.core.object.3.gz
+man/man3/dnsjit.core.object.dns.3.gz
+man/man3/dnsjit.core.object.dns.label.3.gz
+man/man3/dnsjit.core.object.dns.q.3.gz
+man/man3/dnsjit.core.object.dns.rr.3.gz
+man/man3/dnsjit.core.object.ether.3.gz
+man/man3/dnsjit.core.object.gre.3.gz
+man/man3/dnsjit.core.object.icmp.3.gz
+man/man3/dnsjit.core.object.icmp6.3.gz
+man/man3/dnsjit.core.object.ieee802.3.gz
+man/man3/dnsjit.core.object.ip.3.gz
+man/man3/dnsjit.core.object.ip6.3.gz
+man/man3/dnsjit.core.object.linuxsll.3.gz
+man/man3/dnsjit.core.object.loop.3.gz
+man/man3/dnsjit.core.object.null.3.gz
+man/man3/dnsjit.core.object.payload.3.gz
+man/man3/dnsjit.core.object.pcap.3.gz
+man/man3/dnsjit.core.object.tcp.3.gz
+man/man3/dnsjit.core.object.udp.3.gz
+man/man3/dnsjit.core.objects.3.gz
+man/man3/dnsjit.core.producer.3.gz
+man/man3/dnsjit.core.receiver.3.gz
+man/man3/dnsjit.core.thread.3.gz
+man/man3/dnsjit.core.timespec.3.gz
+man/man3/dnsjit.filter.3.gz
+man/man3/dnsjit.filter.copy.3.gz
+man/man3/dnsjit.filter.ipsplit.3.gz
+man/man3/dnsjit.filter.layer.3.gz
+man/man3/dnsjit.filter.split.3.gz
+man/man3/dnsjit.filter.timing.3.gz
+man/man3/dnsjit.input.3.gz
+man/man3/dnsjit.input.fpcap.3.gz
+man/man3/dnsjit.input.mmpcap.3.gz
+man/man3/dnsjit.input.pcap.3.gz
+man/man3/dnsjit.input.zero.3.gz
+man/man3/dnsjit.input.zpcap.3.gz
+man/man3/dnsjit.lib.3.gz
+man/man3/dnsjit.lib.base64url.3.gz
+man/man3/dnsjit.lib.clock.3.gz
+man/man3/dnsjit.lib.getopt.3.gz
+man/man3/dnsjit.lib.ip.3.gz
+man/man3/dnsjit.lib.parseconf.3.gz
+man/man3/dnsjit.lib.trie.3.gz
+man/man3/dnsjit.lib.trie.iter.3.gz
+man/man3/dnsjit.lib.trie.node.3.gz
+man/man3/dnsjit.output.3.gz
+man/man3/dnsjit.output.dnscli.3.gz
+man/man3/dnsjit.output.null.3.gz
+man/man3/dnsjit.output.pcap.3.gz
+man/man3/dnsjit.output.respdiff.3.gz
+man/man3/dnsjit.output.tcpcli.3.gz
+man/man3/dnsjit.output.tlscli.3.gz
+man/man3/dnsjit.output.udpcli.3.gz
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/capture.lua
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/count-pkts-per-ip.lua
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/dumpdns-qr.lua
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/dumpdns.lua
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/dumpdns2pcap.lua
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/filter_rcode.lua
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/qr-multi-pcap-state.lua
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/readme.lua
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/replay.lua
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/replay_multicli.lua
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/respdiff.lua



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202110042144.194Li9cG053069>