Line 2,543: |
Line 2,543: |
| == GetApplicationProgramIdFromHost == | | == GetApplicationProgramIdFromHost == |
| Takes a type-0x5 input buffer containing the [[Filesystem_services|ContentPath]]. Returns an u64 [[NCM_services#ProgramId|ProgramId]]. | | Takes a type-0x5 input buffer containing the [[Filesystem_services|ContentPath]]. Returns an u64 [[NCM_services#ProgramId|ProgramId]]. |
| + | |
| + | = acc:su = |
| + | This is "nn::account::IAccountServiceForAdministrator". |
| + | |
| + | [13.0.0+] This was moved from [[Account_services|account]]. |
| + | |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Cmd || Name || Notes |
| + | |- |
| + | | 0 || GetUserCount || |
| + | |- |
| + | | 1 || GetUserExistence || |
| + | |- |
| + | | 2 || ListAllUsers || |
| + | |- |
| + | | 3 || ListOpenUsers || |
| + | |- |
| + | | 4 || GetLastOpenedUser || |
| + | |- |
| + | | 5 || GetProfile || Returns an [[#IProfile]]. |
| + | |- |
| + | | 6 || [3.0.0+] GetProfileDigest || |
| + | |- |
| + | | 50 || [[#IsUserRegistrationRequestPermitted]] || |
| + | |- |
| + | | 51 || [[#TrySelectUserWithoutInteraction]] || |
| + | |- |
| + | | 60 || [5.0.0-5.1.0] ListOpenContextStoredUsers || |
| + | |- |
| + | | 99 || [6.0.0+] DebugActivateOpenContextRetention || No input, returns an [[#ISessionObject]]. |
| + | |- |
| + | | 100 || GetUserRegistrationNotifier || Returns an [[#INotifier]]. |
| + | |- |
| + | | 101 || GetUserStateChangeNotifier || Returns an [[#INotifier]]. |
| + | |- |
| + | | 102 || GetBaasAccountManagerForSystemService || Returns an [[#IManagerForSystemService]]. |
| + | |- |
| + | | 103 || GetBaasUserAvailabilityChangeNotifier || Returns an [[#INotifier]]. |
| + | |- |
| + | | 104 || GetProfileUpdateNotifier || Returns an [[#INotifier]]. |
| + | |- |
| + | | 105 || [4.0.0+] CheckNetworkServiceAvailabilityAsync || Returns an [[#IAsyncContext]]. |
| + | |- |
| + | | 106 || [9.0.0+] GetProfileSyncNotifier || |
| + | |- |
| + | | 110 || StoreSaveDataThumbnail || |
| + | |- |
| + | | 111 || ClearSaveDataThumbnail || |
| + | |- |
| + | | 112 || LoadSaveDataThumbnail || |
| + | |- |
| + | | 113 || [5.0.0+] GetSaveDataThumbnailExistence || |
| + | |- |
| + | | 120 || [10.0.0+] ListOpenUsersInApplication || |
| + | |- |
| + | | 130 || [6.0.0+] ActivateOpenContextRetention || Takes a total of 0x8-bytes of input, returns an [[#ISessionObject]]. |
| + | |- |
| + | | 140 || [6.0.0+] ListQualifiedUsers || |
| + | |- |
| + | | 150 || [10.0.0-10.2.0] AuthenticateApplicationAsync || |
| + | |- |
| + | | 151 || [12.0.0+] EnsureSignedDeviceIdentifierCacheForNintendoAccountAsync || |
| + | |- |
| + | | 152 || [12.0.0+] LoadSignedDeviceIdentifierCacheForNintendoAccount || |
| + | |- |
| + | | 190 || [1.0.0-9.2.0] GetUserLastOpenedApplication || |
| + | |- |
| + | | 191 || [7.0.0+] UpdateNotificationReceiverInfo ([5.0.0-5.1.0] ActivateOpenContextHolder) || |
| + | |- |
| + | | 200 || BeginUserRegistration || |
| + | |- |
| + | | 201 || CompleteUserRegistration || |
| + | |- |
| + | | 202 || CancelUserRegistration || |
| + | |- |
| + | | 203 || DeleteUser || |
| + | |- |
| + | | 204 || SetUserPosition || |
| + | |- |
| + | | 205 || GetProfileEditor || Takes an input userID and returns an [[#IProfileEditor]]. |
| + | |- |
| + | | 206 || CompleteUserRegistrationForcibly || |
| + | |- |
| + | | 210 || [3.0.0+] CreateFloatingRegistrationRequest || Returns an [[#IFloatingRegistrationRequest]]. |
| + | |- |
| + | | 211 || [8.0.0+] CreateProcedureToRegisterUserWithNintendoAccount || Takes a total of 0x4-bytes of input and a handle, returns an [[#IOAuthProcedureForUserRegistration]]. |
| + | |- |
| + | | 212 || [8.0.0+] ResumeProcedureToRegisterUserWithNintendoAccount || Takes a total of 0x14-bytes of input and a handle, returns an [[#IOAuthProcedureForUserRegistration]]. |
| + | |- |
| + | | 230 || AuthenticateServiceAsync || Returns an [[#IAsyncContext]]. |
| + | |- |
| + | | 250 || GetBaasAccountAdministrator || Returns an [[#IAdministrator]]. |
| + | |- |
| + | | 290 || ProxyProcedureForGuestLoginWithNintendoAccount || Returns an [[#IOAuthProcedureForExternalNsa]] (formerly [[#IOAuthProcedureForGuestLogin]] with [1.0.0-2.3.0]). |
| + | |- |
| + | | 291 || [3.0.0+] ProxyProcedureForFloatingRegistrationWithNintendoAccount || Returns an [[#IOAuthProcedureForExternalNsa]]. |
| + | |- |
| + | | 299 || SuspendBackgroundDaemon || Returns an [[#ISessionObject]]. |
| + | |- |
| + | | 997 || [3.0.0+] DebugInvalidateTokenCacheForUser || |
| + | |- |
| + | | 998 || DebugSetUserStateClose || |
| + | |- |
| + | | 999 || DebugSetUserStateOpen || |
| + | |} |
| + | |
| + | [10.0.0+] DebugSetUserStateClose/DebugSetUserStateOpen now takes an additional 8-bytes of input. |
| + | |
| + | == IsUserRegistrationRequestPermitted == |
| + | Takes a PID, an input u64 pid_reserved, and returns an output u8 bool. |
| + | |
| + | == TrySelectUserWithoutInteraction == |
| + | Takes an input u8 bool isNetworkServiceAccountRequired, returns an output Uid. |
| + | |
| + | == IManagerForSystemService == |
| + | This is "nn::account::baas::IManagerForSystemService". |
| + | |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Cmd || Name || Notes |
| + | |- |
| + | | 0 || CheckAvailability || |
| + | |- |
| + | | 1 || GetAccountId || |
| + | |- |
| + | | 2 || EnsureIdTokenCacheAsync || Returns an [[#IAsyncContext]]. |
| + | |- |
| + | | 3 || LoadIdTokenCache || |
| + | |- |
| + | | 100 || SetSystemProgramIdentification || |
| + | |- |
| + | | 101 || [7.0.0+] RefreshNotificationTokenAsync || |
| + | |- |
| + | | 110 || [4.0.0+] GetServiceEntryRequirementCache || |
| + | |- |
| + | | 111 || [4.0.0+] InvalidateServiceEntryRequirementCache || |
| + | |- |
| + | | 112 || [4.0.0-6.2.0] InvalidateTokenCache || |
| + | |- |
| + | | 113 || [6.1.0+] GetServiceEntryRequirementCacheForOnlinePlay || Takes a total of 0x8-bytes of input, returns a total of 0x4-bytes of output. |
| + | |- |
| + | | 120 || GetNintendoAccountId || |
| + | |- |
| + | | 121 || [9.0.0+] CalculateNintendoAccountAuthenticationFingerprint || |
| + | |- |
| + | | 130 || GetNintendoAccountUserResourceCache || |
| + | |- |
| + | | 131 || RefreshNintendoAccountUserResourceCacheAsync || Returns an [[#IAsyncContext]]. |
| + | |- |
| + | | 132 || RefreshNintendoAccountUserResourceCacheAsyncIfSecondsElapsed || Returns an [[#IAsyncContext]]. |
| + | |- |
| + | | 133 || [9.0.0+] GetNintendoAccountVerificationUrlCache || |
| + | |- |
| + | | 134 || [9.0.0+] RefreshNintendoAccountVerificationUrlCacheAsync || |
| + | |- |
| + | | 135 || [9.0.0+] RefreshNintendoAccountVerificationUrlCacheAsyncIfSecondsElapsed || |
| + | |- |
| + | | 140 || [5.0.0+] GetNetworkServiceLicenseCache || |
| + | |- |
| + | | 141 || [5.0.0+] RefreshNetworkServiceLicenseCacheAsync || Returns an [[#IAsyncContext]]. |
| + | |- |
| + | | 142 || [5.0.0+] RefreshNetworkServiceLicenseCacheAsyncIfSecondsElapsed || Returns an [[#IAsyncContext]]. |
| + | |- |
| + | | 150 || CreateAuthorizationRequest || Returns an [[#IAuthorizationRequest]]. |
| + | |} |
| + | |
| + | == IFloatingRegistrationRequest == |
| + | This is "nn::account::baas::IFloatingRegistrationRequest". |
| + | |
| + | Added with [3.0.0+]. |
| + | |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Cmd || Name || Notes |
| + | |- |
| + | | 0 || GetSessionId || |
| + | |- |
| + | | 12 || GetAccountId || |
| + | |- |
| + | | 13 || GetLinkedNintendoAccountId || |
| + | |- |
| + | | 14 || GetNickname || |
| + | |- |
| + | | 15 || GetProfileImage || |
| + | |- |
| + | | 21 || LoadIdTokenCache || |
| + | |- |
| + | | 100 || RegisterUser ([1.0.0-3.0.2] RegisterAsync) || [1.0.0-3.0.2] Used to return an [[#IAsyncContext]]. |
| + | |- |
| + | | 101 || RegisterUserWithUid ([1.0.0-3.0.2] RegisterWithUidAsync) || [1.0.0-3.0.2] Used to return an [[#IAsyncContext]]. |
| + | |- |
| + | | 102 || [4.0.0+] RegisterNetworkServiceAccountAsync || Returns an [[#IAsyncContext]]. |
| + | |- |
| + | | 103 || [4.0.0+] RegisterNetworkServiceAccountWithUidAsync || Returns an [[#IAsyncContext]]. |
| + | |- |
| + | | 110 || SetSystemProgramIdentification || |
| + | |- |
| + | | 111 || EnsureIdTokenCacheAsync || Returns an [[#IAsyncContext]]. |
| + | |} |
| + | |
| + | == IAdministrator == |
| + | This is "nn::account::baas::IAdministrator". |
| + | |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Cmd || Name || Notes |
| + | |- |
| + | | 0 || CheckAvailability || |
| + | |- |
| + | | 1 || GetAccountId || |
| + | |- |
| + | | 2 || EnsureIdTokenCacheAsync || Returns an [[#IAsyncContext]]. |
| + | |- |
| + | | 3 || LoadIdTokenCache || |
| + | |- |
| + | | 100 || SetSystemProgramIdentification || |
| + | |- |
| + | | 101 || [7.0.0+] RefreshNotificationTokenAsync |
| + | |- |
| + | | 110 || [4.0.0+] GetServiceEntryRequirementCache || |
| + | |- |
| + | | 111 || [4.0.0+] InvalidateServiceEntryRequirementCache || |
| + | |- |
| + | | [4.0.0-6.2.0] 112 || InvalidateTokenCache || |
| + | |- |
| + | | 113 || [6.1.0+] GetServiceEntryRequirementCacheForOnlinePlay || Takes a total of 0x8-bytes of input, returns a total of 0x4-bytes of output. |
| + | |- |
| + | | 120 || GetNintendoAccountId || |
| + | |- |
| + | | 121 || [9.0.0+] CalculateNintendoAccountAuthenticationFingerprint || |
| + | |- |
| + | | 130 || GetNintendoAccountUserResourceCache || |
| + | |- |
| + | | 131 || RefreshNintendoAccountUserResourceCacheAsync || Returns an [[#IAsyncContext]]. |
| + | |- |
| + | | 132 || RefreshNintendoAccountUserResourceCacheAsyncIfSecondsElapsed || Returns an [[#IAsyncContext]]. |
| + | |- |
| + | | 133 || [9.0.0+] GetNintendoAccountVerificationUrlCache || |
| + | |- |
| + | | 134 || [9.0.0+] RefreshNintendoAccountVerificationUrlCacheAsync || |
| + | |- |
| + | | 135 || [9.0.0+] RefreshNintendoAccountVerificationUrlCacheAsyncIfSecondsElapsed || |
| + | |- |
| + | | 140 || [5.0.0+] GetNetworkServiceLicenseCache || |
| + | |- |
| + | | 141 || [5.0.0+] RefreshNetworkServiceLicenseCacheAsync || |
| + | |- |
| + | | 142 || [5.0.0+] RefreshNetworkServiceLicenseCacheAsyncIfSecondsElapsed || |
| + | |- |
| + | | 150 || CreateAuthorizationRequest || Returns an [[#IAuthorizationRequest]]. |
| + | |- |
| + | | 200 || IsRegistered || |
| + | |- |
| + | | 201 || RegisterAsync || Returns an [[#IAsyncContext]]. |
| + | |- |
| + | | 202 || UnregisterAsync || Returns an [[#IAsyncContext]]. |
| + | |- |
| + | | 203 || DeleteRegistrationInfoLocally || |
| + | |- |
| + | | 220 || SynchronizeProfileAsync || Returns an [[#IAsyncContext]]. |
| + | |- |
| + | | 221 || UploadProfileAsync || Returns an [[#IAsyncContext]]. |
| + | |- |
| + | | 222 || SynchronizeProfileAsyncIfSecondsElapsed || Returns an [[#IAsyncContext]]. |
| + | |- |
| + | | 250 || IsLinkedWithNintendoAccount || |
| + | |- |
| + | | 251 || CreateProcedureToLinkWithNintendoAccount || Returns an [[#IOAuthProcedureForNintendoAccountLinkage]]. |
| + | |- |
| + | | 252 || ResumeProcedureToLinkWithNintendoAccount || Returns an [[#IOAuthProcedureForNintendoAccountLinkage]]. |
| + | |- |
| + | | 255 || CreateProcedureToUpdateLinkageStateOfNintendoAccount || Returns an [[#IOAuthProcedure]]. |
| + | |- |
| + | | 256 || ResumeProcedureToUpdateLinkageStateOfNintendoAccount || Returns an [[#IOAuthProcedure]]. |
| + | |- |
| + | | 260 || [3.0.0+] CreateProcedureToLinkNnidWithNintendoAccount || Returns an [[#IOAuthProcedure]]. |
| + | |- |
| + | | 261 || [3.0.0+] ResumeProcedureToLinkNnidWithNintendoAccount || Returns an [[#IOAuthProcedure]]. |
| + | |- |
| + | | 280 || ProxyProcedureToAcquireApplicationAuthorizationForNintendoAccount || Returns an [[#IOAuthProcedure]]. |
| + | |- |
| + | | 290 || [8.0.0+] GetRequestForNintendoAccountUserResourceView || |
| + | |- |
| + | | 300 || [6.0.0+] TryRecoverNintendoAccountUserStateAsync || Returns an [[#IAsyncContext]]. |
| + | |- |
| + | | 400 || [6.1.0+] IsServiceEntryRequirementCacheRefreshRequiredForOnlinePlay || Takes a total of 0x8-bytes of input, returns an output u8. |
| + | |- |
| + | | 401 || [6.1.0+] RefreshServiceEntryRequirementCacheForOnlinePlayAsync || Takes a total of 0x8-bytes of input, returns an [[#IAsyncContext]]. |
| + | |- |
| + | | 900 || [9.0.0+] GetAuthenticationInfoForWin || |
| + | |- |
| + | | 901 || [9.0.0+] ImportAsyncForWin || |
| + | |- |
| + | | 997 || DebugUnlinkNintendoAccountAsync || Returns an [[#IAsyncContext]]. |
| + | |- |
| + | | 998 || DebugSetAvailabilityErrorDetail || |
| + | |} |
| + | |
| + | == IAuthorizationRequest == |
| + | This is "nn::account::nas::IAuthorizationRequest". |
| + | |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Cmd || Name || Notes |
| + | |- |
| + | | 0 || GetSessionId || |
| + | |- |
| + | | 10 || InvokeWithoutInteractionAsync || Returns an [[#IAsyncContext]]. |
| + | |- |
| + | | 19 || IsAuthorized || |
| + | |- |
| + | | 20 || GetAuthorizationCode || |
| + | |- |
| + | | 21 || GetIdToken || |
| + | |- |
| + | | 22 || GetState || |
| + | |} |
| + | |
| + | == IOAuthProcedure == |
| + | This is "nn::account::http::IOAuthProcedure". |
| + | |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Cmd || Name || Notes |
| + | |- |
| + | | 0 || PrepareAsync || Returns an [[#IAsyncContext]]. |
| + | |- |
| + | | 1 || GetRequest || |
| + | |- |
| + | | 2 || ApplyResponse || |
| + | |- |
| + | | 3 || ApplyResponseAsync || Returns an [[#IAsyncContext]]. |
| + | |- |
| + | | 10 || Suspend || |
| + | |} |
| + | |
| + | == IOAuthProcedureForExternalNsa == |
| + | This is "nn::account::nas::IOAuthProcedureForExternalNsa". |
| + | |
| + | Added with [3.0.0+]. |
| + | |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Cmd || Name || Notes |
| + | |- |
| + | | 0 || PrepareAsync || Returns an [[#IAsyncContext]]. |
| + | |- |
| + | | 1 || GetRequest || |
| + | |- |
| + | | 2 || ApplyResponse || |
| + | |- |
| + | | 3 || ApplyResponseAsync || Returns an [[#IAsyncContext]]. |
| + | |- |
| + | | 10 || Suspend || |
| + | |- |
| + | | 100 || GetAccountId || |
| + | |- |
| + | | 101 || GetLinkedNintendoAccountId || |
| + | |- |
| + | | 102 || GetNickname || |
| + | |- |
| + | | 103 || GetProfileImage || |
| + | |} |
| + | |
| + | == IOAuthProcedureForNintendoAccountLinkage == |
| + | This is "nn::account::nas::IOAuthProcedureForNintendoAccountLinkage". |
| + | |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Cmd || Name || Notes |
| + | |- |
| + | | 0 || PrepareAsync || Returns an [[#IAsyncContext]]. |
| + | |- |
| + | | 1 || GetRequest || |
| + | |- |
| + | | 2 || ApplyResponse || |
| + | |- |
| + | | 3 || ApplyResponseAsync || Returns an [[#IAsyncContext]]. |
| + | |- |
| + | | 10 || Suspend || |
| + | |- |
| + | | 100 || GetRequestWithTheme || |
| + | |- |
| + | | 101 || IsNetworkServiceAccountReplaced || |
| + | |- |
| + | | [2.0.0-5.1.0] 199 || GetUrlForIntroductionOfExtraMembership || |
| + | |} |
| + | |
| + | == INotifier == |
| + | This is "nn::account::detail::INotifier". |
| + | |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Cmd || Name |
| + | |- |
| + | | 0 || GetSystemEvent |
| + | |} |
| + | |
| + | == IProfile == |
| + | This is "nn::account::profile::IProfile". |
| + | |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Cmd || Name |
| + | |- |
| + | | 0 || [[#Get]] |
| + | |- |
| + | | 1 || [[#GetBase]] |
| + | |- |
| + | | 10 || [[#GetImageSize]] |
| + | |- |
| + | | 11 || [[#LoadImage]] |
| + | |} |
| + | |
| + | === Get === |
| + | Takes an output type-0x1A buffer for [[#UserData]], returns an output [[#ProfileBase]]. |
| + | |
| + | === GetBase === |
| + | No input, returns an output [[#ProfileBase]]. |
| + | |
| + | === GetImageSize === |
| + | No input, returns an output u32 for the size of the image buffer. |
| + | |
| + | === LoadImage === |
| + | Takes an output type-0x6 buffer, returns the same output u32 as [[#GetImageSize]]. |
| + | |
| + | The output buffer contains the JPEG profile image icon. This is valid for both Miis and character icons. |
| + | |
| + | == IProfileEditor == |
| + | This is "nn::account::profile::IProfileEditor". |
| + | |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Cmd || Name |
| + | |- |
| + | | 0 || [[#Get]] |
| + | |- |
| + | | 1 || [[#GetBase]] |
| + | |- |
| + | | 10 || [[#GetImageSize]] |
| + | |- |
| + | | 11 || [[#LoadImage]] |
| + | |- |
| + | | 100 || [[#Store]] |
| + | |- |
| + | | 101 || [[#StoreWithImage]] |
| + | |} |
| + | |
| + | === Store === |
| + | Takes a [[#ProfileBase]] and an input type-0x19 buffer for [[#UserData]]. |
| + | |
| + | === StoreWithImage === |
| + | Takes a [[#ProfileBase]], an input type-0x19 buffer for [[#UserData]], and an input type-0x5 buffer. |
| + | |
| + | == IAsyncContext == |
| + | This is "nn::account::detail::IAsyncContext". |
| + | |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Cmd || Name |
| + | |- |
| + | | 0 || GetSystemEvent |
| + | |- |
| + | | 1 || Cancel |
| + | |- |
| + | | 2 || HasDone |
| + | |- |
| + | | 3 || GetResult |
| + | |} |
| + | |
| + | == ISessionObject == |
| + | This is "nn::account::detail::ISessionObject". |
| + | |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Cmd || Name |
| + | |- |
| + | | 999 || Dummy |
| + | |} |
| + | |
| + | = acc:u0 = |
| + | This is "nn::account::IAccountServiceForApplication". |
| + | |
| + | [13.0.0+] This was moved from [[Account_services|account]]. |
| + | |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Cmd || Name || Notes |
| + | |- |
| + | | 0 || GetUserCount || |
| + | |- |
| + | | 1 || GetUserExistence || |
| + | |- |
| + | | 2 || ListAllUsers || |
| + | |- |
| + | | 3 || ListOpenUsers || |
| + | |- |
| + | | 4 || GetLastOpenedUser || |
| + | |- |
| + | | 5 || GetProfile || Takes an input userID, returns an [[#IProfile]]. |
| + | |- |
| + | | 6 || [3.0.0+] GetProfileDigest || |
| + | |- |
| + | | 50 || [[#IsUserRegistrationRequestPermitted]] || |
| + | |- |
| + | | 51 || [[#TrySelectUserWithoutInteraction]] || |
| + | |- |
| + | | 60 || [5.0.0-5.1.0] ListOpenContextStoredUsers || |
| + | |- |
| + | | 99 || [6.0.0+] DebugActivateOpenContextRetention || No input, returns an [[#ISessionObject]]. |
| + | |- |
| + | | 100 || [[#InitializeApplicationInfoV0]] || |
| + | |- |
| + | | 101 || GetBaasAccountManagerForApplication || Takes an input userID, returns an [[#IManagerForApplication]]. |
| + | |- |
| + | | 102 || AuthenticateApplicationAsync || Returns an [[#IAsyncContext]]. |
| + | |- |
| + | | 103 || [4.0.0+] CheckNetworkServiceAvailabilityAsync || Returns an [[#IAsyncContext]]. |
| + | |- |
| + | | 110 || StoreSaveDataThumbnail || |
| + | |- |
| + | | 111 || ClearSaveDataThumbnail || |
| + | |- |
| + | | 120 || CreateGuestLoginRequest || Returns an [[#IGuestLoginRequest]]. |
| + | |- |
| + | | 130 || [5.0.0+] LoadOpenContext || |
| + | |- |
| + | | 131 || [6.0.0+] ListOpenContextStoredUsers || |
| + | |- |
| + | | 140 || [6.0.0+] [[#InitializeApplicationInfo]] || |
| + | |- |
| + | | 141 || [6.0.0+] ListQualifiedUsers || |
| + | |- |
| + | | 150 || [6.0.0+] IsUserAccountSwitchLocked || |
| + | |} |
| + | |
| + | InitializeApplicationInfo* is used by the user-process during service init. |
| + | |
| + | == InitializeApplicationInfoV0 == |
| + | Takes a PID and an input u64 pid_placeholder, no output. |
| + | |
| + | == InitializeApplicationInfo == |
| + | Takes a PID and an input u64 pid_placeholder, no output. |
| + | |
| + | == IGuestLoginRequest == |
| + | This is "nn::account::baas::IGuestLoginRequest". |
| + | |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Cmd || Name |
| + | |- |
| + | | 0 || GetSessionId |
| + | |- |
| + | | [1.0.0-2.3.0] 11 || |
| + | |- |
| + | | 12 || GetAccountId |
| + | |- |
| + | | 13 || GetLinkedNintendoAccountId |
| + | |- |
| + | | 14 || GetNickname |
| + | |- |
| + | | 15 || GetProfileImage |
| + | |- |
| + | | 21 || [3.0.0+] LoadIdTokenCache |
| + | |} |
| + | |
| + | == IManagerForApplication == |
| + | This is "nn::account::baas::IManagerForApplication". |
| + | |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Cmd || Name || Notes |
| + | |- |
| + | | 0 || CheckAvailability || |
| + | |- |
| + | | 1 || GetAccountId || |
| + | |- |
| + | | 2 || EnsureIdTokenCacheAsync || Returns an [[#IAsyncContext]]. |
| + | |- |
| + | | 3 || LoadIdTokenCache || |
| + | |- |
| + | | 130 || GetNintendoAccountUserResourceCacheForApplication || |
| + | |- |
| + | | 150 || CreateAuthorizationRequest || Returns an [[#IAuthorizationRequest]]. |
| + | |- |
| + | | 160 || [5.0.0+] StoreOpenContext || |
| + | |- |
| + | | 170 || [6.0.0+] LoadNetworkServiceLicenseKindAsync || No input, returns an [[#IAsyncNetworkServiceLicenseKindContext]]. |
| + | |} |
| + | |
| + | == IAsyncNetworkServiceLicenseKindContext == |
| + | This is "nn::account::detail::IAsyncNetworkServiceLicenseKindContext". |
| + | |
| + | This was added with [6.0.0+]. |
| + | |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Cmd || Name || Notes |
| + | |- |
| + | | 0 || GetSystemEvent || |
| + | |- |
| + | | 1 || Cancel || |
| + | |- |
| + | | 2 || HasDone || |
| + | |- |
| + | | 3 || GetResult || |
| + | |- |
| + | | 100 || GetNetworkServiceLicenseKind || |
| + | |} |
| + | |
| + | = acc:u1 = |
| + | This is "nn::account::IAccountServiceForSystemService". |
| + | |
| + | [13.0.0+] This was moved from [[Account_services|account]]. |
| + | |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Cmd || Name || Notes |
| + | |- |
| + | | 0 || GetUserCount || |
| + | |- |
| + | | 1 || GetUserExistence || |
| + | |- |
| + | | 2 || ListAllUsers || |
| + | |- |
| + | | 3 || ListOpenUsers || |
| + | |- |
| + | | 4 || GetLastOpenedUser || |
| + | |- |
| + | | 5 || GetProfile || Returns an [[#IProfile]]. |
| + | |- |
| + | | 6 || [3.0.0+] GetProfileDigest || |
| + | |- |
| + | | 50 || [[#IsUserRegistrationRequestPermitted]] || |
| + | |- |
| + | | 51 || [[#TrySelectUserWithoutInteraction]] || |
| + | |- |
| + | | 60 || [5.0.0-5.1.0] ListOpenContextStoredUsers || |
| + | |- |
| + | | 99 || [6.0.0+] DebugActivateOpenContextRetention || No input, returns an [[#ISessionObject]]. |
| + | |- |
| + | | 100 || GetUserRegistrationNotifier || Returns an [[#INotifier]]. |
| + | |- |
| + | | 101 || GetUserStateChangeNotifier || Returns an [[#INotifier]]. |
| + | |- |
| + | | 102 || GetBaasAccountManagerForSystemService || Returns an [[#IManagerForSystemService]]. |
| + | |- |
| + | | 103 || GetBaasUserAvailabilityChangeNotifier || Returns an [[#INotifier]]. |
| + | |- |
| + | | 104 || GetProfileUpdateNotifier || Returns an [[#INotifier]]. |
| + | |- |
| + | | 105 || [4.0.0+] CheckNetworkServiceAvailabilityAsync || Returns an [[#IAsyncContext]]. |
| + | |- |
| + | | 106 || [9.0.0+] GetProfileSyncNotifier || |
| + | |- |
| + | | 110 || StoreSaveDataThumbnail || |
| + | |- |
| + | | 111 || ClearSaveDataThumbnail || |
| + | |- |
| + | | 112 || LoadSaveDataThumbnail || |
| + | |- |
| + | | 113 || [5.0.0+] GetSaveDataThumbnailExistence || |
| + | |- |
| + | | 120 || [10.0.0+] ListOpenUsersInApplication || |
| + | |- |
| + | | 130 || [6.0.0+] ActivateOpenContextRetention || Takes a total of 0x8-bytes of input, returns an [[#ISessionObject]]. |
| + | |- |
| + | | 140 || [6.0.0+] ListQualifiedUsers || |
| + | |- |
| + | | 150 || [10.0.0-10.2.0] AuthenticateApplicationAsync || |
| + | |- |
| + | | 151 || [12.0.0+] EnsureSignedDeviceIdentifierCacheForNintendoAccountAsync || |
| + | |- |
| + | | 152 || [12.0.0+] LoadSignedDeviceIdentifierCacheForNintendoAccount || |
| + | |- |
| + | | 190 || [1.0.0-9.2.0] GetUserLastOpenedApplication || |
| + | |- |
| + | | 191 || [7.0.0+] UpdateNotificationReceiverInfo ([5.0.0-5.1.0] ActivateOpenContextHolder) || |
| + | |- |
| + | | 997 || [3.0.0+] DebugInvalidateTokenCacheForUser || |
| + | |- |
| + | | 998 || DebugSetUserStateClose || |
| + | |- |
| + | | 999 || DebugSetUserStateOpen || |
| + | |} |
| + | |
| + | [10.0.0+] DebugSetUserStateClose/DebugSetUserStateOpen now takes an additional 8-bytes of input. |
| + | |
| + | == IOAuthProcedureForUserRegistration == |
| + | This is "nn::account::nas::IOAuthProcedureForUserRegistration". |
| + | |
| + | This was added with [8.0.0+]. |
| + | |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Cmd || Name || Notes |
| + | |- |
| + | | 0 || PrepareAsync || No input, returns an [[#IAsyncContext]]. |
| + | |- |
| + | | 1 || GetRequest || |
| + | |- |
| + | | 2 || ApplyResponse || |
| + | |- |
| + | | 3 || ApplyResponseAsync || Takes a type-0x9 input buffer, returns an [[#IAsyncContext]]. |
| + | |- |
| + | | 10 || Suspend || |
| + | |- |
| + | | 100 || GetAccountId || |
| + | |- |
| + | | 101 || GetLinkedNintendoAccountId || |
| + | |- |
| + | | 102 || GetNickname || |
| + | |- |
| + | | 103 || GetProfileImage || |
| + | |- |
| + | | 110 || RegisterUserAsync || No input, returns an [[#IAsyncContext]]. |
| + | |- |
| + | | 111 || GetUid || |
| + | |} |
| + | |
| + | |
| + | |
| + | |
| + | |
| | | |
| = VersionListData = | | = VersionListData = |
Line 2,810: |
Line 3,535: |
| | 0x12 || 0x2E || | | | 0x12 || 0x2E || |
| |} | | |} |
| + | |
| + | = UserData = |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Offset || Size || Description |
| + | |- |
| + | | 0x0 || 0x4? || ? |
| + | |- |
| + | | 0x4 || 0x4? || Icon ID. 0 = Mii, the rest are character icon IDs. |
| + | |- |
| + | | 0x8 || 0x1? || Profile icon background color ID |
| + | |- |
| + | | 0x9 || 0x7 || ? |
| + | |- |
| + | | 0x10 || 0x10 || Some ID related to the Mii? All zeros when a character icon is used. |
| + | |- |
| + | | 0x20 || 0x60 || Usually zeros? |
| + | |} |
| + | |
| + | This is a 0x80-byte struct. |
| + | |
| + | = ProfileBase = |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Offset || Size || Description |
| + | |- |
| + | | 0x0 || 0x10 || userID |
| + | |- |
| + | | 0x10 || 0x8 || POSIX UTC timestamp, for last account edit. |
| + | |- |
| + | | 0x18 || 0x20 || UTF-8 Nickname. Official sw uses strncpy to copy this into another struct (<code>nn::account::Nickname</code>), with a NUL-byte written after the copied data. |
| + | |- |
| + | |} |
| + | |
| + | This is a 0x38-byte struct. |
| + | |
| + | = Uid = |
| + | This is "nn::account::Uid". This is a 0x10-byte struct. This contains 2 u64s for the UserId. |
| | | |
| [[Category:Services]] | | [[Category:Services]] |