View | Details | Raw Unified | Return to bug 78613
Collapse All | Expand All

(-)Makefile (-6 / +6 lines)
Lines 7-13 Link Here
7
#
7
#
8
8
9
PORTNAME=	dhcp
9
PORTNAME=	dhcp
10
PORTVERSION=	3.0.1.r14
10
PORTVERSION=	3.0.2
11
PORTREVISION=	6
11
PORTREVISION=	6
12
CATEGORIES=	net
12
CATEGORIES=	net
13
MASTER_SITES=	${MASTER_SITE_ISC}
13
MASTER_SITES=	${MASTER_SITE_ISC}
Lines 34-40 Link Here
34
		DHCP_LDAP "add experimental LDAP backend support" off \
34
		DHCP_LDAP "add experimental LDAP backend support" off \
35
		DHCP_LDAP_SSL "support LDAP connection over SSL/TLS" on \
35
		DHCP_LDAP_SSL "support LDAP connection over SSL/TLS" on \
36
		OPENSSL_BASE "use the base system OpenSSL (required by TLS)" on \
36
		OPENSSL_BASE "use the base system OpenSSL (required by TLS)" on \
37
		OPENSSL_PORT "use OpenSSL from ports (requires by TLS)" off
37
		OPENSSL_PORT "use OpenSSL from ports (required by TLS)" off
38
.endif
38
.endif
39
39
40
.include <bsd.port.pre.mk>
40
.include <bsd.port.pre.mk>
Lines 94-100 Link Here
94
# for instance, possible versions are:
94
# for instance, possible versions are:
95
#	1.2.r3.4 (or 1.2.b3.4), 1.2.r3 (or 1.2.b3), 1.2.3, 1.2
95
#	1.2.r3.4 (or 1.2.b3.4), 1.2.r3 (or 1.2.b3), 1.2.3, 1.2
96
# which have to become:
96
# which have to become:
97
#	1.2rc3pl4 (or 1.2beta3pl4), 1.2rc3 (or 1.2beta3), 1.2pl3, 1.2
97
#	1.2rc3pl4 (or 1.2beta3pl4), 1.2rc3 (or 1.2beta3), 1.2.3, 1.2
98
# so, the magic things are:
98
# so, the magic things are:
99
VERSION=
99
VERSION=
100
PATCHLEVEL=
100
PATCHLEVEL=
Lines 105-113 Link Here
105
.elif ${PORTVERSION:E:M[br]*} != ""
105
.elif ${PORTVERSION:E:M[br]*} != ""
106
RELEASE=	${PORTVERSION:R}
106
RELEASE=	${PORTVERSION:R}
107
VERSION=	${PORTVERSION:E:S/b/beta/:S/r/rc/}
107
VERSION=	${PORTVERSION:E:S/b/beta/:S/r/rc/}
108
.elif ${PORTVERSION:R:E} != ""
108
#.elif ${PORTVERSION:R:E} != ""
109
RELEASE=	${PORTVERSION:R}
109
#RELEASE=	${PORTVERSION:R}
110
PATCHLEVEL=	pl${PORTVERSION:E}
110
#PATCHLEVEL=	pl${PORTVERSION:E}
111
.else
111
.else
112
RELEASE=	${PORTVERSION}
112
RELEASE=	${PORTVERSION}
113
.endif
113
.endif
(-)distinfo (-4 / +4 lines)
Lines 1-4 Link Here
1
MD5 (dhcp-3.0.1rc14.tar.gz) = a68074d9ebdeb355c293d9b3645b3c2c
1
MD5 (dhcp-3.0.2.tar.gz) = 04800a111521e7442749b2ce883f962b
2
SIZE (dhcp-3.0.1rc14.tar.gz) = 842712
2
SIZE (dhcp-3.0.2.tar.gz) = 853313
3
MD5 (dhcp-3.0.1rc14-ldap-patch) = 38fde70e0f27758da2be70ce46c17f8b
3
MD5 (dhcp-3.0.2-ldap-patch) = 08908b2f06b5e985d78d7c28797c5a37
4
SIZE (dhcp-3.0.1rc14-ldap-patch) = 152494
4
SIZE (dhcp-3.0.2-ldap-patch) = 229453
(-)pkg-message (-2 / +9 lines)
Lines 17-27 Link Here
17
	    dhcpd_withuser="dhcpd"			# user name to run as
