udhcp: add a few TODOs

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
This commit is contained in:
Denys Vlasenko 2009-06-16 12:05:21 +02:00
parent 26918dd28e
commit ed8982bfc0
4 changed files with 11 additions and 2 deletions

View File

@ -74,6 +74,9 @@ config FEATURE_UDHCP_PORT
At the cost of ~300 bytes, enables -P port option.
This feature is typically not needed.
# TODO: UDHCP_DEBUG is inconvenient to use.
# Make it controllable at runtime (say, via -v, -vv, -vvv)
config UDHCP_DEBUG
bool "Compile udhcp with noisy debugging messages"
default n

View File

@ -23,6 +23,7 @@ extern const uint8_t MAC_BCAST_ADDR[6]; /* six all-ones */
#define DHCP_OPTIONS_BUFSIZE 308
//TODO: rename to dhcp_packet; rename ciaddr/yiaddr/chaddr
struct dhcpMessage {
uint8_t op; /* 1 = BOOTREQUEST, 2 = BOOTREPLY */
uint8_t htype; /* hardware address type. 1 = 10mb ethernet */
@ -44,6 +45,7 @@ struct dhcpMessage {
uint8_t options[DHCP_OPTIONS_BUFSIZE + CONFIG_UDHCPC_SLACK_FOR_BUGGY_SERVERS];
} PACKED;
//TODO: rename to ip_udp_dhcp_packet?
struct udp_dhcp_packet {
struct iphdr ip;
struct udphdr udp;

View File

@ -78,6 +78,10 @@ struct server_config_t {
typedef uint32_t leasetime_t;
typedef int32_t signed_leasetime_t;
//TODO: (1) rename to dyn_lease (that's what it is. we also have static_lease).
//(2) lease_mac16 may be shortened to lease_mac[6], since e.g. ARP probing uses
//only 6 first bytes anyway. We can check received dhcp packets
//that their "chaddr"s have only 6 first bytes != 0, and complain otherwise.
struct dhcpOfferedAddr {
uint8_t lease_mac16[16];
/* "nip": IP in network order */

View File

@ -22,7 +22,7 @@ static struct dhcpOfferedAddr *oldest_expired_lease(void)
for (i = 0; i < server_config.max_leases; i++) {
if (leases[i].expires < oldest_time) {
oldest_time = leases[i].expires;
oldest_lease = &(leases[i]);
oldest_lease = &leases[i];
}
}
return oldest_lease;
@ -142,7 +142,7 @@ static int nobody_responds_to_arp(uint32_t addr, const uint8_t *safe_mac)
}
/* Find a new usable (we think) address. */
/* Find a new usable (we think) address */
uint32_t FAST_FUNC find_free_or_expired_address(const uint8_t *chaddr)
{
uint32_t addr;