Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 18 May 2015 11:33:12 +0000 (UTC)
From:      Erwin Lansing <erwin@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r386671 - in head/dns: . knot2 knot2/files
Message-ID:  <201505181133.t4IBXCfj043362@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: erwin
Date: Mon May 18 11:33:11 2015
New Revision: 386671
URL: https://svnweb.freebsd.org/changeset/ports/386671

Log:
  Add knot2 beta, the next major release of the Knot DNS
  high-performance authoritative-only DNS server
  
  PR:		199868
  Submitted by:	Leo Vandewoestijne <freebsd@dns-lab.com>

Added:
  head/dns/knot2/
  head/dns/knot2/Makefile   (contents, props changed)
  head/dns/knot2/distinfo   (contents, props changed)
  head/dns/knot2/files/
  head/dns/knot2/files/knot.in   (contents, props changed)
  head/dns/knot2/files/pkg-message.in   (contents, props changed)
  head/dns/knot2/pkg-descr   (contents, props changed)
  head/dns/knot2/pkg-plist   (contents, props changed)
Modified:
  head/dns/Makefile

Modified: head/dns/Makefile
==============================================================================
--- head/dns/Makefile	Mon May 18 11:21:06 2015	(r386670)
+++ head/dns/Makefile	Mon May 18 11:33:11 2015	(r386671)
@@ -70,6 +70,7 @@
     SUBDIR += ipcheck
     SUBDIR += ironsides
     SUBDIR += knot
+    SUBDIR += knot2
     SUBDIR += ldapdns
     SUBDIR += ldns
     SUBDIR += ldnsm

Added: head/dns/knot2/Makefile
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/dns/knot2/Makefile	Mon May 18 11:33:11 2015	(r386671)
@@ -0,0 +1,73 @@
+# Created by: Leo Vandewoestijne <freebsd@dns-lab.com>
+# $FreeBSD$
+
+PORTNAME=	knot
+DISTVERSION=	2.0.0-beta
+CATEGORIES=	dns ipv6
+MASTER_SITES=	https://secure.nic.cz/files/knot-dns/ \
+		http://dns-lab.com/downloads/knot-dns/
+PKGNAMESUFFIX=	2
+
+MAINTAINER=	freebsd@dns-lab.com
+COMMENT=	High performance authoritative-only DNS server
+
+LICENSE=	GPLv3
+
+LIB_DEPENDS=	libgnutls.so:${PORTSDIR}/security/gnutls \
+		libjansson.so:${PORTSDIR}/devel/jansson \
+		liblmdb.so:${PORTSDIR}/databases/lmdb \
+		libnettle.so:${PORTSDIR}/security/nettle \
+		liburcu.so:${PORTSDIR}/sysutils/liburcu
+
+CONFLICTS=	knot-1.* knot1-[0-6].*
+
+USES=		alias libtool pkgconfig tar:xz
+USE_LDCONFIG=	yes
+
+GNU_CONFIGURE=	yes
+CONFIGURE_ARGS=	--with-rundir=/var/run/knot \
+		--with-storage=/var/db/knot \
+		--with-pkgconfigdir=${PREFIX}/libdata/pkgconfig
+
+.if defined(BATCH) || defined(PACKAGE_BUILDING)
+CONFIGURE_ARGS+=	--disable-silent-rules
+.endif
+
+INSTALL_TARGET=	install-strip
+
+USE_RC_SUBR=	${PORTNAME}
+SUB_FILES=	pkg-message
+
+USERS=		knot
+GROUPS=		knot
+SUB_LIST+=	USERS="${USERS}" GROUPS="${GROUPS}"
+
+PORTDOCS=	AUTHORS COPYING ChangeLog INSTALL NEWS README THANKS
+
+OPTIONS_DEFINE=			DNSTAP FASTPARSER IDN
+
+DNSTAP_DESC=			dnstap support (see dnstap.info)
+DNSTAP_CONFIGURE_ENABLE=	dnstap
+DNSTAP_LIB_DEPENDS=		libfstrm.so:${PORTSDIR}/devel/fstrm \
+				libprotobuf-c.so:${PORTSDIR}/devel/protobuf-c
+
+FASTPARSER_DESC=		Fast zone parser (demanding compilation)
+FASTPARSER_CONFIGURE_ENABLE=	fastparser
+
+IDN_CONFIGURE_WITH=		libidn
+IDN_LIB_DEPENDS=		libidn.so:${PORTSDIR}/dns/libidn
+
+post-patch:
+	@${REINPLACE_CMD} 's|$$(INSTALL) -d $$(DESTDIR)/\@run_dir\@|#$$(INSTALL) -d $$(DESTDIR)/\@run_dir\@|' \
+		${WRKSRC}/src/Makefile.in
+	@${REINPLACE_CMD} 's|$$(INSTALL) -d $$(DESTDIR)/\@storage_dir\@|#$$(INSTALL) -d $$(DESTDIR)/\@storage_dir\@|' \
+		${WRKSRC}/src/Makefile.in
+	@${RM} -rf ${WRKSRC}/src/zscanner/scanner.c
+
+post-install:
+	${MV} ${STAGEDIR}${ETCDIR}/knot.sample.conf \
+		${STAGEDIR}${ETCDIR}/knot.conf.sample
+	@${MKDIR} ${STAGEDIR}${DOCSDIR}
+	${INSTALL_DATA} ${PORTDOCS:S,^,${WRKSRC}/,} ${STAGEDIR}${DOCSDIR}/
+
+.include <bsd.port.mk>

