summaryrefslogtreecommitdiff
path: root/net
diff options
context:
space:
mode:
authorpettai <pettai@pkgsrc.org>2013-10-29 15:13:34 +0000
committerpettai <pettai@pkgsrc.org>2013-10-29 15:13:34 +0000
commitae00cfc742546bca837f86f2faf65e8395efa450 (patch)
tree8f49865c0e0dffe6b25c6e04b5fe31cf33151102 /net
parent376adc55a499db48591823fbf6f6802a794d2105 (diff)
downloadpkgsrc-ae00cfc742546bca837f86f2faf65e8395efa450.tar.gz
NSD 4.0.0
Features: * documented in doc/NSD-4-features. Change configuration without restart, direct nameserver control with nsd-control, support a higher number of zones. Higher performance (compared to NSD3). * nsdc is gone. Use kill -HUP for reload (also checks if zonefiles have changed and rereads them), and kill -TERM for quit. Or use nsd-control for detailed control. * cron job for nsdc patch is gone. nsd-control write creates zonefiles. * nsd.db has a new format that compacts itself when it is changed, thus nsdc patch is no longer necessary. * nsd.db is memory mapped, NSD needs (part of) that mmap in ram. * tcp-count can go above 1000; epoll/kqueue support with libevent. * nsd-control reconfig for updates with no restart (zones, keys, ..) * nsd-control-setup to create keys for nsd-control (enable nsd-control with remote-control: yes in nsd.conf).
Diffstat (limited to 'net')
-rw-r--r--net/nsd/MESSAGE29
-rw-r--r--net/nsd/Makefile21
-rw-r--r--net/nsd/PLIST19
-rw-r--r--net/nsd/distinfo10
-rw-r--r--net/nsd/patches/patch-aa10
5 files changed, 50 insertions, 39 deletions
diff --git a/net/nsd/MESSAGE b/net/nsd/MESSAGE
index 732a9c88529..0b1e3e8ab42 100644
--- a/net/nsd/MESSAGE
+++ b/net/nsd/MESSAGE
@@ -1,12 +1,27 @@
===========================================================================
-$NetBSD: MESSAGE,v 1.3 2012/04/18 10:39:43 pettai Exp $
+$NetBSD: MESSAGE,v 1.4 2013/10/29 15:13:34 pettai Exp $
-nsd.db version number increased because NSD 3.2.7 and earlier zonec is
-not compatible due to the TXT strings change. Please run nsdc rebuild
-before running NSD 3.2.9 and later versions.
+The old NSD3 config file can be used without changes for NSD4. There are
+new config statements and some old statements are gone.
-The configuration format of nsd has changed between 2.x and 3.x.
-A sample Python script to help migrating the old nsd.zones format
-into the new nsd.conf can be found in share/examples/nsd.
+The nsd.db file has a new format that allows read and write. Thus the
+nsd.db file needs to be re-created in NSD4 format. This happens when
+you start NSD4. NSD4 needs write permission on the nsd.db directory
+for that. If you need to rollback to NSD3, run its zonec to recreate
+the NSD3 nsd.db file (use nsdc rebuild).
+
+The cron job for nsdc patch is no longer needed. It can be removed.
+
+If you admire cron jobs, you can have a cron job that does "nsd-control
+write". This would periodically write the contents of changed zones to
+their zonefile.
+
+nsdc is removed, reload with kill -HUP $pid and use nsd-control.
+The SIGHUP makes NSD4 check zone file timestamps and reload changed zones.
+nsd-control reload is the same. SIGTERM stops NSD.
+
+You probably want to install and enable some of the new NSD 4 features,
+such as set up nsd-control and statistics. And you may want to use the
+new pattern config options.
===========================================================================
diff --git a/net/nsd/Makefile b/net/nsd/Makefile
index 801721732f0..08b741e977b 100644
--- a/net/nsd/Makefile
+++ b/net/nsd/Makefile
@@ -1,6 +1,6 @@
-# $NetBSD: Makefile,v 1.65 2013/09/21 22:37:22 pettai Exp $
+# $NetBSD: Makefile,v 1.66 2013/10/29 15:13:34 pettai Exp $
-DISTNAME= nsd-3.2.16
+DISTNAME= nsd-4.0.0
CATEGORIES= net
MASTER_SITES= http://www.nlnetlabs.nl/downloads/nsd/
@@ -19,12 +19,16 @@ PKG_SUGGESTED_OPTIONS= inet6
.include "../../mk/bsd.options.mk"
+USE_LANGUAGES= c c++
+USE_LIBTOOL= yes
+
GNU_CONFIGURE= yes
PKG_SYSCONFSUBDIR= nsd
+CONFIGURE_ARGS+=--prefix=${PREFIX:Q}
+CONFIGURE_ARGS+=--localstatedir=${VARBASE}
CONFIGURE_ARGS+=--with-configdir=${PKG_SYSCONFDIR:Q}
-CONFIGURE_ARGS+=--enable-bind8-stats
.if !empty(PKG_OPTIONS:Minet6)
CONFIGURE_ARGS+=--enable-ipv6
.else
@@ -38,9 +42,9 @@ CONFIGURE_ARGS+=--disable-ratelimit
CONFIGURE_ARGS+=--with-pidfile=${VARBASE}/run/nsd.pid
CONFIGURE_ARGS+=--with-user=${NSD_USER}
-CONFIGURE_ARGS+=--with-dbfile=${VARBASE}/db/nsd.db
-CONFIGURE_ARGS+=--with-difffile=${VARBASE}/db/nsd-ixfr.db
-CONFIGURE_ARGS+=--with-xfrdfile=${VARBASE}/db/nsd-xfrd.state
+CONFIGURE_ARGS+=--with-dbfile=${VARBASE}/nsd/nsd.db
+CONFIGURE_ARGS+=--with-xfrdfile=${VARBASE}/nsd/nsd-xfrd.state
+CONFIGURE_ARGS+=--with-libevent=${BUILDLINK_PREFIX.libevent}
CONFIGURE_ARGS+=--with-ssl=${BUILDLINK_PREFIX.openssl}
RCD_SCRIPTS= nsd
@@ -54,11 +58,10 @@ PKG_USERS= ${NSD_USER}:${NSD_GROUP}
CONF_FILES+= share/examples/nsd/nsd.conf ${PKG_SYSCONFDIR}/nsd.conf
INSTALLATION_DIRS= share/examples/nsd
+INSTALLATION_DIRS+= ${VARBASE}/nsd
CFLAGS.SunOS+= -Du_int32_t=uint32_t
-post-install:
- ${INSTALL_DATA} ${WRKSRC}/contrib/nsd.zones2nsd.conf ${DESTDIR}${PREFIX}/share/examples/nsd
-
+.include "../../devel/libevent/buildlink3.mk"
.include "../../security/openssl/buildlink3.mk"
.include "../../mk/bsd.pkg.mk"
diff --git a/net/nsd/PLIST b/net/nsd/PLIST
index d3434080a99..ab83b9b4919 100644
--- a/net/nsd/PLIST
+++ b/net/nsd/PLIST
@@ -1,19 +1,12 @@
-@comment $NetBSD: PLIST,v 1.10 2009/06/14 18:09:36 joerg Exp $
+@comment $NetBSD: PLIST,v 1.11 2013/10/29 15:13:34 pettai Exp $
man/man5/nsd.conf.5
man/man8/nsd-checkconf.8
-man/man8/nsd-notify.8
-man/man8/nsd-patch.8
-man/man8/nsd-xfer.8
+man/man8/nsd-control.8
man/man8/nsd.8
-man/man8/nsdc.8
-man/man8/zonec.8
sbin/nsd
sbin/nsd-checkconf
-sbin/nsd-notify
-sbin/nsd-patch
-sbin/nsd-xfer
-sbin/nsdc
-sbin/zonec
-share/examples/rc.d/nsd
+sbin/nsd-control
+sbin/nsd-control-setup
share/examples/nsd/nsd.conf
-share/examples/nsd/nsd.zones2nsd.conf
+share/examples/rc.d/nsd
+@pkgdir etc/nsd
diff --git a/net/nsd/distinfo b/net/nsd/distinfo
index 5d08ce16f89..390c90b8f84 100644
--- a/net/nsd/distinfo
+++ b/net/nsd/distinfo
@@ -1,7 +1,7 @@
-$NetBSD: distinfo,v 1.38 2013/09/21 22:37:22 pettai Exp $
+$NetBSD: distinfo,v 1.39 2013/10/29 15:13:34 pettai Exp $
-SHA1 (nsd-3.2.16.tar.gz) = cb95efa819902799365691a0a7ddb3690a97df88
-RMD160 (nsd-3.2.16.tar.gz) = 1076592ea33f8422e87729bf432acc8c3fbe5436
-Size (nsd-3.2.16.tar.gz) = 917815 bytes
-SHA1 (patch-aa) = 1cbf06e900f7e1d4198cea00aa2c89f94153fc3c
+SHA1 (nsd-4.0.0.tar.gz) = b3ebd669be8e830f62062d12be55242ca41da369
+RMD160 (nsd-4.0.0.tar.gz) = a607d92a35bb12e04489a5d29c8232a87380608b
+Size (nsd-4.0.0.tar.gz) = 1035710 bytes
+SHA1 (patch-aa) = 92e8217360c8384f0a17d51d08bac37ef82e39a7
SHA1 (patch-util.c) = acaf676e675fc07ef51b4c1cc056214731bc193f
diff --git a/net/nsd/patches/patch-aa b/net/nsd/patches/patch-aa
index ddf80444447..a40154ce31b 100644
--- a/net/nsd/patches/patch-aa
+++ b/net/nsd/patches/patch-aa
@@ -1,12 +1,12 @@
-$NetBSD: patch-aa,v 1.12 2013/02/08 23:51:08 pettai Exp $
+$NetBSD: patch-aa,v 1.13 2013/10/29 15:13:34 pettai Exp $
Install nsd.conf.sample in examples directory
---- Makefile.in.orig 2007-08-12 00:06:16.000000000 +0200
+--- Makefile.in.orig 2012-10-14 10:22:12.000000000 +0000
+++ Makefile.in
-@@ -328,7 +328,7 @@ install: all
- $(INSTALL_DATA) $(srcdir)/nsd-patch.8 $(DESTDIR)$(mandir)/man8/nsd-patch.8
- $(INSTALL_DATA) $(srcdir)/nsd-xfer.8 $(DESTDIR)$(mandir)/man8/nsd-xfer.8
+@@ -125,7 +125,7 @@ install: all
+ $(INSTALL_DATA) $(srcdir)/nsd-checkconf.8 $(DESTDIR)$(mandir)/man8/nsd-checkconf.8
+ $(INSTALL_DATA) $(srcdir)/nsd-control.8 $(DESTDIR)$(mandir)/man8/nsd-control.8
$(INSTALL_DATA) $(srcdir)/nsd.conf.5 $(DESTDIR)$(mandir)/man5/nsd.conf.5
- $(INSTALL_DATA) nsd.conf.sample $(DESTDIR)$(nsdconfigfile).sample
+ $(INSTALL_DATA) nsd.conf.sample $(DESTDIR)${PREFIX}/share/examples/nsd/nsd.conf