/* vi: set sw=4 ts=4: */
-/* dhcpd.h */
+/*
+ * Licensed under GPLv2, see file LICENSE in this source tree.
+ */
#ifndef UDHCP_DHCPD_H
#define UDHCP_DHCPD_H 1
/* client_config sits in 2nd half of bb_common_bufsiz1 */
#if ENABLE_FEATURE_UDHCP_PORT
-#define SERVER_PORT (server_config.port)
+#define SERVER_PORT (server_config.port)
+#define SERVER_PORT6 (server_config.port)
#else
-#define SERVER_PORT 67
+#define SERVER_PORT 67
+#define SERVER_PORT6 547
#endif
-/*** leases.h ***/
-
typedef uint32_t leasetime_t;
typedef int32_t signed_leasetime_t;
struct dyn_lease {
- /* "nip": IP in network order */
/* Unix time when lease expires. Kept in memory in host order.
* When written to file, converted to network order
* and adjusted (current time subtracted) */
leasetime_t expires;
+ /* "nip": IP in network order */
uint32_t lease_nip;
/* We use lease_mac[6], since e.g. ARP probing uses
* only 6 first bytes anyway. We check received dhcp packets
uint32_t find_free_or_expired_nip(const uint8_t *safe_mac) FAST_FUNC;
-/*** static_leases.h ***/
-
/* Config file parser will pass static lease info to this function
* which will add it to a data structure that can be searched later */
void add_static_lease(struct static_lease **st_lease_pp, uint8_t *mac, uint32_t nip) FAST_FUNC;
#endif
-/*** files.h ***/
-
void read_config(const char *file) FAST_FUNC;
void write_leases(void) FAST_FUNC;
void read_leases(const char *file) FAST_FUNC;