21 const unsigned char *
p = packet;
25 if (length < (4 + 5 + 8 + 32 + 16 + 8 + 8 + 16 + 1 + 8)) {
30 keyinfo = p[5] << 8 | p[6];
32 (p[0] == 1 || p[0] == 2) &&
35 (p[4] == 254 || p[4] == 2) &&
36 ((keyinfo & 0x0007) == 1 || (keyinfo & 0x0007) == 2) &&
37 (keyinfo & ~0x0207U) == 0x0108 &&
38 (p[4 + 5 + 8 + 32 + 16 + 8 + 8 + 16 + 0] == 0 &&
39 p[4 + 5 + 8 + 32 + 16 + 8 + 8 + 16 + 1] == 0)