[systemd-devel] [PATCH 01/28] dhcp: Add DHCP protocol structures and initial defines
Lennart Poettering
lennart at poettering.net
Wed Nov 13 16:10:07 PST 2013
On Thu, 14.11.13 08:56, Marcel Holtmann (marcel at holtmann.org) wrote:
>
> Hi Lennart,
>
> >> +#define BOOTREQUEST 1
> >> +#define BOOTREPLY 2
> >> +
> >> +#define DHCP_DISCOVER 1
> >> +#define DHCP_OFFER 2
> >> +#define DHCP_REQUEST 3
> >> +#define DHCP_DECLINE 4
> >> +#define DHCP_ACK 5
> >> +#define DHCP_NAK 6
> >> +#define DHCP_RELEASE 7
> >> +
> >> +#define DHCP_OVERLOAD_FILE 1
> >> +#define DHCP_OVERLOAD_SNAME 2
> >> +
> >> +#define DHCP_OPTION_PAD 0
> >> +#define DHCP_OPTION_SUBNET_MASK 1
> >> +#define DHCP_OPTION_ROUTER 3
> >> +#define DHCP_OPTION_DOMAIN_NAME_SERVER 6
> >> +#define DHCP_OPTION_HOST_NAME 12
> >> +#define DHCP_OPTION_DOMAIN_NAME 15
> >> +#define DHCP_OPTION_NTP_SERVER 42
> >> +#define DHCP_OPTION_REQUESTED_IP_ADDRESS 50
> >> +#define DHCP_OPTION_OVERLOAD 52
> >> +#define DHCP_OPTION_MESSAGE_TYPE 53
> >> +#define DHCP_OPTION_PARAMETER_REQUEST_LIST 55
> >> +#define DHCP_OPTION_END 255
> >
> > For defines like these I'd really suggest using anonymous enums. It's a
> > good thing if the compiler knows these things, not just the
> > pre-processor...
>
> these are wire protocol definitions. What benefit do you gain if the
> compiler knows them. You always have to handle invalid cases anyway
> since malicious servers are a reality.
For example, it's nicer to work with gdb if it can resolve them...
Lennart
--
Lennart Poettering, Red Hat
More information about the systemd-devel
mailing list