New port: dns/gdnsd2:
gdnsd is an Authoritative-only DNS server. This port tracks the 2.x release. The initial g stands for Geographic, as gdnsd offers a plugin system for geographic (or other sorts of) balancing, redirection, and service-state-conscious failover. If you don't care about that feature, it's still quite good at being a very fast, lean, and resilient authoritative-only server for static DNS data. gdnsd is written in C using libev and pthreads with a focus on high performance, low latency service. It does not offer any form of caching or recursive service, and does not support DNSSEC. WWW: https://github.com/blblack/gdnsd/
This commit is contained in:
parent
57b71fc796
commit
920d4cdee7
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=372281
7 changed files with 190 additions and 0 deletions
|
@ -53,6 +53,7 @@
|
|||
SUBDIR += firedns
|
||||
SUBDIR += fpdns
|
||||
SUBDIR += gdnsd
|
||||
SUBDIR += gdnsd2
|
||||
SUBDIR += geta
|
||||
SUBDIR += getdns
|
||||
SUBDIR += ghtool
|
||||
|
|
56
dns/gdnsd2/Makefile
Normal file
56
dns/gdnsd2/Makefile
Normal file
|
@ -0,0 +1,56 @@
|
|||
# Created by: Allan Jude <allanjude@freebsd.org>
|
||||
# $FreeBSD$
|
||||
|
||||
PORTNAME= gdnsd
|
||||
PORTVERSION= 2.1.0
|
||||
CATEGORIES= dns
|
||||
MASTER_SITES= https://github.com/blblack/gdnsd/releases/download/v${PORTVERSION}/ \
|
||||
http://mirrors.rit.edu/zi/ \
|
||||
http://gdnsd.scaleengine.net/gdnsd/
|
||||
PKGNAMESUFFIX= 2
|
||||
|
||||
MAINTAINER= zi@freebsd.org
|
||||
COMMENT= Authoritative-only GeoIP-aware DNS server
|
||||
|
||||
LICENSE= GPLv3
|
||||
|
||||
LIB_DEPENDS= libev.so:${PORTSDIR}/devel/libev
|
||||
|
||||
FETCH_ARGS= -Fpr
|
||||
|
||||
GNU_CONFIGURE= yes
|
||||
CONFIGURE_ARGS= --localstatedir=/var
|
||||
USE_LDCONFIG= yes
|
||||
USES= pkgconfig libtool tar:xz perl5
|
||||
USE_PERL5= build
|
||||
CPPFLAGS+= -I${LOCALBASE}/include
|
||||
LDFLAGS+= -L${LOCALBASE}/lib
|
||||
CONFLICTS_INSTALL= gdnsd-1.[0-9]*
|
||||
|
||||
USE_RC_SUBR= gdnsd
|
||||
|
||||
USERS?= gdnsd
|
||||
GROUPS?= gdnsd
|
||||
|
||||
OPTIONS_DEFINE= DOCS GEOIP URCU
|
||||
OPTIONS_DEFAULT=GEOIP
|
||||
|
||||
GEOIP_DESC= Enable GeoIP Support
|
||||
GEOIP_RUN_DEPENDS= GeoIP>=0:${PORTSDIR}/net/GeoIP
|
||||
|
||||
URCU_DESC= Read-Copy-Update Support (Faster Zone Parsing)
|
||||
URCU_CONFIGURE_WITH= urcu
|
||||
URCU_LIB_DEPENDS= liburcu.so:${PORTSDIR}/sysutils/liburcu
|
||||
|
||||
post-patch:
|
||||
@${REINPLACE_CMD} -e 's|$${localstatedir}/lib/$${PACKAGE_NAME}|/var/db/${PORTNAME}|g' \
|
||||
${WRKSRC}/configure
|
||||
|
||||
post-install:
|
||||
@${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/${PORTNAME}/libgdnsd.so
|
||||
@${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/${PORTNAME}/plugin_*.so
|
||||
@${MKDIR} ${STAGEDIR}${PREFIX}/etc/gdnsd/geoip \
|
||||
${STAGEDIR}${PREFIX}/etc/gdnsd/zones \
|
||||
${STAGEDIR}/var/run/gdnsd
|
||||
|
||||
.include <bsd.port.mk>
|
2
dns/gdnsd2/distinfo
Normal file
2
dns/gdnsd2/distinfo
Normal file
|
@ -0,0 +1,2 @@
|
|||
SHA256 (gdnsd-2.1.0.tar.xz) = 0276cc851f8904b842fdc34839163dec22fce7e6fa26acd1f5115c880e61eae4
|
||||
SIZE (gdnsd-2.1.0.tar.xz) = 628316
|
45
dns/gdnsd2/files/gdnsd.in
Normal file
45
dns/gdnsd2/files/gdnsd.in
Normal file
|
@ -0,0 +1,45 @@
|
|||
#!/bin/sh
|
||||
|
||||
# $FreeBSD$
|
||||
#
|
||||
# PROVIDE: gdnsd
|
||||
# REQUIRE: DAEMON
|
||||
# REQUIRE: LOGIN
|
||||
# KEYWORD: FreeBSD shutdown
|
||||
#
|
||||
# Add the following lines to /etc/rc.conf.local or /etc/rc.conf
|
||||
# to enable this service:
|
||||
#
|
||||
# gdnsd_enable (bool): Set to NO by default.
|
||||
# Set it to YES to enable gdnsd.
|
||||
# gdnsd_flags (str): Set to "" by default
|
||||
# Extra command line argument flags
|
||||
|
||||
. /etc/rc.subr
|
||||
|
||||
name="gdnsd"
|
||||
rcvar=gdnsd_enable
|
||||
|
||||
# set defaults
|
||||
load_rc_config $name
|
||||
: ${gdnsd_enable:="NO"}
|
||||
: ${gdnsd_flags:=""}
|
||||
|
||||
command="%%PREFIX%%/sbin/gdnsd"
|
||||
command_args="start"
|
||||
procname=${command}
|
||||
reload_cmd="gdnsd_reload"
|
||||
configtest_cmd="gdnsd_checkconf"
|
||||
extra_commands="reload configtest"
|
||||
gdnsd_reload()
|
||||
{
|
||||
${command} ${gdnsd_flags} reload-zones
|
||||
}
|
||||
|
||||
gdnsd_checkconf()
|
||||
{
|
||||
${command} ${gdnsd_flags} checkconf
|
||||
}
|
||||
|
||||
run_rc_command "$1"
|
||||
|
15
dns/gdnsd2/files/patch-Makefile.in
Normal file
15
dns/gdnsd2/files/patch-Makefile.in
Normal file
|
@ -0,0 +1,15 @@
|
|||
--- Makefile.in.orig 2014-11-07 15:38:17 UTC
|
||||
+++ Makefile.in
|
||||
@@ -939,12 +939,6 @@
|
||||
$(MKDIR_P) "$(DESTDIR)$(GDNSD_DEFPATH_CONFIG)/geoip";
|
||||
$(MKDIR_P) "$(DESTDIR)$(GDNSD_DEFPATH_RUN)";
|
||||
$(MKDIR_P) "$(DESTDIR)$(GDNSD_DEFPATH_STATE)";
|
||||
- @id gdnsd >/dev/null 2>&1; if test $$? -ne 0; then \
|
||||
- echo; \
|
||||
- echo === READ ME ===; \
|
||||
- echo The default user \"gdnsd\" \(for privdrop when executed as root\) does not seem to exist yet!; \
|
||||
- echo; \
|
||||
- fi
|
||||
|
||||
# Tell versions [3.59,3.63) of GNU make to not export all variables.
|
||||
# Otherwise a system limit (for SysV at least) may be exceeded.
|
13
dns/gdnsd2/pkg-descr
Normal file
13
dns/gdnsd2/pkg-descr
Normal file
|
@ -0,0 +1,13 @@
|
|||
gdnsd is an Authoritative-only DNS server.
|
||||
|
||||
The initial g stands for Geographic, as gdnsd offers a plugin system for
|
||||
geographic (or other sorts of) balancing, redirection, and
|
||||
service-state-conscious failover. If you don't care about that feature,
|
||||
it's still quite good at being a very fast, lean, and resilient
|
||||
authoritative-only server for static DNS data.
|
||||
|
||||
gdnsd is written in C using libev and pthreads with a focus on high
|
||||
performance, low latency service. It does not offer any form of caching or
|
||||
recursive service, and does not support DNSSEC.
|
||||
|
||||
WWW: https://github.com/blblack/gdnsd/
|
58
dns/gdnsd2/pkg-plist
Normal file
58
dns/gdnsd2/pkg-plist
Normal file
|
@ -0,0 +1,58 @@
|
|||
bin/gdnsd_geoip_test
|
||||
include/gdnsd/alloc.h
|
||||
include/gdnsd/compiler.h
|
||||
include/gdnsd/dmn.h
|
||||
include/gdnsd/dname.h
|
||||
include/gdnsd/log.h
|
||||
include/gdnsd/misc.h
|
||||
include/gdnsd/mon.h
|
||||
include/gdnsd/net.h
|
||||
include/gdnsd/paths.h
|
||||
include/gdnsd/plugapi.h
|
||||
include/gdnsd/plugin.h
|
||||
include/gdnsd/stats.h
|
||||
include/gdnsd/vscf.h
|
||||
lib/gdnsd/libgdnsd.so
|
||||
lib/gdnsd/plugin_extfile.so
|
||||
lib/gdnsd/plugin_extmon.so
|
||||
lib/gdnsd/plugin_geoip.so
|
||||
lib/gdnsd/plugin_http_status.so
|
||||
lib/gdnsd/plugin_metafo.so
|
||||
lib/gdnsd/plugin_multifo.so
|
||||
lib/gdnsd/plugin_null.so
|
||||
lib/gdnsd/plugin_reflect.so
|
||||
lib/gdnsd/plugin_simplefo.so
|
||||
lib/gdnsd/plugin_static.so
|
||||
lib/gdnsd/plugin_tcp_connect.so
|
||||
lib/gdnsd/plugin_weighted.so
|
||||
libexec/gdnsd/gdnsd_extmon_helper
|
||||
man/man1/gdnsd_geoip_test.1.gz
|
||||
man/man3/gdnsd-plugin-api.3.gz
|
||||
man/man5/gdnsd.config.5.gz
|
||||
man/man5/gdnsd.djbdns.5.gz
|
||||
man/man5/gdnsd.zonefile.5.gz
|
||||
man/man8/gdnsd-plugin-extfile.8.gz
|
||||
man/man8/gdnsd-plugin-extmon.8.gz
|
||||
man/man8/gdnsd-plugin-geoip.8.gz
|
||||
man/man8/gdnsd-plugin-http_status.8.gz
|
||||
man/man8/gdnsd-plugin-metafo.8.gz
|
||||
man/man8/gdnsd-plugin-multifo.8.gz
|
||||
man/man8/gdnsd-plugin-null.8.gz
|
||||
man/man8/gdnsd-plugin-reflect.8.gz
|
||||
man/man8/gdnsd-plugin-simplefo.8.gz
|
||||
man/man8/gdnsd-plugin-static.8.gz
|
||||
man/man8/gdnsd-plugin-tcp_connect.8.gz
|
||||
man/man8/gdnsd-plugin-weighted.8.gz
|
||||
man/man8/gdnsd.8.gz
|
||||
sbin/gdnsd
|
||||
%%PORTDOCS%%%%DOCSDIR%%/AUTHORS
|
||||
%%PORTDOCS%%%%DOCSDIR%%/COPYING
|
||||
%%PORTDOCS%%%%DOCSDIR%%/INSTALL
|
||||
%%PORTDOCS%%%%DOCSDIR%%/NEWS
|
||||
%%PORTDOCS%%%%DOCSDIR%%/README.md
|
||||
%%PORTDOCS%%%%DOCSDIR%%/gdnsd_manual.txt
|
||||
@dir %%ETCDIR%%/djbdns
|
||||
@dir %%ETCDIR%%/geoip
|
||||
@dir %%ETCDIR%%/zones
|
||||
@dir /var/db/gdnsd
|
||||
@dir /var/run/gdnsd
|
Loading…
Reference in a new issue