Added: head/dns/knot2/distinfo
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/dns/knot2/distinfo	Mon May 18 11:33:11 2015	(r386671)
@@ -0,0 +1,2 @@
+SHA256 (knot-2.0.0-beta.tar.xz) = 7ed997d15b523abcaede51d7ce3670a687d7658b96eb742b9dd87ac5d3e0e9af
+SIZE (knot-2.0.0-beta.tar.xz) = 939468

Added: head/dns/knot2/files/knot.in
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/dns/knot2/files/knot.in	Mon May 18 11:33:11 2015	(r386671)
@@ -0,0 +1,54 @@
+#!/bin/sh
+#
+# $FreeBSD$
+#
+# PROVIDE: knot
+# REQUIRE: SERVERS cleanvar
+# KEYWORD: shutdown
+#
+# Add the following lines to /etc/rc.conf to enable knot:
+#
+# knot_enable="YES":	Set to NO by default.
+#			Set it to YES to enable knot.
+# knot_config="":	Set to /usr/local/etc/knot/knot.conf
+#			by default.
+
+. /etc/rc.subr
+
+name=knot
+rcvar=knot_enable
+
+load_rc_config ${name}
+
+: ${knot_enable:=NO}
+: ${knot_config="%%PREFIX%%/etc/knot/knot.conf"}
+
+command=%%PREFIX%%/sbin/knotd
+command_args="-c ${knot_config} -d"
+control=%%PREFIX%%/sbin/knotc
+pidfile=/var/run/knot/knot.pid
+
+required_files=${knot_config}
+
+extra_commands=reload
+reload_cmd="${name}_reload"
+start_precmd="${name}_prestart"
+
+knot_prestart()
+{
+	if [ ! -d /var/run/knot ]; then
+		install -d -o %%USERS%% -g %%GROUPS%% /var/run/knot
+	fi
+	if [ ! -d /var/db/knot ]; then
+		install -d -o %%USERS%% -g %%GROUPS%% /var/db/knot
+	fi
+	${control} -c ${knot_config} checkconf
+}
+
+knot_reload()
+{
+	echo "Reloading ${name}."
+	${control} -c ${knot_config} reload
+}
+
+run_rc_command "$1"

Added: head/dns/knot2/files/pkg-message.in
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/dns/knot2/files/pkg-message.in	Mon May 18 11:33:11 2015	(r386671)
@@ -0,0 +1,17 @@
+######################################################################
+
+  To start using Knot DNS, you should complete the following tasks:
+
+    cp %%ETCDIR%%/knot.conf.sample %%ETCDIR%%/knot.conf
+    $EDITOR %%ETCDIR%%/knot.conf
+    sysrc knot_enable=YES
+    sysrc knot_config=%%ETCDIR%%/knot.conf
+    service knot start
+
+  Traditional (pre-FreeBSD 9.2) method, for last three commands:
+
+    echo knot_enable=\"YES\" >> /etc/rc.conf
+    echo knot_config=\"%%PREFIX%%/etc/knot/knot.conf\" >> /etc/rc.conf
+    %%PREFIX%%/etc/rc.d/knot start
+
+######################################################################

Added: head/dns/knot2/pkg-descr
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/dns/knot2/pkg-descr	Mon May 18 11:33:11 2015	(r386671)
@@ -0,0 +1,14 @@
+Knot DNS is a high-performance authoritative-only DNS server which
+supports all key features of the domain name system including zone
+AXFR and IXFR, DDNS and DNSSEC.  Its key features:
+
+ * Open source
+ * High-performance, multi-threaded, and mostly lock-free
+   implementation which scales well on SMPs
+ * Object-oriented design
+ * Support for all important DNS protocols:
+   - Full and incremental zone transfers
+   - EDNS0 and DNSSEC extensions, including NSEC3
+   - NSID
+
+WWW: http://www.knot-dns.cz/

