Commit 7896ddb8 authored by Andrew Pollock's avatar Andrew Pollock

Imported Upstream version 4.1.1

parent 0cb658d4
# Copyright (c) 2004-2008 by Internet Systems Consortium, Inc. ("ISC")
# Copyright (c) 2004-2010 by Internet Systems Consortium, Inc. ("ISC")
# Copyright (c) 1995-2003 by Internet Software Consortium
#
# Permission to use, copy, modify, and distribute this software for any
......@@ -17,4 +17,4 @@
# 950 Charter Street
# Redwood City, CA 94063
# <info@isc.org>
# http://www.isc.org/
# https://www.isc.org/
......@@ -15,7 +15,8 @@ EXTRA_DIST = RELNOTES LICENSE \
doc/References.txt doc/References.xml doc/api+protocol \
doc/ja_JP.eucJP/dhclient-script.8 doc/ja_JP.eucJP/dhclient.8 \
doc/ja_JP.eucJP/dhclient.conf.5 doc/ja_JP.eucJP/dhclient.leases.5 \
doc/ja_JP.eucJP/dhcp-eval.5 doc/ja_JP.eucJP/dhcp-options.5
doc/ja_JP.eucJP/dhcp-eval.5 doc/ja_JP.eucJP/dhcp-options.5 \
doc/examples/dhclient-dhcpv6.conf doc/examples/dhcpd-dhcpv6.conf
SUBDIRS = includes tests common minires dst omapip client dhcpctl relay server
......
......@@ -99,6 +99,7 @@ ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
EXEEXT = @EXEEXT@
GREP = @GREP@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
......@@ -122,8 +123,6 @@ SHELL = @SHELL@
STRIP = @STRIP@
VERSION = @VERSION@
ac_ct_CC = @ac_ct_CC@
ac_ct_RANLIB = @ac_ct_RANLIB@
ac_ct_STRIP = @ac_ct_STRIP@
ac_prefix_program = @ac_prefix_program@
am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
......@@ -136,19 +135,26 @@ bindir = @bindir@
build_alias = @build_alias@
byte_order = @byte_order@
datadir = @datadir@
datarootdir = @datarootdir@
docdir = @docdir@
dvidir = @dvidir@
exec_prefix = @exec_prefix@
host_alias = @host_alias@
htmldir = @htmldir@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
sysconfdir = @sysconfdir@
......@@ -166,7 +172,8 @@ EXTRA_DIST = RELNOTES LICENSE \
doc/References.txt doc/References.xml doc/api+protocol \
doc/ja_JP.eucJP/dhclient-script.8 doc/ja_JP.eucJP/dhclient.8 \
doc/ja_JP.eucJP/dhclient.conf.5 doc/ja_JP.eucJP/dhclient.leases.5 \
doc/ja_JP.eucJP/dhcp-eval.5 doc/ja_JP.eucJP/dhcp-options.5
doc/ja_JP.eucJP/dhcp-eval.5 doc/ja_JP.eucJP/dhcp-options.5 \
doc/examples/dhclient-dhcpv6.conf doc/examples/dhcpd-dhcpv6.conf
SUBDIRS = includes tests common minires dst omapip client dhcpctl relay server
nobase_include_HEADERS = dhcpctl/dhcpctl.h
......@@ -353,7 +360,7 @@ distclean-tags:
distdir: $(DISTFILES)
$(am__remove_distdir)
mkdir $(distdir)
$(mkdir_p) $(distdir)/contrib $(distdir)/contrib/ms2isc $(distdir)/dhcpctl $(distdir)/doc $(distdir)/doc/ja_JP.eucJP
$(mkdir_p) $(distdir)/contrib $(distdir)/contrib/ms2isc $(distdir)/dhcpctl $(distdir)/doc $(distdir)/doc/examples $(distdir)/doc/ja_JP.eucJP
@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
list='$(DISTFILES)'; for file in $$list; do \
......
Internet Systems Consortium DHCP Distribution
Version 4.1.0
5 December 2008
Version 4.1.1
7 January 2010
README FILE
......@@ -94,8 +94,9 @@ directory, it may not have up-to-date information).
RELEASE STATUS
This is ISC DHCP 4.1.0, which adds new DHCPv6 features omitted from
ISC DHCP 4.0.0.
This is ISC DHCP 4.1.1, a maintenance release which fixes bugs
present in ISC DHCP 4.1.0 or prior. A fix for a security vulnerability
in the ISC DHCP Client ('dhclient') is included in this release.
In this release, the DHCPv6 server should be fully functional on Linux,
Solaris, or any BSD. The DHCPv6 client should be similarly functional
......@@ -131,12 +132,12 @@ information. On Digital Unix, type ``man pfilt''.
To build the DHCP Distribution, unpack the compressed tar file using
the tar utility and the gzip command - type something like:
gunzip dhcp-4.1.0.tar.gz
tar xvf dhcp-4.1.0.tar
gunzip dhcp-4.1.1.tar.gz
tar xvf dhcp-4.1.1.tar
CONFIGURING IT
Now, cd to the dhcp-4.1.0 subdirectory that you've just created and
Now, cd to the dhcp-4.1.1 subdirectory that you've just created and
configure the source tree by typing:
./configure
......@@ -485,7 +486,7 @@ sponsors. ISC now also offers commercial quality support contracts for
ISC DHCP, more information about ISC Support Contracts can be found at
the following URL:
http://www.isc.org/sw/support/
https://www.isc.org/services/support/
Please understand that we may not respond to support inquiries unless
you have a support contract. ISC will continue its practice of always
......@@ -589,6 +590,6 @@ bug reports are more likely to get handled more quickly overall.
This assumes that it's the dhcp server you're debugging, and
that the core file is in dhcpd.core.
Please see http://www.isc.org/sw/dhcp/ for details on how to subscribe
Please see https://www.isc.org/software/dhcp/ for details on how to subscribe
to the ISC DHCP mailing lists.
Internet Systems Consortium DHCP Distribution
Version 4.1.0
5 December 2008
Version 4.1.1
7 January 2010
Release Notes
......@@ -47,6 +47,164 @@ The system has only been tested on Linux, FreeBSD, and Solaris, and may not
work on other platforms. Please report any problems and suggested fixes to
<dhcp-users@isc.org>.
Changes since 4.1.1rc1
- When using 'ignore client-updates;', the FQDN returned to the client
is no longer truncated to one octet.
Changes since 4.1.1b3
- None.
Changes since 4.1.1b2
- Fix test in dhcp_interface_signal_handler to check that the inner handler
has a signal_handler before calling it.
- Both host and subnet6 configuration groups are now included whether a
fixed-address6 (DHCPv6) is in use or not. Host scoped configuration takes
precedence. This fixes two bugs, one where host scoped configuration
would not be included from a non-fixed-address6 host record, and the equal
and opposite bug where subnet6 scoped configuration would not be used when
over-riding values were not present in a matching fixed-address6 host
configuration.
- ./configure now checks to ensure the intX_t and u_intX_t types are defined,
correcting a compilation failure when using Sun's compiler.
- Modified the handling of a connection to avoid releasing the omapi io
object for the connection while it is still in use. One symptom from
this error was a segfault when a failover secondary attempted to connect
to the failover primary if their clocks were not synchronized.
Changes since 4.1.1b1
- Remove infinite loop in token_print_indent_concat().
- Memory leak in the load_balance_mine() function is fixed. This would
leak ~20-30 octets per DHCPDISCOVER packet while failover was in use
and in normal state.
- Various compilation fixes have been included for the memory related
DEBUG #defines in includes/site.h.
- Fixed Linux client script 'unary operator expected' errors with DHCPv6.
- Fixed setting hostname in Linux hosts that require hostname argument
to be double-quoted. Also allow server-provided hostname to
override hostnames 'localhost' and '(none)'.
- Added client support for setting interface MTU and metric, thanks to
Roy "UberLord" Marples <roy@marples.name>.
- Fixed failover reconnection retry code to continue to retry to reconnect
rather than restarting the listener.
- Compilation on Solaris with USE_SOCKETS defined in includes/site.h has
been repaired. Other USE_ overrides should work better.
- A check for the local flavor of IFNAMSIZ had a broken 'else' condition,
that probably still resulted in the correct behaviour (but wouldn't use
a larger defined value provided by the host OS).
- Fixed a bug where an OMAPI socket disconnection message would not result
in scheduling a failover reconnection, if the link had not negotiated a
failover connect yet (e.g.: connection refused, asynch socket connect()
timeouts).
- A bug was fixed that caused the 'conflict-done' state to fail to be parsed
in failover state records.
! A stack overflow vulnerability was fixed in dhclient that could allow
remote attackers to execute arbitrary commands as root on the system,
or simply terminate the client, by providing an over-long subnet-mask
option. CERT VU#410676 - CVE-2009-0692
- Versions 3.0.x syntax with multiple name->code option definitions is now
supported. Note that, similarly to 3.0.x, for by-code lookups only the
last option definition is used.
- Fixed a bug where a time difference of greater than 60 seconds between a
failover pair could cause the primary to crash on contact with the
secondary. Thanks to a patch from Steinar Haug.
- Don't look for IPv6 interfaces on Linux when running in DHCPv4 mode.
Thanks to patches from Matthew Newton and David Cantrell.
- Secondary servers in a failover pair will now perform ddns removals if
they had performed ddns updates on a lease that is expiring, or was
released through the primary. As part of the same fix, stale binding scopes
will now be removed if a change in identity of a lease's active client is
detected, rather than simply if a lease is noticed to have expired (which it
may have expired without a failover server noticing in some situations).
- A patch supplied by David Cantrell at RedHat was applied that detects
invalid calling parameters given to the ns_name_ntop() function.
Specifically, it detects if the caller passed a pointer and size pair
that causes the pointer to integer-wrap past zero.
! Fixed a fenceposting bug when a client had two host records configured,
one using 'uid' and the other using 'hardware ethernet'. CVE-2009-1892
Changes since 4.1.0
- Validate the argument to the -p option.
- The notorious 'option <unknown> ... larger than buffer' log line,
which is seen in some malformed DHCP client packets, was modified.
It now logs the universe name, and does not log the length values
(which are bogus corruption read from the packet anyway). It also
carries a hopefully more useful explanation.
- A bug was fixed that caused the server not to answer some valid Solicit
and Request packets, if the dynamic range covering any requested addresses
had been deleted from configuration.
- Suppress spurious warnings from configure about --datarootdir
- Update the code to deal with GCC 4.3. This included two sets of changes.
The first is to the configuration files to include the use of
AC_USE_SYSTEM_EXTENSIONS. The second is to deal with return values that
were being ignored.
- The db-time-format option was documented in manpages.
- Using reserved leases no longer results in 'lease with binding state
free not on its queue' error messages, thanks to a patch from Frode
Nordahl.
- DDNS removal routines were updated so that the DHCID is not removed until
the client has been deprived of all A and AAAA records (not only the last
one of either of those). This resolves a bug where dual stack clients
would not be able to regain their names after either expiration event.
- Fix a build error in dhcrelay, using older versions of gcc with
dhcpv6 disabled.
- Two uninitialized stack structures are now memset to zero, thanks to
patch from David Cantrell at Red Hat.
- Fixed a cosmetic bug where pretty-printing valid domain-search options would
result in an erroneous error log message ('garbage in format string').
- A bug in DLPI packet transmission (Solaris, HP/UX) that caused the server
to stop receiving packets is fixed. The same fix also means that the MAC
address will no longer appear 'bogus' on DLPI-based systems.
- A bug in select handling was discovered where the results of one select()
call were discarded, causing the server to process the next select() call
and use more system calls than required. This has been repaired - the
sockets will be handled after the first return from select(), resulting in
fewer system calls.
- The update-conflict-detection feature would leave an FQDN updated without
a DHCID (still currently implemented as a TXT RR). This would cause later
expiration or release events to fail to remove the domain name. The feature
now also inserts the client's up to date DHCID record, so records may safely
be removed at expiration or release time. Thanks to a patch submitted by
Christof Chen.
Changes since 4.1.0b1
- A missing "else" in dhcrelay.c could have caused an interface not to
......@@ -1064,7 +1222,7 @@ work on other platforms. Please report any problems and suggested fixes to
zero is redundant. These redundancies were removed.
- Some type declaration corrections to u_int16_t were made in common/tr.c
(Token Ring support) thanks to a patch from Jason Vas Dias at RedHat.
(Token Ring support) thanks to a patch from Jason Vas Dias at Red Hat.
- A failover bug that was allowing leases that EXPIRED or were RELEASED
where tsfp and tstp are identical timestamps to languish in these
......@@ -1124,7 +1282,7 @@ work on other platforms. Please report any problems and suggested fixes to
domain-name field) that had been improperly NULL-terminated by the
DHCP server will no longer result in a truncated string containing
only the option from the server, and not the expected appended value.
Thanks to a patch from Jason Vas Dias at RedHat.
Thanks to a patch from Jason Vas Dias at Red Hat.
- File handlers on configuration state (config files and lease dbs) should
be treated consistently, regardless of whether TRACING is defined or not.
......@@ -1176,11 +1334,11 @@ work on other platforms. Please report any problems and suggested fixes to
- The package will now compile cleanly in gcc 3.3 and 3.4. As a side effect,
lease structures will be 9 bytes smaller on all platforms. Thanks to
Jason Vas Dias at Redhat.
Jason Vas Dias at Red Hat.
- Interface discovery code in DISCOVER_UNCONFIGURED mode is now
properly restricted to only detecting broadcast interfaces. Thanks
to a patch from Jason Vas Dias at RedHat.
to a patch from Jason Vas Dias at Red Hat.
- decode_udp_ip_header was changed so that the IP address was copied out
to a variable, rather than referenced by a pointer. This enforces 4-byte
......@@ -1219,7 +1377,7 @@ work on other platforms. Please report any problems and suggested fixes to
- Configuring a subnet in dhcpd.conf with a subnet mask of 32 bits might
cause an internal function to overflow heap. Thanks to Jason Vas Dias
at Redhat.
at Red Hat.
- Some inconsistencies in treating numbers that the lexer parsed as 'NUMBER'
or 'NUMBER_OR_NAME' was repaired. Hexadecimal parsing is affected, and
......
......@@ -100,6 +100,7 @@ ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
EXEEXT = @EXEEXT@
GREP = @GREP@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
......@@ -123,8 +124,6 @@ SHELL = @SHELL@
STRIP = @STRIP@
VERSION = @VERSION@
ac_ct_CC = @ac_ct_CC@
ac_ct_RANLIB = @ac_ct_RANLIB@
ac_ct_STRIP = @ac_ct_STRIP@
ac_prefix_program = @ac_prefix_program@
am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
......@@ -137,19 +136,26 @@ bindir = @bindir@
build_alias = @build_alias@
byte_order = @byte_order@
datadir = @datadir@
datarootdir = @datarootdir@
docdir = @docdir@
dvidir = @dvidir@
exec_prefix = @exec_prefix@
host_alias = @host_alias@
htmldir = @htmldir@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
sysconfdir = @sysconfdir@
......
......@@ -3,7 +3,7 @@
Parser for dhclient config and lease files... */
/*
* Copyright (c) 2004-2008 by Internet Systems Consortium, Inc. ("ISC")
* Copyright (c) 2004-2009 by Internet Systems Consortium, Inc. ("ISC")
* Copyright (c) 1996-2003 by Internet Software Consortium
*
* Permission to use, copy, modify, and distribute this software for any
......@@ -22,12 +22,12 @@
* 950 Charter Street
* Redwood City, CA 94063
* <info@isc.org>
* http://www.isc.org/
* https://www.isc.org/
*
* This software has been written for Internet Systems Consortium
* by Ted Lemon in cooperation with Vixie Enterprises and Nominum, Inc.
* To learn more about Internet Systems Consortium, see
* ``http://www.isc.org/''. To learn more about Vixie Enterprises,
* ``https://www.isc.org/''. To learn more about Vixie Enterprises,
* see ``http://www.vix.com''. To learn more about Nominum, Inc., see
* ``http://www.nominum.com''.
*/
......@@ -502,6 +502,7 @@ void parse_client_statement (cfile, ip, config)
return;
}
known = 0;
status = parse_option_name(cfile, 1, &known, &option);
if (status != ISC_R_SUCCESS || option == NULL)
return;
......@@ -521,6 +522,18 @@ void parse_client_statement (cfile, ip, config)
option_dereference(&option, MDL);
return;
}
/*
* If the option was known, remove it from the code and name
* hash tables before redefining it.
*/
if (known) {
option_name_hash_delete(option->universe->name_hash,
option->name, 0, MDL);
option_code_hash_delete(option->universe->code_hash,
&option->code, 0, MDL);
}
parse_option_code_definition(cfile, option);
option_dereference(&option, MDL);
return;
......
/* dhc6.c - DHCPv6 client routines. */
/*
* Copyright (c) 2006-2008 by Internet Systems Consortium, Inc. ("ISC")
* Copyright (c) 2006-2009 by Internet Systems Consortium, Inc. ("ISC")
*
* Permission to use, copy, modify, and distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
......@@ -19,7 +19,7 @@
* 950 Charter Street
* Redwood City, CA 94063
* <info@isc.org>
* http://www.isc.org/
* https://www.isc.org/
*/
#include "dhcpd.h"
......
.\" dhclient-script.8
.\"
.\" Copyright (c) 2004-2005 by Internet Systems Consortium, Inc. ("ISC")
.\" Copyright (c) 2004-2005,2009 by Internet Systems Consortium, Inc. ("ISC")
.\" Copyright (c) 1996-2003 by Internet Software Consortium
.\"
.\" Permission to use, copy, modify, and distribute this software for any
......@@ -19,16 +19,16 @@
.\" 950 Charter Street
.\" Redwood City, CA 94063
.\" <info@isc.org>
.\" http://www.isc.org/
.\" https://www.isc.org/
.\"
.\" This software has been written for Internet Systems Consortium
.\" by Ted Lemon in cooperation with Vixie Enterprises and Nominum, Inc.
.\" To learn more about Internet Systems Consortium, see
.\" ``http://www.isc.org/''. To learn more about Vixie Enterprises,
.\" ``https://www.isc.org/''. To learn more about Vixie Enterprises,
.\" see ``http://www.vix.com''. To learn more about Nominum, Inc., see
.\" ``http://www.nominum.com''.
.\"
.\" $Id: dhclient-script.8,v 1.11 2006/02/24 23:16:27 dhankins Exp $
.\" $Id: dhclient-script.8,v 1.11.762.2 2009/07/24 22:04:51 sar Exp $
.\"
.TH dhclient-script 8
.SH NAME
......@@ -228,7 +228,7 @@ has been written for Internet Systems Consortium
by Ted Lemon in cooperation with Vixie
Enterprises. To learn more about Internet Systems Consortium,
see
.B http://www.isc.org.
.B https://www.isc.org.
To learn more about Vixie
Enterprises, see
.B http://www.vix.com.
.\" $Id: dhclient.8,v 1.30 2008/11/20 14:55:14 jreed Exp $
.\" $Id: dhclient.8,v 1.30.8.2 2009/07/24 22:04:51 sar Exp $
.\"
.\" Copyright (c) 2004,2007-2008 by Internet Systems Consortium, Inc. ("ISC")
.\" Copyright (c) 2004,2007-2009 by Internet Systems Consortium, Inc. ("ISC")
.\" Copyright (c) 1996-2003 by Internet Software Consortium
.\"
.\" Permission to use, copy, modify, and distribute this software for any
......@@ -19,10 +19,10 @@
.\" 950 Charter Street
.\" Redwood City, CA 94063
.\" <info@isc.org>
.\" http://www.isc.org/
.\" https://www.isc.org/
.\"
.\" Support and other services are available for ISC products - see
.\" http://www.isc.org for more information.
.\" https://www.isc.org for more information.
.\"
.TH dhclient 8
.SH NAME
......@@ -398,7 +398,7 @@ has been written for Internet Systems Consortium
by Ted Lemon in cooperation with Vixie
Enterprises. To learn more about Internet Systems Consortium,
see
.B http://www.isc.org
.B https://www.isc.org
To learn more about Vixie
Enterprises, see
.B http://www.vix.com.
......
......@@ -3,7 +3,7 @@
DHCP Client. */
/*
* Copyright (c) 2004-2008 by Internet Systems Consortium, Inc. ("ISC")
* Copyright (c) 2004-2010 by Internet Systems Consortium, Inc. ("ISC")
* Copyright (c) 1995-2003 by Internet Software Consortium
*
* Permission to use, copy, modify, and distribute this software for any
......@@ -22,7 +22,7 @@
* 950 Charter Street
* Redwood City, CA 94063
* <info@isc.org>
* http://www.isc.org/
* https://www.isc.org/
*
* This code is based on the original client state machine that was
* written by Elliot Poger. The code has been extensively hacked on
......@@ -62,10 +62,12 @@ struct data_string default_duid;
assert (state_is == state_shouldbe). */
#define ASSERT_STATE(state_is, state_shouldbe) {}
static char copyright[] = "Copyright 2004-2008 Internet Systems Consortium.";
static char arr [] = "All rights reserved.";
static char message [] = "Internet Systems Consortium DHCP Client";
static char url [] = "For info, please visit http://www.isc.org/sw/dhcp/";
static const char copyright[] =
"Copyright 2004-2010 Internet Systems Consortium.";
static const char arr [] = "All rights reserved.";
static const char message [] = "Internet Systems Consortium DHCP Client";
static const char url [] =
"For info, please visit https://www.isc.org/software/dhcp/";
u_int16_t local_port = 0;
u_int16_t remote_port = 0;
......@@ -172,7 +174,7 @@ main(int argc, char **argv) {
} else if (!strcmp(argv[i], "-p")) {
if (++i == argc)
usage();
local_port = htons(atoi(argv[i]));
local_port = validate_port(argv[i]);
log_debug("binding to user-specified port %d",
ntohs(local_port));
} else if (!strcmp(argv[i], "-d")) {
......@@ -3054,8 +3056,15 @@ void script_write_params (client, prefix, lease)
if (data.len > 3) {
struct iaddr netmask, subnet, broadcast;
memcpy (netmask.iabuf, data.data, data.len);
netmask.len = data.len;
/*
* No matter the length of the subnet-mask option,
* use only the first four octets. Note that
* subnet-mask options longer than 4 octets are not
* in conformance with RFC 2132, but servers with this
* flaw do exist.
*/
memcpy(netmask.iabuf, data.data, 4);
netmask.len = 4;
data_string_forget (&data, MDL);
subnet = subnet_number (lease -> address, netmask);
......@@ -3295,7 +3304,7 @@ void go_daemon ()
write_client_pid_file ();
chdir("/");
IGNORE_RET (chdir("/"));
}
void write_client_pid_file ()
......
.\" $Id: dhclient.conf.5,v 1.22 2008/03/07 18:58:29 dhankins Exp $
.\" $Id: dhclient.conf.5,v 1.22.64.3 2009/07/23 19:02:09 sar Exp $
.\"
.\" Copyright (c) 2004,2007 by Internet Systems Consortium, Inc. ("ISC")
.\" Copyright (c) 2004,2007,2009 by Internet Systems Consortium, Inc. ("ISC")
.\" Copyright (c) 1996-2003 by Internet Software Consortium
.\"
.\" Permission to use, copy, modify, and distribute this software for any
......@@ -19,12 +19,12 @@
.\" 950 Charter Street
.\" Redwood City, CA 94063
.\" <info@isc.org>
.\" http://www.isc.org/
.\" https://www.isc.org/
.\"
.\" This software has been written for Internet Software Consortium
.\" by Ted Lemon in cooperation with Vixie Enterprises and Nominum, Inc.
.\" To learn more about Internet Software Consortium, see
.\" ``http://www.isc.org/''. To learn more about Vixie Enterprises,
.\" ``https://www.isc.org/''. To learn more about Vixie Enterprises,
.\" see ``http://www.vix.com''. To learn more about Nominum, Inc., see
.\" ``http://www.nominum.com''.
.\"
......@@ -499,7 +499,11 @@ DHCP client, but must also be configured in predefined leases - a
predefined lease whose expiry time has passed will not be used by the
DHCP client.
.PP
Dates are specified as follows:
Dates are specified in one of two ways. The software will output times in
these two formats depending on if the \fBdb-time-format\fR configuration
parameter has been set to \fIdefault\fR or \fIlocal\fR.
.PP
If it is set to \fIdefault\fR, then \fIdate\fR values appear as follows:
.PP
\fI<weekday> <year>\fB/\fI<month>\fB/\fI<day>
<hour>\fB:\fI<minute>\fB:\fI<second>\fR
......@@ -513,6 +517,25 @@ month is specified as a number starting with 1 for January. The day
of the month is likewise specified starting with 1. The hour is a
number between 0 and 23, the minute a number between 0 and 59, and the
second also a number between 0 and 59.
.PP
If the \fBdb-time-format\fR configuration was set to \fIlocal\fR, then
the \fIdate\fR values appear as follows:
.PP
\fBepoch\fR \fI<seconds-since-epoch>\fR\fB; #\fR \fI<day-name> <month-name>
<day-number> <hours>\fR\fB:\fR\fI<minutes>\fR\fB:\fR\fI<seconds> <year>\fR
.PP
The \fIseconds-since-epoch\fR is as according to the system's local clock (often
referred to as "unix time"). The \fB#\fR symbol supplies a comment that
describes what actual time this is as according to the system's configured
timezone, at the time the value was written. It is provided only for human
inspection, the epoch time is the only recommended value for machine
inspection.
.PP
Note that when defining a static lease, one may use either time format one
wishes, and need not include the comment or values after it.
.PP
If the time is infinite in duration, then the \fIdate\fR is \fBnever\fR
instead of an actual date.
.SH ALIAS DECLARATIONS
\fBalias { \fI declarations ... \fB}\fR
.PP
......@@ -534,6 +557,15 @@ declaration for the IP alias address, and a subnet-mask option
declaration. A medium statement should never be included in an alias
declaration.
.SH OTHER DECLARATIONS
\fBdb-time-format\fR [ \fIdefault\fR | \fIlocal\fR ] \fB;\fR
.PP
The \fBdb-time-format\fR option determines which of two output methods are
used for printing times in leases files. The \fIdefault\fR format provides
day-and-time in UTC, whereas \fIlocal\fR uses a seconds-since-epoch to store
the time value, and helpfully places a local timezone time in a comment on
the same line. The formats are described in detail in this manpage, whithin
the LEASE DECLARATIONS section.
.PP
\fBreject \fIcidr-ip-address\fR [\fB,\fR \fI...\fB \fIcidr-ip-address\fR ] \fB;\fR
.PP
The
......@@ -675,4 +707,4 @@ was written by Ted Lemon
under a contract with Vixie Labs. Funding
for this project was provided by Internet Systems Consortium.
Information about Internet Systems Consortium can be found at
.B http://www.isc.org.
.B https://www.isc.org.
.\" $Id: dhclient.leases.5,v 1.4 2005/03/17 20:14:56 dhankins Exp $
.\" $Id: dhclient.leases.5,v 1.4.786.2 2009/07/24 22:04:51 sar Exp $
.\"
.\" Copyright (c) 2004 by Internet Systems Consortium, Inc. ("ISC")