aboutsummaryrefslogtreecommitdiff
path: root/net/isc-dhcp3-server
diff options
context:
space:
mode:
authorDavid E. O'Brien <obrien@FreeBSD.org>2000-06-25 21:08:08 +0000
committerDavid E. O'Brien <obrien@FreeBSD.org>2000-06-25 21:08:08 +0000
commit7b56fac47bf59ba71b5ce1f1ef7a698e3df3f4eb (patch)
tree3d0363dacef01ca1e193ac1d1fa6ce59e4f20b17 /net/isc-dhcp3-server
parent7d562c06ec4c2f551232c7e111c1eaf77fc1e576 (diff)
downloadports-7b56fac47bf59ba71b5ce1f1ef7a698e3df3f4eb.tar.gz
ports-7b56fac47bf59ba71b5ce1f1ef7a698e3df3f4eb.zip
Notes
Diffstat (limited to 'net/isc-dhcp3-server')
-rw-r--r--net/isc-dhcp3-server/Makefile8
-rw-r--r--net/isc-dhcp3-server/distinfo2
-rw-r--r--net/isc-dhcp3-server/files/patch-dhclient.823
-rw-r--r--net/isc-dhcp3-server/files/patch-dhclient.c39
-rw-r--r--net/isc-dhcp3-server/files/patch-freebsd89
-rw-r--r--net/isc-dhcp3-server/files/patch-site.conf24
6 files changed, 182 insertions, 3 deletions
diff --git a/net/isc-dhcp3-server/Makefile b/net/isc-dhcp3-server/Makefile
index 1b0d74a28f4c..49b0d48583aa 100644
--- a/net/isc-dhcp3-server/Makefile
+++ b/net/isc-dhcp3-server/Makefile
@@ -7,16 +7,19 @@
#
PORTNAME= isc-dhcp3
-PORTVERSION= 3.0.b1.13
+PORTVERSION= 3.0.b1.14
CATEGORIES= net
MASTER_SITES= ftp://ftp.isc.org/isc/dhcp/
-DISTNAME= dhcp-3.0b1pl13
+DISTNAME= dhcp-3.0b1pl14
MAINTAINER= obrien@FreeBSD.org
+BUILD_DEPENDS= ${LOCALBASE}/lib/libbind.a:${PORTSDIR}/net/bind8
+
Y2K= http://www.isc.org/y2k.html
HAS_CONFIGURE= yes
+CONFIGURE_ARGS= --with-nsupdate
MAN5= dhclient.conf.5 dhclient.leases.5 dhcp-options.5 dhcpd.conf.5 \
dhcpd.leases.5
@@ -24,6 +27,7 @@ MAN8= dhclient.8 dhclient-script.8 dhcpd.8 dhcrelay.8
post-patch:
@${PERL} -pi.fbsd -e 's.!!PREFIX!!.${PREFIX}.g' ${WRKSRC}/includes/dhcpd.h
+ @${PERL} -pi.fbsd -e 's.!!PREFIX!!.${PREFIX}.g' ${WRKSRC}/client/scripts/freebsd
post-install:
${TOUCH} /var/db/dhcpd.leases
diff --git a/net/isc-dhcp3-server/distinfo b/net/isc-dhcp3-server/distinfo
index 54f4ab44ddec..a15c0780251e 100644
--- a/net/isc-dhcp3-server/distinfo
+++ b/net/isc-dhcp3-server/distinfo
@@ -1 +1 @@
-MD5 (dhcp-3.0b1pl13.tar.gz) = faf269bd5aba70eefe29345ddb905eee
+MD5 (dhcp-3.0b1pl14.tar.gz) = 1a9ecd791209f0a21c85a344fa73b3f5
diff --git a/net/isc-dhcp3-server/files/patch-dhclient.8 b/net/isc-dhcp3-server/files/patch-dhclient.8
new file mode 100644
index 000000000000..160c451e445b
--- /dev/null
+++ b/net/isc-dhcp3-server/files/patch-dhclient.8
@@ -0,0 +1,23 @@
+--- client/dhclient.8.orig Wed May 10 02:36:03 2000
++++ client/dhclient.8 Wed May 10 02:39:43 2000
+@@ -34,7 +34,7 @@
+ .B -q
+ ]
+ [
+-.B -c
++.B -1
+ ]
+ [
+ .B -lf
+@@ -170,6 +170,11 @@
+ .B -q
+ flag prevents any messages other than errors from being printed to the
+ standard error descriptor.
++.PP
++The
++.B -1
++flag cause dhclient to try once to get a lease. If it fails, dhclient exits
++with exit code two.
+ .PP
+ The DHCP client normally gets its configuration information from
+ .B ETCDIR/dhclient.conf,
diff --git a/net/isc-dhcp3-server/files/patch-dhclient.c b/net/isc-dhcp3-server/files/patch-dhclient.c
new file mode 100644
index 000000000000..b4b92f81c726
--- /dev/null
+++ b/net/isc-dhcp3-server/files/patch-dhclient.c
@@ -0,0 +1,39 @@
+--- client/dhclient.c.orig Wed May 10 02:34:28 2000
++++ client/dhclient.c Wed May 10 02:34:49 2000
+@@ -64,6 +64,7 @@
+ int log_priority;
+ int no_daemon;
+ int save_scripts;
++int onetry;
+
+ static void usage PROTO ((void));
+
+@@ -120,6 +121,8 @@
+ if (++i == argc)
+ usage ();
+ server = argv [i];
++ } else if (!strcmp (argv [i], "-1")) {
++ onetry = 1;
+ } else if (argv [i][0] == '-') {
+ usage ();
+ } else {
+@@ -273,7 +276,7 @@
+
+ static void usage ()
+ {
+- log_error ("Usage: dhclient [-d] [-D] [-q] [-p <port>] %s",
++ log_error ("Usage: dhclient [-d] [-D] [-q] [-1] [-p <port>] %s",
+ "[-s server]");
+ log_error (" [-lf lease-file] [-pf pid-file]%s",
+ "[-cf config-file] [interface]");
+@@ -1232,6 +1235,10 @@
+ /* No leases were available, or what was available didn't work, so
+ tell the shell script that we failed to allocate an address,
+ and try again later. */
++ if (onetry) {
++ exit(2);
++ log_info ("Unable to obtain a lease on first try - exiting.\n");
++ }
+ log_info ("No working leases in persistent database - sleeping.\n");
+ script_init (client, "FAIL", (struct string_list *)0);
+ if (client -> alias)
diff --git a/net/isc-dhcp3-server/files/patch-freebsd b/net/isc-dhcp3-server/files/patch-freebsd
new file mode 100644
index 000000000000..8f063987b726
--- /dev/null
+++ b/net/isc-dhcp3-server/files/patch-freebsd
@@ -0,0 +1,89 @@
+--- client/scripts/freebsd.orig Wed May 10 01:51:09 2000
++++ client/scripts/freebsd Wed May 10 02:01:48 2000
+@@ -1,5 +1,11 @@
+ #!/bin/sh
+
++if [ -x /usr/bin/logger ]; then
++ LOGGER="/usr/bin/logger -s -p user.notice -t dhclient"
++else
++ LOGGER=echo
++fi
++
+ make_resolv_conf() {
+ echo search $new_domain_name >/etc/resolv.conf
+ for nameserver in $new_domain_name_servers; do
+@@ -10,17 +16,17 @@
+ # Must be used on exit. Invokes the local dhcp client exit hooks, if any.
+ exit_with_hooks() {
+ exit_status=$1
+- if [ -x /etc/dhclient-exit-hooks ]; then
+- . /etc/dhclient-exit-hooks
++ if [ -x !!PREFIX!!/etc/dhclient-exit-hooks ]; then
++ . !!PREFIX!!/etc/dhclient-exit-hooks
+ fi
+ # probably should do something with exit status of the local script
+ exit $exit_status
+ }
+
+ # Invoke the local dhcp client enter hooks, if they exist.
+-if [ -x /etc/dhclient-enter-hooks ]; then
++if [ -x !!PREFIX!!/etc/dhclient-enter-hooks ]; then
+ exit_status=0
+- . /etc/dhclient-enter-hooks
++ . !!PREFIX!!/etc/dhclient-enter-hooks
+ # allow the local script to abort processing of this state
+ # local script must set exit_status variable to nonzero.
+ if [ $exit_status -ne 0 ]; then
+@@ -29,11 +35,10 @@
+ fi
+
+ if [ x$new_network_number != x ]; then
+- echo New Network Number: $new_network_number
++ $LOGGER "New Network Number: $new_network_number"
+ fi
+
+ if [ x$new_broadcast_address != x ]; then
+- echo New Broadcast Address: $new_broadcast_address
+ new_broadcast_arg="broadcast $new_broadcast_address"
+ fi
+ if [ x$old_broadcast_address != x ]; then
+@@ -76,6 +81,7 @@
+ if [ x$current_hostname = x ] || \
+ [ x$current_hostname = x$old_host_name ]; then
+ if [ x$new_host_name != x$old_host_name ]; then
++ $LOGGER "New Hostname: $new_host_name"
+ hostname $new_host_name
+ fi
+ fi
+@@ -103,11 +109,18 @@
+ [ x$reason = xBOUND ] || [ x$reason = xREBOOT ]; then
+ ifconfig $interface inet $new_ip_address $new_netmask_arg \
+ $new_broadcast_arg $medium
++ $LOGGER "New IP Address($interface): $new_ip_address"
++ $LOGGER "New Subnet Mask ($interface): $new_subnet_mask"
++ $LOGGER "New Broadcast Address($interface): $new_broadcast_address"
++ if [ "$new_routers" != "" ]; then
++ $LOGGER "New Routers: $new_routers"
++ fi
+ route add $new_ip_address 127.1 >/dev/null 2>&1
+ for router in $new_routers; do
+ route add default $router >/dev/null 2>&1
+ done
+ if [ "$new_static_routes" != "" ]; then
++ $LOGGER "New Static Routes: $new_static_routes"
+ set $new_static_routes
+ while [ $# -gt 1 ]; do
+ route add $1 $2
+@@ -162,8 +175,12 @@
+ fi
+ ifconfig $interface inet $new_ip_address $new_netmask_arg \
+ $new_broadcast_arg $medium
++ $LOGGER "New IP Address($interface): $new_ip_address"
++ $LOGGER "New Subnet Mask($interface): $new_subnet_mask"
++ $LOGGER "New Broadcast Address($interface): $new_broadcast_address"
+ sleep 1
+ if [ "$new_routers" != "" ]; then
++ $LOGGER "New Routers: $new_routers"
+ set $new_routers
+ if ping -q -c 1 $1; then
+ if [ x$new_ip_address != x$alias_ip_address ] && \
diff --git a/net/isc-dhcp3-server/files/patch-site.conf b/net/isc-dhcp3-server/files/patch-site.conf
new file mode 100644
index 000000000000..5c537dbcf298
--- /dev/null
+++ b/net/isc-dhcp3-server/files/patch-site.conf
@@ -0,0 +1,24 @@
+--- site.conf Wed Jul 7 17:20:10 1999
++++ site.conf Tue May 9 21:23:20 2000
+@@ -1,2 +1,21 @@
+ # Put local site configuration stuff here to override the default
+ # settings in Makefile.conf
++
++PREFIX ?= /usr/local
++
++ETC = $(PREFIX)/etc
++BINDIR = $(PREFIX)/sbin
++CLIENTBINDIR = $(PREFIX)/sbin
++MANCAT = man
++ADMMANDIR = $(PREFIX)/man/man8
++ADMMANEXT = .8
++FFMANDIR = $(PREFIX)/man/man5
++FFMANEXT = .5
++
++BINDLIBDEF = -L$(PREFIX)/lib -lbind
++BINDINCDEF = -I$(PREFIX)/include/bind
++
++DEBUG ?= #none
++CFLAGS += -DCL_DEFAULT_SCRIPT_NAME=\"$(ETC)/dhclient-script\"
++CFLAGS += -D_PATH_DHCPD_CONF=\"$(ETC)/dhcpd.conf\"
++CFLAGS += -D_PATH_DHCLIENT_CONF=\"$(ETC)/dhclient.conf\"