1e41f4b71Sopenharmony_ci# OsAccount 2e41f4b71Sopenharmony_ci 3e41f4b71Sopenharmony_ci 4e41f4b71Sopenharmony_ci## Overview 5e41f4b71Sopenharmony_ci 6e41f4b71Sopenharmony_ciProvides APIs for managing system accounts. 7e41f4b71Sopenharmony_ci 8e41f4b71Sopenharmony_ci**Since**: 12 9e41f4b71Sopenharmony_ci 10e41f4b71Sopenharmony_ci 11e41f4b71Sopenharmony_ci## Summary 12e41f4b71Sopenharmony_ci 13e41f4b71Sopenharmony_ci 14e41f4b71Sopenharmony_ci### Files 15e41f4b71Sopenharmony_ci 16e41f4b71Sopenharmony_ci| Name | Description | 17e41f4b71Sopenharmony_ci| -------- | -------- | 18e41f4b71Sopenharmony_ci| [os_account.h](os__account_8h.md) | Defines the APIs for accessing and managing system account information. | 19e41f4b71Sopenharmony_ci| [os_account_common.h](os__account__common_8h.md) | Defines common types used in **OsAccount** APIs.| 20e41f4b71Sopenharmony_ci 21e41f4b71Sopenharmony_ci 22e41f4b71Sopenharmony_ci### Types 23e41f4b71Sopenharmony_ci 24e41f4b71Sopenharmony_ci| Name | Description | 25e41f4b71Sopenharmony_ci| -------- | -------- | 26e41f4b71Sopenharmony_ci| typedef enum [OsAccount_ErrCode](#osaccount_errcode-1) [OsAccount_ErrCode](#osaccount_errcode) | Defines an enum for error codes. | 27e41f4b71Sopenharmony_ci 28e41f4b71Sopenharmony_ci 29e41f4b71Sopenharmony_ci### Enums 30e41f4b71Sopenharmony_ci 31e41f4b71Sopenharmony_ci| Name | Description | 32e41f4b71Sopenharmony_ci| -------- | -------- | 33e41f4b71Sopenharmony_ci| [OsAccount_ErrCode](#osaccount_errcode-1) {<br>OS_ACCOUNT_ERR_OK = 0,<br>OS_ACCOUNT_ERR_INTERNAL_ERROR = 12300001,<br>OS_ACCOUNT_ERR_INVALID_PARAMETER = 12300002<br>} | Enumerates the error codes. | 34e41f4b71Sopenharmony_ci 35e41f4b71Sopenharmony_ci 36e41f4b71Sopenharmony_ci### Functions 37e41f4b71Sopenharmony_ci 38e41f4b71Sopenharmony_ci| Name | Description | 39e41f4b71Sopenharmony_ci| -------- | -------- | 40e41f4b71Sopenharmony_ci| [OsAccount_ErrCode](#osaccount_errcode) [OH_OsAccount_GetName](#oh_osaccount_getname) (char \*buffer, size_t buffer_size) | Obtains the name of the system account, to which the caller process belongs. | 41e41f4b71Sopenharmony_ci 42e41f4b71Sopenharmony_ci 43e41f4b71Sopenharmony_ci## Type Description 44e41f4b71Sopenharmony_ci 45e41f4b71Sopenharmony_ci 46e41f4b71Sopenharmony_ci### OsAccount_ErrCode 47e41f4b71Sopenharmony_ci 48e41f4b71Sopenharmony_ci``` 49e41f4b71Sopenharmony_citypedef enum OsAccount_ErrCode OsAccount_ErrCode 50e41f4b71Sopenharmony_ci``` 51e41f4b71Sopenharmony_ci 52e41f4b71Sopenharmony_ci**Description** 53e41f4b71Sopenharmony_ci 54e41f4b71Sopenharmony_ciDefines an enum for error codes. 55e41f4b71Sopenharmony_ci 56e41f4b71Sopenharmony_ci**Since**: 12 57e41f4b71Sopenharmony_ci 58e41f4b71Sopenharmony_ci 59e41f4b71Sopenharmony_ci## Enum Description 60e41f4b71Sopenharmony_ci 61e41f4b71Sopenharmony_ci 62e41f4b71Sopenharmony_ci### OsAccount_ErrCode 63e41f4b71Sopenharmony_ci 64e41f4b71Sopenharmony_ci``` 65e41f4b71Sopenharmony_cienum OsAccount_ErrCode 66e41f4b71Sopenharmony_ci``` 67e41f4b71Sopenharmony_ci 68e41f4b71Sopenharmony_ci**Description** 69e41f4b71Sopenharmony_ci 70e41f4b71Sopenharmony_ciEnumerates the error codes. 71e41f4b71Sopenharmony_ci 72e41f4b71Sopenharmony_ci**Since**: 12 73e41f4b71Sopenharmony_ci 74e41f4b71Sopenharmony_ci| Value | Description | 75e41f4b71Sopenharmony_ci| -------- | -------- | 76e41f4b71Sopenharmony_ci| OS_ACCOUNT_ERR_OK | Operation successful. | 77e41f4b71Sopenharmony_ci| OS_ACCOUNT_ERR_INTERNAL_ERROR | Internal error. | 78e41f4b71Sopenharmony_ci| OS_ACCOUNT_ERR_INVALID_PARAMETER | Invalid parameter. | 79e41f4b71Sopenharmony_ci 80e41f4b71Sopenharmony_ci 81e41f4b71Sopenharmony_ci## Function Description 82e41f4b71Sopenharmony_ci 83e41f4b71Sopenharmony_ci 84e41f4b71Sopenharmony_ci### OH_OsAccount_GetName() 85e41f4b71Sopenharmony_ci 86e41f4b71Sopenharmony_ci``` 87e41f4b71Sopenharmony_ciOsAccount_ErrCode OH_OsAccount_GetName (char *buffer, size_t buffer_size) 88e41f4b71Sopenharmony_ci``` 89e41f4b71Sopenharmony_ci 90e41f4b71Sopenharmony_ci**Description** 91e41f4b71Sopenharmony_ci 92e41f4b71Sopenharmony_ciObtains the name of the system account, to which the caller process belongs. 93e41f4b71Sopenharmony_ci 94e41f4b71Sopenharmony_ci**System capability**: SystemCapability.Account.OsAccount 95e41f4b71Sopenharmony_ci 96e41f4b71Sopenharmony_ci**Since**: 12 97e41f4b71Sopenharmony_ci 98e41f4b71Sopenharmony_ci**Parameters** 99e41f4b71Sopenharmony_ci 100e41f4b71Sopenharmony_ci| Name | Description | 101e41f4b71Sopenharmony_ci| -------- | -------- | 102e41f4b71Sopenharmony_ci| buffer | Pointer to the system account name, which including the name of the maximum length (**LOGIN_NAME_MAX**) and the end character ('\0'). | 103e41f4b71Sopenharmony_ci| buffer_size | Length of the system account name. | 104e41f4b71Sopenharmony_ci 105e41f4b71Sopenharmony_ci**Returns** 106e41f4b71Sopenharmony_ci 107e41f4b71Sopenharmony_ciReturns **OS_ACCOUNT_ERR_OK** if the operation is successful. 108e41f4b71Sopenharmony_ci 109e41f4b71Sopenharmony_ciReturns **OS_ACCOUNT_ERR_INTERNAL_ERROR** if an internal error occurs. 110e41f4b71Sopenharmony_ci 111e41f4b71Sopenharmony_ciReturns **OS_ACCOUNT_ERR_INVALID_PARAMETER** if **buffer** is a null pointer or the name (excluding the end character ('\0')) is greater than or equal to **buffer_size**.