Age | Commit message (Collapse) | Author |
|
timespec values. Translate from the epoch values in leases
to timespec values in one place.
Final step to allow CLOCK_REALTIME -> CLOCK_MONOTONIC time
accounting for the active lease.
|
|
|
|
are exceeded.
Feedback from otto@, cheloha@
|
|
Feedback from otto@
|
|
for future attempts at making it more IPv6-like.
ok florian@
|
|
ok krw@
|
|
default reboot interval of 1 sec. Gives the DHCP server a
fairer shot at replying before the timeout expires.
ok millert@
|
|
'reboot_timeout' to 'offer_interval', 'link_interval' and
'reboot_interval' to be consistant with other '_interval' fields that
specify a number of seconds to wait.
|
|
Reduces spurious packet transmissions in situations with short timings.
Suggestions millert@, further suggestions & ok cheloha@
|
|
when an invalid option name is encountered.
|
|
file.
Original diff, tweaks & ok kn@
|
|
man page and usage() tweaks from jmc@.
ok lteo@
|
|
extraction function.
|
|
(domain search) and 't' (text) options. Enables append/prepend for the
domain-search option by inserting blanks between the domains and
ensures the presence of a terminating NUL when merging text.
|
|
command line contents. Display usage() when syntax is incorrect and
relevant error messages when semantic checks fail.
More akin to the way other commands handle the syntax/semantic split.
Idea taken from a larger diff by kn@.
ok kn@
|
|
ok florian@
|
|
ok florian@
|
|
subsequently reset by ifconfig(8) then stop applying leases. If the
flag is set after being reset then get a new lease and carry on.
Clean up man page verbiage and add AUTOCONF4 description.
ok benno@, man page formatting ok ingo@
|
|
1) Restructure to explicitly set a long long result and take the
desired low/high constraints for strtonum().
2) No need to use a temporary variable when setting long long
(a.k.a. time_t) fields.
3) Fewer magic numbers when processing integer valued option
data. Less memcpy()'ing where a cast or two is sufficient to make
integer assignment work.
No intentional functional change.
|
|
to parse_string() in favour of taking strlen() of resulting string in the few
cases that it is of interest.
|
|
dhclient(8) stopped writing interface names in the leases file.
|
|
to the MTU of the interface. Such message are generated by the
application of a lease containing interface-mtu, and thus caused a
duplicate lease negotiation and application when that option
was present.
This rapid duplication confused Google Compute Engine.
Noticed and fix tested by Greg Steuck. Also tested by Bj??rn Ketelaars
to make sure Dutch Railways still worked. Thanks!
ok claudio@
|
|
option. Replace handrolled dn_expand() with the system
version. Existing hex octet versions still accepted. New format is
option domain-search "my.domain.org", "fw.my.domain.org";
It is now possible to append and prepend domains to the list provided
by the server.
Documention update to dhcp-options(5) in the pipeline!
Inspired by dhcpd(8) domain-search diff from William Ahern.
Code peered at by florian@ and kn@.
|
|
of WIP escaped into the wild and broke parsing of domain-search.
Reported by Greg Steuck and Raf Czlonka. Fix tested by Greg.
|
|
the option data cannot be prepended or appended to. Instead, treat
"prepend" as "supersede" and "append" as "default". This preserves the
safe aspects of current behaviour. Issue a parsing warning when
appropriate to encourage people to fix their configuration files.
Eliminate egregious repeated code by abstracting merge_option_data().
|
|
pretty_print_classless_routes(), making both of them local to
options.c.
Avoids a double pretty print of DHO_DOMAIN_SEARCH, eliminates an
unneeded 1024 byte static array.
Shrinks size of upcoming diff to implement parsing of domain search
option in leases and dhclient.conf.
|
|
DHCP knowledge and interface manipulation.
Unprivileged process now sends proposal derived from the accepted
lease to the privileged process rather than individual interface
manipulation requests.
The only intended functional change is that /etc/resolv.conf.tail is
not re-read each time a new proposal is implemented, rather than once
at dhclient startup.
|
|
More consistent, clearer.
|
|
need to start a new copy when LLADDR or SSID changes. Just go back to
S_PREBOOT and get a new lease.
Fewer log messages, faster join'ing new networks, simpler code.
|
|
instead of overloading SIGHUP.
|
|
be sig_atomic_t. Plain int should be sufficient.
|
|
set_default_client_identifier() and read_resolv_conf_tail() local to
clparse.c and just call them from read_conf().
|
|
variable into init_config() and just call it from
read_conf().
|
|
struct ether_addr (a.k.a. ifi->hw_address) rather
than the entire struct interface_info.
|
|
and into a read_resolv_conf_tail() in clparse.c.
|
|
set_default_host_name() to clparse.c as they are part of config
initialization. First step in cleanup of startup logic.
|
|
the bpf captures.
|
|
when dhclient moved to processing the entire buffer rather than trying
to process one packet per dispatch() loop.
So use ifi->rbuf for both purposes, resizing it during initialization
to accommodate the larger of the routing socket read size or the bpf
socket read size.
Eliminates a calloc()/free() per routing socket read.
|
|
|
|
more intuitive.
|
|
the code slightly more intuitive.
|
|
VALID_LLADDR, there is longer much point to VALID_LLADDR. Nuke it.
Just check for lladdr changes when LINK_STATUS_IS_UP().
|
|
packets, routing socket messages and cancel any pending protocol
timeout.
Since >1 packet can be received from bpf at a time, don't process any
further buffered packets after one triggers a decision to exit or
a signal is received.
|
|
always report a link status of UNKNOWN.
Do not use recorded leases to configure such interfaces. In such
cases only use the address in the recorded lease to ask for a
new lease.
Avoids debilitating /etc/resolv.conf changes by unplugged higher
priority interfaces given to the tender mercies of dhclient after a
working interface has already set /etc/resolv.conf correctly.
Reported for cdce(4) by guenther@ at p2k18.
|
|
lease and exit.
Man page tweaks from jmc@.
Request, tests & ok tb@. ok millert@ on previous
version.
|
|
with log_debug() so -v unleashes all debug output without having to
compile a custom dhclient.
|
|
Mkae 'ignore', 'request' and 'require' cumulative so all
options don't have to be jammed into one line.
|
|
compare that to the offered proposal to determine if there are any
changes to configure. Simpler, and fixes issue where using a recorded
lease meant the interface was continually being configured with the
same information.
|
|
to decide between unicast and broadcast for REQUEST.
|
|
behaviour.
Always go daemon after link_timeout seconds and complete lease
negotiations in the background if necessary. No hanging around in the
foreground for the full 64 seconds waiting for a server to appear.
Log a more relevant message when a default route can't be obtained via
RTM_GET. i.e. "no default route" rather than "No such process".
-q -> -v ok mpi@
|