Date: Wed, 10 May 2000 03:36:15 +0200 (CEST) From: clefevre@citeweb.net To: FreeBSD-gnats-submit@freebsd.org Cc: jseger@freebsd.org Subject: ports/18475: New port - net/isc-dhcp3 Message-ID: <200005100136.DAA35117@gits.dyndns.org>
next in thread | raw e-mail | index | archive | help
>Number: 18475 >Category: ports >Synopsis: New port - net/isc-dhcp3 >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-ports >State: open >Quarter: >Keywords: >Date-Required: >Class: change-request >Submitter-Id: current-users >Arrival-Date: Tue May 09 18:40:00 PDT 2000 >Closed-Date: >Last-Modified: >Originator: Cyrille Lefevre >Release: FreeBSD 4.0-STABLE i386 >Organization: ACME >Environment: FreeBSD gits 4.0-STABLE FreeBSD 4.0-STABLE #15: Tue May 9 00:32:14 CEST 2000 root@gits:/disk2/4.0-STABLE/src/sys/compile/CUSTOM i386 >Description: update ISC dhcp to the latest version, which is 3.0b1pl13. DESCR file updated + WWW reference. patch-aa : site.conf all references are located in the /usr/local tree. patch-ab..ae : */Makefile.dist DEBUG disabled (?=), CFLAGS augmented (+=). patch-af : client/clparse.c use CL_DEFAULT_SCRIPT_NAME instead of the hard coded "/etc/dhclient-script". patch-ag..ah : client/dhclient.c client/dhclient.8 add support to -1 option as the builtin dhclient does. patch-ai : client/scripts/freebsd dhclient-script updated accordingly to the builtin dhclient. PS : I don't send these patches to ISC, bcoz I don't find to where or to whom to send them ! >How-To-Repeat: n/a >Fix: install this shell archive in the ports tree # This is a shell archive. Save it in a file, remove anything before # this line, and then unpack it by entering "sh file". Note, it may # create directories; files and directories will be owned by you and # have default permissions. # # This archive contains: # # isc-dhcp3 # isc-dhcp3/Makefile # isc-dhcp3/files # isc-dhcp3/files/md5 # isc-dhcp3/patches # isc-dhcp3/patches/patch-aa # isc-dhcp3/patches/patch-ab # isc-dhcp3/patches/patch-ac # isc-dhcp3/patches/patch-ad # isc-dhcp3/patches/patch-ae # isc-dhcp3/patches/patch-af # isc-dhcp3/patches/patch-ag # isc-dhcp3/patches/patch-ai # isc-dhcp3/patches/patch-ah # isc-dhcp3/pkg # isc-dhcp3/pkg/COMMENT # isc-dhcp3/pkg/DESCR # isc-dhcp3/pkg/PLIST # echo c - isc-dhcp3 mkdir -p isc-dhcp3 > /dev/null 2>&1 echo x - isc-dhcp3/Makefile sed 's/^X//' >isc-dhcp3/Makefile << 'END-of-isc-dhcp3/Makefile' X# Ports collection makefile for: dhcp X# Date created: May 9 2000 X# Whom: clefevre@citeweb.net X# X# $FreeBSD$ X# X XPORTNAME= isc-dhcp XPORTVERSION= 3.0b1pl13 XCATEGORIES= net XMASTER_SITES= ftp://ftp.isc.org/isc/dhcp/ XDISTNAME= dhcp-${PORTVERSION} X XMAINTAINER= jseger@FreeBSD.org X XY2K= http://www.isc.org/y2k.html X XHAS_CONFIGURE= yes X XMAN5= dhclient.conf.5 dhclient.leases.5 dhcp-options.5 dhcpd.conf.5 \ X dhcpd.leases.5 XMAN8= dhclient.8 dhclient-script.8 dhcpd.8 dhcrelay.8 X Xpost-install: X ${TOUCH} /var/db/dhcpd.leases X.for file in dhclient dhcpd dhcrelay X if [ -f ${PREFIX}/sbin/${file} ]; then \ X strip ${PREFIX}/sbin/${file}; \ X fi X.endfor X X.include <bsd.port.mk> END-of-isc-dhcp3/Makefile echo c - isc-dhcp3/files mkdir -p isc-dhcp3/files > /dev/null 2>&1 echo x - isc-dhcp3/files/md5 sed 's/^X//' >isc-dhcp3/files/md5 << 'END-of-isc-dhcp3/files/md5' XMD5 (dhcp-3.0b1pl13.tar.gz) = faf269bd5aba70eefe29345ddb905eee END-of-isc-dhcp3/files/md5 echo c - isc-dhcp3/patches mkdir -p isc-dhcp3/patches > /dev/null 2>&1 echo x - isc-dhcp3/patches/patch-aa sed 's/^X//' >isc-dhcp3/patches/patch-aa << 'END-of-isc-dhcp3/patches/patch-aa' X--- site.conf Wed Jul 7 17:20:10 1999 X+++ site.conf Tue May 9 21:23:20 2000 X@@ -1,2 +1,21 @@ X # Put local site configuration stuff here to override the default X # settings in Makefile.conf X+ X+PREFIX ?= /usr/local X+ X+BINDIR = $(PREFIX)/sbin X+CLIENTBINDIR = $(PREFIX)/sbin X+ADMMANDIR = $(PREFIX)/man/man8 X+ADMMANEXT = .8 X+FFMANDIR = $(PREFIX)/man/man5 X+FFMANEXT = .5 X+MANCAT = man X+ETC = $(PREFIX)/etc X+ X+BINDLIBDEF = -L$(PREFIX)/lib -lbind X+BINDINCDEF = -I$(PREFIX)/include/bind X+ X+DEBUG ?= X+CFLAGS += -DCL_DEFAULT_SCRIPT_NAME=\"$(ETC)/dhclient-script\" X+CFLAGS += -D_PATH_DHCPD_CONF=\"$(ETC)/dhcpd.conf\" X+CFLAGS += -D_PATH_DHCLIENT_CONF=\"$(ETC)/dhclient.conf\" END-of-isc-dhcp3/patches/patch-aa echo x - isc-dhcp3/patches/patch-ab sed 's/^X//' >isc-dhcp3/patches/patch-ab << 'END-of-isc-dhcp3/patches/patch-ab' X--- client/Makefile.dist.orig Thu Jul 1 20:38:17 1999 X+++ client/Makefile.dist Tue May 9 21:07:10 2000 X@@ -26,10 +26,10 @@ X PROG = dhclient X MAN = dhclient.8 dhclient.conf.5 dhclient-script.8 dhclient.leases.5 X X-DEBUG = -g X+DEBUG ?= -g X INCLUDES = -I.. $(BINDINC) -I../includes X DHCPLIB = ../common/libdhcp.a X-CFLAGS = $(DEBUG) $(PREDEFINES) $(INCLUDES) $(COPTS) X+CFLAGS += $(DEBUG) $(PREDEFINES) $(INCLUDES) $(COPTS) X X all: $(PROG) $(CATMANPAGES) X END-of-isc-dhcp3/patches/patch-ab echo x - isc-dhcp3/patches/patch-ac sed 's/^X//' >isc-dhcp3/patches/patch-ac << 'END-of-isc-dhcp3/patches/patch-ac' X--- common/Makefile.dist.orig Thu Oct 14 22:38:23 1999 X+++ common/Makefile.dist Tue May 9 21:07:17 2000 X@@ -29,9 +29,9 @@ X inet_addr.o dns.o resolv.o execute.o discover.o auth.o nsupdate.o X MAN = dhcp-options.5 dhcp-contrib.5 dhcp-eval.5 X X-DEBUG = -g X+DEBUG ?= -g X INCLUDES = -I.. $(BINDINC) -I../includes X-CFLAGS = $(DEBUG) $(PREDEFINES) $(INCLUDES) $(COPTS) X+CFLAGS += $(DEBUG) $(PREDEFINES) $(INCLUDES) $(COPTS) X X all: libdhcp.a $(CATMANPAGES) X END-of-isc-dhcp3/patches/patch-ac echo x - isc-dhcp3/patches/patch-ad sed 's/^X//' >isc-dhcp3/patches/patch-ad << 'END-of-isc-dhcp3/patches/patch-ad' X--- relay/Makefile.dist.orig Thu Jul 1 21:29:20 1999 X+++ relay/Makefile.dist Tue May 9 21:07:24 2000 X@@ -24,10 +24,10 @@ X PROG = dhcrelay X MAN = dhcrelay.8 X X-DEBUG = -g X+DEBUG ?= -g X INCLUDES = -I.. $(BINDINC) -I../includes X DHCPLIB = ../common/libdhcp.a X-CFLAGS = $(DEBUG) $(PREDEFINES) $(INCLUDES) $(COPTS) X+CFLAGS += $(DEBUG) $(PREDEFINES) $(INCLUDES) $(COPTS) X X all: $(PROG) $(CATMANPAGES) X END-of-isc-dhcp3/patches/patch-ad echo x - isc-dhcp3/patches/patch-ae sed 's/^X//' >isc-dhcp3/patches/patch-ae << 'END-of-isc-dhcp3/patches/patch-ae' X--- server/Makefile.dist.orig Thu Jul 1 20:21:36 1999 X+++ server/Makefile.dist Tue May 9 21:07:30 2000 X@@ -24,10 +24,10 @@ X PROG = dhcpd X MAN = dhcpd.8 dhcpd.conf.5 dhcpd.leases.5 X X-DEBUG = -g X+DEBUG ?= -g X INCLUDES = -I.. $(BINDINC) -I../includes X DHCPLIB = ../common/libdhcp.a X-CFLAGS = $(DEBUG) $(PREDEFINES) $(INCLUDES) $(COPTS) X+CFLAGS += $(DEBUG) $(PREDEFINES) $(INCLUDES) $(COPTS) X X all: $(PROG) $(CATMANPAGES) X END-of-isc-dhcp3/patches/patch-ae echo x - isc-dhcp3/patches/patch-af sed 's/^X//' >isc-dhcp3/patches/patch-af << 'END-of-isc-dhcp3/patches/patch-af' X--- client/clparse.c.orig Wed May 10 02:20:11 2000 X+++ client/clparse.c Wed May 10 02:20:31 2000 X@@ -74,7 +74,7 @@ X top_level_config.backoff_cutoff = 15; X top_level_config.initial_interval = 3; X top_level_config.bootp_policy = P_ACCEPT; X- top_level_config.script_name = "/etc/dhclient-script"; X+ top_level_config.script_name = CL_DEFAULT_SCRIPT_NAME; X top_level_config.requested_options = default_requested_options; X X top_level_config.on_receipt = new_group ("read_client_conf"); END-of-isc-dhcp3/patches/patch-af echo x - isc-dhcp3/patches/patch-ag sed 's/^X//' >isc-dhcp3/patches/patch-ag << 'END-of-isc-dhcp3/patches/patch-ag' X--- client/dhclient.c.orig Wed May 10 02:34:28 2000 X+++ client/dhclient.c Wed May 10 02:34:49 2000 X@@ -64,6 +64,7 @@ X int log_priority; X int no_daemon; X int save_scripts; X+int onetry; X X static void usage PROTO ((void)); X X@@ -120,6 +121,8 @@ X if (++i == argc) X usage (); X server = argv [i]; X+ } else if (!strcmp (argv [i], "-1")) { X+ onetry = 1; X } else if (argv [i][0] == '-') { X usage (); X } else { X@@ -273,7 +276,7 @@ X X static void usage () X { X- log_error ("Usage: dhclient [-d] [-D] [-q] [-p <port>] %s", X+ log_error ("Usage: dhclient [-d] [-D] [-q] [-1] [-p <port>] %s", X "[-s server]"); X log_error (" [-lf lease-file] [-pf pid-file]%s", X "[-cf config-file] [interface]"); X@@ -1232,6 +1235,10 @@ X /* No leases were available, or what was available didn't work, so X tell the shell script that we failed to allocate an address, X and try again later. */ X+ if (onetry) { X+ exit(2); X+ log_info ("Unable to obtain a lease on first try - exiting.\n"); X+ } X log_info ("No working leases in persistent database - sleeping.\n"); X script_init (client, "FAIL", (struct string_list *)0); X if (client -> alias) END-of-isc-dhcp3/patches/patch-ag echo x - isc-dhcp3/patches/patch-ai sed 's/^X//' >isc-dhcp3/patches/patch-ai << 'END-of-isc-dhcp3/patches/patch-ai' X--- client/scripts/freebsd.orig Wed May 10 01:51:09 2000 X+++ client/scripts/freebsd Wed May 10 02:01:48 2000 X@@ -1,5 +1,11 @@ X #!/bin/sh X X+if [ -x /usr/bin/logger ]; then X+ LOGGER="/usr/bin/logger -s -p user.notice -t dhclient" X+else X+ LOGGER=echo X+fi X+ X make_resolv_conf() { X echo search $new_domain_name >/etc/resolv.conf X for nameserver in $new_domain_name_servers; do X@@ -10,17 +16,17 @@ X # Must be used on exit. Invokes the local dhcp client exit hooks, if any. X exit_with_hooks() { X exit_status=$1 X- if [ -x /etc/dhclient-exit-hooks ]; then X- . /etc/dhclient-exit-hooks X+ if [ -x /usr/local/etc/dhclient-exit-hooks ]; then X+ . /usr/local/etc/dhclient-exit-hooks X fi X # probably should do something with exit status of the local script X exit $exit_status X } X X # Invoke the local dhcp client enter hooks, if they exist. X-if [ -x /etc/dhclient-enter-hooks ]; then X+if [ -x /usr/local/etc/dhclient-enter-hooks ]; then X exit_status=0 X- . /etc/dhclient-enter-hooks X+ . /usr/local/etc/dhclient-enter-hooks X # allow the local script to abort processing of this state X # local script must set exit_status variable to nonzero. X if [ $exit_status -ne 0 ]; then X@@ -29,11 +35,10 @@ X fi X X if [ x$new_network_number != x ]; then X- echo New Network Number: $new_network_number X+ $LOGGER "New Network Number: $new_network_number" X fi X X if [ x$new_broadcast_address != x ]; then X- echo New Broadcast Address: $new_broadcast_address X new_broadcast_arg="broadcast $new_broadcast_address" X fi X if [ x$old_broadcast_address != x ]; then X@@ -76,6 +81,7 @@ X if [ x$current_hostname = x ] || \ X [ x$current_hostname = x$old_host_name ]; then X if [ x$new_host_name != x$old_host_name ]; then X+ $LOGGER "New Hostname: $new_host_name" X hostname $new_host_name X fi X fi X@@ -103,11 +109,18 @@ X [ x$reason = xBOUND ] || [ x$reason = xREBOOT ]; then X ifconfig $interface inet $new_ip_address $new_netmask_arg \ X $new_broadcast_arg $medium X+ $LOGGER "New IP Address($interface): $new_ip_address" X+ $LOGGER "New Subnet Mask ($interface): $new_subnet_mask" X+ $LOGGER "New Broadcast Address($interface): $new_broadcast_address" X+ if [ "$new_routers" != "" ]; then X+ $LOGGER "New Routers: $new_routers" X+ fi X route add $new_ip_address 127.1 >/dev/null 2>&1 X for router in $new_routers; do X route add default $router >/dev/null 2>&1 X done X if [ "$new_static_routes" != "" ]; then X+ $LOGGER "New Static Routes: $new_static_routes" X set $new_static_routes X while [ $# -gt 1 ]; do X route add $1 $2 X@@ -162,8 +175,12 @@ X fi X ifconfig $interface inet $new_ip_address $new_netmask_arg \ X $new_broadcast_arg $medium X+ $LOGGER "New IP Address($interface): $new_ip_address" X+ $LOGGER "New Subnet Mask($interface): $new_subnet_mask" X+ $LOGGER "New Broadcast Address($interface): $new_broadcast_address" X sleep 1 X if [ "$new_routers" != "" ]; then X+ $LOGGER "New Routers: $new_routers" X set $new_routers X if ping -q -c 1 $1; then X if [ x$new_ip_address != x$alias_ip_address ] && \ END-of-isc-dhcp3/patches/patch-ai echo x - isc-dhcp3/patches/patch-ah sed 's/^X//' >isc-dhcp3/patches/patch-ah << 'END-of-isc-dhcp3/patches/patch-ah' X--- client/dhclient.8.orig Wed May 10 02:36:03 2000 X+++ client/dhclient.8 Wed May 10 02:39:43 2000 X@@ -34,7 +34,7 @@ X .B -q X ] X [ X-.B -c X+.B -1 X ] X [ X .B -lf X@@ -170,6 +170,11 @@ X .B -q X flag prevents any messages other than errors from being printed to the X standard error descriptor. X+.PP X+The X+.B -1 X+flag cause dhclient to try once to get a lease. If it fails, dhclient exits X+with exit code two. X .PP X The DHCP client normally gets its configuration information from X .B ETCDIR/dhclient.conf, END-of-isc-dhcp3/patches/patch-ah echo c - isc-dhcp3/pkg mkdir -p isc-dhcp3/pkg > /dev/null 2>&1 echo x - isc-dhcp3/pkg/COMMENT sed 's/^X//' >isc-dhcp3/pkg/COMMENT << 'END-of-isc-dhcp3/pkg/COMMENT' XISC Dynamic Host Configuration Protocol client and server code END-of-isc-dhcp3/pkg/COMMENT echo x - isc-dhcp3/pkg/DESCR sed 's/^X//' >isc-dhcp3/pkg/DESCR << 'END-of-isc-dhcp3/pkg/DESCR' XISC-DHCP Dynamic Host Configuration Protocol server X XThis is a release of the Internet Software Consortium XDHCP Server (ISC dhcpd). In this release, support for the core XDHCP protocol is provided. BOOTP support is also provided for Xbackwards compatibility. X XVersion 3 of the ISC DHCP Distribution adds conditional behaviour, Xaddress pools with access control, and client classing. An interim Ximplementation of dynamic DNS updates for the server only is Xincluded, but is not supported. X XFeatures in upcoming releases, starting with 3.1, will include the Xfinal asynchronous Dynamic DNS Support, DHCPv4 16-bit option codes, Xasynchronous DNS query resolution, DHCP Authentication, and support Xfor a DHCP Interserver Protocol and live querying and update of the XDHCP database. X XWWW: http://www.isc.org/products/DHCP/ END-of-isc-dhcp3/pkg/DESCR echo x - isc-dhcp3/pkg/PLIST sed 's/^X//' >isc-dhcp3/pkg/PLIST << 'END-of-isc-dhcp3/pkg/PLIST' Xetc/dhclient-script Xsbin/dhclient Xsbin/dhcpd Xsbin/dhcrelay X@exec touch /var/db/dhcpd.leases X@exec touch %D/etc/dhclient.conf END-of-isc-dhcp3/pkg/PLIST exit >Release-Note: >Audit-Trail: >Unformatted: To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-ports" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200005100136.DAA35117>