* Copyright (c) Huawei Technologies Co., Ltd. 2025-2025. All rights reserved.
* ubs-engine is licensed under Mulan PSL v2.
* You can use this software according to the terms and conditions of the Mulan PSL v2.
* You may obtain a copy of Mulan PSL v2 at:
* http://license.coscl.org.cn/MulanPSL2
* THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
* EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
* MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
* See the Mulan PSL v2 for more details.
*/
#ifndef UBS_ERROR_H
#define UBS_ERROR_H
#include <stdint.h>
#ifdef __cplusplus
extern "C" {
#endif
typedef enum
{
UBS_SUCCESS = 0,
UBS_ERR_INVALID_ARG = 1,
UBS_ERR_OUT_OF_RANGE = 2,
UBS_ERR_NULL_POINTER = 3,
UBS_ERR_BUFFER_TOO_SMALL = 4,
UBS_ERR_OUT_OF_MEMORY = 10,
UBS_ERR_RESOURCE_BUSY = 11,
UBS_ERR_RESOURCE_EXHAUSTED = 12,
UBS_ERR_QUOTA_EXCEEDED = 13,
UBS_ERR_IPC_CONNECTION_FAILED = 20,
UBS_ERR_IPC_TIMEOUT = 21,
UBS_ERR_IPC_SERVICE_UNAVAILABLE = 22,
UBS_ERR_IPC_CONNECTION_FAILED_PATH_LENGTH = 23,
UBS_ERR_PERMISSION_DENIED = 30,
UBS_ERR_AUTHENTICATION_FAILED = 31,
UBS_ERR_ACCESS_DENIED = 32,
UBS_ERR_NOT_IMPLEMENTED = 40,
UBS_ERR_NOT_SUPPORTED = 41,
UBS_ERR_OPERATION_FAILED = 42,
UBS_ERR_TIMED_OUT = 43,
UBS_ERR_DAEMON_UNREACHABLE = 50,
UBS_ERR_DAEMON_BUSY = 51,
UBS_ERR_DAEMON_CRASHED = 52,
UBS_ERR_DAEMON_INTERNEL = 53,
UBS_ENGINE_ERR_OUT_OF_RANGE = 1000,
UBS_ENGINE_ERR_RESOURCE = 1001,
UBS_ENGINE_ERR_CONNECTION_FAILED = 1002,
UBS_ENGINE_ERR_AUTH_FAILED = 1003,
UBS_ENGINE_ERR_TIMEOUT = 1004,
UBS_ENGINE_ERR_INTERNAL = 1005,
UBS_ENGINE_ERR_EXISTED = 1006,
UBS_ENGINE_ERR_NOT_EXIST = 1007,
UBS_ENGINE_ERR_UDSINFO_MISMATCH = 1008,
UBS_ENGINE_ERR_IMPORT_ABSENT = 1009,
UBS_ENGINE_ERR_CREATING = 1010,
UBS_ENGINE_ERR_DELETING = 1011,
UBS_ENGINE_ERR_UNIMPORT_SUCCESS = 1012,
UBS_ENGINE_ERR_ALLOCATE = 1013,
UBS_ENGINE_ERR_SHM_NO_CREATE = 1014,
UBS_ENGINE_ERR_SHM_NO_ATTACH = 1015,
UBS_ENGINE_ERR_SHM_ATTACHING = 1016,
UBS_ENGINE_ERR_SHM_DETACHING = 1017,
UBS_ENGINE_ERR_LINK_NOT_ALLOWED = 1018,
UBS_ENGINE_ERR_LINK_NOT_EXIST = 1019,
UBS_ENGINE_ERR_SHM_NODE_EMPTY = 1020,
UBS_ENGINE_ERR_COM_FAILED = 1021,
UBS_ENGINE_ERR_FIND_SRC_NUMA = 1022,
UBS_ENGINE_ERR_SHM_DESTROYED = 1023,
UBS_ENGINE_ERR_SHM_ATTACH_USING = 1024,
UBS_ENGINE_ERR_SHM_AFFINITY_PARAMS_ABNORMAL = 1025,
UBS_ENGINE_ERR_NUMA_ID_IS_NOT_IN_SOCKET = 1026,
UBS_ENGINE_ERR_NODE_NOT_EXIST = 1027,
UBS_ENGINE_ERR_NODE_FAULT = 1028,
UBS_ENGINE_ERR_EXPORT_LEDGERING = 1029,
UBS_ENGINE_ERR_INVALID_PARAM = 1030,
UBS_ENGINE_ERR_CONNECT_UBM_FAILED = 1031,
UBS_ENGINE_ERR_URMA_QOS_EXIST = 1032,
UBS_ENGINE_ERR_URMA_QOS_NOT_EXISTED = 1033,
UBS_ENGINE_ERR_URMA_QUERY_PORTS_STATUS_FAILED = 1035,
UBS_ENGINE_ERR_URMA_GET_NODE_INFO_FAILED = 1036,
UBS_ENGINE_ERR_URMA_CREATE_DEV_FAILED = 1037,
UBS_ENGINE_ERR_URMA_DEV_NOT_INACTIVE = 1038,
UBS_ENGINE_ERR_URMA_DEV_NOT_EXIST = 1039,
UBS_ENGINE_ERR_URMA_DEV_NAME_INVALID = 1040,
UBS_ENGINE_ERR_IMPORT_LEDGERING = 1041,
} ubs_error_t;
const char* ubs_error_name(int32_t error);
const char* ubs_error_string(int32_t error);
#ifdef __cplusplus
}
#endif
#endif