From ecf07fb748b76c182d0441366593f3c795f76578 Mon Sep 17 00:00:00 2001 From: Patrik Flykt Date: Mon, 15 Jan 2018 17:37:52 +0200 Subject: [PATCH] sd-dhcp6-client: Use offsetof() instead of sizeof() The slightly modified review comments say that "...in theory offsetof(DHCP6Option, data) is nicer than sizeof(DHCP6Option) because the former removes alignment artifacts. In this specific case there are no alignment whitespaces hence it's fine, but out of a matter of principle offsetof() is preferred over sizeof() in cases like this..." --- src/libsystemd-network/sd-dhcp6-client.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/libsystemd-network/sd-dhcp6-client.c b/src/libsystemd-network/sd-dhcp6-client.c index 0584059..f98a182 100644 --- a/src/libsystemd-network/sd-dhcp6-client.c +++ b/src/libsystemd-network/sd-dhcp6-client.c @@ -788,7 +788,8 @@ static int client_parse_message( uint8_t *optval; be32_t iaid_lease; - if (len < sizeof(DHCP6Option) || len < sizeof(DHCP6Option) + be16toh(option->len)) + if (len < offsetof(DHCP6Option, data) || + len < offsetof(DHCP6Option, data) + be16toh(option->len)) return -ENOBUFS; optcode = be16toh(option->code); -- 2.7.4