diff --git a/dns/pdnsd/Makefile b/dns/pdnsd/Makefile new file mode 100644 index 000000000000..e3e69f5d24bc --- /dev/null +++ b/dns/pdnsd/Makefile @@ -0,0 +1,25 @@ +# New ports collection makefile for: pdnsd +# Date Created: 27 Oct 2000 +# Whom: Roman Shterenzon +# +# $FreeBSD$ +# + +PORTNAME= pdnsd +PORTVERSION= 1.1.0b2 +CATEGORIES= net +MASTER_SITES= http://home.t-online.de/home/Moestl/ + +MAINTAINER= roman@xpert.com + +GNU_CONFIGURE= yes +CONFIGURE_ARGS= --with-cachedir=${PDNSDB} + +PDNSDB= /var/db/pdnsd + +post-install: + @${MKDIR} ${PREFIX}/etc/rc.d + @${INSTALL} ${COPY} -m 744 -o root ${FILESDIR}/pdnsd.sh ${PREFIX}/etc/rc.d/pdnsd.sh + @${CAT} ${PKGMESSAGE} + +.include diff --git a/dns/pdnsd/distinfo b/dns/pdnsd/distinfo new file mode 100644 index 000000000000..0e6cc3cb8bcf --- /dev/null +++ b/dns/pdnsd/distinfo @@ -0,0 +1 @@ +MD5 (pdnsd-1.1.0b2.tar.gz) = a05d414d9a543e8d211b0806bcb89833 diff --git a/dns/pdnsd/files/pdnsd.sh b/dns/pdnsd/files/pdnsd.sh new file mode 100644 index 000000000000..4795f23879ac --- /dev/null +++ b/dns/pdnsd/files/pdnsd.sh @@ -0,0 +1,19 @@ +#!/bin/sh + +case $1 in +start) + if [ -x /usr/local/sbin/pdnsd -a -f /usr/local/etc/pdnsd.conf ]; then + /usr/local/sbin/pdnsd -d + echo ' pdnsd' + fi + ;; +stop) + killall pdnsd && echo -n ' pdnsd' + ;; +*) + echo "Usage: `basename $0` {start|stop}" >&2 + exit 64 + ;; +esac + +exit 0 diff --git a/dns/pdnsd/pkg-comment b/dns/pdnsd/pkg-comment new file mode 100644 index 000000000000..4ef8af4a13e2 --- /dev/null +++ b/dns/pdnsd/pkg-comment @@ -0,0 +1 @@ +Cacheing (permanently, writes to disk on exit) DNS proxy-server diff --git a/dns/pdnsd/pkg-descr b/dns/pdnsd/pkg-descr new file mode 100644 index 000000000000..b21dd3bc6945 --- /dev/null +++ b/dns/pdnsd/pkg-descr @@ -0,0 +1,20 @@ +pdnsd is a proxy dns server with permanent caching (the cache contents are +written to hard disk on exit) that is designed to cope with unreacheable or +down dns servers (for example in dial-in networking). +pdnsd can be used with applications that do dns lookups, eg on startup, and +can't be configured to change that behaviour, to prevent the often minute-long +hangs (or even crashes) that result from stalled dns queries. Some Netscape +Navigator versions for Unix, for example, expose this behaviour. +pdnsd is configurable via a file and supports run-time configuration using the +program pdnsd-ctl that comes with pdnsd. This allows you to set the status +flags of servers that pdnsd knows (to influence which servers pdnsd will +query), and the addition, deletion and invalidation of DNS records in pdnsd's +cache. +Parallel name server queries are supported. This is a technique that allows +querying several servers at the same time so that very slow or unavailable +servers will not block the answer for one timeout interval. +Since version 1.0.0, pdnsd has full IPv6 support. + +WWW: http://home.t-online.de/home/Moestl/ + +Roman Shterenzon diff --git a/dns/pdnsd/pkg-install b/dns/pdnsd/pkg-install new file mode 100644 index 000000000000..d852250d83d1 --- /dev/null +++ b/dns/pdnsd/pkg-install @@ -0,0 +1,9 @@ +#!/bin/sh +PDNSDB=/var/db/pdnsd + +mkdir -p ${PDNSDB} +chown nobody ${PDNSDB} +chmod 755 ${PDNSDB} +dd if=/dev/zero of=${PDNSDB}/pdnsd.cache bs=1 count=4 >/dev/null 2>&1 +chown nobody ${PDNSDB}/pdnsd.cache +chmod 640 ${PDNSDB}/pdnsd.cache diff --git a/dns/pdnsd/pkg-message b/dns/pdnsd/pkg-message new file mode 100644 index 000000000000..913c9b537aa3 --- /dev/null +++ b/dns/pdnsd/pkg-message @@ -0,0 +1,4 @@ + +You'll need to manually copy ${PREFIX}/etc/pdnsd.conf.sample to +${PREFIX}/etc/pdnsd.conf and modify it for your needs. + diff --git a/dns/pdnsd/pkg-plist b/dns/pdnsd/pkg-plist new file mode 100644 index 000000000000..9b6802dbc753 --- /dev/null +++ b/dns/pdnsd/pkg-plist @@ -0,0 +1,5 @@ +etc/pdnsd.conf.sample +etc/rc.d/pdnsd.sh +sbin/pdnsd +sbin/pdnsd-ctl +@unexec rm -rf /var/db/pdnsd diff --git a/net/Makefile b/net/Makefile index fd3a2a5cfe1d..ff52d6681e53 100644 --- a/net/Makefile +++ b/net/Makefile @@ -204,6 +204,7 @@ SUBDIR += pathchar SUBDIR += pchar SUBDIR += pcnfsd + SUBDIR += pdnsd SUBDIR += perldap SUBDIR += pipsecd SUBDIR += pmf diff --git a/net/pdnsd/Makefile b/net/pdnsd/Makefile new file mode 100644 index 000000000000..e3e69f5d24bc --- /dev/null +++ b/net/pdnsd/Makefile @@ -0,0 +1,25 @@ +# New ports collection makefile for: pdnsd +# Date Created: 27 Oct 2000 +# Whom: Roman Shterenzon +# +# $FreeBSD$ +# + +PORTNAME= pdnsd +PORTVERSION= 1.1.0b2 +CATEGORIES= net +MASTER_SITES= http://home.t-online.de/home/Moestl/ + +MAINTAINER= roman@xpert.com + +GNU_CONFIGURE= yes +CONFIGURE_ARGS= --with-cachedir=${PDNSDB} + +PDNSDB= /var/db/pdnsd + +post-install: + @${MKDIR} ${PREFIX}/etc/rc.d + @${INSTALL} ${COPY} -m 744 -o root ${FILESDIR}/pdnsd.sh ${PREFIX}/etc/rc.d/pdnsd.sh + @${CAT} ${PKGMESSAGE} + +.include diff --git a/net/pdnsd/distinfo b/net/pdnsd/distinfo new file mode 100644 index 000000000000..0e6cc3cb8bcf --- /dev/null +++ b/net/pdnsd/distinfo @@ -0,0 +1 @@ +MD5 (pdnsd-1.1.0b2.tar.gz) = a05d414d9a543e8d211b0806bcb89833 diff --git a/net/pdnsd/files/pdnsd.sh b/net/pdnsd/files/pdnsd.sh new file mode 100644 index 000000000000..4795f23879ac --- /dev/null +++ b/net/pdnsd/files/pdnsd.sh @@ -0,0 +1,19 @@ +#!/bin/sh + +case $1 in +start) + if [ -x /usr/local/sbin/pdnsd -a -f /usr/local/etc/pdnsd.conf ]; then + /usr/local/sbin/pdnsd -d + echo ' pdnsd' + fi + ;; +stop) + killall pdnsd && echo -n ' pdnsd' + ;; +*) + echo "Usage: `basename $0` {start|stop}" >&2 + exit 64 + ;; +esac + +exit 0 diff --git a/net/pdnsd/pkg-comment b/net/pdnsd/pkg-comment new file mode 100644 index 000000000000..4ef8af4a13e2 --- /dev/null +++ b/net/pdnsd/pkg-comment @@ -0,0 +1 @@ +Cacheing (permanently, writes to disk on exit) DNS proxy-server diff --git a/net/pdnsd/pkg-descr b/net/pdnsd/pkg-descr new file mode 100644 index 000000000000..b21dd3bc6945 --- /dev/null +++ b/net/pdnsd/pkg-descr @@ -0,0 +1,20 @@ +pdnsd is a proxy dns server with permanent caching (the cache contents are +written to hard disk on exit) that is designed to cope with unreacheable or +down dns servers (for example in dial-in networking). +pdnsd can be used with applications that do dns lookups, eg on startup, and +can't be configured to change that behaviour, to prevent the often minute-long +hangs (or even crashes) that result from stalled dns queries. Some Netscape +Navigator versions for Unix, for example, expose this behaviour. +pdnsd is configurable via a file and supports run-time configuration using the +program pdnsd-ctl that comes with pdnsd. This allows you to set the status +flags of servers that pdnsd knows (to influence which servers pdnsd will +query), and the addition, deletion and invalidation of DNS records in pdnsd's +cache. +Parallel name server queries are supported. This is a technique that allows +querying several servers at the same time so that very slow or unavailable +servers will not block the answer for one timeout interval. +Since version 1.0.0, pdnsd has full IPv6 support. + +WWW: http://home.t-online.de/home/Moestl/ + +Roman Shterenzon diff --git a/net/pdnsd/pkg-install b/net/pdnsd/pkg-install new file mode 100644 index 000000000000..d852250d83d1 --- /dev/null +++ b/net/pdnsd/pkg-install @@ -0,0 +1,9 @@ +#!/bin/sh +PDNSDB=/var/db/pdnsd + +mkdir -p ${PDNSDB} +chown nobody ${PDNSDB} +chmod 755 ${PDNSDB} +dd if=/dev/zero of=${PDNSDB}/pdnsd.cache bs=1 count=4 >/dev/null 2>&1 +chown nobody ${PDNSDB}/pdnsd.cache +chmod 640 ${PDNSDB}/pdnsd.cache diff --git a/net/pdnsd/pkg-message b/net/pdnsd/pkg-message new file mode 100644 index 000000000000..913c9b537aa3 --- /dev/null +++ b/net/pdnsd/pkg-message @@ -0,0 +1,4 @@ + +You'll need to manually copy ${PREFIX}/etc/pdnsd.conf.sample to +${PREFIX}/etc/pdnsd.conf and modify it for your needs. + diff --git a/net/pdnsd/pkg-plist b/net/pdnsd/pkg-plist new file mode 100644 index 000000000000..9b6802dbc753 --- /dev/null +++ b/net/pdnsd/pkg-plist @@ -0,0 +1,5 @@ +etc/pdnsd.conf.sample +etc/rc.d/pdnsd.sh +sbin/pdnsd +sbin/pdnsd-ctl +@unexec rm -rf /var/db/pdnsd