Skip to content

feat(libSceNet): export missing firmware network interfaces - #6603

Merged
adriadam10 merged 1 commit into
boykopovar:mainfrom
ymatrix1:feat/net-missing-exports
Oct 19, 2026
Merged

adriadam10 merged 1 commit into
boykopovar:mainfrom
ymatrix1:feat/net-missing-exports

Conversation

@ymatrix1

Copy link
Copy Markdown
Contributor

What

Exports 170 firmware libSceNet interfaces that were not declared, in core/libs/prx/libSceNet/Export.cpp. Each throws NotImplemented_nid_no_patch; signatures are unknown, so they are declared without parameters and listed under Unknown function info in docs/dev/debt/libSceNet.md.

The list is the intersection of the export table of the console's libSceNet.sprx, the verified NID name database and the functions not yet in the repo (names with the _nid_postfix suffix count as present). All 170 names recompute to their NIDs with tools/nid_names.py. Left out: sceNetEtherStrton (#6250), the exports #6286 and #6447 add, and four data symbols (sce_net_in6addr_*, sce_net_dummy), which are not functions.

Tested

python tools/check_conventions.py --base origin/main --head HEAD passes; Export.cpp compiles with g++ -std=c++20 -fsyntax-only (MinGW, Windows 11). Not run: full build, ctest, any title.

Checklist

  • Based on current main; no other open PR implements the same functions
  • One topic per PR; follow-ups go in a new PR
  • No comments in code except technical debt
  • Unimplemented paths throw (NotImplemented_nid_no_patch); silent stubs are listed under Silent stubs in their library's technical debt file (none added)
  • No notes, investigation .md files or images added to the repository
  • New third-party code is a submodule built from source (none)
  • Generic behaviour, not specific to one title
  • Depends on: none
  • Unblocks: none
  • GPUs tested: n/a
  • AI-assisted: yes

@github-actions

github-actions Bot commented Oct 15, 2026 •

Copy link
Copy Markdown

Progress report (7f596df → 4d6942f)

📉 System libraries: 87.97% (-3.54%, +170 declared functions)

