summaryrefslogtreecommitdiffstats
path: root/src/core/hle/service/acc/acc.cpp (unfollow)
Commit message (Collapse)AuthorFilesLines
2023-11-05service: acc: Ensure proper profile sizegerman771-9/+47
2023-10-17service: hle: Allow to access read buffer A and X directlygerman771-6/+6
2023-10-17service: acc: Implement functions needed for profile select (#11653)Narr the Reg1-1/+42
2023-08-08core: remove ResultVal typeLiam1-5/+6
2023-07-23core: implement GetGaiStringErrorRequest, IContextRegistrarLiam1-1/+2
2023-03-12general: fix spelling mistakesLiam1-1/+1
2023-03-07hle: rename legacy errors to ResultsLiam1-16/+10
2023-03-01service: move hle_ipc from kernelLiam1-34/+34
2023-02-25core: Update service function tables to 16.0.0+Narr the Reg1-0/+8
2023-02-21service: refactor server architectureLiam1-10/+13
Converts services to have their own processes
2023-02-14remove static from pointer sized or smaller types for aesthetics, change constexpr static to static constexpr for consistencyarades791-1/+1
Signed-off-by: arades79 <scravers@protonmail.com>
2023-02-14add static lifetime to constexpr values to force compile time evaluation where possiblearades791-1/+1
Signed-off-by: arades79 <scravers@protonmail.com>
2023-02-14general: rename CurrentProcess to ApplicationProcessLiam1-2/+2
2022-12-29hle_ipc: Rename ReadBufferSpan to ReadBufferameerj1-3/+3
2022-12-25service: Use ReadBufferSpan where it is trivial to do soameerj1-3/+3
2022-11-23general: fix compile for Apple ClangLiam1-0/+1
2022-11-03core: hle: service: acc: Fix ListOpenContextStoredUsers/StoreOpenContext.bunnei1-21/+13
- These APIs are used to capture the opened users and allow that state to be persisted across processes. - They are not intended to just return the system opened users, that is what ListOpenUsers is for. - Fixes the launch hang with Bayonetta 3.
2022-08-27core/acc: Make CheckAvailability use LOG_DEBUGFearlessTobi1-1/+1
Previously it was spamming the logs in certain multiplayer games like Puyo Puyo Tetris.
2022-07-14service: ac: Replace intances of ProfileData with UserDatagerman771-10/+10
2022-06-27core: Replace all instances of ResultCode with Resultgerman771-7/+7
2022-04-23general: Convert source file copyright comments over to SPDXMorph1-3/+2
This formats all copyright comments according to SPDX formatting guidelines. Additionally, this resolves the remaining GPLv2 only licensed files by relicensing them to GPLv2.0-or-later.
2022-03-19core: Reduce unused includesameerj1-1/+0
2022-02-05general: Rename NewUUID to UUID, and remove the previous UUID implMorph1-29/+28
This completes the removal of the old UUID implementation.
2022-02-05profile: Migrate to the new UUID implementationMorph1-46/+47
2021-11-04general: Get the current process program id directly from the systemMorph1-4/+2
This allows us to avoid including KProcess' header file in files that only need to get the current process' program id.
2021-11-04general: Rename GetTitleID to GetProgramIDMorph1-2/+2
2021-11-04service/acc: Rename Unknown160 to InitializeApplicationInfoV2german771-1/+1
2021-11-04service: acc: Stub acc:u0 '160'Morph1-0/+7
- Used by Animal Crossing: New Horizons v2.0.0 Since the name is currently unknown, '160' is used as a placeholder.
2021-11-04core: Remove unused includesameerj1-2/+0
2021-09-22common/uuid: Add validity checking functions to interfaceLioncash1-2/+1
Given we have a function to invalidate, we should also have ones to query the validity. Also makes the code more straightforward to read.
2021-09-08Addressed issuesChloe Marcec1-7/+6
2021-09-06account: EnsureTokenIdCacheAsyncChloe Marcec1-19/+48
Closes #2547, #6946
2021-07-27common: uuid: Return a lower-case hex string in FormatMorph1-11/+11
2021-07-14service: Append service name prefix to common filenamesMorph1-1/+1
2021-06-02general: Replace RESULT_UNKNOWN with ResultUnknownMorph1-3/+3
Transition to PascalCase for result names.
2021-06-02general: Replace RESULT_SUCCESS with ResultSuccessMorph1-27/+27
Transition to PascalCase for result names.
2021-05-26common: fs: Rework the Common Filesystem interface to make use of std::filesystem (#6270)Morph1-11/+17
* common: fs: fs_types: Create filesystem types Contains various filesystem types used by the Common::FS library * common: fs: fs_util: Add std::string to std::u8string conversion utility * common: fs: path_util: Add utlity functions for paths Contains various utility functions for getting or manipulating filesystem paths used by the Common::FS library * common: fs: file: Rewrite the IOFile implementation * common: fs: Reimplement Common::FS library using std::filesystem * common: fs: fs_paths: Add fs_paths to replace common_paths * common: fs: path_util: Add the rest of the path functions * common: Remove the previous Common::FS implementation * general: Remove unused fs includes * string_util: Remove unused function and include * nvidia_flags: Migrate to the new Common::FS library * settings: Migrate to the new Common::FS library * logging: backend: Migrate to the new Common::FS library * core: Migrate to the new Common::FS library * perf_stats: Migrate to the new Common::FS library * reporter: Migrate to the new Common::FS library * telemetry_session: Migrate to the new Common::FS library * key_manager: Migrate to the new Common::FS library * bis_factory: Migrate to the new Common::FS library * registered_cache: Migrate to the new Common::FS library * xts_archive: Migrate to the new Common::FS library * service: acc: Migrate to the new Common::FS library * applets/profile: Migrate to the new Common::FS library * applets/web: Migrate to the new Common::FS library * service: filesystem: Migrate to the new Common::FS library * loader: Migrate to the new Common::FS library * gl_shader_disk_cache: Migrate to the new Common::FS library * nsight_aftermath_tracker: Migrate to the new Common::FS library * vulkan_library: Migrate to the new Common::FS library * configure_debug: Migrate to the new Common::FS library * game_list_worker: Migrate to the new Common::FS library * config: Migrate to the new Common::FS library * configure_filesystem: Migrate to the new Common::FS library * configure_per_game_addons: Migrate to the new Common::FS library * configure_profile_manager: Migrate to the new Common::FS library * configure_ui: Migrate to the new Common::FS library * input_profiles: Migrate to the new Common::FS library * yuzu_cmd: config: Migrate to the new Common::FS library * yuzu_cmd: Migrate to the new Common::FS library * vfs_real: Migrate to the new Common::FS library * vfs: Migrate to the new Common::FS library * vfs_libzip: Migrate to the new Common::FS library * service: bcat: Migrate to the new Common::FS library * yuzu: main: Migrate to the new Common::FS library * vfs_real: Delete the contents of an existing file in CreateFile Current usages of CreateFile expect to delete the contents of an existing file, retain this behavior for now. * input_profiles: Don't iterate the input profile dir if it does not exist Silences an error produced in the log if the directory does not exist. * game_list_worker: Skip parsing file if the returned VfsFile is nullptr Prevents crashes in GetLoader when the virtual file is nullptr * common: fs: Validate paths for path length * service: filesystem: Open the mod load directory as read only
2021-05-06hle: kernel: Rename Process to KProcess.bunnei1-1/+1
2021-04-23acc/lbl: Remove unused variablesLioncash1-4/+0
2021-04-07dauth_o: Update to 11.xMorph1-6/+11
2021-02-21acc: Stub GetNintendoAccountUserResourceCacheForApplicationMorph1-1/+17
This command returns a Nintendo Account ID and writes 2 output buffers. The first output buffer is a NasUserBaseForApplication and the second output buffer is currently empty. Used by: - Pokken Tournament DX - Super Smash Bros. Ultimate - Super Nintendo Entertainment System - Nintendo Switch Online - Mario Kart 8 Deluxe
2021-01-19acc: Stub StoreSaveDataThumbnailChloe Marcec1-3/+58
Fixes ACA NEOGEO METAL SLUG hanging on boot.
2021-01-15core: Silence Wclass-memaccess warningsReinUsesLisp1-1/+1
This requires making several types trivial and properly initialize them whenever they are called.
2020-11-27service: Eliminate usages of the global system instanceLioncash1-40/+48
Completely removes all usages of the global system instance within the services code by passing in the using system instance to the services.
2020-11-18patch_manager: Remove usages of the global system instanceLioncash1-2/+4
With this, only 19 usages of the global system instance remain within the core library. We're almost there.
2020-11-08ipc_helpers: Remove usage of the global system instanceLioncash1-0/+1
Resolves numerous deprecation warnings throughout the codebase due to inclusion of this header. Now building core should be significantly less noisy (and also relying on less global state). This also uncovered quite a few modules that were relying on indirect includes, which have also been fixed.
2020-10-15service: acc: Stub IManagerForApplication::StoreOpenContext.bunnei1-1/+7
- Used by Super Mario 3D All-Stars.
2020-09-21acc: Stub LoadOpenContextMorph1-0/+11
This is used in multiple games such as: - Clubhouse Games: 51 Worldwide Classics - Grandia HD Collection - XCOM 2 Collection - Baldur's Gate 1/2 - Dr Kawashima's Brain Training - Super Mario 3D All-Stars
2020-08-16common/fileutil: Convert namespace to Common::FSLioncash1-4/+4
Migrates a remaining common file over to the Common namespace, making it consistent with the rest of common files. This also allows for high-traffic FS related code to alias the filesystem function namespace as namespace FS = Common::FS; for more concise typing.
2020-08-03ipc: Allow all trivially copyable objects to be passed directly into WriteBuffer (#4465)David1-4/+2
* ipc: Allow all trivially copyable objects to be passed directly into WriteBuffer With the support of C++20, we can use concepts to deduce if a type is an STL container or not. * More agressive concept for stl containers * Add -fconcepts * Move to common namespace * Add Common::IsBaseOf
2020-06-28acc: ListOpenContextStoredUsers partial stubDavid Marcec1-0/+9
Needed by Baldur's Gate 1/2
2020-06-22account: Update function tables and add missing classes (#4145)VolcaEM1-0/+341
* account: Update function tables and add missing classes * clang-format * Add missing "public" * Add missing public again * Add missing final
2020-04-29acc: Return a unique value per account for GetAccountIdDavid Marcec1-5/+8
2020-04-29acc: Fix InitializeApplicationInfoDavid Marcec1-21/+14
We're not suppose to pop a u64, should just read the sent pid and check that
2020-04-28Updated comment to reflect ListQualifiedUsers betterDavid Marcec1-1/+3
2020-04-28account: ListQualifiedUsersDavid Marcec1-0/+9
Closes #2844
2020-01-04core: Initialize several structs that make use of Common::UUID.bunnei1-1/+1
2019-11-12service: Resolve sign conversion errorsLioncash1-3/+3
These are fairly trivial to resolve and most of the changes entail using RESULT_UNKNOWN over ResultCode(-1).
2019-09-22service/acc: Lower log severity from INFO to DEBUGFearlessTobi1-7/+7
According to ogniK, this should have always been Debug and not Info.
2019-07-03acc_su: Implement GetProfileEditor (205)Zach Hilman1-0/+11
Takes a UUID of a user and provides and interface that allows RW access to user data/settings.
2019-07-03acc: Implement IProfileEditor-specific commands 'Store' and 'StoreWithImage'Zach Hilman1-1/+73
Verified with IDA
2019-07-03acc: Add IProfileCommon for IProfile and IProfileEditorZach Hilman1-8/+31
Since 2/3 of the commands are shared, this is likely how its done on HW.
2019-06-28Addressed issuesDavid Marcec1-17/+10
2019-06-27Implemented InitializeApplicationInfo & InitializeApplicationInfoRestrictedDavid Marcec1-3/+77
InitializeApplicationInfoRestricted will need further implementation as it's checking for other user requirements about the game. As we're emulating, we're assuming the user owns the game so we skip these checks currently, implementation will need to be added further on
2019-06-21service/acc: Silence truncation warningsLioncash1-3/+3
The sanitizing function ensures that the returned type is always the correct type. This eliminates warnings without extra casts.
2019-06-17Addressed issuesDavid Marcec1-6/+11
2019-06-16CleanupDavid Marcec1-10/+13
2019-06-16Impl'd IsUserAccountSwitchLocked, SetAudioOutVolume, GetAudioOutVolume & Partial impl of GetAccumulatedSuspendedTickChangedEventDavid Marcec1-1/+28
IPC-100 was changed to InitializeApplicationInfoOld instead of InitializeApplicationInfo. IPC-150 makes an indentical call to IPC-100 however does extra processing. They should not have the same name as it's quite confusing to debug.
2019-06-07constants: Extract backup JPEG used by account servicesZach Hilman1-16/+4
2019-04-25common: Extract UUID to its own classZach Hilman1-9/+9
Since the Mii database uses UUIDs very similar to the Accounts database, it makes no sense to not share code between them.
2019-04-11service: Update service function tablesLioncash1-0/+4
Updates function tables based off information from SwitchBrew.
2018-11-26profile_manager: Save and load ProfileData from diskZach Hilman1-13/+4
The ProfileData is a 0x80-sized structure that stores various pieces of miscellaneous data for the account.
2018-11-26Changed logging to be "Log before execution", Added more error logging, all services should now log on some levelDavid Marcec1-2/+3
2018-11-14service/acc: Correct error case within TrySelectUserWithoutInteraction()Lioncash1-2/+4
empty() in this case will always return false, since the returned container is a std::array. Instead, check if all given users are invalid before returning the error code.
2018-11-07fixed spelling errorDavid Marcec1-1/+1
2018-11-07Added missing logDavid Marcec1-0/+1
2018-11-07Implement acc:TrySelectUserWithoutInteractionDavid Marcec1-0/+21
Needed for Shantae - Half-Genie Hero - Ultimate Edition!
2018-10-25service/acc: Move fallback image to file scopeLioncash1-14/+13
This is just flat data, so it doesn't really need to be in the function itself. This also allows deduplicating the constant for the backup size in GetImageSize().
2018-10-25service/acc: Silence compiler warningsLioncash1-5/+8
Silences compiler warnings related to truncation. This also introduces a small helper function to perform the clamping of the image size.
2018-10-25service/acc: Early return in failure case in LoadImage()Lioncash1-8/+8
Allows unindenting the other branch's code.
2018-10-24acc: Fix account UUID duplication errorZach Hilman1-2/+7
2018-10-24profile_manager: Load user icons, names, and UUIDs from system saveZach Hilman1-18/+13
2018-10-24acc: Load user images from config dirZach Hilman1-9/+45
2018-09-19Fixed GetAccountId stub, Added error code for OpenDirectory and added ActivateNpadWithRevisionDavid Marcec1-5/+4
With these, `Nintendo Entertainment System - Nintendo Switch Online` loads
2018-09-18Implemented GetImageSizeDavid Marcec1-1/+9
2018-08-21acc: Replace profile_manager include with a forward declarationLioncash1-1/+3
This is only used in a shared_ptr, so we can forward declare it.
2018-08-21acc: Simplify WriteBuffer call within LoadImage()Lioncash1-3/+3
We have an overload of WriteBuffer that accepts containers that satisfy the ContiguousContainer concept, which std::array does, so we only need to pass in the array itself.
2018-08-21acc: Correct IProfile's constructor initializer list orderLioncash1-1/+1
Arranges them in the order the members would be initialized
2018-08-21acc: Remove unused DEFAULT_USER_IDLioncash1-3/+0
This is no longer used, so it can be removed.
2018-08-11Removed un-needed count from ListOpenUsers and ListAllUsersDavid Marcec1-4/+2
2018-08-11Code cleanup for profile managerDavid Marcec1-2/+5
2018-08-11Added GetOpenUserCountDavid Marcec1-1/+2
2018-08-11Added missing ListAllUsers countDavid Marcec1-1/+2
2018-08-11First round of account changesDavid Marcec1-1/+1
2018-08-11Refactored profile manager sharingDavid Marcec1-8/+9
2018-08-11Added IsUserRegistrationRequestPermittedDavid Marcec1-0/+7
2018-08-08Inital pass of account backend implementationDavid Marcec1-8/+3
This commit verified working on puyo
2018-08-08GetProfileBase and GetProfileBaseAndData addedDavid Marcec1-43/+34
2018-08-08began initial implementation of "ProfileManager"David Marcec1-7/+10
2018-08-08Service/Account: stub LoadImage functionmailwl1-1/+22
2018-08-08Switched uuids from u128 to new UUID structDavid Marcec1-10/+12
2018-08-08acc: Stub GetUserCount. (#973)bunnei1-0/+7
- Used by Pokken Tournament DX.
2018-08-03Added ability to change username & language code in the settings ui. Added IProfile::Get and SET::GetLanguageCode for libnx tests (#851)David1-3/+27
2018-07-24core: Make converting constructors explicit where applicableLioncash1-1/+1
Avoids unwanted implicit conversions. Thankfully, given the large amount of cleanup in past PRs, only this tiny amount is left over to cover.
2018-07-20HLE/ACC: Stub IManagerForApplication::GetAccountId to return an error.Subv1-6/+8
And make IManagerForApplication::CheckAvailability always return false. Returning a bogus id from GetAccountId causes games to crash on boot. We should investigate this with a hwtest and either stub it properly or implement it.
2018-07-19HLE/ACC: Return an IProfile that is consistent with what was requested.Subv1-5/+15
The default username for now is "yuzu". We should eventually allow the creation of users in the emulator and have the ability to modify their parameters.
2018-07-19HLE/ACC: Change the default user id to be consistent with what we tell games on startup.Subv1-2/+1
In IApplicationFunctions::PopLaunchParameter we tell the games that they were launched as user id 1.
2018-07-19HLE/ACC: Write a single whole user id in ListAllUsers and ListOpenUsers.Subv1-4/+6
We only emulate a single user id for now.
2018-07-03Rename logging macro back to LOG_*James Rowe1-10/+10
2018-04-24acc: Move logging macros over to new fmt-compatible onesLioncash1-10/+10
2018-04-20service: Use nested namespace specifiers where applicableLioncash1-4/+2
Tidies up namespace declarations
2018-04-17Various service name fixes - part 2 (rebased) (#322)Hexagon121-0/+8
* Updated ACC with more service names * Updated SVC with more service names * Updated set with more service names * Updated sockets with more service names * Updated SPL with more service names * Updated time with more service names * Updated vi with more service names
2018-04-10Service/ACC: convert to module, add acc:aa, acc:su, acc:u1 servicesmailwl1-1/+129
2018-01-17acc_u0: Add IPC interface and stub InitializeApplicationInfo.bunnei1-5/+5
2018-01-13yuzu: Update license text to be consistent across project.bunnei1-1/+1
2017-12-29service: Add empty interface for pctl:a.bunnei1-7/+5
2017-12-28service: Add empty interface for aoc:u.bunnei1-0/+18