The first nibble of the option 81 flags field must be zero.
The current flags are in the second nibble.
From RFC 4702:
2.1. The Flags Field
The format of the 1-octet Flags field is:
0 1 2 3 4 5 6 7
+-+-+-+-+-+-+-+-+
| MBZ |N|E|O|S|
+-+-+-+-+-+-+-+-+
[...]
The remaining bits in the Flags field are reserved for future
assignment. DHCP clients and servers that send the Client FQDN
option MUST clear the MBZ bits, and they MUST ignore these bits.
len = 0;
break;
}
- if (GET_U_1(bp))
+ if (GET_U_1(bp) & 0xf0) {
+ ND_PRINT("[ERROR: MBZ nibble 0x%x != 0] ",
+ (GET_U_1(bp) & 0xf0) >> 4);
+ }
+ if (GET_U_1(bp) & 0x0f)
ND_PRINT("[%s] ",
client_fqdn_flags(GET_U_1(bp)));
bp++;