more clear what it does.
Trim interface_active() to just do what it should do. Check
if we got link or not and if the NIC supports it. No special
treatment for mediachecks here anymore.
Simplify the code a lot, and remove doublicated parts.
Fix two minor spelling errors.
Add one missing #ifdef ENABLE_POLLING_MODE
Reviewed by: mdodd
- Rename linkstatus to linkstate which is more correct.
- Sort any leases each time we loose and regain link. With the first
version we spammed the dhclient.leases file.
- When there was no link on a interface, polling has been done twice.
This has been fixed with a bigger sleep interval.
- interface_active() now returns only a assumed state of the link.
If we are using media settings, we cannot be sure that the link
actually works. That means we assume that the link is working and
continue to send requests as usual on the interface and loop over
all possible media options. Polling is still done. If your interface
gets suddenly link, dhclient will send a dhcp discover request.
After all media settings have been tried a few times, dhclient will
sleep. If one does change networks very often, it can help to set the
"retry timeout" to a low value like 100 seconds. The default is over
six minutes.
Tested by: Larry Rosenman <ler@lerctr.org>, imp
requests if the interface has an active link. This is a
great benefit if you often change networks with your laptop
and you do not like to kill/restart dhclient all the time.
Changes are automatically detected and the link is refreshed.
The change allows us to start dhclient in background mode
Enable dhclient to poll the interface state and send only
requests if the interface has an active link. This is a
great benefit if you often change networks with your laptop
and you do not like to kill/restart dhclient all the time.
Changes are automatically detected and the link is refreshed.
The change allows us to start dhclient in background mode
while the network cable is not plugged in.
To control the polling interval, the option -i has been
introduced. It takes seconds as parameter, the minimum is
one second, the default is five seconds.
Polling is done in seconds, not microseconds, because dhclient
does internally work with timeouts in seconds.
This change will be part of the next major ISC-dhcpd release.
Tested by: bms, imp, and many many others.
Reviewed by: murray, eivind, dhclient folks
beta ISC DHCP version 3 offering.
In message http://www.isc.org/ml-archives/dhcp-client/2000/10/msg00001.html
author Ted Lemon stated "This will not be fixed in any 2.0 release - 2.0
is no longer being maintained." to a reported problem about an
interoperability problem against Microsoft servers. FreeBSD went with the
ISC client vs. the WIDE client because others convinced me it was better
supported. Sigh. I wonder if version 3 will get the same treatment after
its release...
Since FreeBSD generally uses only released contrib products and the ISC
version 3 offering is still in beta, our backs are up against the wall.
The common/options.c rev 1.65 work around for erroneous Microsoft DHCP
servers has been back ported to the version 2.0pl5 client. Since this
comes from a change in the vendor's own code (and would no doubt also be
committed to the version 2 client if the author were still supporting it),
we will consider this a vendor release and import this as such.
PR: 21658
Submitted by: Motomichi Matsuzaki <mzaki@e-mail.ne.jp>