Added: head/dns/knot2/pkg-plist
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/dns/knot2/pkg-plist	Mon May 18 11:33:11 2015	(r386671)
@@ -0,0 +1,118 @@
+%%ETCDIR%%/example.com.zone
+@sample %%ETCDIR%%/knot.conf.sample
+bin/kdig
+bin/khost
+bin/knot1to2
+bin/knsec3hash
+bin/knsupdate
+include/dnssec/binary.h
+include/dnssec/crypto.h
+include/dnssec/error.h
+include/dnssec/event.h
+include/dnssec/kasp.h
+include/dnssec/key.h
+include/dnssec/keyid.h
+include/dnssec/keystore.h
+include/dnssec/keytag.h
+include/dnssec/list.h
+include/dnssec/nsec.h
+include/dnssec/random.h
+include/dnssec/sign.h
+include/dnssec/tsig.h
+include/libknot/binary.h
+include/libknot/consts.h
+include/libknot/descriptor.h
+include/libknot/dname.h
+include/libknot/dnssec/key.h
+include/libknot/errcode.h
+include/libknot/internal/array-sort.h
+include/libknot/internal/base32hex.h
+include/libknot/internal/base64.h
+include/libknot/internal/binsearch.h
+include/libknot/internal/consts.h
+include/libknot/internal/endian.h
+include/libknot/internal/errcode.h
+include/libknot/internal/getline.h
+include/libknot/internal/heap.h
+include/libknot/internal/hhash.h
+include/libknot/internal/lists.h
+include/libknot/internal/macros.h
+include/libknot/internal/mem.h
+include/libknot/internal/mempattern.h
+include/libknot/internal/mempool.h
+include/libknot/internal/namedb/namedb.h
+include/libknot/internal/namedb/namedb_lmdb.h
+include/libknot/internal/namedb/namedb_trie.h
+include/libknot/internal/net.h
+include/libknot/internal/print.h
+include/libknot/internal/sockaddr.h
+include/libknot/internal/strlcat.h
+include/libknot/internal/strlcpy.h
+include/libknot/internal/tolower.h
+include/libknot/internal/trie/hat-trie.h
+include/libknot/internal/trie/murmurhash3.h
+include/libknot/internal/utils.h
+include/libknot/libknot.h
+include/libknot/packet/compr.h
+include/libknot/packet/pkt.h
+include/libknot/packet/rrset-wire.h
+include/libknot/packet/wire.h
+include/libknot/processing/layer.h
+include/libknot/processing/overlay.h
+include/libknot/processing/requestor.h
+include/libknot/rdata.h
+include/libknot/rdataset.h
+include/libknot/rrset-dump.h
+include/libknot/rrset.h
+include/libknot/rrtype/aaaa.h
+include/libknot/rrtype/dnskey.h
+include/libknot/rrtype/naptr.h
+include/libknot/rrtype/nsec.h
+include/libknot/rrtype/nsec3.h
+include/libknot/rrtype/nsec3param.h
+include/libknot/rrtype/opt.h
+include/libknot/rrtype/rdname.h
+include/libknot/rrtype/rrsig.h
+include/libknot/rrtype/soa.h
+include/libknot/rrtype/tsig.h
+include/libknot/tsig-op.h
+include/libknot/yparser/yparser.h
+include/libknot/yparser/ypformat.h
+include/libknot/yparser/ypscheme.h
+include/libknot/yparser/yptrafo.h
+lib/libdnssec.a
+lib/libdnssec.so
+lib/libdnssec.so.0
+lib/libdnssec.so.0.0.0
+lib/libknot-2.so.0
+lib/libknot-2.so.0.0.0
+lib/libknot-int-2.so.0
+lib/libknot-int-2.so.0.0.0
+lib/libknot-int.a
+lib/libknot-int.so
+lib/libknot-yparser-2.so.0
+lib/libknot-yparser-2.so.0.0.0
+lib/libknot-yparser.a
+lib/libknot-yparser.so
+lib/libknot.a
+lib/libknot.so
+lib/libzscanner.a
+lib/libzscanner.so
+lib/libzscanner.so.0
+lib/libzscanner.so.0.0.0
+libdata/pkgconfig/libdnssec.pc
+libdata/pkgconfig/libknot-int.pc
+libdata/pkgconfig/libknot-yparser.pc
+libdata/pkgconfig/libknot.pc
+man/man1/kdig.1.gz
+man/man1/khost.1.gz
+man/man1/knot1to2.1.gz
+man/man1/knsec3hash.1.gz
+man/man1/knsupdate.1.gz
+man/man5/knot.conf.5.gz
+man/man8/keymgr.8.gz
+man/man8/knotc.8.gz
+man/man8/knotd.8.gz
+sbin/keymgr
+sbin/knotc
+sbin/knotd



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