17
	    dhcpd_withuser="dhcpd"			# user name to run as
18
	    dhcpd_withgroup="dhcpd"			# group name to run as
18
	    dhcpd_withgroup="dhcpd"			# group name to run as
19
	    dhcpd_chroot_enable="YES"			# runs chrooted?
19
	    dhcpd_chroot_enable="YES"			# runs chrooted?
20
	    dhcpd_devfs_enable="YES"		      # uses devfs if available?
20
	    dhcpd_devfs_enable="YES"		      # use devfs if available?
21
	    dhcpd_makedev_enable="YES"		      # use MAKEDEV instead?
21
	    dhcpd_rootdir="/var/db/dhcpd"		# directory to run in
22
	    dhcpd_rootdir="/var/db/dhcpd"		# directory to run in
23
	    dhcpd_includedir="<some_dir>"		# directory with config-
24
							  files to include
22
	    dhcpd_flags="-early_chroot"			# needs full root
25
	    dhcpd_flags="-early_chroot"			# needs full root
23
26
24
      WARNING: -early_chroot requires a jail(8) like environment to works.
27
      WARNING: -early_chroot requires a jail(8) like environment to work.
28
29
      WARNING: dhcpd_devfs_enable and dhcpd_makedev_enable are mutually
30
               exclusive 
31
               dhcpd_makedev_enable make NO sense on FreeBSD 5.x and up!
25
32
26
****  If compiled with jail support (the default), the following lines are
33
****  If compiled with jail support (the default), the following lines are
27
      also supported (-early_chroot and dhcpd_chroot_enable=YES are implied):
34
      also supported (-early_chroot and dhcpd_chroot_enable=YES are implied):
(-)files/isc-dhcpd.sh.sample (-6 / +56 lines)
Lines 30-36 Link Here
30
30
31
dhcpd_chroot_enable=${dhcpd_chroot_enable:-"NO"}	# runs chrooted?
31
dhcpd_chroot_enable=${dhcpd_chroot_enable:-"NO"}	# runs chrooted?
32
dhcpd_devfs_enable=${dhcpd_devfs_enable:-"YES"}		# devfs if available?
32
dhcpd_devfs_enable=${dhcpd_devfs_enable:-"YES"}		# devfs if available?
33
dhcpd_makedev_enable=${dhcpd_makedev_enable:-"NO"}	# MAKEDEV instead of devfs?
33
dhcpd_rootdir=${dhcpd_rootdir:-/var/db/${name}}		# directory to run in
34
dhcpd_rootdir=${dhcpd_rootdir:-/var/db/${name}}		# directory to run in
35
dhcpd_includedir=${dhcpd_includedir:-}			# directory for included config files
34
36
35
# untested
37
# untested
36
dhcpd_jail_enable=${dhcpd_jail_enable:-"NO"}		# runs imprisoned?
38
dhcpd_jail_enable=${dhcpd_jail_enable:-"NO"}		# runs imprisoned?
Lines 221-227 Link Here
221
	local _rc
223
	local _rc
222
224
223
	_rc=1
225
	_rc=1
224
	if checkyesno dhcpd_devfs_enable; then
226
	if checkyesno dhcpd_devfs_enable ||
227
	   checkyesno dhcpd_jail_enable; then
225
		mount -t devfs | awk '
228
		mount -t devfs | awk '
226
		    BEGIN { n = ARGC; ARGC = 2 }
229
		    BEGIN { n = ARGC; ARGC = 2 }
227
		    { for (i = 2; i != n; i++) if ($3 == ARGV[i]) exit 1 }
230
		    { for (i = 2; i != n; i++) if ($3 == ARGV[i]) exit 1 }
Lines 343-355 Link Here
343
				err 1 "dhcpd_rootdir must be set" \
346
				err 1 "dhcpd_rootdir must be set" \
344
				      "if dhcpd_chroot_enable is enabled"
347
				      "if dhcpd_chroot_enable is enabled"
345
			fi
348
			fi
346
			if ! ( type mount_devfs ) > /dev/null 2>&1; then
349
			if checkyesno dhcpd_devfs_enable &&
