Files
AnyPS5/docs/dev/debt/libSceLibreSsl3.md
T
Dean 7e3e883584 Merge pull request #10948 from AZLisme/feat/libressl3-asn1-accessors
feat(libSceLibreSsl3): implement ASN.1 integer decoding
2026-10-27 10:57:14 +13:00

2.5 KiB

libSceLibreSsl3 technical debt

Unknown function info

  • libSceLibreSsl3 pending exports - 83 named callable exports, excluding CRYPTO_memcmp, MD5, SHA1 and d2i_ASN1_INTEGER, remain unimplemented from the PS5 3.20 export table, cross-checked against the same module in PS5 firmware 13.60. Their signatures and behaviour are unverified; the declarations use the no-parameter unknown-signature convention and throw through NotImplemented_nid_no_patch.

Functional

  • ASN.1 integer decoding throws on rejected encodings/allocation failures instead of matching native NULL/error handling. Redundant-sign/empty-content rejection retains old output that the module frees and clears. The decoder does not populate the legacy queue; remaining LibreSSL3 ERR exports throw. 13.42 native-PC evidence, using a recording allocator, confirms tested replacement/free order, allocation cleanup and negative-length NULL returns. Nonnegative null input faults natively and throws here. Console/application-heap ABI and untested error-precedence/overflow combinations remain unverified. Contracts follow LibreSSL 4.0.0. Closes when: error/replacement semantics and console/allocator interoperability are verified.
  • CRYPTO_memcmp follows the public LibreSSL signature and equality contract, without PS5 verification. The exact nonzero result for unequal buffers is unspecified by that contract. Content-independent execution of its volatile byte reads still depends on the compiler; inspect optimized code when changing toolchains. Closes when: measured on a PS5 and the supported toolchains' generated code is checked.
  • MD5 and SHA1 (libSceLibreSsl3) - follow LibreSSL's md5.c, sha1.c and hash through libSceLibreSsl's MD5_* and SHA1_*. A null digest buffer, which LibreSSL 4.0.0 does not check, throws. Nothing is checked on the console