Socket Services
Jump to navigation
Jump to search
Socket service "soc:U"
Command Header | Description |
---|---|
0x00010044 | InitializeSockets |
0x000200C2 | socket |
0x00030082 | listen |
0x00040082 | accept |
0x00050084 | bind |
0x00060084 | connect |
0x00070104 | recvfrom_other |
0x00080102 | recvfrom |
0x00090106 | sendto_other |
0x000A0106 | sendto |
0x000B0042 | close |
0x000C0082 | shutdown |
0x000D0082 | gethostbyname |
0x000E00C2 | This is similar to command 0x000D0082? |
0x000F0106 | This resolves the IP address(es) for the specified host-name. |
0x00110102 | getsockopt |
0x00120104 | setsockopt |
0x001300C2 | fcntl |
0x00140084 | poll |
0x00170082 | getsockname |
0x00190000 | ShutdownSockets |
The socket descriptors are system-wide, they are not unique to each process.
struct sockaddr
Offset | Size | Description |
---|---|---|
0x0 | 0x1 | Total size of the entire sockaddr buffer. |
0x1 | 0x1 | u8 sa_family |
0x2 | sockaddr_totalsize-0x2 | sa_data[] |
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.