1 /*
2  * Copyright (c) 2023-2024 Huawei Device Co., Ltd.
3  * Licensed under the Apache License, Version 2.0 (the "License");
4  * you may not use this file except in compliance with the License.
5  * You may obtain a copy of the License at
6  *
7  *     http://www.apache.org/licenses/LICENSE-2.0
8  *
9  * Unless required by applicable law or agreed to in writing, software
10  * distributed under the License is distributed on an "AS IS" BASIS,
11  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12  * See the License for the specific language governing permissions and
13  * limitations under the License.
14  */
15 
16 #ifndef OS_ACCOUNT_FRAMEWORK_ACCOUNTMGR_SERVICE_IPC_INTERFACE_CODE_H
17 #define OS_ACCOUNT_FRAMEWORK_ACCOUNTMGR_SERVICE_IPC_INTERFACE_CODE_H
18 
19 #include <cstdint>
20 
21 /* SAID: 200 */
22 namespace OHOS {
23 namespace AccountSA {
24 enum class AccountMgrInterfaceCode : uint32_t {
25     UPDATE_OHOS_ACCOUNT_INFO = 1,
26     QUERY_OHOS_ACCOUNT_INFO = 2,
27     QUERY_OHOS_ACCOUNT_QUIT_TIPS = 3,
28     QUERY_OHOS_ACCOUNT_INFO_BY_USER_ID = 4,
29     SET_OHOS_ACCOUNT_INFO = 5,
30     GET_OHOS_ACCOUNT_INFO = 6,
31     GET_OHOS_ACCOUNT_INFO_BY_USER_ID = 7,
32     SET_OHOS_ACCOUNT_INFO_BY_USER_ID = 8,
33     SUBSCRIBE_DISTRIBUTED_ACCOUNT_EVENT = 9,
34     UNSUBSCRIBE_DISTRIBUTED_ACCOUNT_EVENT = 10,
35     QUERY_DISTRIBUTE_VIRTUAL_DEVICE_ID = 11,
36     QUERY_DEVICE_ACCOUNT_ID = 104,
37     GET_APP_ACCOUNT_SERVICE = 105,
38     GET_OS_ACCOUNT_SERVICE = 106,
39     GET_ACCOUNT_IAM_SERVICE = 107,
40     GET_DOMAIN_ACCOUNT_SERVICE = 108,
41 };
42 
43 enum class OsAccountInterfaceCode : uint32_t {
44     CREATE_OS_ACCOUNT = 0,
45     CREATE_OS_ACCOUNT_WITH_SHORT_NAME,
46     CREATE_OS_ACCOUNT_WITH_FULL_INFO,
47     UPDATE_OS_ACCOUNT_WITH_FULL_INFO,
48     CREATE_OS_ACCOUNT_FOR_DOMAIN,
49     REMOVE_OS_ACCOUNT,
50     IS_OS_ACCOUNT_EXISTS,
51     IS_OS_ACCOUNT_ACTIVED,
52     IS_OS_ACCOUNT_CONSTRAINT_ENABLE,
53     CHECK_OS_ACCOUNT_CONSTRAINT_ENABLED,
54     IS_OS_ACCOUNT_VERIFIED,
55     GET_CREATED_OS_ACCOUNT_COUNT,
56     GET_OS_ACCOUNT_LOCAL_ID_FROM_PROCESS,
57     IS_MAIN_OS_ACCOUNT,
58     GET_OS_ACCOUNT_LOCAL_ID_FROM_DOMAIN,
59     QUERY_MAX_OS_ACCOUNT_NUMBER,
60     GET_OS_ACCOUNT_ALL_CONSTRAINTS,
61     QUERY_ALL_CREATED_OS_ACCOUNTS,
62     QUERY_CURRENT_OS_ACCOUNT,
63     QUERY_OS_ACCOUNT_BY_ID,
64     GET_OS_ACCOUNT_TYPE_FROM_PROCESS,
65     GET_OS_ACCOUNT_TYPE,
66     GET_OS_ACCOUNT_PROFILE_PHOTO,
67     IS_MULTI_OS_ACCOUNT_ENABLE,
68     SET_OS_ACCOUNT_NAME,
69     SET_OS_ACCOUNT_CONSTRAINTS,
70     SET_OS_ACCOUNT_PROFILE_PHOTO,
71     ACTIVATE_OS_ACCOUNT,
72     DEACTIVATE_OS_ACCOUNT,
73     DEACTIVATE_ALL_OS_ACCOUNTS,
74     START_OS_ACCOUNT,
75     SUBSCRIBE_OS_ACCOUNT,
76     UNSUBSCRIBE_OS_ACCOUNT,
77     GET_OS_ACCOUNT_LOCAL_ID_FOR_SERIAL_NUMBER,
78     GET_SERIAL_NUMBER_FOR_OS_ACCOUNT,
79     GET_OS_ACCOUNT_SWITCH_MOD,
80     IS_CURRENT_OS_ACCOUNT_VERIFIED,
81     IS_OS_ACCOUNT_COMPLETED,
82     SET_CURRENT_OS_ACCOUNT_IS_VERIFIED,
83     SET_OS_ACCOUNT_IS_VERIFIED,
84     DUMP_STATE,
85     GET_CREATED_OS_ACCOUNT_NUM_FROM_DATABASE,
86     GET_SERIAL_NUM_FROM_DATABASE,
87     GET_MAX_ALLOW_CREATE_ID_FROM_DATABASE,
88     GET_OS_ACCOUNT_FROM_DATABASE,
89     GET_OS_ACCOUNT_LIST_FROM_DATABASE,
90     QUERY_ACTIVE_OS_ACCOUNT_IDS,
91     QUERY_OS_ACCOUNT_CONSTRAINT_SOURCE_TYPES,
92     SET_GLOBAL_OS_ACCOUNT_CONSTRAINTS,
93     SET_SPECIFIC_OS_ACCOUNT_CONSTRAINTS,
94     SET_DEFAULT_ACTIVATED_OS_ACCOUNT,
95     GET_DEFAULT_ACTIVATED_OS_ACCOUNT,
96     GET_OS_ACCOUNT_SHORT_NAME,
97     GET_OS_ACCOUNT_NAME,
98     GET_OS_ACCOUNT_SHORT_NAME_BY_ID,
99     IS_OS_ACCOUNT_FOREGROUND,
100     GET_FOREGROUND_OS_ACCOUNT_LOCAL_ID,
101     GET_FOREGROUND_OS_ACCOUNTS,
102     GET_BACKGROUND_OS_ACCOUNT_LOCAL_IDS,
103     SET_OS_ACCOUNT_TO_BE_REMOVED,
104     QUERY_MAX_LOGGED_IN_OS_ACCOUNT_NUMBER,
105     IS_OS_ACCOUNT_DEACTIVATING
106 };
107 
108 enum class AppAccountInterfaceCode : uint32_t {
109     ADD_ACCOUNT = 0,
110     ADD_ACCOUNT_IMPLICITLY,
111     DELETE_ACCOUNT,
112     GET_ACCOUNT_EXTRA_INFO,
113     SET_ACCOUNT_EXTRA_INFO,
114     ENABLE_APP_ACCESS,
115     DISABLE_APP_ACCESS,
116     SET_APP_ACCESS,
117     CHECK_APP_ACCOUNT_SYNC_ENABLE,
118     SET_APP_ACCOUNT_SYNC_ENABLE,
119     GET_ASSOCIATED_DATA,
120     SET_ASSOCIATED_DATA,
121     GET_ACCOUNT_CREDENTIAL,
122     SET_ACCOUNT_CREDENTIAL,
123     AUTHENTICATE,
124     GET_OAUTH_TOKEN,
125     GET_AUTH_TOKEN,
126     SET_OAUTH_TOKEN,
127     DELETE_OAUTH_TOKEN,
128     DELETE_AUTH_TOKEN,
129     SET_OAUTH_TOKEN_VISIBILITY,
130     SET_AUTH_TOKEN_VISIBILITY,
131     CHECK_OAUTH_TOKEN_VISIBILITY,
132     CHECK_AUTH_TOKEN_VISIBILITY,
133     GET_AUTHENTICATOR_INFO,
134     GET_ALL_OAUTH_TOKENS,
135     GET_OAUTH_LIST,
136     GET_AUTH_LIST,
137     GET_AUTHENTICATOR_CALLBACK,
138     CLEAR_OAUTH_TOKEN,
139     GET_ALL_ACCOUNTS,
140     GET_ALL_ACCESSIBLE_ACCOUNTS,
141     QUERY_ALL_ACCESSIBLE_ACCOUNTS,
142     SUBSCRIBE_ACCOUNT,
143     UNSUBSCRIBE_ACCOUNT,
144     CHECK_APP_ACCESS,
145     DELETE_ACCOUNT_CREDENTIAL,
146     SELECT_ACCOUNTS_BY_OPTIONS,
147     VERIFY_CREDENTIAL,
148     CHECK_ACCOUNT_LABELS,
149     SET_AUTHENTICATOR_PROPERTIES,
150     CREATE_ACCOUNT,
151     CREATE_ACCOUNT_IMPLICITLY,
152 };
153 
154 enum class AccountIAMInterfaceCode : uint32_t {
155     OPEN_SESSION = 0,
156     CLOSE_SESSION,
157     ADD_CREDENTIAL,
158     UPDATE_CREDENTIAL,
159     CANCEL,
160     DEL_CRED,
161     DEL_USER,
162     GET_CREDENTIAL_INFO,
163     PREPARE_REMOTE_AUTH,
164     AUTH_USER,
165     CANCEL_AUTH,
166     GET_AVAILABLE_STATUS,
167     GET_PROPERTY,
168     GET_PROPERTY_BY_CREDENTIAL_ID,
169     SET_PROPERTY,
170     GET_ENROLLED_ID,
171     GET_ACCOUNT_STATE,
172 };
173 
174 enum class DomainAccountInterfaceCode : uint32_t {
175     REGISTER_PLUGIN = 0,
176     UNREGISTER_PLUGIN = 1,
177     DOMAIN_AUTH = 2,
178     DOMAIN_AUTH_USER = 3,
179     DOMAIN_AUTH_WITH_POPUP = 4,
180     DOMAIN_HAS_DOMAIN_ACCOUNT = 5,
181     DOMAIN_UPDATE_ACCOUNT_TOKEN = 6,
182     DOMAIN_GET_ACCESS_TOKEN = 7,
183     DOMAIN_ACCOUNT_STATUS_ENQUIRY = 8,
184     DOMAIN_ACCOUNT_STATUS_LISTENER_REGISTER = 9,
185     DOMAIN_ACCOUNT_STATUS_LISTENER_UNREGISTER = 10,
186     DOMAIN_IS_AUTHENTICATION_EXPIRED,
187     DOMAIN_SET_ACCOUNT_POLICY,
188     DOMAIN_GET_ACCOUNT_INFO,
189     ADD_SERVER_CONFIG,
190     REMOVE_SERVER_CONFIG,
191     GET_ACCOUNT_SERVER_CONFIG,
192     DOMAIN_UPDATE_ACCOUNT_INFO,
193 };
194 
195 enum class DomainAccountPluginInterfaceCode : int32_t {
196     DOMAIN_PLUGIN_AUTH = 0,
197     DOMAIN_PLUGIN_GET_AUTH_STATUS_INFO = 1,
198     DOMAIN_PLUGIN_GET_DOMAIN_ACCOUNT_INFO = 2,
199     DOMAIN_PLUGIN_ON_ACCOUNT_BOUND = 3,
200     DOMAIN_PLUGIN_ON_ACCOUNT_UNBOUND = 4,
201     DOMAIN_PLUGIN_IS_ACCOUNT_TOKEN_VALID = 5,
202     DOMAIN_PLUGIN_GET_ACCESS_TOKEN = 6,
203 };
204 
205 enum class DomainAccountCallbackInterfaceCode : uint32_t {
206     DOMAIN_ACCOUNT_CALLBACK_ON_RESULT = 0,
207 };
208 
209 enum class OsAccountEventInterfaceCode : uint32_t {
210     ACCOUNT_CHANGED = 0,
211     ACCOUNT_SWITCHED = 1,
212 };
213 
214 enum class DistributedAccountEventInterfaceCode : uint32_t {
215     ON_ACCOUNT_CHANGED = 0,
216 };
217 
218 enum class AppAccountAuthorizationExtensionCallbackInterfaceCode : uint32_t {
219     ON_RESULT = 0,
220     ON_REQUEST_REDIRECTED,
221 };
222 
223 enum class AppAccountAuthenticatorCallbackInterfaceCode : uint32_t {
224     ACCOUNT_RESULT = 0,
225     ACCOUNT_REQUEST_REDIRECTED,
226     ACCOUNT_REQUEST_CONTINUED,
227 };
228 
229 enum class AppAccountEventInterfaceCode : uint32_t {
230     ACCOUNT_CHANGED = 0,
231 };
232 
233 enum class AppAccountAuthenticatorInterfaceCode : uint32_t {
234     ADD_ACCOUNT_IMPLICITLY = 0,
235     AUTHENTICATE,
236     VERIFY_CREDENTIAL,
237     CHECK_ACCOUNT_LABELS,
238     SET_PROPERTIES,
239     IS_ACCOUNT_REMOVABLE,
240     CREATE_ACCOUNT_IMPLICITLY,
241     AUTH,
242 };
243 
244 enum class AppAccountAuthorizationExtensionInterfaceCode : uint32_t {
245     START_AUTHENTICATION = 0,
246 };
247 
248 enum class AccountIAMCallbackInterfaceCode : uint32_t {
249     ON_ACQUIRE_INFO = 0,
250     ON_RESULT,
251 };
252 
253 enum class IDMCallbackInterfaceCode : uint32_t {
254     ON_ACQUIRE_INFO = 0,
255     ON_RESULT,
256 };
257 
258 enum class GetCredInfoCallbackInterfaceCode : uint32_t {
259     ON_CREDENTIAL_INFO = 0,
260 };
261 
262 enum class GetSetPropCallbackInterfaceCode : uint32_t {
263     ON_RESULT = 0,
264 };
265 
266 enum class GetEnrolledIdCallbackInterfaceCode : uint32_t {
267     ON_ENROLLED_ID = 0,
268 };
269 
270 enum class PreRemoteAuthCallbackInterfaceCode : uint32_t {
271     ON_RESULT = 0,
272 };
273 }  // namespace AccountSA
274 }  // namespace OHOS
275 #endif // OS_ACCOUNT_FRAMEWORK_ACCOUNTMGR_SERVICE_IPC_INTERFACE_CODE_H
276