350
			   checkyesno dhcpd_makedev_enable; then
351
				err 1 "dhcpd_devfs_enable and dhcpd_makedev_enable" \
352
				      "are mutually exclusive. enable only one!"
353
			fi
354
			if checkyesno dhcpd_devfs_enable &&
355
			   ! ( type mount_devfs ) > /dev/null 2>&1; then
347
				warn "dhcpd_devfs_enable disabled" \
356
				warn "dhcpd_devfs_enable disabled" \
348
				     "-- not available"
357
				     "-- not available"
349
				dhcpd_devfs_enable=NO
358
				dhcpd_devfs_enable=NO
350
			fi
359
			fi
360
			if checkyesno dhcpd_makedev_enable &&
361
			   ! [ -x ${__dhcpd_devdir}/MAKEDEV ]; then
362
				warn "dhcpd_makedev_enable disabled" \
363
				     "-- not available"
364
				dhcpd_makedev_enable=NO
365
			fi
351
		else
366
		else
352
			dhcpd_devfs_enable=NO
367
			dhcpd_devfs_enable=NO
368
			dhcpd_makedev_enable=NO
353
		fi
369
		fi
354
	else
370
	else
355
		if checkyesno dhcpd_chroot_enable; then
371
		if checkyesno dhcpd_chroot_enable; then
Lines 357-362 Link Here
357
			dhcpd_chroot_enable=NO
373
			dhcpd_chroot_enable=NO
358
		fi
374
		fi
359
		dhcpd_devfs_enable=NO
375
		dhcpd_devfs_enable=NO
376
		dhcpd_makedev_enable=NO
360
	fi
377
	fi
361
}
378
}
362
379
Lines 384-389 Link Here
384
		dhcpd_rootdir=
401
		dhcpd_rootdir=
385
	elif checkyesno paranoia && checkyesno dhcpd_chroot_enable; then
402
	elif checkyesno paranoia && checkyesno dhcpd_chroot_enable; then
386
		dhcpd_devdir=${__dhcpd_devdir}
403
		dhcpd_devdir=${__dhcpd_devdir}
404
		dhcpd_etcdir=${__dhcpd_etcdir}
387
	fi
405
	fi