🆕 170 declared as stubs
Library Name
libSceNet sceNetAddrConfig6GetInfo
libSceNet sceNetAddrConfig6Start
libSceNet sceNetAddrConfig6Stop
libSceNet sceNetAllocateAllRouteInfo
libSceNet sceNetAllocateAllRouteInfo6
libSceNet sceNetBandwidthControlGetDataTraffic
libSceNet sceNetBandwidthControlGetDefaultParam
libSceNet sceNetBandwidthControlSetDefaultParam
libSceNet sceNetClearDnsCache
libSceNet sceNetConfigAddArp
libSceNet sceNetConfigAddArpWithInterface
libSceNet sceNetConfigAddIfaddr
libSceNet sceNetConfigAddIfaddr6
libSceNet sceNetConfigAddMRoute
libSceNet sceNetConfigAddRoute
libSceNet sceNetConfigAddRoute6
libSceNet sceNetConfigAddRouteWithInterface
libSceNet sceNetConfigCleanUpAllInterfaces
libSceNet sceNetConfigDelArp
libSceNet sceNetConfigDelArpWithInterface
libSceNet sceNetConfigDelDefaultRoute
libSceNet sceNetConfigDelDefaultRoute6
libSceNet sceNetConfigDelDefaultRouteDev
libSceNet sceNetConfigDelIfaddr
libSceNet sceNetConfigDelIfaddr6
libSceNet sceNetConfigDelMRoute
libSceNet sceNetConfigDelRoute
libSceNet sceNetConfigDelRoute6
libSceNet sceNetConfigDownInterface
libSceNet sceNetConfigEtherGetLinkMode
libSceNet sceNetConfigEtherPostPlugInOutEvent
libSceNet sceNetConfigEtherSetLinkMode
libSceNet sceNetConfigFlushRoute
libSceNet sceNetConfigFlushRoute6
libSceNet sceNetConfigGetDefaultRoute
libSceNet sceNetConfigGetDefaultRoute6
libSceNet sceNetConfigGetIfFlags
libSceNet sceNetConfigGetIfaddr
libSceNet sceNetConfigGetIfaddr6
libSceNet sceNetConfigRoutingShowRoutingConfig
libSceNet sceNetConfigRoutingShowtCtlVar
libSceNet sceNetConfigRoutingStart
libSceNet sceNetConfigRoutingStop
libSceNet sceNetConfigSetDefaultRoute
libSceNet sceNetConfigSetDefaultRoute6
libSceNet sceNetConfigSetDefaultRouteDev
libSceNet sceNetConfigSetDefaultScope
libSceNet sceNetConfigSetIfFlags
libSceNet sceNetConfigSetIfLinkLocalAddr6
libSceNet sceNetConfigSetIfaddr
libSceNet sceNetConfigSetIfaddr6
libSceNet sceNetConfigSetIfaddr6WithFlags
libSceNet sceNetConfigSetIfmtu
libSceNet sceNetConfigUnsetIfFlags
libSceNet sceNetConfigUpInterface
libSceNet sceNetConfigUpInterfaceWithFlags
libSceNet sceNetConfigWlanAdhocClearWakeOnWlan
libSceNet sceNetConfigWlanAdhocCreate
libSceNet sceNetConfigWlanAdhocGetWakeOnWlanInfo
libSceNet sceNetConfigWlanAdhocJoin
libSceNet sceNetConfigWlanAdhocLeave
libSceNet sceNetConfigWlanAdhocPspEmuClearWakeOnWlan
libSceNet sceNetConfigWlanAdhocPspEmuGetWakeOnWlanInfo
libSceNet sceNetConfigWlanAdhocPspEmuSetWakeOnWlan
libSceNet sceNetConfigWlanAdhocScanJoin
libSceNet sceNetConfigWlanAdhocSetExtInfoElement
libSceNet sceNetConfigWlanAdhocSetWakeOnWlan
libSceNet sceNetConfigWlanApStart
libSceNet sceNetConfigWlanApStop
libSceNet sceNetConfigWlanBackgroundScanQuery
libSceNet sceNetConfigWlanBackgroundScanStart
libSceNet sceNetConfigWlanBackgroundScanStop
libSceNet sceNetConfigWlanDiagGetDeviceInfo
libSceNet sceNetConfigWlanDiagSetAntenna
libSceNet sceNetConfigWlanDiagSetTxFixedRate
libSceNet sceNetConfigWlanGetDeviceConfig
libSceNet sceNetConfigWlanInfraGetRssiInfo
libSceNet sceNetConfigWlanInfraLeave
libSceNet sceNetConfigWlanInfraScanJoin
libSceNet sceNetConfigWlanScan
libSceNet sceNetConfigWlanSetDeviceConfig
libSceNet sceNetControl
libSceNet sceNetDbgInit
libSceNet sceNetDhcpGetAutoipInfo
libSceNet sceNetDhcpGetInfo
libSceNet sceNetDhcpGetInfoEx
libSceNet sceNetDhcpStart
libSceNet sceNetDhcpStop
libSceNet sceNetDhcpdStart
libSceNet sceNetDhcpdStop
libSceNet sceNetDumpAbort
libSceNet sceNetDumpCreate
libSceNet sceNetDumpDestroy
libSceNet sceNetDumpRead
libSceNet sceNetDumpSetFilterParam
libSceNet sceNetDuplicateIpStart
libSceNet sceNetDuplicateIpStop
libSceNet sceNetEmulationDebugSettingsGet
libSceNet sceNetEmulationDebugSettingsSet
libSceNet sceNetEmulationGet
... 70 more

@github-actions

github-actions Bot commented Oct 15, 2026 •

Copy link
Copy Markdown

Some comparisons could not be completed because a pull request conflicts with the base branch. Review these shared files manually before concluding that there is no overlap.

Pull request Shared files not compared
PR 5836 core/libs/prx/libSceNet/Export.cpp
docs/dev/debt/libSceNet.md
PR 7201 core/libs/prx/libSceNet/Export.cpp
PR 7332 core/libs/prx/libSceNet/Export.cpp

@adriadam10
adriadam10 force-pushed the feat/net-missing-exports branch from 6a52977 to 4d6942f Compare October 19, 2026 06:43
@adriadam10
adriadam10 merged commit 58e77bb into boykopovar:main Oct 19, 2026
10 checks passed
@adriadam10

Copy link
Copy Markdown
Collaborator

Checked: 170 unique names, none already exported on main, all still throw via NotImplemented_nid_no_patch, matching the existing firmware-export PRs.

Added on top of your branch:

  • Rebased onto current main (debt file conflict) and dropped the merge commit.
  • Removed the sceNetShowNetstat "unknown signature" debt line: that export is already implemented on main (listed under Silent stubs), so the line was false.

Merging through the queue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants