* 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 UBSE_ERROR_H
#define UBSE_ERROR_H
#include <cstdint>
* UBSE错误码转换规则:
* 小于10000的错误码为对外暴露的错误码,新增需同步至ubs_error.h
* 内部错误码从10000起始,对外统一返回内部错误。
*/
#define UBSE_INTERNAL_ERROR_BASE 10000
#define UBSE_ERROR_DEF(n) (uint32_t(n))
#define UBSE_INTERNAL_ERROR_DEF(n) (uint32_t(UBSE_INTERNAL_ERROR_BASE + (n)))
#define UBSE_OK UBSE_ERROR_DEF(0)
#define UBSE_ERR_INVALID_ARG UBSE_ERROR_DEF(1)
#define UBSE_ERR_BUFFER_TOO_SMALL UBSE_ERROR_DEF(4)
#define UBSE_ERR_OUT_OF_MEMORY UBSE_ERROR_DEF(10)
#define UBSE_ERR_RESOURCE_BUSY UBSE_ERROR_DEF(11)
#define UBSE_ERR_RESOURCE_EXHAUSTED UBSE_ERROR_DEF(12)
#define UBSE_ERR_QUOTA_EXCEEDED UBSE_ERROR_DEF(13)
#define UBSE_ERR_IPC_CONNECTION_FAILED UBSE_ERROR_DEF(20)
#define UBSE_ERR_IPC_TIMEOUT UBSE_ERROR_DEF(21)
#define UBSE_ERR_IPC_SERVICE_UNAVAILABLE UBSE_ERROR_DEF(22)
#define UBSE_ERR_IPC_CONNECTION_FAILED_PATH_LENGTH UBSE_ERROR_DEF(23)
#define UBSE_ERR_PERMISSION_DENIED UBSE_ERROR_DEF(30)
#define UBSE_ERR_AUTHENTICATION_FAILED UBSE_ERROR_DEF(31)
#define UBSE_ERR_ACCESS_DENIED UBSE_ERROR_DEF(32)
#define UBSE_ERR_NOT_IMPLEMENTED UBSE_ERROR_DEF(40)
#define UBSE_ERR_NOT_SUPPORTED UBSE_ERROR_DEF(41)
#define UBSE_ERR_OPERATION_FAILED UBSE_ERROR_DEF(42)
#define UBSE_ERR_TIMED_OUT UBSE_ERROR_DEF(43)
#define UBSE_ERR_DAEMON_UNREACHABLE UBSE_ERROR_DEF(50)
#define UBSE_ERR_DAEMON_BUSY UBSE_ERROR_DEF(51)
#define UBSE_ERR_DAEMON_CRASHED UBSE_ERROR_DEF(52)
#define UBSE_ERR_DAEMON_INTERNEL UBSE_ERROR_DEF(53)
#define UBSE_ERR_OUT_OF_RANGE UBSE_ERROR_DEF(1000)
#define UBSE_ERR_RESOURCE UBSE_ERROR_DEF(1001)
#define UBSE_ERR_CONNECTION_FAILED UBSE_ERROR_DEF(1002)
#define UBSE_ERR_AUTH_FAILED UBSE_ERROR_DEF(1003)
#define UBSE_ERR_TIMEOUT UBSE_ERROR_DEF(1004)
#define UBSE_ERR_INTERNAL UBSE_ERROR_DEF(1005)
#define UBSE_ERR_EXISTED UBSE_ERROR_DEF(1006)
#define UBSE_ERR_NOT_EXIST UBSE_ERROR_DEF(1007)
#define UBSE_ERR_UDSINFO_MISMATCH UBSE_ERROR_DEF(1008)
#define UBSE_ERR_IMPORT_ABSENT UBSE_ERROR_DEF(1009)
#define UBSE_ERR_CREATING UBSE_ERROR_DEF(1010)
#define UBSE_ERR_DELETING UBSE_ERROR_DEF(1011)
#define UBSE_ERR_UNIMPORT_SUCCESS \
UBSE_ERROR_DEF(1012)
#define UBSE_ERR_ALLOCATE UBSE_ERROR_DEF(1013)
#define UBSE_ERR_SHM_NO_CREATE UBSE_ERROR_DEF(1014)
#define UBSE_ERR_SHM_NO_ATTACH UBSE_ERROR_DEF(1015)
#define UBSE_ERR_SHM_ATTACHING UBSE_ERROR_DEF(1016)
#define UBSE_ERR_SHM_DETACHING UBSE_ERROR_DEF(1017)
#define UBSE_ERR_LINK_NOT_ALLOWED UBSE_ERROR_DEF(1018)
#define UBSE_ERR_LINK_NOT_EXIST UBSE_ERROR_DEF(1019)
#define UBSE_ERR_SHM_NODE_EMPTY UBSE_ERROR_DEF(1020)
#define UBSE_ERR_COM_FAILED UBSE_ERROR_DEF(1021)
#define UBSE_ERR_FIND_SRC_NUMA UBSE_ERROR_DEF(1022)
#define UBSE_ERR_SHM_DESTROYED UBSE_ERROR_DEF(1023)
#define UBSE_ERR_SHM_ATTACH_USING UBSE_ERROR_DEF(1024)
#define UBSE_ERR_SHM_AFFINITY_PARAMS_ABNORMAL UBSE_ERROR_DEF(1025)
#define UBSE_ERR_NUMA_ID_IS_NOT_IN_SOCKET UBSE_ERROR_DEF(1026)
#define UBSE_ERR_NODE_NOT_EXIST UBSE_ERROR_DEF(1027)
#define UBSE_ERR_NODE_FAULT UBSE_ERROR_DEF(1028)
#define UBSE_ENGINE_ERR_EXPORT_LEDGERING UBSE_ERROR_DEF(1029)
#define UBSE_ENGINE_ERR_IMPORT_LEDGERING UBSE_ERROR_DEF(1041)
#define UBSE_ERR_NODE_NOT_FOUND UBSE_ERROR_DEF(1100)
#define UBSE_ERR_NODE_UNREACHABLE UBSE_ERROR_DEF(1101)
#define UBSE_ERR_NODE_NOT_ACTIVE UBSE_ERROR_DEF(1102)
#define UBSE_ERR_NODE_NOT_RESPONDING UBSE_ERROR_DEF(1103)
#define UBSE_ERROR UBSE_INTERNAL_ERROR_DEF(0)
#define UBSE_ERROR_NULLPTR UBSE_INTERNAL_ERROR_DEF(1)
#define UBSE_ERROR_EMPTY UBSE_INTERNAL_ERROR_DEF(2)
#define UBSE_ERROR_INVAL UBSE_INTERNAL_ERROR_DEF(3)
#define UBSE_ERROR_NOMEM UBSE_INTERNAL_ERROR_DEF(4)
#define UBSE_ERROR_ACCES UBSE_INTERNAL_ERROR_DEF(5)
#define UBSE_ERROR_FILE_EXIST UBSE_INTERNAL_ERROR_DEF(6)
#define UBSE_ERROR_FILE_NOT_EXIST UBSE_INTERNAL_ERROR_DEF(7)
#define UBSE_ERROR_NO_ENOUGH_SPACE UBSE_INTERNAL_ERROR_DEF(8)
#define UBSE_ERROR_AGAIN UBSE_INTERNAL_ERROR_DEF(9)
#define UBSE_ERROR_IO UBSE_INTERNAL_ERROR_DEF(10)
#define UBSE_ERROR_CONF_INVALID UBSE_INTERNAL_ERROR_DEF(11)
#define UBSE_ERROR_MODULE_LOAD_FAILED UBSE_INTERNAL_ERROR_DEF(12)
#define UBSE_ERROR_PARSE_ARGS_FAILED UBSE_INTERNAL_ERROR_DEF(13)
#define UBSE_ERROR_SERIALIZE_FAILED UBSE_INTERNAL_ERROR_DEF(14)
#define UBSE_ERROR_DESERIALIZE_FAILED UBSE_INTERNAL_ERROR_DEF(15)
#define UBSE_COM_ERROR_CHANNEL_NULL UBSE_INTERNAL_ERROR_DEF(200)
#define UBSE_COM_ERROR_MESSAGE_INVALID UBSE_INTERNAL_ERROR_DEF(201)
#define UBSE_COM_ERROR_MESSAGE_CHECK_SIZE_FAIL UBSE_INTERNAL_ERROR_DEF(202)
#define UBSE_COM_ERROR_MESSAGE_INVALID_OP_CODE UBSE_INTERNAL_ERROR_DEF(203)
#define UBSE_COM_ERROR_ENGINE_CREATE_FAIL UBSE_INTERNAL_ERROR_DEF(204)
#define UBSE_COM_ERROR_CHANNEL_NOT_FOUND UBSE_INTERNAL_ERROR_DEF(205)
#define UBSE_COM_ERROR_GET_PEER_IP_PORT_FAIL UBSE_INTERNAL_ERROR_DEF(206)
#define UBSE_COM_ERROR_ENGINE_NOT_INIT UBSE_INTERNAL_ERROR_DEF(207)
#define UBSE_COM_ERROR_SYNC_CALL_FAIL UBSE_INTERNAL_ERROR_DEF(208)
#define UBSE_COM_ERROR_ASYNC_CALL_FAIL UBSE_INTERNAL_ERROR_DEF(209)
#define UBSE_COM_ERROR_REPLY_FAIL UBSE_INTERNAL_ERROR_DEF(210)
#define UBSE_COM_ERROR_NEW_NET_CALLBACK_FAIL UBSE_INTERNAL_ERROR_DEF(211)
#define UBSE_COM_ERROR_GET_ENGINE_FAIL UBSE_INTERNAL_ERROR_DEF(212)
#define UBSE_COM_ERROR_RESOURCE_TEMPORARILY_UNAVAILABLE UBSE_INTERNAL_ERROR_DEF(213)
#define UBSE_CONF_ERROR_KEY_OFFSETDIR_OPEN_ERROR UBSE_INTERNAL_ERROR_DEF(300)
#define UBSE_CONF_ERROR_KEY_OFFSETFILE_OPEN_ERROR UBSE_INTERNAL_ERROR_DEF(301)
#define UBSE_CONF_ERROR_KEY_OFFSETDIR_TOO_DEEP UBSE_INTERNAL_ERROR_DEF(302)
#define UBSE_CONF_ERROR_KEY_OFFSETCONFIG_MODULE_LOAD_FAIL UBSE_INTERNAL_ERROR_DEF(303)
#define UBSE_CONF_ERROR_KEY_OFFSETPATH_CANONICALIZATION_FAILED UBSE_INTERNAL_ERROR_DEF(304)
#define UBSE_CONF_ERROR_KEY_OFFSETMEMORY_ALLOCATION_FAILED UBSE_INTERNAL_ERROR_DEF(305)
#define UBSE_CONF_ERROR_KEY_OFFSETCONFIG_NO_SECTION UBSE_INTERNAL_ERROR_DEF(306)
#define UBSE_CONF_ERROR_KEY_OFFSETSECTION_ILLEGAL_LENGTH UBSE_INTERNAL_ERROR_DEF(307)
#define UBSE_CONF_ERROR_KEY_OFFSETSECTION_HAVE_ILLEGAL_CHAR UBSE_INTERNAL_ERROR_DEF(308)
#define UBSE_CONF_ERROR_KEY_OFFSETCONFIG_NO_PREFIX UBSE_INTERNAL_ERROR_DEF(309)
#define UBSE_CONF_ERROR_KEY_OFFSETPREFIX_ILLEGAL_CHAR UBSE_INTERNAL_ERROR_DEF(310)
#define UBSE_CONF_ERROR_KEY_OFFSETPREFIX_TOO_LONG UBSE_INTERNAL_ERROR_DEF(311)
#define UBSE_CONF_ERROR_KEY_OFFSETCONFIG_PREFIX_NO_CONTENT UBSE_INTERNAL_ERROR_DEF(312)
#define UBSE_CONF_ERROR_KEY_OFFSETCONFIG_NO_KEY UBSE_INTERNAL_ERROR_DEF(313)
#define UBSE_CONF_ERROR_KEY_OFFSETKEY_ILLEGAL_LENGTH UBSE_INTERNAL_ERROR_DEF(314)
#define UBSE_CONF_ERROR_KEY_OFFSETKEY_HAVE_ILLEGAL_CHAR UBSE_INTERNAL_ERROR_DEF(315)
#define UBSE_CONF_ERROR_KEY_OFFSETVALUE_ILLEGAL_LENGTH UBSE_INTERNAL_ERROR_DEF(316)
#define UBSE_CONF_ERROR_KEY_OFFSETUNSUPPORTED_TYPE UBSE_INTERNAL_ERROR_DEF(317)
#define UBSE_CONF_ERROR_KEY_OFFSETVALUE_OUT_OF_RANGE UBSE_INTERNAL_ERROR_DEF(318)
#define UBSE_CONF_ERROR_KEY_OFFSETCONVERT_ERROR UBSE_INTERNAL_ERROR_DEF(319)
#define UBSE_CONF_ERROR_KEY_OFFSETVALUE_HAVE_ILLEGAL_CHAR UBSE_INTERNAL_ERROR_DEF(320)
#define UBSE_HTTP_ERROR_FAILURE UBSE_INTERNAL_ERROR_DEF(400)
#define UBSE_HTTP_ERROR_MSG_OVERSIZE UBSE_INTERNAL_ERROR_DEF(401)
#define UBSE_HTTP_ERROR_UNKNOWN UBSE_INTERNAL_ERROR_DEF(402)
#define UBSE_HTTP_ERROR_CONNECTION UBSE_INTERNAL_ERROR_DEF(403)
#define UBSE_HTTP_ERROR_BIND_IP_ADDRESS UBSE_INTERNAL_ERROR_DEF(404)
#define UBSE_HTTP_ERROR_READ UBSE_INTERNAL_ERROR_DEF(405)
#define UBSE_HTTP_ERROR_WRITE UBSE_INTERNAL_ERROR_DEF(406)
#define UBSE_HTTP_ERROR_EXCEED_REDIRECT_COUNT UBSE_INTERNAL_ERROR_DEF(407)
#define UBSE_HTTP_ERROR_CANCELED UBSE_INTERNAL_ERROR_DEF(408)
#define UBSE_HTTP_ERROR_SSL_CONNECTION UBSE_INTERNAL_ERROR_DEF(409)
#define UBSE_HTTP_ERROR_SSL_LOADING_CERTS UBSE_INTERNAL_ERROR_DEF(410)
#define UBSE_HTTP_ERROR_SSL_SERVER_VERIFICATION UBSE_INTERNAL_ERROR_DEF(411)
#define UBSE_HTTP_ERROR_UNSUPPORTED_MULTIPART_BOUNDARY_CHARS \
UBSE_INTERNAL_ERROR_DEF(412)
#define UBSE_HTTP_ERROR_COMPRESSION UBSE_INTERNAL_ERROR_DEF(413)
#define UBSE_HTTP_ERROR_CONNECTION_TIMEOUT UBSE_INTERNAL_ERROR_DEF(414)
#define UBSE_HTTP_ERROR_PROXY_CONNECTION UBSE_INTERNAL_ERROR_DEF(415)
#define UBSE_HTTP_ERROR_MSG_EMPTY UBSE_INTERNAL_ERROR_DEF(416)
#define UBSE_HTTP_ERROR_STATUS_ERROR UBSE_INTERNAL_ERROR_DEF(417)
#define UBSE_PLUGIN_ERROR_FILE_LOADED_ERROR UBSE_INTERNAL_ERROR_DEF(500)
#define UBSE_PLUGIN_ERROR_CONFIG_NOT_FOUND UBSE_INTERNAL_ERROR_DEF(501)
#define UBSE_PLUGIN_ERROR_ADMISSION_DENIED UBSE_INTERNAL_ERROR_DEF(502)
#define UBSE_PLUGIN_ERROR_PLUGIN_INIT_FAILED UBSE_INTERNAL_ERROR_DEF(503)
#define UBSE_PLUGIN_ERROR_LOAD_AGAIN UBSE_INTERNAL_ERROR_DEF(504)
#define UBSE_RAS_ERROR_MSG_DUPLICATION UBSE_INTERNAL_ERROR_DEF(600)
#define UBSE_RAS_IS_NOT_MASTER_OR_MEM_IS_NOT_INIT UBSE_INTERNAL_ERROR_DEF(601)
#define UBSE_RAS_PANIC_REBOOT_MSG_INVALID UBSE_INTERNAL_ERROR_DEF(602)
#define UBSE_RAS_ERROR_QUERY_NODE_BY_EID UBSE_INTERNAL_ERROR_DEF(603)
#define UBSE_RAS_ERROR_DLOPEN_XALARMD UBSE_INTERNAL_ERROR_DEF(604)
#define UBSE_RAS_ERROR_DLSYM_XALARMD UBSE_INTERNAL_ERROR_DEF(605)
#define UBSE_RAS_ERROR_REPORT_TO_XALARMD UBSE_INTERNAL_ERROR_DEF(606)
#define UBSE_RAS_ERROR_SWITCH_ROLE UBSE_INTERNAL_ERROR_DEF(607)
#define UBSE_RAS_ERROR_SWITCHING_ROLE UBSE_INTERNAL_ERROR_DEF(608)
#define UBSE_RAS_ERROR_SET_FAULT_EVENT_ON UBSE_INTERNAL_ERROR_DEF(609)
#define UBSE_RAS_ERROR_SET_SENTRY_REPORTER UBSE_INTERNAL_ERROR_DEF(610)
#define UBSE_RAS_ERROR_FAULT_PENDING_EXIST UBSE_INTERNAL_ERROR_DEF(611)
#define UBSE_MMI_OBMM_OP_FAILED UBSE_INTERNAL_ERROR_DEF(700)
#define UBSE_MMI_DAEMON_FAILED UBSE_INTERNAL_ERROR_DEF(701)
#define UBSE_MMI_OPEN_FAILED UBSE_INTERNAL_ERROR_DEF(702)
#define UBSE_MMI_OBMM_OP_TIMEOUT UBSE_INTERNAL_ERROR_DEF(703)
#define UBSE_SCHEDULER_ERROR_INVAL UBSE_INTERNAL_ERROR_DEF(800)
#define UBSE_SCHEDULER_ERROR_NO_NODE_CAN_LEND UBSE_INTERNAL_ERROR_DEF(801)
#define UBSE_SCHEDULER_ERROR_NODE_RECONCILE UBSE_INTERNAL_ERROR_DEF(802)
#define UBSE_IPC_ERROR_SOCKET_LISTEN_FAILED UBSE_INTERNAL_ERROR_DEF(900)
#define UBSE_IPC_ERROR_SEND_FAILED UBSE_INTERNAL_ERROR_DEF(901)
#define UBSE_IPC_ERROR_RECV_FAILED UBSE_INTERNAL_ERROR_DEF(902)
#define UBSE_IPC_ERROR_RESP_NOT_FOUND UBSE_INTERNAL_ERROR_DEF(903)
#define UBSE_IPC_ERROR_QUERY_STATE_FAILED UBSE_INTERNAL_ERROR_DEF(904)
#define UBSE_IPC_ERROR_QUERY_NUMA_NOT_EXIST UBSE_INTERNAL_ERROR_DEF(905)
#define UBSE_MEMCONTROLLER_ERROR_UNIMPORT_FAILED UBSE_INTERNAL_ERROR_DEF(1000)
#define UBSE_MEMCONTROLLER_ERROR_COMP_ERROR UBSE_INTERNAL_ERROR_DEF(1001)
#define UBSE_MEMCONTROLLER_ERROR_GET_INFO_FAIL UBSE_INTERNAL_ERROR_DEF(1002)
#define UBSE_MEMCONTROLLER_ERROR_PAR_SUCCESS UBSE_INTERNAL_ERROR_DEF(1003)
#define UBSE_URMACONTRL_ERROR_ACCESS_MTI_FAILED UBSE_INTERNAL_ERROR_DEF(1100)
#define UBSE_URMACONTRL_ERROR_PRIO_GROUP_EXIST UBSE_INTERNAL_ERROR_DEF(1101)
#define UBSE_URMACONTRL_ERROR_ETS_TEMPLATE_NOT_EXISTED UBSE_INTERNAL_ERROR_DEF(1102)
#define UBSE_URMACONTRL_ERROR_ETS_TEMPLATE_NOT_APPLIED UBSE_INTERNAL_ERROR_DEF(1103)
#define UBSE_URMACONTRL_ERROR_QUERY_PORTS_STATUS_FAILED UBSE_INTERNAL_ERROR_DEF(1104)
#define UBSE_URMACONTRL_ERROR_GET_NODE_INFO_FAILED UBSE_INTERNAL_ERROR_DEF(1105)
#define UBSE_URMACONTRL_ERROR_CREATE_DEV_FAILED UBSE_INTERNAL_ERROR_DEF(1106)
#define UBSE_URMACONTRL_ERROR_DEV_NOT_INACTIVE UBSE_INTERNAL_ERROR_DEF(1107)
#define UBSE_URMACONTRL_ERROR_DEV_NOT_EXIST UBSE_INTERNAL_ERROR_DEF(1108)
#define UBSE_URMACONTRL_ERROR_DEV_NAME_INVALID UBSE_INTERNAL_ERROR_DEF(1109)
#define UBSE_URMACONTRL_ERROR_NEED_RETRY UBSE_INTERNAL_ERROR_DEF(1110)
#define UBSE_MTI_ERROR_NOT_EXIST UBSE_INTERNAL_ERROR_DEF(1200)
#define UBSE_RESULT_FAIL(ret) (static_cast<uint32_t>(ret) != UBSE_OK)
#define UBSE_RESULT_OK(ret) (static_cast<uint32_t>(ret) == UBSE_OK)
#endif