Re: Annoying gcc / rdma / networking warnings
From: Sowmini Varadhan
Date: Sat May 11 2019 - 16:04:29 EST
On (05/11/19 12:52), Linus Torvalds wrote:
> So David, arguably the kernel "struct sockaddr" is simply wrong, if it
> can't contain a "struct sockaddr_in6". No? Is extending it a huge
> problem for other users that don't need it (mainly stack, I assume..)?
The ipv6 working group came up with sockaddr_storage to solve this.
See RFC 2553. However, in practice, since sizeof(struct sockaddr_storage)
is much larger than simply creating a union of sockaddr_in and sockaaddr_in6,
most userspace networking applications will do the latter.
The strucut sockaddr is the mereely the generic pointer cast
that is expected to be used for the common posix fucntions like
> Also equally arguably, the rdma code could just use a "struct
> sockaddr_in6 for this use and avoid the gcc issue, couldn't it? It has
Yes, that would be the right solution.