From: Patrik Flykt Date: Mon, 15 Jan 2018 15:37:52 +0000 (+0200) Subject: sd-dhcp6-client: Use offsetof() instead of sizeof() X-Git-Tag: v237~96^2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=ecf07fb748b76c182d0441366593f3c795f76578;p=platform%2Fupstream%2Fsystemd.git 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..." --- 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);