Nicholas J. Kain
|
7c32f968c9
|
Perform length and type checking in ifchange.c:fill_options.c().
|
2011-03-30 10:13:34 -04:00 |
|
Nicholas J. Kain
|
1437f520ca
|
Rewrite get_option(): new version fixes at least one bug, and is much easier
to understand and verify as correct. It also returns the length of the
extracted option.
|
2011-03-30 09:35:17 -04:00 |
|
Nicholas J. Kain
|
f0865812d2
|
Kill unused function find_options() and unused struct option_set.
|
2011-03-30 08:21:06 -04:00 |
|
Nicholas J. Kain
|
2719d12d3c
|
struct dhcp_option flags field is now exclusively for type, so rename it.
Remove unused struct dhcp_option types.
|
2011-03-30 08:19:08 -04:00 |
|
Nicholas J. Kain
|
f28c0c7445
|
OPTION_LIST is unused, remove it.
|
2011-03-30 08:12:56 -04:00 |
|
Nicholas J. Kain
|
d4171420a1
|
Fix sending DHCP_MAX_SIZE option.
Move DHCP_PARAM_REQ message types out of the options[] structure.
Make ipchange.c:translation_option() less insane.
|
2011-03-30 08:02:25 -04:00 |
|
Nicholas J. Kain
|
811cc67e16
|
Move add_requests() from dhcpmsg.c to options.c. Fixes a layering violation.
Document an ugly-as-hell code bit in ifchange.c.
Add some debugging messages for the netlink response code.
Clean headers a bit more.
|
2011-03-30 07:26:42 -04:00 |
|
Nicholas J. Kain
|
3c85228aaf
|
Add new code for creating DHCP option data, and use it in ndhc.c.
|
2011-03-30 07:05:00 -04:00 |
|
Nicholas J. Kain
|
13d9119f3a
|
Remove dhcpd.h.
|
2011-03-30 05:55:12 -04:00 |
|
Nicholas J. Kain
|
ef9d9d26df
|
Move some defines out of dhcpd.h.
|
2011-03-30 05:37:22 -04:00 |
|
Nicholas J. Kain
|
6869a3ba20
|
Reduce log spam by removing the "adding option" print.
|
2011-03-30 05:33:44 -04:00 |
|
Nicholas J. Kain
|
d01b104d48
|
Handle netlink interface-up notification for non-DS_BOUND states.
|
2011-03-30 05:24:16 -04:00 |
|
Nicholas J. Kain
|
1ef44c1e4b
|
Document DHCP options in bound_if().
|
2011-03-30 05:23:46 -04:00 |
|
Nicholas J. Kain
|
9d03795a15
|
Wire up the netlink socket to the epoll handler. Still need to actually
react to events in the processing function.
Pass the client_state structure to the netlink code explicitly rather than
making it a global variable.
|
2011-03-29 15:34:00 -04:00 |
|
Nicholas J. Kain
|
55bc002ad6
|
Use netlink for getting interface mac and index in ndhc instead of ioctl.
|
2011-03-29 14:37:45 -04:00 |
|
Nicholas J. Kain
|
a53a82bbc5
|
After fork(), a signalfd-created file descriptor still returns signal info
for the parent. Close and recreate a new signalfd after forking into the
background.
|
2010-12-27 10:05:43 -05:00 |
|
Nicholas J. Kain
|
03d3cbfdb9
|
Do not treat a failure to write the pid file after backgrounding after
obtaining a lease as a fatal error.
|
2010-12-26 18:21:58 -05:00 |
|
Nicholas J. Kain
|
11e71837fd
|
Set arp socket as nonblocking.
|
2010-12-26 18:19:39 -05:00 |
|
Nicholas J. Kain
|
6f483045f4
|
Remove redundant #include.
|
2010-12-26 18:17:41 -05:00 |
|
Nicholas J. Kain
|
0f3d4598ad
|
Add a missing header and remove an unused variable.
|
2010-12-26 15:06:16 -05:00 |
|
Nicholas J. Kain
|
ea4041983d
|
Use non-blocking sockets for the listen socket.
|
2010-12-26 15:05:00 -05:00 |
|
Nicholas J. Kain
|
8b97107b8d
|
Allow receive of short dhcp packets over raw listen sockets.
|
2010-12-26 15:03:14 -05:00 |
|
Nicholas J. Kain
|
08301a7053
|
Update DESIGN
|
2010-12-24 10:49:45 -05:00 |
|
Nicholas J. Kain
|
121e4d1510
|
Fix --hostname option.
|
2010-12-24 10:44:06 -05:00 |
|
Nicholas J. Kain
|
d96cb14711
|
Fix stale declaration of arp_check().
|
2010-12-24 10:40:46 -05:00 |
|
Nicholas J. Kain
|
87b28de015
|
Fix --clientid option.
|
2010-12-24 10:27:24 -05:00 |
|
Nicholas J. Kain
|
c0b699ba88
|
Rename script.[ch] to ifchange.[ch].
|
2010-12-24 10:12:41 -05:00 |
|
Nicholas J. Kain
|
eab048fec7
|
Remove old files from original ndhc.
|
2010-12-24 10:04:16 -05:00 |
|
Nicholas J. Kain
|
08f7db1637
|
Rename clientpacket.c to dhcpmsg.c.
|
2010-12-24 10:01:12 -05:00 |
|
Nicholas J. Kain
|
d04916aec5
|
Rename arpping.[ch] to arp.[ch].
|
2010-12-24 09:58:47 -05:00 |
|
Nicholas J. Kain
|
8e905d0611
|
Move background() to sys.[ch].
|
2010-12-24 09:47:09 -05:00 |
|
Nicholas J. Kain
|
59a0661eb9
|
Move change_listen_mode to packet.c.
|
2010-12-24 09:41:52 -05:00 |
|
Nicholas J. Kain
|
94ad810260
|
Move timeout and arp handling code out to arpping.c and timeout.c.
|
2010-12-24 09:32:58 -05:00 |
|
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 |
|