All of lore.kernel.org
 help / color / mirror / Atom feed
* [meta-networking][PATCH] dnrd: Add new recipe
@ 2014-12-18  8:09 Qian Lei
  2014-12-29 20:05 ` Joe MacDonald
  0 siblings, 1 reply; 2+ messages in thread
From: Qian Lei @ 2014-12-18  8:09 UTC (permalink / raw)
  To: openembedded-devel

dnrd is a proxying nameserver. It forwards DNS queries to the appropriate
nameserver, but can also act as the primary nameserver for a subnet behind
a firewall. It also has features such as caching DNS requests, support for
DNS servers, cache poisoning prevention, TCP support, etc.

Signed-off-by: Qian Lei <qianl.fnst@cn.fujitsu.com>
---
 .../recipes-daemons/dnrd/dnrd/dnrd.conf.sample     | 21 +++++
 .../recipes-daemons/dnrd/dnrd/dnrd.init            | 94 ++++++++++++++++++++++
 .../recipes-daemons/dnrd/dnrd/dnrd.service         | 12 +++
 .../recipes-daemons/dnrd/dnrd_2.20.3.bb            | 39 +++++++++
 4 files changed, 166 insertions(+)
 create mode 100644 meta-networking/recipes-daemons/dnrd/dnrd/dnrd.conf.sample
 create mode 100644 meta-networking/recipes-daemons/dnrd/dnrd/dnrd.init
 create mode 100644 meta-networking/recipes-daemons/dnrd/dnrd/dnrd.service
 create mode 100644 meta-networking/recipes-daemons/dnrd/dnrd_2.20.3.bb

diff --git a/meta-networking/recipes-daemons/dnrd/dnrd/dnrd.conf.sample b/meta-networking/recipes-daemons/dnrd/dnrd/dnrd.conf.sample
new file mode 100644
index 0000000..d9f6b3d
--- /dev/null
+++ b/meta-networking/recipes-daemons/dnrd/dnrd/dnrd.conf.sample
@@ -0,0 +1,21 @@
+# options to dnrd
+
+# example: two default dns servers and dns servers for exampledomain.com. The
+# latter are load balanced (-b)
+#
+# 
+
+# DNRD_OPTS="
+# -s XXX.XXX.XX.XXX 
+# -s XXX.XXX.XX.XXX
+# -b
+# -s XXX.XXX.XX.XXX:exampledomain.com
+# -s XXX.XXX.XX.XXX:exampledomain.com"
+
+# example: dnrd user
+#
+
+# DNRD_USER="user"
+#
+
+
diff --git a/meta-networking/recipes-daemons/dnrd/dnrd/dnrd.init b/meta-networking/recipes-daemons/dnrd/dnrd/dnrd.init
new file mode 100644
index 0000000..73289a9
--- /dev/null
+++ b/meta-networking/recipes-daemons/dnrd/dnrd/dnrd.init
@@ -0,0 +1,94 @@
+#!/bin/sh
+#
+# Startup script for dnrd
+#
+#       Copyright 2008, Rakesh Pandit <rakesh.pandit@gmail.com>
+# 
+#       This source is free software; you can redistribute it and/or modify
+#       it under the terms of the GNU General Public License as published by
+#       the Free Software Foundation; either version 2, or (at your option)
+#       any later version.
+
+#       This source is distributed in the hope that it will be useful,
+#       but WITHOUT ANY WARRANTY; without even the implied warranty of
+#       MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#       GNU General Public License for more details.
+
+#       You should have received a copy of the GNU General Public License
+#       along with this program; if not, write to the Free Software
+#       Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+#
+# chkconfig: - 85 15
+# description: dnrd is a proxying nameserver. It forwards DNS queries to the
+# appropriate nameserver, but can also act as the primary nameserver for
+# a subnet behind a firewall. It also has features such as caching DNS
+# requests, support for DNS servers, cache poisoning prevention, TCP
+# support, etc..
+
+# processname: dnrd
+# pidfile: /var/run/dnrd.pid
+# config: /etc/dnrd/dnrd.conf
+
+# Provides:          dnrd
+# Required-Start:
+# Should-Start:
+# Required-Stop:
+# Default-Stop:      0 1 2 6
+# Short-Description: Start dnrd daemon
+# Description:       Domain Name Relay Daemon
+# END INIT INFO
+
+exe=/usr/sbin/dnrd
+pfile=/etc/passwd
+
+# Source function library.
+. /etc/init.d/functions
+
+# Source conf file
+. /etc/dnrd/dnrd.conf
+
+[ -x $exe ] || exit 1 
+[ -r "/etc/dnrd/dnrd.conf" ] || exit 1
+if [ $DNRD_USER ]
+then
+         grep "^${LOGIN}:" $pfile >/dev/null 2>&1
+         if [ $? -eq 0 ];then
+                 echo "$DNRD_USER specified in /etc/dnrd/dnrd.conf does not exist!"
+         fi
+else
+        echo "DNRD_USER not set at /etc/dnrd/dnrd.conf!"
+        exit 1
+fi
+
+case "$1" in
+  start)
+        echo -n "Starting  dnrd: "
+        daemon  dnrd $DNRD_OPTS -u $DNRD_USER
+        echo
+        touch /var/lock/subsys/dnrd
+        ;;
+  stop)
+        echo -n "Shutting down dnrd: "
+        killproc dnrd
+        echo
+        rm -f /var/lock/subsys/dnrd
+        rm -f /var/run/dnrd.pid
+        ;;
+  status)
+        status dnrd
+        ;;
+  restart)
+        $0 stop
+        $0 start
+        ;;
+  reload)
+        echo -n "Reloading dnrd: "
+        killproc dnrd -HUP
+        echo
+        ;;
+  *)
+        echo "Usage: $0 {start|stop|restart|reload|status}"
+        exit 1
+esac
+
+exit 0
diff --git a/meta-networking/recipes-daemons/dnrd/dnrd/dnrd.service b/meta-networking/recipes-daemons/dnrd/dnrd/dnrd.service
new file mode 100644
index 0000000..9c9fa66
--- /dev/null
+++ b/meta-networking/recipes-daemons/dnrd/dnrd/dnrd.service
@@ -0,0 +1,12 @@
+[Unit]
+Description=Domain Name Relay Daemon
+After=network.target
+
+[Service]
+Type=forking
+PIDFile=/var/run/dnrd.pid
+EnvironmentFile=/etc/dnrd/dnrd.conf
+ExecStart=/usr/sbin/dnrd $DNRD_OPTS -u $DNRD_USER
+
+[Install]
+WantedBy=multi-user.target
diff --git a/meta-networking/recipes-daemons/dnrd/dnrd_2.20.3.bb b/meta-networking/recipes-daemons/dnrd/dnrd_2.20.3.bb
new file mode 100644
index 0000000..85a58cc
--- /dev/null
+++ b/meta-networking/recipes-daemons/dnrd/dnrd_2.20.3.bb
@@ -0,0 +1,39 @@
+SUMMARY = "A caching, forwarding DNS proxy server"
+DESCRIPTION = "\
+dnrd is a proxying nameserver. It forwards DNS queries to the appropriate \
+nameserver, but can also act as the primary nameserver for a subnet behind \
+a firewall. It also has features such as caching DNS requests, support for \
+DNS servers, cache poisoning prevention, TCP support, etc.."
+HOMEPAGE = "http://dnrd.sourceforge.net/"
+SECTION = "System Environment/Daemons"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=0be67017f1c770313ad7b40e18d568f1"
+
+SRC_URI = "http://ncu.dl.sourceforge.net/project/${BPN}/${BPN}/${PV}/${BP}.tar.gz \
+           file://dnrd.service \
+           file://dnrd.conf.sample \
+           file://dnrd.init"
+SRC_URI[md5sum] = "41c9b070aae8ed403fc8c2aac7ab157c"
+SRC_URI[sha256sum] = "aa46e7f8736b88c1d752cf606b3990041221ce91d014e955c6b02eb2167db015"
+
+SYSTEMD_SERVICE_${PN} = "dnrd.service"
+SYSTEMD_AUTO_ENABLE = "disable"
+
+inherit autotools
+inherit ${@base_contains('VIRTUAL-RUNTIME_init_manager','systemd','systemd','', d)}
+
+do_install() {
+    oe_runmake install DESTDIR=${D} INSTALL="install -p"
+
+    sed -i -e 's:/etc/rc.d/init.d/functions:/etc/init.d/functions:g' \
+        ${WORKDIR}/dnrd.init
+    install -d -m 0755 ${D}${sysconfdir}/init.d
+    install -d -m 0755 ${D}${sysconfdir}/dnrd
+    install -p -m 0644 ${WORKDIR}/dnrd.conf.sample ${D}${sysconfdir}/dnrd/dnrd.conf
+    install -p -m 0755 ${WORKDIR}/dnrd.init ${D}${sysconfdir}/init.d/dnrd
+
+    if ${@base_contains('DISTRO_FEATURES','systemd','true','false',d)}; then
+        install -d -m 0755 ${D}${systemd_unitdir}/system
+        install -m 644 ${WORKDIR}/dnrd.service ${D}${systemd_unitdir}/system
+    fi
+}
-- 
1.8.3.1



^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [meta-networking][PATCH] dnrd: Add new recipe
  2014-12-18  8:09 [meta-networking][PATCH] dnrd: Add new recipe Qian Lei
@ 2014-12-29 20:05 ` Joe MacDonald
  0 siblings, 0 replies; 2+ messages in thread
