shadPS4/src/core/libraries/np
Stephen Miller b34556702e
Some checks failed
Build and Release / reuse (push) Has been cancelled
Build and Release / clang-format (push) Has been cancelled
Build and Release / get-info (push) Has been cancelled
Build and Release / windows-sdl (push) Has been cancelled
Build and Release / windows-qt (push) Has been cancelled
Build and Release / macos-sdl (push) Has been cancelled
Build and Release / macos-qt (push) Has been cancelled
Build and Release / linux-sdl (push) Has been cancelled
Build and Release / linux-qt (push) Has been cancelled
Build and Release / linux-sdl-gcc (push) Has been cancelled
Build and Release / linux-qt-gcc (push) Has been cancelled
Build and Release / pre-release (push) Has been cancelled
NpAuth: Improved stubs (#3712)
* Some structs and function definitions

* Fill in remaining function definitions and structs

The original variants of GetIdToken and GetAuthorizationCode use an online id instead of user id.
The V3 functions use the same internal function, but with a different flag. Unless games show me something different, they likely use the same structs, and definitely use the same parameters.

* Some errors

* Minor formatting change

* Some more errors

* GetIdToken error cases

* Remaining error cases

Just need to tackle request-related logic now.

* Basic request handling

Seems to internally behave similarly to libSceNpManager, but the actual data stored in libSceNpAuth requests appears to be different, so I've kept everything separated.

* NpAuthRequest usage

Again, behavior mirrors libSceNpManager request behavior, though it appears to be a separate implementation.
The only time libSceNpAuth uses libSceNpManager is to actually send the requests, where the act of sending a request involves creating a completely separate NpManager request, using NpManager functions to retrieve the desired data, then deleting the underlying NpManager request. All of this would happen inside GetAuthorizationCode and GetIdToken.

* Oops

* Missing mutexes

* Default output variables to zero

Not sure what all games might check for here, but setting the outputs to zero is probably safe.
2025-10-05 17:31:21 -07:00
..
np_auth_error.h NpAuth: Improved stubs (#3712) 2025-10-05 17:31:21 -07:00
np_auth.cpp NpAuth: Improved stubs (#3712) 2025-10-05 17:31:21 -07:00
np_auth.h NpAuth: Improved stubs (#3712) 2025-10-05 17:31:21 -07:00
np_common_error.h Libraries: Np libraries cleanup (#3535) 2025-09-06 14:32:22 -07:00
np_common.cpp Core: Remove checks for symbol version_major and version_minor (#3540) 2025-09-08 19:30:03 -07:00
np_common.h Libraries: Np libraries cleanup (#3535) 2025-09-06 14:32:22 -07:00
np_error.h NpAuth: Improved stubs (#3712) 2025-10-05 17:31:21 -07:00
np_manager.cpp NpManager: Implement more request-related behavior (#3703) 2025-10-05 17:25:46 -07:00
np_manager.h NpManager: Implement more request-related behavior (#3703) 2025-10-05 17:25:46 -07:00
np_party_error.h Libraries: Np libraries cleanup (#3535) 2025-09-06 14:32:22 -07:00
np_party.cpp Core: Remove checks for symbol version_major and version_minor (#3540) 2025-09-08 19:30:03 -07:00
np_party.h Libraries: Np libraries cleanup (#3535) 2025-09-06 14:32:22 -07:00
np_profile_dialog.cpp Core: Remove checks for symbol version_major and version_minor (#3540) 2025-09-08 19:30:03 -07:00
np_profile_dialog.h Libraries: Np libraries cleanup (#3535) 2025-09-06 14:32:22 -07:00
np_score.cpp Core: Remove checks for symbol version_major and version_minor (#3540) 2025-09-08 19:30:03 -07:00
np_score.h Libraries: Np libraries cleanup (#3535) 2025-09-06 14:32:22 -07:00
np_sns_facebook_dialog.cpp np: stub sceNpSnsFacebookDialogUpdateStatus (#3661) 2025-09-26 19:19:41 -07:00
np_sns_facebook_dialog.h np: stub sceNpSnsFacebookDialogUpdateStatus (#3661) 2025-09-26 19:19:41 -07:00
np_trophy_error.h Libraries: Np libraries cleanup (#3535) 2025-09-06 14:32:22 -07:00
np_trophy.cpp Use correct trophy folder for games with multiple trophy lists (#3704) 2025-10-05 18:39:14 +03:00
np_trophy.h Trophy fixes IXXXX (#3653) 2025-09-26 00:00:12 -07:00
np_types.h NpAuth: Improved stubs (#3712) 2025-10-05 17:31:21 -07:00
np_web_api.cpp Core: Remove checks for symbol version_major and version_minor (#3540) 2025-09-08 19:30:03 -07:00
np_web_api.h Libraries: Np libraries cleanup (#3535) 2025-09-06 14:32:22 -07:00
trophy_ui.cpp Libraries: Np libraries cleanup (#3535) 2025-09-06 14:32:22 -07:00
trophy_ui.h Libraries: Np libraries cleanup (#3535) 2025-09-06 14:32:22 -07:00