dhcpv6: Drop bogus option length test while checking for not-on-link IA_NA

dhcpv6_opt() already reflects consumed bytes on the remaining length,
and that we're not exceeding the message length. At this point, the
remaining length is usually zero.

While at it, drop a useless __packed__ attribute that triggers a gcc
warning.

Signed-off-by: Stefano Brivio <sbrivio@redhat.com>
This commit is contained in:
Stefano Brivio 2021-07-26 07:11:33 +02:00
parent 60dee2705b
commit 0be49ccd93

View file

@ -61,7 +61,7 @@ struct opt_hdr {
#define STR_NOTONLINK "Prefix not appropriate for link."
uint16_t l;
} __attribute__((__packed__));
};
#if __BYTE_ORDER == __BIG_ENDIAN
# define OPT_SIZE_CONV(x) (x)
@ -334,9 +334,6 @@ ia_ta:
while ((ia = dhcpv6_opt(ia, ia_type, &__len))) {
size_t ia_len = ntohs(ia->l);
if (ia_len > __len)
return NULL;
if (ia_type == OPT_IA_NA) {
struct opt_ia_na *opts = (struct opt_ia_na *)ia + 1;