From: Joe MacDonald @ 2014-12-29 20:05 UTC (permalink / raw)
  To: openembedded-devel

[-- Attachment #1: Type: text/plain, Size: 7717 bytes --]

Merged, thanks.
-J.

[[oe] [meta-networking][PATCH] dnrd: Add new recipe] On 14.12.18 (Thu 16:09) Qian Lei wrote:

> dnrd is a proxying nameserver. It forwards DNS queries to the appropriate
> nameserver, but can also act as the primary nameserver for a subnet behind
> a firewall. It also has features such as caching DNS requests, support for
> DNS servers, cache poisoning prevention, TCP support, etc.
> 
> Signed-off-by: Qian Lei <qianl.fnst@cn.fujitsu.com>
> ---
>  .../recipes-daemons/dnrd/dnrd/dnrd.conf.sample     | 21 +++++
>  .../recipes-daemons/dnrd/dnrd/dnrd.init            | 94 ++++++++++++++++++++++
>  .../recipes-daemons/dnrd/dnrd/dnrd.service         | 12 +++
>  .../recipes-daemons/dnrd/dnrd_2.20.3.bb            | 39 +++++++++
>  4 files changed, 166 insertions(+)
>  create mode 100644 meta-networking/recipes-daemons/dnrd/dnrd/dnrd.conf.sample
>  create mode 100644 meta-networking/recipes-daemons/dnrd/dnrd/dnrd.init
>  create mode 100644 meta-networking/recipes-daemons/dnrd/dnrd/dnrd.service
>  create mode 100644 meta-networking/recipes-daemons/dnrd/dnrd_2.20.3.bb
> 
> diff --git a/meta-networking/recipes-daemons/dnrd/dnrd/dnrd.conf.sample b/meta-networking/recipes-daemons/dnrd/dnrd/dnrd.conf.sample
> new file mode 100644
> index 0000000..d9f6b3d
> --- /dev/null
> +++ b/meta-networking/recipes-daemons/dnrd/dnrd/dnrd.conf.sample
> @@ -0,0 +1,21 @@
> +# options to dnrd
> +
> +# example: two default dns servers and dns servers for exampledomain.com. The
> +# latter are load balanced (-b)
> +#
> +# 
> +
> +# DNRD_OPTS="
> +# -s XXX.XXX.XX.XXX 
> +# -s XXX.XXX.XX.XXX
> +# -b
> +# -s XXX.XXX.XX.XXX:exampledomain.com
> +# -s XXX.XXX.XX.XXX:exampledomain.com"
> +
> +# example: dnrd user
> +#
> +
> +# DNRD_USER="user"
> +#
> +
> +
> diff --git a/meta-networking/recipes-daemons/dnrd/dnrd/dnrd.init b/meta-networking/recipes-daemons/dnrd/dnrd/dnrd.init
> new file mode 100644
> index 0000000..73289a9
> --- /dev/null
> +++ b/meta-networking/recipes-daemons/dnrd/dnrd/dnrd.init
> @@ -0,0 +1,94 @@
> +#!/bin/sh
> +#
> +# Startup script for dnrd
> +#
> +#       Copyright 2008, Rakesh Pandit <rakesh.pandit@gmail.com>
> +# 
> +#       This source is free software; you can redistribute it and/or modify
> +#       it under the terms of the GNU General Public License as published by
> +#       the Free Software Foundation; either version 2, or (at your option)
> +#       any later version.
> +
> +#       This source is distributed in the hope that it will be useful,
> +#       but WITHOUT ANY WARRANTY; without even the implied warranty of
> +#       MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
> +#       GNU General Public License for more details.
> +
> +#       You should have received a copy of the GNU General Public License
> +#       along with this program; if not, write to the Free Software
> +#       Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
> +#
> +# chkconfig: - 85 15
> +# description: dnrd is a proxying nameserver. It forwards DNS queries to the
> +# appropriate nameserver, but can also act as the primary nameserver for
> +# a subnet behind a firewall. It also has features such as caching DNS
> +# requests, support for DNS servers, cache poisoning prevention, TCP
> +# support, etc..
> +
> +# processname: dnrd
> +# pidfile: /var/run/dnrd.pid
> +# config: /etc/dnrd/dnrd.conf
> +
> +# Provides:          dnrd
> +# Required-Start:
> +# Should-Start:
> +# Required-Stop:
> +# Default-Stop:      0 1 2 6
> +# Short-Description: Start dnrd daemon
> +# Description:       Domain Name Relay Daemon
> +# END INIT INFO
> +
> +exe=/usr/sbin/dnrd
> +pfile=/etc/passwd
> +
> +# Source function library.
> +. /etc/init.d/functions
> +
> +# Source conf file
> +. /etc/dnrd/dnrd.conf
> +
> +[ -x $exe ] || exit 1 
> +[ -r "/etc/dnrd/dnrd.conf" ] || exit 1
> +if [ $DNRD_USER ]
> +then
> +         grep "^${LOGIN}:" $pfile >/dev/null 2>&1
> +         if [ $? -eq 0 ];then
> +                 echo "$DNRD_USER specified in /etc/dnrd/dnrd.conf does not exist!"
> +         fi
> +else
> +        echo "DNRD_USER not set at /etc/dnrd/dnrd.conf!"
> +        exit 1
> +fi
> +
> +case "$1" in
> +  start)
> +        echo -n "Starting  dnrd: "
> +        daemon  dnrd $DNRD_OPTS -u $DNRD_USER
> +        echo
> +        touch /var/lock/subsys/dnrd
> +        ;;
> +  stop)
> +        echo -n "Shutting down dnrd: "
> +        killproc dnrd
> +        echo
> +        rm -f /var/lock/subsys/dnrd
> +        rm -f /var/run/dnrd.pid
> +        ;;
> +  status)
> +        status dnrd
> +        ;;
> +  restart)
> +        $0 stop
> +        $0 start
> +        ;;
> +  reload)
> +        echo -n "Reloading dnrd: "
> +        killproc dnrd -HUP
> +        echo
> +        ;;
> +  *)
> +        echo "Usage: $0 {start|stop|restart|reload|status}"
> +        exit 1
> +esac
> +
> +exit 0
> diff --git a/meta-networking/recipes-daemons/dnrd/dnrd/dnrd.service b/meta-networking/recipes-daemons/dnrd/dnrd/dnrd.service
> new file mode 100644
> index 0000000..9c9fa66
> --- /dev/null
> +++ b/meta-networking/recipes-daemons/dnrd/dnrd/dnrd.service
> @@ -0,0 +1,12 @@
> +[Unit]
> +Description=Domain Name Relay Daemon
> +After=network.target
> +
> +[Service]
> +Type=forking
> +PIDFile=/var/run/dnrd.pid
> +EnvironmentFile=/etc/dnrd/dnrd.conf
> +ExecStart=/usr/sbin/dnrd $DNRD_OPTS -u $DNRD_USER
> +
> +[Install]
> +WantedBy=multi-user.target
> diff --git a/meta-networking/recipes-daemons/dnrd/dnrd_2.20.3.bb b/meta-networking/recipes-daemons/dnrd/dnrd_2.20.3.bb
> new file mode 100644
> index 0000000..85a58cc
> --- /dev/null
> +++ b/meta-networking/recipes-daemons/dnrd/dnrd_2.20.3.bb
> @@ -0,0 +1,39 @@
> +SUMMARY = "A caching, forwarding DNS proxy server"
> +DESCRIPTION = "\
> +dnrd is a proxying nameserver. It forwards DNS queries to the appropriate \
> +nameserver, but can also act as the primary nameserver for a subnet behind \
> +a firewall. It also has features such as caching DNS requests, support for \
> +DNS servers, cache poisoning prevention, TCP support, etc.."
> +HOMEPAGE = "http://dnrd.sourceforge.net/"
> +SECTION = "System Environment/Daemons"
> +LICENSE = "GPLv2"
> +LIC_FILES_CHKSUM = "file://COPYING;md5=0be67017f1c770313ad7b40e18d568f1"
> +
> +SRC_URI = "http://ncu.dl.sourceforge.net/project/${BPN}/${BPN}/${PV}/${BP}.tar.gz \
> +           file://dnrd.service \
> +           file://dnrd.conf.sample \
> +           file://dnrd.init"
> +SRC_URI[md5sum] = "41c9b070aae8ed403fc8c2aac7ab157c"
> +SRC_URI[sha256sum] = "aa46e7f8736b88c1d752cf606b3990041221ce91d014e955c6b02eb2167db015"
> +
> +SYSTEMD_SERVICE_${PN} = "dnrd.service"
> +SYSTEMD_AUTO_ENABLE = "disable"
> +
> +inherit autotools
> +inherit ${@base_contains('VIRTUAL-RUNTIME_init_manager','systemd','systemd','', d)}
> +
> +do_install() {
> +    oe_runmake install DESTDIR=${D} INSTALL="install -p"
> +
> +    sed -i -e 's:/etc/rc.d/init.d/functions:/etc/init.d/functions:g' \
> +        ${WORKDIR}/dnrd.init
> +    install -d -m 0755 ${D}${sysconfdir}/init.d
> +    install -d -m 0755 ${D}${sysconfdir}/dnrd
> +    install -p -m 0644 ${WORKDIR}/dnrd.conf.sample ${D}${sysconfdir}/dnrd/dnrd.conf
> +    install -p -m 0755 ${WORKDIR}/dnrd.init ${D}${sysconfdir}/init.d/dnrd
> +
> +    if ${@base_contains('DISTRO_FEATURES','systemd','true','false',d)}; then
> +        install -d -m 0755 ${D}${systemd_unitdir}/system
> +        install -m 644 ${WORKDIR}/dnrd.service ${D}${systemd_unitdir}/system
> +    fi
> +}
> -- 
> 1.8.3.1
> 
-- 
-Joe MacDonald.
:wq

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 501 bytes --]

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2014-12-29 20:05 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-12-18  8:09 [meta-networking][PATCH] dnrd: Add new recipe Qian Lei
2014-12-29 20:05 ` Joe MacDonald

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.