X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Flibsystemd-dhcp%2Fdhcp-protocol.h;h=1e59965dc0cd7a9ffcfb23258be3260db57cabe7;hb=a94200d0b4a8f98e5d9433282642300082de7d59;hp=d37546721a20e844f6bf998fc7dba7766d2705e2;hpb=011feef852de96a1adaba476037ce01b5efefc35;p=elogind.git diff --git a/src/libsystemd-dhcp/dhcp-protocol.h b/src/libsystemd-dhcp/dhcp-protocol.h index d37546721..1e59965dc 100644 --- a/src/libsystemd-dhcp/dhcp-protocol.h +++ b/src/libsystemd-dhcp/dhcp-protocol.h @@ -55,6 +55,15 @@ struct DHCPPacket { typedef struct DHCPPacket DHCPPacket; +#define DHCP_IP_SIZE (int32_t)(sizeof(struct iphdr)) +#define DHCP_IP_UDP_SIZE (int32_t)(sizeof(struct udphdr) + DHCP_IP_SIZE) +#define DHCP_MESSAGE_SIZE (int32_t)(sizeof(DHCPMessage)) + +enum { + DHCP_PORT_SERVER = 67, + DHCP_PORT_CLIENT = 68, +}; + enum DHCPState { DHCP_STATE_INIT = 0, DHCP_STATE_SELECTING = 1, @@ -97,8 +106,14 @@ enum { DHCP_OPTION_DOMAIN_NAME = 15, DHCP_OPTION_NTP_SERVER = 42, DHCP_OPTION_REQUESTED_IP_ADDRESS = 50, + DHCP_OPTION_IP_ADDRESS_LEASE_TIME = 51, DHCP_OPTION_OVERLOAD = 52, DHCP_OPTION_MESSAGE_TYPE = 53, + DHCP_OPTION_SERVER_IDENTIFIER = 54, DHCP_OPTION_PARAMETER_REQUEST_LIST = 55, + DHCP_OPTION_MAXIMUM_MESSAGE_SIZE = 57, + DHCP_OPTION_RENEWAL_T1_TIME = 58, + DHCP_OPTION_REBINDING_T2_TIME = 59, + DHCP_OPTION_CLIENT_IDENTIFIER = 61, DHCP_OPTION_END = 255, };