388
}
406
}
389
407
Lines 403-409 Link Here
403
{
421
{
404
	_dhcpd_rootdir=${dhcpd_rootdir}
422
	_dhcpd_rootdir=${dhcpd_rootdir}
405
	_dhcpd_devdir=${dhcpd_rootdir}${dhcpd_devdir}
423
	_dhcpd_devdir=${dhcpd_rootdir}${dhcpd_devdir}
424
	_dhcpd_etcdir=${dhcpd_rootdir}${dhcpd_etcdir}
406
	_dhcpd_confdir=${dhcpd_rootdir}${dhcpd_confdir}
425
	_dhcpd_confdir=${dhcpd_rootdir}${dhcpd_confdir}
426
	_dhcpd_includedir=${dhcpd_rootdir}${dhcpd_includedir}
407
	_dhcpd_piddir=${dhcpd_rootdir}${dhcpd_piddir}
427
	_dhcpd_piddir=${dhcpd_rootdir}${dhcpd_piddir}
408
	_dhcpd_leasesdir=${dhcpd_rootdir}${dhcpd_leasesdir}
428
	_dhcpd_leasesdir=${dhcpd_rootdir}${dhcpd_leasesdir}
409
	_dhcpd_conffile=${dhcpd_rootdir}${dhcpd_conffile}
429
	_dhcpd_conffile=${dhcpd_rootdir}${dhcpd_conffile}
Lines 441-455 Link Here
441
461
442
setup_chroot ()
462
setup_chroot ()
443
{
463
{
464
	local _mdev _hconf _hosts _ltime _rconf
465
466
	_mdev=MAKEDEV
467
	_hconf=host.conf
468
	_hosts=hosts
469
	_ltime=localtime
470
	_rconf=resolv.conf
471
444
	if checkyesno paranoia && checkyesno dhcpd_chroot_enable; then
472
	if checkyesno paranoia && checkyesno dhcpd_chroot_enable; then
445
		safe_mkdir ${_dhcpd_rootdir} ${_dhcpd_devdir}/_ ${_dhcpd_confdir}
473
		if ! mounted ${_dhcpd_devdir}; then
446
		# XXX /_ hack! so, .../dev is root owned.
474
			safe_mkdir ${_dhcpd_devdir}/_
475
			# XXX /_ hack! so, .../dev is root owned.
476
		fi
477
		safe_mkdir ${_dhcpd_rootdir} ${_dhcpd_etcdir}/_ ${_dhcpd_confdir}
478
		# XXX /_ hack! so, .../etc is root owned.
447
		if checkyesno dhcpd_devfs_enable; then
479
		if checkyesno dhcpd_devfs_enable; then
448
			safe_mount ${_dhcpd_devdir}
480
			safe_mount ${_dhcpd_devdir}
481
		elif checkyesno dhcpd_makedev_enable; then
482
			safe_copy ${dhcpd_devdir}/$_mdev ${_dhcpd_devdir}/$_mdev
483
			safe_run 0 sh -c "cd ${_dhcpd_devdir} && ./$_mdev jail bpf4"
449
		else
484
		else
450
			safe_copy ${dhcpd_devdir} ${_dhcpd_devdir}
485
			safe_copy ${dhcpd_devdir} ${_dhcpd_devdir}
451
		fi
486
		fi
452
		safe_copy ${dhcpd_conffile} ${_dhcpd_conffile}
487
		safe_copy ${dhcpd_conffile} ${_dhcpd_conffile}
488
		safe_copy ${dhcpd_etcdir}/$_hconf ${_dhcpd_etcdir}/$_hconf
489
		safe_copy ${dhcpd_etcdir}/$_hosts ${_dhcpd_etcdir}/$_hosts
490
		safe_copy ${dhcpd_etcdir}/$_ltime ${_dhcpd_etcdir}/$_ltime
491
		safe_copy ${dhcpd_etcdir}/$_rconf ${_dhcpd_etcdir}/$_rconf
492
		# copy dhcpd_includedir if defined and available
493
		if [ -d "${dhcpd_includedir}" ]; then
494
			safe_mkdir ${_dhcpd_includedir}
495
			safe_copy ${dhcpd_includedir} ${_dhcpd_includedir}
496
		fi
453
	fi
497
	fi
454
}
498
}
455
499
Lines 537-550 Link Here
537
remove_chroot ()
581
remove_chroot ()
538
{
582
{
539
	if checkyesno paranoia && checkyesno dhcpd_chroot_enable; then
583
	if checkyesno paranoia && checkyesno dhcpd_chroot_enable; then
540
		safe_remove ${_dhcpd_conffile}
584
		safe_remove ${_dhcpd_conffile} ${_dhcpd_includedir} \
585
			${_dhcpd_etcdir}
541
		if checkyesno dhcpd_devfs_enable; then
586
		if checkyesno dhcpd_devfs_enable; then
542
			safe_umount ${_dhcpd_devdir}
587
			safe_umount ${_dhcpd_devdir}
543
			safe_rmdir ${_dhcpd_devdir}/_ # XXX /_ hack!
588
			safe_rmdir ${_dhcpd_devdir}/_ # XXX /_ hack!
589
		elif checkyesno dhcpd_jail_enable; then
590
			if ! mounted ${_dhcpd_devdir}; then
591
				safe_remove ${_dhcpd_devdir}
592
			fi
544
		else
593
		else
545
			safe_remove ${_dhcpd_devdir}
594
			safe_remove ${_dhcpd_devdir}
546
		fi
595
		fi
547
		safe_rmdir ${_dhcpd_confdir} ${_dhcpd_rootdir}
596
		safe_rmdir ${_dhcpd_confdir} ${_dhcpd_rootdir} # XXX /_ hack!
548
	fi
597
	fi
549
}
598
}
550
599
Lines 650-655 Link Here
650
699
651
__dhcpd_uninstall="NO"			# internal use only
700
__dhcpd_uninstall="NO"			# internal use only
652
__dhcpd_devdir=/dev			# devices directory
701
__dhcpd_devdir=/dev			# devices directory
702
__dhcpd_etcdir=/etc			# etc directory
653
__dhcpd_piddir=/var/run			# pid file directory
703
__dhcpd_piddir=/var/run			# pid file directory
654
__dhcpd_leasesdir=/var/db		# leases file directory
704
__dhcpd_leasesdir=/var/db		# leases file directory
655
#__dhcpd_rootdir=/var/db/${name}	# root directory
705
#__dhcpd_rootdir=/var/db/${name}	# root directory
(-)files/patch-client::dhclient.c (-24 / +24 lines)
Lines 1-6 Link Here
1
--- client/dhclient.c.orig	Sat Apr 26 23:51:39 2003
1
--- client/dhclient.c.orig	Wed Nov 24 18:39:14 2004
2
+++ client/dhclient.c	Wed Mar  3 16:21:02 2004
2
+++ client/dhclient.c	Tue Mar  8 14:06:59 2005
3
@@ -47,6 +47,13 @@
3
@@ -38,6 +38,13 @@
4
 #include "dhcpd.h"
4
 #include "dhcpd.h"
5
 #include "version.h"
5
 #include "version.h"
6
 
6
 
Lines 11-20 Link Here
11
+#include <net80211/ieee80211.h>
11
+#include <net80211/ieee80211.h>
12
+#endif
12
+#endif
13
+
13
+
14
 TIME cur_time;
15
 TIME default_lease_time = 43200; /* 12 hours... */
14
 TIME default_lease_time = 43200; /* 12 hours... */
16
 TIME max_lease_time = 86400; /* 24 hours... */
15
 TIME max_lease_time = 86400; /* 24 hours... */
17
@@ -82,8 +89,11 @@
16
 
17
@@ -72,8 +79,11 @@
18
 struct string_list *client_env=NULL;
18
 struct string_list *client_env=NULL;
19
 int client_env_count=0;
19
 int client_env_count=0;
20
 int onetry=0;
20
 int onetry=0;
Lines 27-33 Link Here
27
 
27
 
28
 static void usage PROTO ((void));
28
 static void usage PROTO ((void));
29
 
29
 
30
@@ -184,6 +194,9 @@
30
@@ -174,6 +184,9 @@
31
 		} else if (!strcmp (argv [i], "-q")) {
31
 		} else if (!strcmp (argv [i], "-q")) {
32
 			quiet = 1;
32
 			quiet = 1;
33
 			quiet_interface_discovery = 1;
33
 			quiet_interface_discovery = 1;
Lines 37-43 Link Here
37
 		} else if (!strcmp (argv [i], "-s")) {
37
 		} else if (!strcmp (argv [i], "-s")) {
38
 			if (++i == argc)
38
 			if (++i == argc)
39
 				usage ();
39
 				usage ();
40
@@ -197,6 +210,19 @@
40
@@ -187,6 +200,19 @@
41
 		} else if (!strcmp (argv [i], "-n")) {
41
 		} else if (!strcmp (argv [i], "-n")) {
42
 			/* do not start up any interfaces */
42
 			/* do not start up any interfaces */
43
 			interfaces_requested = 1;
43
 			interfaces_requested = 1;
Lines 57-63 Link Here
57
 		} else if (!strcmp (argv [i], "-w")) {
57
 		} else if (!strcmp (argv [i], "-w")) {
58
 			/* do not exit if there are no broadcast interfaces. */
58
 			/* do not exit if there are no broadcast interfaces. */
59
 			persist = 1;
59
 			persist = 1;
60
@@ -225,7 +251,16 @@
60
@@ -215,7 +241,16 @@
61
 		    if (strlen (argv [i]) > sizeof tmp -> name)
61
 		    if (strlen (argv [i]) > sizeof tmp -> name)
62
 			    log_fatal ("%s: interface name too long (max %ld)",
62
 			    log_fatal ("%s: interface name too long (max %ld)",
63
 				       argv [i], (long)strlen (argv [i]));
63
 				       argv [i], (long)strlen (argv [i]));
Lines 75-81 Link Here
75
 		    if (interfaces) {
75
 		    if (interfaces) {
76
 			    interface_reference (&tmp -> next,
76
 			    interface_reference (&tmp -> next,
77
 						 interfaces, MDL);
77
 						 interfaces, MDL);
78
@@ -385,6 +420,16 @@
78
@@ -375,6 +410,16 @@
79
 					     INTERFACE_AUTOMATIC)) !=
79
 					     INTERFACE_AUTOMATIC)) !=
