In section 3 ("Packet Format"), "vend" is 64 bytes long, minus the magic that's 60 bytes, not 62. Signed-off-by: Stefano Brivio <sbrivio(a)redhat.com> --- dhcp.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/dhcp.c b/dhcp.c index 197a515..d24ef86 100644 --- a/dhcp.c +++ b/dhcp.c @@ -57,6 +57,8 @@ static struct opt opts[255]; #define DHCPINFORM 8 #define DHCPFORCERENEW 9 +#define OPT_MIN 60 /* RFC 951 */ + /** * dhcp_init() - Initialise DHCP options */ @@ -158,9 +160,9 @@ static int fill(struct msg *m) m->o[offset++] = 255; m->o[offset++] = 0; - if (offset < 62 /* RFC 951 */) { - memset(&m->o[offset], 0, 62 - offset); - offset = 62; + if (offset < OPT_MIN) { + memset(&m->o[offset], 0, OPT_MIN - offset); + offset = OPT_MIN; } return offset; -- 2.35.1