udhcp: add a few TODOs
authorDenys Vlasenko <vda.linux@googlemail.com>
Tue, 16 Jun 2009 10:05:21 +0000 (12:05 +0200)
committerDenys Vlasenko <vda.linux@googlemail.com>
Tue, 16 Jun 2009 10:05:21 +0000 (12:05 +0200)
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
networking/udhcp/Config.in
networking/udhcp/common.h
networking/udhcp/dhcpd.h
networking/udhcp/leases.c

index d4b76e1..495b079 100644 (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
index 91e8ccc..0f12be0 100644 (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;
index b233962..bb2febb 100644 (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 */
index 291ae80..06bc086 100644 (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;