80
 			     INTERFACE_REQUESTED))
80
 			     INTERFACE_REQUESTED))
81
 				continue;
81
 				continue;
Lines 92-98 Link Here
92
 			script_init (ip -> client,
92
 			script_init (ip -> client,
93
 				     "PREINIT", (struct string_list *)0);
93
 				     "PREINIT", (struct string_list *)0);
94
 			if (ip -> client -> alias)
94
 			if (ip -> client -> alias)
95
@@ -427,8 +472,13 @@
95
@@ -417,8 +462,13 @@
96
 				client -> state = S_INIT;
96
 				client -> state = S_INIT;
97
 				/* Set up a timeout to start the initialization
97
 				/* Set up a timeout to start the initialization
98
 				   process. */
98
 				   process. */
Lines 106-112 Link Here
106
 			}
106
 			}
107
 		}
107
 		}
108
 	}
108
 	}
109
@@ -486,9 +536,9 @@
109
@@ -476,9 +526,9 @@
110
 	log_info (arr);
110
 	log_info (arr);
111
 	log_info (url);
111
 	log_info (url);
112
 
112
 
Lines 119-125 Link Here
119
 		   "[-pf pid-file] [-e VAR=val]");
119
 		   "[-pf pid-file] [-e VAR=val]");
120
 	log_fatal ("                [-sf script-file] [interface]");
