Commit Graph
18 Commits
Author SHA1 Message Date
hypermistandClaude Opus 5.5 34e8cf1e14 feat(libc): implement basename_r
basename_r writes basename's result into the caller's buffer;
basename now uses it with its per-thread buffer.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01RbLgECLQ2bpDM7oe2urGZK
2026-10-21 01:44:56 +13:00
Federico Marras 89b1b53176 feat(libc): implement bounded decimal parsing with strtonum 2026-10-19 20:19:08 +02:00
QRMOE 3cb434715a fix(libc): clear exhausted strtok continuation state 2026-10-12 19:00:50 +02:00
QRMOE f133aaa4b0 fix(libc): check dirname result length
Find the directory component before checking the result buffer limit, matching FreeBSD 11.4. Preserve input and guest errno on success; overlong directory results still report ENAMETOOLONG.

AI-assisted: yes
2026-10-11 16:23:53 +02:00
Adrià f0d15c3d81 Merge pull request #3261 from MarcZX100/codex/libc-dirname-ppsA99764
feat(libc): implement dirname
2026-10-11 09:25:39 +02:00
MarcZX100 bde216731e fix(libc): preserve dirname input paths 2026-10-11 05:12:21 +00:00
MarcZX100 865e530505 feat(libc): implement dirname 2026-10-11 05:10:13 +00:00
Achraf ReyaniandClaude Opus 5.5 0f480c6acc feat(libc): implement strsep
Split at the first delimiter like FreeBSD's strsep: empty fields are
returned, and the cursor becomes null after the last token.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-11 09:48:07 +09:00
Achraf ReyaniandClaude Opus 5.5 471e537cdf feat(libc): implement __inet_ntoa
Format the address bytes in network order as dotted decimal into a
per-thread buffer, like FreeBSD's inet_ntoa returns its static one.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-10 12:43:51 +09:00
Adrià e66180f1bb Merge pull request #1972 from babyhuey/feat/libc-inet-addr
feat(libc): implement __inet_addr
2026-10-10 00:35:34 +02:00
Adrià e51d4e1f21 Merge pull request #1812 from journaltraces/feat/libc-stpcpy
feat(libc): implement stpcpy
2026-10-10 00:08:33 +02:00
Hannah Lyons 11e058654d feat(libc): implement __inet_addr 2026-10-10 00:00:38 +02:00
LeandroLP23andClaude Opus 5.5 7449e51483 feat(libc): implement __inet_aton
PICO-8 for PS5 (PPSA99808) stops at start-up on the unresolved import
a7ToDPsIQrc from libSceLibcInternal. The parser follows FreeBSD's inet_aton
(lib/libc/inet/inet_addr.c): one to four parts in decimal, octal or hex, the
last part filling the remaining bytes, input ending at a NUL or whitespace,
and a null address only validating.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-08 23:48:48 +02:00
journaltraces e411282b80 feat(libc): implement stpcpy
PICO-8 for PS5 (PPSA99808) imports stpcpy from libSceLibcInternal, one
of the absent imports #1578 lists for it. POSIX defines it as strcpy
that returns a pointer to the terminating null of the copy.
2026-10-09 00:22:57 +03:00
Cliff Syner b9c1c8848f feat(libc): implement strnlen_s
The DQbtGaBKlaw import was a throwing stub (libcCyberUnknown17). It is
the NID of "strnlen_s", which C11 K.3.7.4.4 defines as strnlen that
returns 0 for a null pointer.

The removed stub comment from #358 described its call site as
float -> float, which contradicts the hash-verified name; #492 left the
stub untouched for that reason.
2026-10-05 18:26:06 +00:00
SamG-Coder 39b81364b7 feat(libc): add C-locale character APIs and guest basename 2026-09-25 06:58:41 +10:00
SamG-Coder 730afc79f8 feat(libc): add independent guest strtok state 2026-09-25 06:52:05 +10:00
SamG-Coder 6ba24a895c feat(libs): implement homebrew string compatibility functions 2026-09-25 05:59:07 +10:00