[PATCH] Make padding in struct sockaddr_storage explicit [BZ #20111]

Andreas Schwab schwab@suse.de
Thu May 19 13:52:00 GMT 2016


fweimer@redhat.com (Florian Weimer) writes:

> diff --git a/bits/socket.h b/bits/socket.h
> index ab9f242..b3f2753 100644
> --- a/bits/socket.h
> +++ b/bits/socket.h
> @@ -164,6 +164,7 @@ struct sockaddr
>  struct sockaddr_storage
>    {
>      __SOCKADDR_COMMON (ss_);	/* Address family, etc.  */
> +    char __ss_padding_init[sizeof (__ss_aligntype) - __SOCKADDR_COMMON_SIZE];

That needs to be __alignof, otherwise you change the layout, and you
need to watch out for zero padding.

Andreas.

-- 
Andreas Schwab, SUSE Labs, schwab@suse.de
GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE  1748 E4D4 88E3 0EEA B9D7
"And now for something completely different."



More information about the Libc-alpha mailing list