summaryrefslogtreecommitdiff
path: root/dns
diff options
context:
space:
mode:
authorSergey Matveychuk <sem@FreeBSD.org>2008-04-29 07:35:14 +0000
committerSergey Matveychuk <sem@FreeBSD.org>2008-04-29 07:35:14 +0000
commit18fa7d9169bc8cdddd4d4d88e1a5f6b61e9e7689 (patch)
tree29fdcd761e4f211ee95fd6fae06e18ffcb1405d9 /dns
parentBack-up distfiles on my server. (diff)
- New port: dns/unbound
Unbound is designed as a set of modular components, so that also DNSSEC (secure DNS) validation and stub-resolvers (that do not run as a server, but are linked into an application) are easily possible. Goals: * A validating recursive DNS resolver. * Code diversity in the DNS resolver monoculture. * Drop-in replacement for BIND apart from config. * DNSSEC support. * Fully RFC compliant. * High performance o even with validation. * Used as o stub resolver. o full caching name server. o resolver library. * Elegant design of validator, resolver, cache modules. o provide the ability to pick and choose modules. * Robust. * In C, open source: The BSD license. * Smallest as possible component that does the job. * Stub-zones can be configured (local data or AS112 zones). Non-goals: * An authoritative name server. * Too many Features. WWW: http://unbound.net
Notes
Notes: svn path=/head/; revision=212206
Diffstat (limited to 'dns')
-rw-r--r--dns/Makefile1
-rw-r--r--dns/unbound/Makefile45
-rw-r--r--dns/unbound/distinfo3
-rw-r--r--dns/unbound/files/patch-Makefile.in11
-rw-r--r--dns/unbound/files/patch-configure11
-rw-r--r--dns/unbound/files/pkg-deinstall.in21
-rw-r--r--dns/unbound/files/pkg-install.in47
-rw-r--r--dns/unbound/files/unbound.in23
-rw-r--r--dns/unbound/pkg-descr28
-rw-r--r--dns/unbound/pkg-plist11
10 files changed, 201 insertions, 0 deletions
diff --git a/dns/Makefile b/dns/Makefile
index c72609f5513f..73d7ca3b8f2d 100644
--- a/dns/Makefile
+++ b/dns/Makefile
@@ -119,6 +119,7 @@
SUBDIR += staticcharge
SUBDIR += tinystats
SUBDIR += totd
+ SUBDIR += unbound
SUBDIR += updatedd
SUBDIR += vizone
SUBDIR += walker
diff --git a/dns/unbound/Makefile b/dns/unbound/Makefile
new file mode 100644
index 000000000000..6a74fbe9d3ed
--- /dev/null
+++ b/dns/unbound/Makefile
@@ -0,0 +1,45 @@
+# New ports collection makefile for: unbound
+# Date created: 25 Apr 2008
+# Whom: Sergey Matveychuk <sem@FreeBSD.org>
+#
+# $FreeBSD$
+#
+
+PORTNAME= unbound
+PORTVERSION= 0.11
+CATEGORIES= dns
+MASTER_SITES= http://unbound.net/downloads/
+
+MAINTAINER= sem@FreeBSD.org
+COMMENT= A validating, recursive, and caching DNS resolver
+
+USE_GMAKE= yes
+GNU_CONFIGURE= yes
+
+USE_RC_SUBR= unbound
+
+MAN1= unbound-host.1
+MAN3= libunbound.3
+MAN5= unbound.conf.5
+MAN8= unbound.8 unbound-checkconf.8
+
+PKGINSTALL= ${WRKDIR}/pkg-install
+PKGDEINSTALL= ${WRKDIR}/pkg-deinstall
+SUB_FILES= pkg-install pkg-deinstall
+
+OPTIONS= LIBEVENT "is useful when using many (10000) outgoing ports" off
+
+.include <bsd.port.pre.mk>
+
+.if defined(WITH_LIBEVENT)
+LIB_DEPENDS+= event:${PORTSDIR}/devel/libevent
+CONFIGURE_ARGS+= --with-libevent=${PREFIX}
+.endif
+
+post-patch:
+ @${REINPLACE_CMD} -e 's#/usr/local/etc/unbound/unbound.pid#/var/run/unbound/unbound.pid#' ${WRKSRC}/doc/example.conf ${WRKSRC}/doc/unbound.conf.5
+
+pre-install:
+ @${SH} ${PKGINSTALL} ${PKGNAME} PRE-INSTALL
+
+.include <bsd.port.post.mk>
diff --git a/dns/unbound/distinfo b/dns/unbound/distinfo
new file mode 100644
index 000000000000..99b0afa1c822
--- /dev/null
+++ b/dns/unbound/distinfo
@@ -0,0 +1,3 @@
+MD5 (unbound-0.11.tar.gz) = 2d698050a9ffd492b0abd37b5000680f
+SHA256 (unbound-0.11.tar.gz) = f6c44ccae56398273c1f03485f2e2b8e4b612663d501d89c82c8cf9f23422d9f
+SIZE (unbound-0.11.tar.gz) = 3543955
diff --git a/dns/unbound/files/patch-Makefile.in b/dns/unbound/files/patch-Makefile.in
new file mode 100644
index 000000000000..bc25a6240303
--- /dev/null
+++ b/dns/unbound/files/patch-Makefile.in
@@ -0,0 +1,11 @@
+--- Makefile.in.orig 2008-04-23 10:47:48.000000000 +0400
++++ Makefile.in 2008-04-25 18:42:04.000000000 +0400
+@@ -273,7 +273,7 @@
+ $(INSTALL) -c -m 644 $(srcdir)/doc/unbound.conf.5 $(mandir)/man5
+ $(INSTALL) -c -m 644 $(srcdir)/doc/unbound-host.1 $(mandir)/man1
+ $(INSTALL) -c -m 644 $(srcdir)/doc/libunbound.3 $(mandir)/man3
+- if test ! -e $(configfile); then $(INSTALL) -d `dirname $(configfile)`; $(INSTALL) -c -m 644 $(srcdir)/doc/example.conf $(configfile); fi
++ $(INSTALL) -d `dirname $(configfile)`; $(INSTALL) -c -m 644 $(srcdir)/doc/example.conf $(configfile).sample; fi
+ $(LIBTOOL) --mode=install cp $(srcdir)/libunbound/unbound.h $(includedir)/unbound.h
+ $(LIBTOOL) --mode=install cp libunbound.la $(libdir)
+ $(LIBTOOL) --mode=finish $(libdir)
diff --git a/dns/unbound/files/patch-configure b/dns/unbound/files/patch-configure
new file mode 100644
index 000000000000..14b77d38081d
--- /dev/null
+++ b/dns/unbound/files/patch-configure
@@ -0,0 +1,11 @@
+--- configure.orig 2008-04-25 18:25:51.000000000 +0400
++++ configure 2008-04-25 18:26:00.000000000 +0400
+@@ -3300,7 +3300,7 @@
+
+
+ cat >>confdefs.h <<_ACEOF
+-#define PIDFILE "$ub_dir/unbound.pid"
++#define PIDFILE "/var/run/unbound.pid"
+ _ACEOF
+
+
diff --git a/dns/unbound/files/pkg-deinstall.in b/dns/unbound/files/pkg-deinstall.in
new file mode 100644
index 000000000000..c7d2bffddc1f
--- /dev/null
+++ b/dns/unbound/files/pkg-deinstall.in
@@ -0,0 +1,21 @@
+#!/bin/sh
+#
+# $FreeBSD$
+#
+
+case $2 in
+POST-DEINSTALL)
+ echo "===> post-deinstallation information for $1:"
+ echo ""
+ echo " Note:"
+ echo " Squid related user accounts and groups were not removed."
+ echo ""
+ echo " To remove the 'unbound' user and the 'unbound' group which were"
+ echo " created by a default installation of this package, run"
+ echo ""
+ echo " pw userdel -n unbound"
+ ;;
+*)
+ ;;
+esac
+exit 0
diff --git a/dns/unbound/files/pkg-install.in b/dns/unbound/files/pkg-install.in
new file mode 100644
index 000000000000..3acf7b173dee
--- /dev/null
+++ b/dns/unbound/files/pkg-install.in
@@ -0,0 +1,47 @@
+#!/bin/sh
+#
+# $FreeBSD$
+#
+
+PW=/usr/sbin/pw
+UID=59
+GID=$UID
+USER="unbound"
+GROUP="unbound"
+PREFIX="%%PREFIX%%"
+
+case $2 in
+
+PRE-INSTALL)
+
+ if ${PW} group show "${GROUP}" 2>/dev/null; then
+ echo "You already have a group \"${GROUP}\", so I will use it."
+ else
+ if ${PW} groupadd ${GROUP} -g ${GID}; then
+ echo "Added group \"${GROUP}\"."
+ else
+ echo "Adding group \"${GROUP}\" failed..."
+ exit 1
+ fi
+ fi
+
+ if ${PW} user show "${USER}" 2>/dev/null; then
+ echo "You already have a user \"${USER}\", so I will use it."
+ else
+ if ${PW} useradd ${USER} -u ${UID} -g daemon -h - \
+ -d "/nonexistent" -s /usr/sbin/nologin -c "unbound dns resolver"
+ then
+ echo "Added user \"${USER}\"."
+ else
+ echo "Adding user \"${USER}\" failed..."
+ exit 1
+ fi
+ fi
+
+ [ -d /var/run/unbound ] || mkdir -p /var/run/unbound
+ chown "${USER}" /var/run/unbound
+ ;;
+*)
+;;
+esac
+exit 0
diff --git a/dns/unbound/files/unbound.in b/dns/unbound/files/unbound.in
new file mode 100644
index 000000000000..39645656c501
--- /dev/null
+++ b/dns/unbound/files/unbound.in
@@ -0,0 +1,23 @@
+#!/bin/sh
+#
+# unbound freebsd startup rc.d script, modified from the named script.
+# uses the default unbound installation path and pidfile location.
+# copy this to /etc/rc.d/unbound
+# and put unbound_enable="YES" into rc.conf
+#
+
+# PROVIDE: unbound
+# REQUIRE: SERVERS cleanvar
+# KEYWORD: shutdown
+
+. %%RC_SUBR%%
+
+name="unbound"
+rcvar=`set_rcvar`
+
+command="%%PREFIX%%/sbin/unbound"
+pidfile="/var/run/unbound/unbound.pid"
+extra_commands="reload"
+
+load_rc_config $name
+run_rc_command "$1"
diff --git a/dns/unbound/pkg-descr b/dns/unbound/pkg-descr
new file mode 100644
index 000000000000..ff5836dfa401
--- /dev/null
+++ b/dns/unbound/pkg-descr
@@ -0,0 +1,28 @@
+Unbound is designed as a set of modular components, so that also
+DNSSEC (secure DNS) validation and stub-resolvers (that do not run as
+a server, but are linked into an application) are easily possible.
+
+Goals:
+ * A validating recursive DNS resolver.
+ * Code diversity in the DNS resolver monoculture.
+ * Drop-in replacement for BIND apart from config.
+ * DNSSEC support.
+ * Fully RFC compliant.
+ * High performance
+ o even with validation.
+ * Used as
+ o stub resolver.
+ o full caching name server.
+ o resolver library.
+ * Elegant design of validator, resolver, cache modules.
+ o provide the ability to pick and choose modules.
+ * Robust.
+ * In C, open source: The BSD license.
+ * Smallest as possible component that does the job.
+ * Stub-zones can be configured (local data or AS112 zones).
+
+Non-goals:
+ * An authoritative name server.
+ * Too many Features.
+
+WWW: http://unbound.net
diff --git a/dns/unbound/pkg-plist b/dns/unbound/pkg-plist
new file mode 100644
index 000000000000..aa9bcb3c7010
--- /dev/null
+++ b/dns/unbound/pkg-plist
@@ -0,0 +1,11 @@
+etc/unbound/unbound.conf.sample
+include/unbound.h
+lib/libunbound-0.11.so
+lib/libunbound.so
+lib/libunbound.la
+lib/libunbound.a
+sbin/unbound
+sbin/unbound-checkconf
+sbin/unbound-host
+@dirrmtry etc/unbound
+@dirrmtry /var/run/unbound