Socket user service "soc:U"
Socket privileged service "soc:P"
||Total size of the entire sockaddr buffer.
The total buffer size is 0x8, for family AF_INET value 2. AF_INET6 seems to be value 23, the total sockaddr size for this is 0x1C. The max sockaddr buffer size which the socket module can handle is size 0x1C.
These socket services(and defines/structures) seem to be based on the Wii sockets?
Socket module errors
Socket module static buffers
This is the list of the known thread static buffers in use for SOC:u and the commands using those.
It seems that Nintendo planned ahead and included IPv6 support to some extent in their code.
Name resolution functions support IPv6 (such as getnameinfo), but socket doesn't.
The ipv6 sockaddr size is 0x1C and is required for some IPC commands, even when using sockaddr_in which in reality is of size 8.
The sockaddr_in6 struct is the following:
struct in6_addr sin6_addr;
u32 sin6_flowinfo; // Not confirmed
u32 sin6_scope_id; // Not confirmed