summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--abs/core-testing/dhcp/PKGBUILD46
-rw-r--r--abs/core-testing/dhcp/dhcp-3.0.3-tr.c.patch10
-rw-r--r--abs/core-testing/dhcp/dhcp.install15
-rwxr-xr-xabs/core-testing/dhcp/dhcpd39
4 files changed, 110 insertions, 0 deletions
diff --git a/abs/core-testing/dhcp/PKGBUILD b/abs/core-testing/dhcp/PKGBUILD
new file mode 100644
index 0000000..f426778
--- /dev/null
+++ b/abs/core-testing/dhcp/PKGBUILD
@@ -0,0 +1,46 @@
+# $Id: PKGBUILD 23123 2009-01-03 02:43:02Z kevin $
+# Maintainer: judd <jvinet@zeroflux.org>
+pkgname=dhcp
+pkgver=4.1.0
+pkgrel=1
+pkgdesc="A DHCP server, client, and relay agent"
+arch=(i686 x86_64)
+license=('custom:isc-dhcp')
+url="http://www.isc.org/sw/dhcp/"
+depends=('openssl>=0.9.8a')
+backup=('etc/dhcpd.conf' 'etc/dhclient.conf')
+install=dhcp.install
+source=(http://ftp.isc.org/isc/dhcp/dhcp-${pkgver}.tar.gz dhcp-3.0.3-tr.c.patch
+dhcpd)
+md5sums=('1fffed2e8c3d67b111316d6a9b33db7a' '39866416303b674df08b66b2d094e523'
+ '025b8fe98b6c0814428b671b1819a810')
+
+build() {
+ cd ${srcdir}/${pkgname}-${pkgver}
+ patch -p1 -i ../dhcp-3.0.3-tr.c.patch || return 1
+ # Define _GNU_SOURCE to fix IPV6.
+ sed '/^CFLAGS="$CFLAGS/ s/INGS"/INGS -D_GNU_SOURCE"/' -i configure
+ ./configure --prefix=/usr --sysconfdir=/etc \
+ --with-srv-lease-file=/var/state/dhcp/dhcpd.leases \
+ --with-srv6-lease-file=/var/state/dhcp/dhcpd6.leases
+ make || return 1
+ make DESTDIR=${pkgdir} install
+
+ #install -D -m644 server/dhcpd.conf ${pkgdir}/etc/dhcpd.conf
+ #install -D -m644 client/dhclient.conf ${pkgdir}/etc/dhclient.conf
+ install -D -m755 ${srcdir}/dhcpd ${pkgdir}/etc/rc.d/dhcpd
+ mkdir -p ${pkgdir}/var/state/dhcp
+ #touch ${pkgdir}/var/state/dhcp/dhcpd.leases
+ #chmod -R 644 ${pkgdir}/usr/share/man/*
+ #chmod 755 ${pkgdir}/usr/share/man/man{1,3,5,8}
+ #sed -i 's|etc/dhclient-script|sbin/dhclient-script|g' \
+ #${pkgdir}/etc/dhclient.conf
+ #rm -f ${pkgdir}/var/state/dhcp/dhcpd.leases
+ #rm -f ${pkgdir}/sbin/{dhclient,dhclient-script}
+ rm -f ${pkgdir}/etc/dhclient.conf
+ rm -f ${pkgdir}/usr/sbin/dhclient
+ rm -f ${pkgdir}/usr/share/man/man{5,8}/dhclient*
+ # install licenses
+ install -m644 -D ${srcdir}/${pkgname}-${pkgver}/LICENSE \
+ ${pkgdir}/usr/share/licenses/dhcp/LICENSE
+}
diff --git a/abs/core-testing/dhcp/dhcp-3.0.3-tr.c.patch b/abs/core-testing/dhcp/dhcp-3.0.3-tr.c.patch
new file mode 100644
index 0000000..e262c5e
--- /dev/null
+++ b/abs/core-testing/dhcp/dhcp-3.0.3-tr.c.patch
@@ -0,0 +1,10 @@
+--- work.linux-2.2/common/tr.c 2005/08/14 11:34:24 1.1
++++ work.linux-2.2/common/tr.c 2005/08/14 11:35:16
+@@ -40,6 +40,7 @@ static char copyright[] =
+ #include "includes/netinet/if_ether.h"
+ #include "netinet/if_tr.h"
+ #include <sys/time.h>
++#include <linux/types.h>
+
+ /*
+ * token ring device handling subroutines. These are required as token-ring
diff --git a/abs/core-testing/dhcp/dhcp.install b/abs/core-testing/dhcp/dhcp.install
new file mode 100644
index 0000000..edb84b1
--- /dev/null
+++ b/abs/core-testing/dhcp/dhcp.install
@@ -0,0 +1,15 @@
+# arg 1: the new package version
+post_install() {
+ [ -f var/state/dhcp/dhcpd.leases ] || : >var/state/dhcp/dhcpd.leases
+ echo "If dhcpd doesn' start ensure the ipv6 kernel module is loaded."
+}
+
+# arg 1: the new package version
+# arg 2: the old package version
+post_upgrade() {
+ post_install $1
+}
+
+op=$1
+shift
+$op $*
diff --git a/abs/core-testing/dhcp/dhcpd b/abs/core-testing/dhcp/dhcpd
new file mode 100755
index 0000000..0aebcc8
--- /dev/null
+++ b/abs/core-testing/dhcp/dhcpd
@@ -0,0 +1,39 @@
+#!/bin/bash
+
+. /etc/rc.conf
+. /etc/rc.d/functions
+
+PIDFILE="/var/run/dhcpd.pid"
+PID=`cat $PIDFILE 2>/dev/null`
+case "$1" in
+ start)
+ stat_busy "Starting DHCP Server"
+ if [ "$PID" = "" ]; then
+ /usr/sbin/dhcpd -q
+ fi
+ if [ "$PID" != "" -o $? -gt 0 ]; then
+ stat_fail
+ else
+ add_daemon dhcpd
+ stat_done
+ fi
+ ;;
+ stop)
+ stat_busy "Stopping DHCP Server"
+ [ ! -z "$PID" ] && kill $PID &> /dev/null
+ rm -f $PIDFILE
+ if [ $? -gt 0 ]; then
+ stat_fail
+ else
+ rm_daemon dhcpd
+ stat_done
+ fi
+ ;;
+ restart)
+ $0 stop
+ sleep 1
+ $0 start
+ ;;
+ *)
+ echo "usage: $0 {start|stop|restart}"
+esac