Henrik Rydgård and Claude Opus 5.5
59e9d889e1
sceNetInet: Socket options as the PSP keeps them
...
The PSP's getsockopt and setsockopt work like 4.4BSD's, which
pspautotests net/inet/options records in detail, and most of it didn't
match: flags read back as their bit (SO_REUSEADDR as 4, SO_NBIO as
0x80), buffer sizes have their own defaults, getsockopt copies as much
as fits and says how much, and unknown options and levels fail with
ENOPROTOOPT and EINVAL.
So the socket-level options are now kept in InetSocket, and only the
ones that change what the host socket does are passed on to it. That
also stops the timeouts reaching the host, where Winsock read the
timeval as a millisecond count. Accepted sockets copy their options from
the listener, like BSD's sonewconn(). IP_TTL is kept too, as Windows'
default is 128 and the PSP's 64.
Timeouts are set in microseconds, but kept in 10 ms clock ticks, and
one under a tick is no timeout at all (net/inet/limits). Buffers can be
up to 233016 bytes (net/inet/limits), 4.4BSD's limit with 256-byte
mbufs, where we allowed 8 MB. SO_ERROR reads as an SCE error code rather
than an errno (net/inet/tcp).
The host's TCP send buffer is capped at 64 KB, closer to the PSP's.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-28 10:59:24 +01:00
..
2026-10-27 10:56:46 +01:00
2026-09-10 17:03:07 -06:00
2026-09-29 17:14:00 -06:00
2026-10-20 00:20:24 +02:00
2026-09-29 17:14:00 -06:00
2026-10-20 00:20:24 +02:00
2026-10-08 14:27:01 +02:00
2026-10-27 10:56:46 +01:00
2026-10-27 17:13:45 +01:00
2026-10-25 17:33:44 +01:00
2026-10-21 13:15:30 +02:00
2026-10-11 10:33:30 +02:00
2026-10-21 13:15:30 +02:00
2026-10-25 11:38:51 +01:00
2026-10-21 13:15:30 +02:00
2026-08-11 10:28:36 +02:00
2026-09-12 13:46:12 -06:00
2026-09-30 09:06:30 -06:00
2026-10-20 21:18:21 +02:00
2026-10-20 21:18:21 +02:00
2026-10-21 14:19:54 +02:00
2026-10-21 14:19:54 +02:00
2026-10-28 09:50:48 +01:00
2026-10-28 09:50:48 +01:00
2026-05-02 11:07:34 +02:00
2026-10-23 15:01:22 +02:00
2026-10-21 13:15:30 +02:00
2026-10-28 09:52:55 +01:00
2026-10-28 09:52:22 +01:00
2026-09-29 11:58:42 -06:00
2026-10-27 10:38:32 +01:00
2026-10-20 22:22:40 +02:00
2026-09-28 11:32:07 -06:00
2026-09-11 21:09:33 -06:00
2026-10-21 12:50:45 +02:00
2026-10-21 12:50:45 +02:00
2026-10-20 00:20:24 +02:00
2026-10-27 10:56:46 +01:00
2026-10-27 10:56:46 +01:00
2026-10-25 11:38:51 +01:00
2026-10-25 11:29:16 +01:00
2026-10-27 10:56:46 +01:00
2026-10-27 10:39:45 +01:00
2026-08-24 17:37:39 +02:00
2026-08-21 10:56:06 +02:00
2026-10-21 19:00:01 +02:00
2026-10-26 11:39:48 +01:00
2026-10-26 11:39:48 +01:00
2026-08-12 14:06:16 +02:00
2026-09-11 21:09:33 -06:00
2026-10-25 17:33:44 +01:00
2026-08-18 13:42:13 +02:00
2026-10-20 15:45:14 +02:00
2026-10-25 17:33:44 +01:00
2026-09-11 21:09:33 -06:00
2026-10-25 17:33:44 +01:00
2026-10-20 15:45:14 +02:00
2026-10-27 10:39:45 +01:00
2026-09-11 21:09:33 -06:00
2026-10-26 12:46:31 +01:00
2026-10-26 12:46:31 +01:00
2026-10-20 15:45:14 +02:00
2025-08-06 00:16:34 +02:00
2026-10-21 13:15:30 +02:00
2026-08-19 18:38:03 +02:00
2026-10-21 19:00:01 +02:00
2026-09-29 11:09:47 -06:00
2026-08-12 14:06:16 +02:00
2026-10-23 13:36:28 +02:00
2026-10-21 13:15:30 +02:00
2026-10-19 21:41:48 +02:00
2026-10-09 15:32:06 +02:00
2026-08-17 16:01:23 +02:00
2026-10-26 22:05:55 +01:00
2026-09-28 09:34:05 -06:00
2026-10-26 21:42:06 +01:00
2026-10-21 09:33:26 +02:00
2026-10-09 15:32:06 +02:00
2026-10-26 21:42:06 +01:00
2026-10-05 10:10:22 -06:00
2026-10-26 22:05:55 +01:00
2026-10-26 11:39:48 +01:00
2026-10-09 15:32:06 +02:00
2026-08-17 16:01:23 +02:00
2026-10-20 15:45:14 +02:00
2026-10-20 15:45:14 +02:00
2026-10-09 15:32:06 +02:00
2026-09-08 11:15:15 -06:00
2026-10-27 09:32:52 +01:00
2026-10-26 11:39:48 +01:00
2026-09-29 09:19:32 -06:00
2026-10-20 15:45:14 +02:00
2026-10-20 15:45:14 +02:00
2026-09-08 15:18:02 -06:00
2026-09-11 21:09:33 -06:00
2026-10-13 12:13:42 +02:00
2026-10-25 17:33:44 +01:00
2026-09-12 11:52:09 -06:00
2026-10-26 12:10:10 +01:00
2026-09-20 16:39:35 -06:00
2026-08-12 14:06:16 +02:00
2026-09-11 21:09:33 -06:00
2026-08-12 14:06:16 +02:00
2026-10-28 10:29:26 +01:00
2026-10-28 09:52:22 +01:00
2026-10-28 09:52:55 +01:00
2026-10-21 14:19:54 +02:00
2026-10-28 09:52:55 +01:00
2026-10-18 09:15:51 +02:00
2026-10-28 10:59:24 +01:00
2026-10-28 09:50:48 +01:00
2026-10-28 09:52:22 +01:00
2026-10-27 08:43:28 +01:00
2026-10-27 08:43:28 +01:00
2026-10-27 10:39:45 +01:00
2026-10-20 15:45:14 +02:00
2026-09-11 21:09:33 -06:00
2026-10-20 15:45:14 +02:00
2026-09-11 21:09:33 -06:00
2026-08-11 10:28:47 +02:00
2026-10-21 13:15:30 +02:00
2026-10-17 00:00:00 +02:00
2026-10-25 17:33:44 +01:00
2026-09-28 11:32:07 -06:00
2026-09-28 11:32:07 -06:00
2026-10-25 17:33:44 +01:00
2026-08-24 12:15:31 +02:00
2026-08-24 11:12:59 +02:00
2026-10-27 10:39:45 +01:00
2026-10-26 11:39:48 +01:00
2026-10-27 10:38:32 +01:00
2026-09-28 09:34:05 -06:00
2026-10-27 10:39:45 +01:00
2026-09-11 21:09:33 -06:00
2026-09-11 21:09:33 -06:00
2026-08-11 20:14:01 +02:00
2026-10-27 10:39:45 +01:00
2026-10-21 12:06:11 +02:00
2026-10-25 22:29:54 +01:00
2026-10-23 13:36:28 +02:00
2026-10-27 10:39:45 +01:00
2026-10-27 10:39:45 +01:00
2026-09-29 12:29:04 -06:00
2026-10-27 10:39:45 +01:00
2026-10-27 10:56:46 +01:00
2026-10-16 18:32:07 +02:00
2026-10-20 15:45:14 +02:00
2026-09-25 12:50:39 -06:00
2026-10-25 11:29:16 +01:00
2026-10-21 17:32:44 +02:00
2026-10-25 16:51:24 +01:00
2026-09-25 17:33:33 -06:00
2026-10-10 22:32:46 +02:00
2026-08-24 10:58:34 +02:00
2026-10-28 10:59:24 +01:00
2026-10-28 10:59:24 +01:00
2026-10-20 00:20:24 +02:00