SOCU:recvfrom other

From 3dbrew
Revision as of 06:00, 13 July 2013 by Yellows8 (talk | contribs) (Created page with "=Request= {| class="wikitable" border="1" |- ! Index Word ! Description |- | 0 | Header code [0x00070104] |- | 1 | Socket descriptor |- | 2 | size_t len |- | 3 | int flags |- |...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Request

Index Word Description
0 Header code [0x00070104]
1 Socket descriptor
2 size_t len
3 int flags
4 socklen_t addrlen
5 Value 0x20 (processID header)
6 ProcessID set by the ARM11 kernel.
7 (len<<4) | 12
8 Pointer to output buf

The following is located 0x100-bytes after the beginning of the above command buffer:

Index Word Description
0 (addrlen<<14) | 2
1 Pointer to the output src_addr structure (must be a valid address, even when unused)

Response

Index Word Description
0 Header code
1 Result code (zero for success)
2 Total received data
3 Unknown

Description

This is the same as SOCU:recvfrom, except this doesn't have the size restriction, and this uses the "(outsize<<4) | 12" header instead of the "| 2" header.