Age | Commit message (Collapse) | Author |
|
|
|
|
|
output. i.e. not visible on the screen, nor in any log.
If nothing else, makes dhclient-script smaller for install media.
'yesh kill' (sic) henning@
|
|
startup; ok krw@ henning@
|
|
ok millert
|
|
ok henning otto theo
|
|
|
|
|
|
way...
|
|
outside of the `spaces' array when trying to print the caret marker
found by "Matthew R. Dempsky" <mrd@alkemio.org>, fix inspired by
a.velichinsky@gmail.com. discussed with krw
|
|
in the lease, whence the parsed info was moved.
Fixes "Bogus servername" messages when processing an offer and stops
bogus filename info from being stored in the lease. Found while
testing a Tucson hotel's dhcp service.
ok @stevesk "looks good" henning@.
|
|
from Mark Lumsden
|
|
|
|
|
|
|
|
|
|
|
|
|
|
14 more bytes of option space! A change ISC made a long time ago.
ok stevesk@ (DHCP) canacar@ (bpf)
|
|
the malloc'd memory from the parsed option buffer since it would be
thrown away after the copy anyway.
'looks sane' millert@
|
|
complex list code to keep track. So nuke it.
Also eliminate unnecessary variable ('dead') that means 'rfdesc is
closed'. Just set rfdesc to -1 when it is closed and use that.
As suggested by millert@ and claudio@, don't bother setting revents
members to zero since poll() does that.
Np functional change, just less code.
'looks good' claudio@ 'I like where this is going' henning@
|
|
moving the minimal code into do_packet(). Eliminate repeated code for
checking the client hardware address and the reject list by putting
those checks into do_packet as well.
No functional change, just much easier to read.
ok stevesk@
|
|
parameters just those things actually needed and using existing
structs and information. No functional change.
ok stevesk@
|
|
message type option of 0 as a BOOTP offer. Don't process any option
buffer after one is found to be corrupt. Don't process overflow
buffers in a BOOTP packet. At least try to accept DHCP offers even if
a bad options buffer is encountered.
Brings code more into line with current ISC dhclient.
ok stevesk@
|
|
process any packets, eliminate that abstraction and just call
do_packet directly.
No functional change.
ok stevesk
|
|
|
|
an option buffer. No longer accept the 6th such packet. From ISC.
ok ckuethe@ stevesk@
|
|
ok miod@
|
|
DHO_PAD (0x00) so that option scanning will terminate on hitting
initialized data rather than scanning and ignoring trailing
DHO_PAD characters.
Suggested by & ok stevesk
|
|
incoming packet. But since we bzero() the packet buffer before
copying the incoming data into it, and the options are at the end, and
we use a fixed sized buffer, and 0's are ignored as pad options, and
proper option lists end with 0xff, it's simplier to always try to scan
the whole buffer.
Problem found by, and patch tested by kettenis@.
|
|
contains the global value client->packet_length. Use
client->packet_length. No functional change.
Suggested by stevesk@.
|
|
dhcp_packet and it is contained in the global *client. So don't pass
around pointers to a struct that contains a pointer to the dhcp_packet
instance. Just use the global client->packet. Eliminate unused struct
packet members and parameter lists accordingly.
No functional change.
Suggestions by stevesk@. ok stevesk@
|
|
|
|
|
|
no binary change.
|
|
|
|
|
|
obviously have single global struct client_state and struct
client_config nested inside interface_info and client_state
respectively.
Pull them out to their own global variables and eliminate a bunch
(i.e. hundreds) of multi-level dereferences. Make it much nicer to
read.
No functional change.
"makes sense" henning@
Testing stevesk@, ok stevesk@
|
|
single, global, instance of 'struct interface_info' (ifi) rather than
passing around pointers to it.
"I agree" henning@
Testing moritz@ stevesk@, ok stevesk@
|
|
for NULL before dereferencing it. OK henning@ krw@ deraadt@
|
|
|
|
specify a dhcp-lease-time option other than the default requested
lease time, which is two hours".
we don't by default send a dhcp-lease-time option in request/discover.
ok jmc@, henning@ 'if you are sure'
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
instead of using BPF, which currently will always set the destination
MAC to broadcast, send using a SOCK_RAW socket and sendmsg() so the
frame has a unicast destination MAC.
Fixes an issue when using a bootp forwarder where unicast DHCPREQUESTs
are dropped at the router/gateway until we reach T2/REBINDING and
change the destination IP to broadcast.
ok henning@ (but doesn't like using a raw socket for this)
|