From: Zbigniew Jędrzejewski-Szmek Date: Tue, 10 Nov 2020 14:33:28 +0000 (+0100) Subject: libsystemd-network: add comment explaining unusual memory access X-Git-Tag: v247-rc2~3^2~1 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=b5c474f69b473ba752ac9e63ff961f94341dc828;p=thirdparty%2Fsystemd.git libsystemd-network: add comment explaining unusual memory access Inspired by coverity CID#1435984. I'm confused by the union definion every time I look at it... Let's at least add a comment to help future readers. --- diff --git a/src/libsystemd-network/dhcp-network.c b/src/libsystemd-network/dhcp-network.c index 6c82d5508ec..656482bf838 100644 --- a/src/libsystemd-network/dhcp-network.c +++ b/src/libsystemd-network/dhcp-network.c @@ -106,7 +106,7 @@ static int _bind_raw_socket(int ifindex, union sockaddr_union *link, .sll_hatype = htobe16(arp_type), .sll_halen = bcast_addr_len, }; - memcpy(link->ll.sll_addr, bcast_addr, bcast_addr_len); + memcpy(link->ll.sll_addr, bcast_addr, bcast_addr_len); /* We may overflow link->ll. link->ll_buffer ensures we have enough space. */ r = bind(s, &link->sa, SOCKADDR_LL_LEN(link->ll)); if (r < 0)