120
 	log_fatal ("                [-sf script-file] [interface]");
121
 }
121
 }
122
@@ -876,6 +926,15 @@
122
@@ -881,6 +931,15 @@
123
 	/* Write out the new lease. */
123
 	/* Write out the new lease. */
124
 	write_client_lease (client, client -> new, 0, 0);
124
 	write_client_lease (client, client -> new, 0, 0);
125
 
125
 
Lines 135-141 Link Here
135
 	/* Replace the old active lease with the new one. */
135
 	/* Replace the old active lease with the new one. */
136
 	if (client -> active)
136
 	if (client -> active)
137
 		destroy_client_lease (client -> active);
137
 		destroy_client_lease (client -> active);
138
@@ -890,6 +949,12 @@
138
@@ -895,6 +954,12 @@
139
 	      piaddr (client -> active -> address),
139
 	      piaddr (client -> active -> address),
140
 	      (long)(client -> active -> renewal - cur_time));
140
 	      (long)(client -> active -> renewal - cur_time));
141
 	client -> state = S_BOUND;
141
 	client -> state = S_BOUND;
Lines 148-154 Link Here
148
 	reinitialize_interfaces ();
148
 	reinitialize_interfaces ();
149
 	go_daemon ();
149
 	go_daemon ();
150
 	if (client -> config -> do_forward_update) {
150
 	if (client -> config -> do_forward_update) {
151
@@ -1352,6 +1417,11 @@
151
@@ -1359,6 +1424,11 @@
152
 	int interval;
152
 	int interval;
153
 	int increase = 1;
153
 	int increase = 1;
154
 
154
 
Lines 160-166 Link Here
160
 	/* Figure out how long it's been since we started transmitting. */
160
 	/* Figure out how long it's been since we started transmitting. */
161
 	interval = cur_time - client -> first_sending;
161
 	interval = cur_time - client -> first_sending;
162
 
162
 
163
@@ -1457,6 +1527,9 @@
163
@@ -1464,6 +1534,9 @@
164
 	struct client_lease *loop;
164
 	struct client_lease *loop;
165
 	struct client_lease *lp;
165
 	struct client_lease *lp;
166
 
166
 
Lines 170-176 Link Here
170
 	loop = lp = client -> active;
170
 	loop = lp = client -> active;
171
 
171
 
172
 	log_info ("No DHCPOFFERS received.");
172
 	log_info ("No DHCPOFFERS received.");
173
@@ -1489,6 +1562,10 @@
173
@@ -1496,6 +1569,10 @@
174
 				log_info ("bound: renewal in %ld %s.",
174
 				log_info ("bound: renewal in %ld %s.",
175
 					  (long)(client -> active -> renewal -
175
 					  (long)(client -> active -> renewal -
176
 						 cur_time), "seconds");
176
 						 cur_time), "seconds");
Lines 181-187 Link Here
181
 				add_timeout (client -> active -> renewal,
181
 				add_timeout (client -> active -> renewal,
182
 					     state_bound, client, 0, 0);
182
 					     state_bound, client, 0, 0);
183
 			    } else {
183
 			    } else {
184
@@ -1496,6 +1573,11 @@
184
@@ -1503,6 +1580,11 @@
185
 				log_info ("bound: immediate renewal.");
185
 				log_info ("bound: immediate renewal.");
186
 				state_bound (client);
186
 				state_bound (client);
187
 			    }
187
 			    }
