move msghdr and cmsghdr out of bits/socket.h
authorRich Felker <dalias@aerifal.cx>
Fri, 1 Nov 2019 03:09:48 +0000 (23:09 -0400)
committerRich Felker <dalias@aerifal.cx>
Sat, 2 Nov 2019 22:30:56 +0000 (18:30 -0400)
commita0252bc75b8546008c6b87e58344c4340683d5eb
treee885f4e0f8fa4f1974b1d3da91411c123f613d85
parent573a4d2d597ba15435ffdf0f2d8bea1058e7b795
move msghdr and cmsghdr out of bits/socket.h

these structures can now be defined generically in terms of endianness
and long size. previously, the 32-bit archs all shared a common
definition from the generic bits header, and each 64-bit arch had to
repeat the 64-bit version, with endian conditionals if the arch had
variants of each endianness.

I would prefer getting rid of the preprocessor conditionals for
padding and instead using unnamed bitfield members, like commit
9b2921bea1d5017832e1b45d1fd64220047a9802 did for struct timespec.
however, at present sendmsg, recvmsg, and recvmmsg need access to the
padding members by name to zero them. this could perhaps be cleaned up
in the future.
arch/aarch64/bits/socket.h [deleted file]
arch/generic/bits/socket.h
arch/mips/bits/socket.h
arch/mips64/bits/socket.h
arch/mipsn32/bits/socket.h
arch/powerpc/bits/socket.h
arch/powerpc64/bits/socket.h
arch/riscv64/bits/socket.h [deleted file]
arch/s390x/bits/socket.h [deleted file]
arch/x86_64/bits/socket.h [deleted file]
include/sys/socket.h