Nicholas J. Kain
|
adcc4bdd3d
|
Move dhcp packet reply code to packet.c.
|
2010-12-24 08:55:59 -05:00 |
|
Nicholas J. Kain
|
9390e131b6
|
Move client runtime state structure declaration and flags to config.h.
|
2010-12-24 07:07:48 -05:00 |
|
Nicholas J. Kain
|
8a3deb3c6a
|
Move dhcp client runtime global state into global struct client_state_t cs.
|
2010-12-24 07:00:42 -05:00 |
|
Nicholas J. Kain
|
406e316274
|
Split state machine apart into functions.
|
2010-12-24 06:31:06 -05:00 |
|
Nicholas J. Kain
|
6772ddac1b
|
Rename dhcpc.h to config.h.
|
2010-12-24 06:00:37 -05:00 |
|
Nicholas J. Kain
|
d34c5f27b2
|
Make dhcp client timeout value signed.
Add DHCP_STATE_NULL = 0 state and make LISTEN_NONE = 0.
|
2010-12-23 13:41:25 -05:00 |
|
Nicholas J. Kain
|
c45d116200
|
Async arp ping now works properly: arp_success() should be called on timeout
Timeout delta now properly uses signed operators.
listenFd properly initialized to -1.
|
2010-12-23 11:34:57 -05:00 |
|
Nicholas J. Kain
|
fa98b4c024
|
timeout values now have millisecond precision.
|
2010-12-02 00:15:03 -05:00 |
|
Nicholas J. Kain
|
e37ed0e16b
|
arpping() no longer blocks and address verification via arp is now performed
asynchronously in the main event loop.
|
2010-12-01 23:33:25 -05:00 |
|
Nicholas J. Kain
|
a154f96538
|
Use epoll() in ndhc.
|
2010-12-01 13:11:09 -05:00 |
|
Nicholas J. Kain
|
a259640779
|
Use signalfd() in ndhc.
|
2010-12-01 12:35:13 -05:00 |
|
Nicholas J. Kain
|
712c8446d6
|
Update README.
|
2010-12-01 12:24:47 -05:00 |
|
Nicholas J. Kain
|
f2b4527179
|
Use epoll() and signalfd() in ifchd.
|
2010-12-01 12:22:08 -05:00 |
|
Nicholas J. Kain
|
fb56a9cb2b
|
Make sure to #include <stddef.h> when using offsetof().
|
2010-11-16 17:41:46 -05:00 |
|
Nicholas J. Kain
|
9dce1a0378
|
Make sure our assigned address is unique on our segment by using arp.
|
2010-11-15 20:06:50 -05:00 |
|
Nicholas J. Kain
|
5eb3c18b01
|
Indentation fix.
|
2010-11-14 08:49:58 -05:00 |
|
Nicholas J. Kain
|
ba553e5d94
|
Clean up end_option(), and fix a possible off-by-one in the bound check.
|
2010-11-14 07:50:21 -05:00 |
|
Nicholas J. Kain
|
5a38e49a81
|
Update get_option() to use the function from busybox's udhcp variant;
it's much easier to read. The original one is indecipherable, and thus
it is difficult to verify correctness.
|
2010-11-14 03:41:36 -05:00 |
|
Nicholas J. Kain
|
1ffd1d9df3
|
Replace 308 with DHCP_OPTIONS_BUFSIZE in options.c.
|
2010-11-14 02:02:32 -05:00 |
|
Nicholas J. Kain
|
4ce4323d00
|
Replace sizeof(struct dhcpMessage) with DHCP_SIZE.
|
2010-11-14 02:01:17 -05:00 |
|
Nicholas J. Kain
|
9421da3157
|
Don't zero-pad kernel-packet sent dhcp packets.
|
2010-11-14 01:56:54 -05:00 |
|
Nicholas J. Kain
|
f8d856cc0a
|
Don't zero-pad sent raw dhcp packets and clean up packet.c.
|
2010-11-14 01:53:23 -05:00 |
|
Nicholas J. Kain
|
8401d175a1
|
Remove a Win98 DHCP client bug workaround from get_packet().
|
2010-11-14 01:12:32 -05:00 |
|
Nicholas J. Kain
|
0661f4371b
|
Untabify and reindent packet.h.
|
2010-11-14 00:54:05 -05:00 |
|
Nicholas J. Kain
|
6a3b004eee
|
Specialize init_header() to only handle client packets, move it to
clientpacket.c, and make it static.
|
2010-11-14 00:52:32 -05:00 |
|
Nicholas J. Kain
|
1cc648b5ad
|
Clean up and comment listen_socket().
|
2010-11-14 00:46:02 -05:00 |
|
Nicholas J. Kain
|
86ef084835
|
Clean up parameter names and comment read_interface().
|
2010-11-14 00:41:32 -05:00 |
|
Nicholas J. Kain
|
987ba12982
|
Enforce upper and lower sanity bounds on lease times.
Add some comments.
|
2010-11-13 19:37:08 -05:00 |
|
Nicholas J. Kain
|
aaca1ab6ef
|
Formatting fixes.
|
2010-11-13 19:14:16 -05:00 |
|
Nicholas J. Kain
|
675b527aac
|
Remove some unnecessary memset() and an unused buffer in bound_if().
|
2010-11-13 19:07:00 -05:00 |
|
Nicholas J. Kain
|
00ec886737
|
Ident fix.
|
2010-11-13 19:04:28 -05:00 |
|
Nicholas J. Kain
|
ef3a69e00e
|
Clean up an unnecessary buffer in perform_release().
|
2010-11-13 18:49:46 -05:00 |
|
Nicholas J. Kain
|
f34fac92bd
|
Remove bashism from the gentoo net script.
|
2010-11-13 16:12:17 -05:00 |
|
Nicholas J. Kain
|
75206dce13
|
Check for failure in creating listen sockets in change_listen_mode().
|
2010-11-13 12:34:22 -05:00 |
|
Nicholas J. Kain
|
faa56bb616
|
Make change_listen_mode() create a new socket instantly rather than
waiting for select loop to cycle again. Works better in practice
and simplifies the select loop, too.
|
2010-11-13 12:30:54 -05:00 |
|
Nicholas J. Kain
|
ccae6e4c8a
|
Clean up unnecessary goto exit handler in raw_socket().
|
2010-11-13 12:11:28 -05:00 |
|
Nicholas J. Kain
|
028d3b7bae
|
Clean up send_renew() a bit.
|
2010-11-13 12:00:06 -05:00 |
|
Nicholas J. Kain
|
a79d86609b
|
Wrap raw_packet() with specialized bcast_raw_packet().
|
2010-11-13 11:42:26 -05:00 |
|
Nicholas J. Kain
|
9f7fe1de8b
|
Use BPF to filter input on raw sockets.
|
2010-11-13 11:18:07 -05:00 |
|
Nicholas J. Kain
|
71a3603934
|
Finish cleaning up get_raw_packet(). Use offsetof() to make UDP
checksum verification a bit more compact.
|
2010-11-13 08:47:07 -05:00 |
|
Nicholas J. Kain
|
693c9256e4
|
Add safe_read() to ncmlib and use it in ndhc.
|
2010-11-13 08:37:33 -05:00 |
|
Nicholas J. Kain
|
a43e69c7ae
|
Factor out safe_write() into ncmlib and use it in ndhc as well.
|
2010-11-13 08:18:23 -05:00 |
|
Nicholas J. Kain
|
edf3b02b6a
|
Fix header include guards to not use leading underscores.
|
2010-11-13 06:51:57 -05:00 |
|
Nicholas J. Kain
|
336a54fa47
|
Clean dhcpd.h.
|
2010-11-13 06:48:50 -05:00 |
|
Nicholas J. Kain
|
bb5446cf02
|
Remove leases.h.
|
2010-11-13 06:45:34 -05:00 |
|
Nicholas J. Kain
|
a059b5bd13
|
Clean up 'unsigned long' used with the assumption that long == 32-bit.
|
2010-11-13 06:42:52 -05:00 |
|
Nicholas J. Kain
|
8d9cc0bdb4
|
Remove unused attach_option() from options.c.
|
2010-11-13 06:28:03 -05:00 |
|
Nicholas J. Kain
|
431bb5d11e
|
Clean up paren use with sizeof and & in clientpacket.c.
|
2010-11-13 06:22:22 -05:00 |
|
Nicholas J. Kain
|
35c4c773cd
|
Remove unnecessary casts from setsockopt().
Prevent access to initialized memory in raw_socket()'s bind() call by
using memset().
|
2010-11-13 06:13:10 -05:00 |
|
Nicholas J. Kain
|
f59ccfb5b0
|
In sendto() and write(), make sure all pointer arithmetic is in byte
sized units.
|
2010-11-13 05:59:15 -05:00 |
|