Lines 193-199 Link Here
193
 			    reinitialize_interfaces ();
193
 			    reinitialize_interfaces ();
194
 			    go_daemon ();
194
 			    go_daemon ();
195
 			    return;
195
 			    return;
196
@@ -1541,6 +1623,12 @@
196
@@ -1548,6 +1630,12 @@
197
 	}
197
 	}
198
 
198
 
199
 	log_info ("No working leases in persistent database - sleeping.");
199
 	log_info ("No working leases in persistent database - sleeping.");
Lines 206-212 Link Here
206
 	script_init (client, "FAIL", (struct string_list *)0);
206
 	script_init (client, "FAIL", (struct string_list *)0);
207
 	if (client -> alias)
207
 	if (client -> alias)
208
 		script_write_params (client, "alias_", client -> alias);
208
 		script_write_params (client, "alias_", client -> alias);
209
@@ -1681,6 +1769,18 @@
209
@@ -1689,6 +1777,18 @@
210
 			client -> packet.secs = htons (65535);
210
 			client -> packet.secs = htons (65535);
211
 	}
211
 	}
212
 
212
 
Lines 225-231 Link Here
225
 	log_info ("DHCPREQUEST on %s to %s port %d",
225
 	log_info ("DHCPREQUEST on %s to %s port %d",
226
 	      client -> name ? client -> name : client -> interface -> name,
226
 	      client -> name ? client -> name : client -> interface -> name,
227
 	      inet_ntoa (destination.sin_addr),
227
 	      inet_ntoa (destination.sin_addr),
228
@@ -1702,6 +1802,16 @@
228
@@ -1710,6 +1810,16 @@
229
 				      from, &destination,
229
 				      from, &destination,
230
 				      (struct hardware *)0);
230
 				      (struct hardware *)0);
231
 
231
 
Lines 242-248 Link Here
242
 	add_timeout (cur_time + client -> interval,
242
 	add_timeout (cur_time + client -> interval,
243
 		     send_request, client, 0, 0);
243
 		     send_request, client, 0, 0);
244
 }
244
 }
245
@@ -2597,6 +2707,13 @@
245
@@ -2607,6 +2717,13 @@
246
 			wstatus = 0;
246
 			wstatus = 0;
247
 		}
247
 		}
248
 	} else {
248
 	} else {
Lines 256-262 Link Here
256
 		execve (scriptName, argv, envp);
256
 		execve (scriptName, argv, envp);
257
 		log_error ("execve (%s, ...): %m", scriptName);
257
 		log_error ("execve (%s, ...): %m", scriptName);
258
 		exit (0);
258
 		exit (0);
259
@@ -2783,8 +2900,10 @@
259
@@ -2793,8 +2910,10 @@
260
 			      case S_STOPPED:
260
 			      case S_STOPPED:
261
 				break;
261
 				break;
262
 			}
262
 			}
Lines 267-273 Link Here
267
 		}
267
 		}
268
 	}
268
 	}
269
 }
269
 }
270
@@ -3010,7 +3129,9 @@
270
@@ -3022,7 +3141,9 @@
271
 		    break;
271
 		    break;
272
 
272
 
273
 		  case server_awaken:
273
 		  case server_awaken:
Lines 277-283 Link Here
277
 		    break;
277
 		    break;
278
 		}
278
 		}
279
 	    }
279
 	    }
280
@@ -3147,3 +3268,265 @@
280
@@ -3160,3 +3281,265 @@
281
 	data_string_forget (&ddns_dhcid, MDL);
281
 	data_string_forget (&ddns_dhcid, MDL);
282
 	return rcode;
282
 	return rcode;
283
 }
283
 }

Return to bug 78613