/*
 * Copyright (c) 2024 Huawei Device Co., Ltd.
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

#ifndef DSOFTBUS_INTERFACE_H
#define DSOFTBUS_INTERFACE_H

#include <stdbool.h>
#include <stdint.h>

#ifdef __cplusplus
extern "C" {
#endif

/**
 * from  softbus_common.h
 */
#define OHOS_PERMISSION_DISTRIBUTED_DATASYNC "ohos.permission.DISTRIBUTED_DATASYNC"
#define OHOS_PERMISSION_DISTRIBUTED_SOFTBUS_CENTER "ohos.permission.DISTRIBUTED_SOFTBUS_CENTER"
#define NETWORK_ID_BUF_LEN 65

/**
 * from  softbus_bus_center.h
 */
#define DEVICE_NAME_BUF_LEN 128
#define OS_VERSION_BUF_LEN 128

typedef struct {
    char networkId[NETWORK_ID_BUF_LEN];    /**< Device network id */
    char deviceName[DEVICE_NAME_BUF_LEN];  /**< Device name */
    uint16_t deviceTypeId;                 /**< Device type id */
    int32_t osType;                        /**< Os type */
    char osVersion[OS_VERSION_BUF_LEN];    /**< Os version */
} NodeBasicInfo;

int32_t GetAllNodeDeviceInfo(const char *pkgName, NodeBasicInfo **info, int32_t *infoNum);
int32_t GetLocalNodeDeviceInfo(const char *pkgName, NodeBasicInfo *info);
void FreeNodeInfo(NodeBasicInfo *info);

/**
 * from  softbus_error_code.h
 */

#define SOFTBUS_SUB_SYSTEM 203
#define SOFTBUS_ERRNO(module) (-(((SOFTBUS_SUB_SYSTEM) << 21) | ((module) << 16) | (0xFFFF)))
#define SOFTBUS_SUB_ERRNO(module, sub) (-(((SOFTBUS_SUB_SYSTEM) << 21) | ((module) << 16) | ((sub) << 12) | (0x0FFF)))
#define CHIP_CONFLICT_ERROR_OFFSET 1000

enum SoftBusSubModule {
    DISC_SUB_MODULE_CODE = 1,
    CONN_SUB_MODULE_CODE = 2,
    AUTH_SUB_MODULE_CODE = 3,
    LNN_SUB_MODULE_CODE = 4,
    TRANS_SUB_MODULE_CODE = 5,
    IPCRPC_SUB_MODULE_CODE = 6,
    PUBLIC_SUB_MODULE_CODE = 10,
    SHORT_DISTANCE_MAPPING_MODULE_CODE = 20,
    CONN_UNDERLAY_BLUETOOTH_MODULE_CODE = 21,
    KERNELS_SUB_MODULE_CODE = 22,
};

enum SoftBusUnderlayError {
    SOFTBUS_CONN_BR_UNDERLAYBASE_ERR = SOFTBUS_ERRNO(CONN_UNDERLAY_BLUETOOTH_MODULE_CODE),
    SOFTBUS_CONN_BR_UNDERLAY_PAGE_TIMEOUT_ERR = SOFTBUS_CONN_BR_UNDERLAYBASE_ERR + 4,
};

enum DisSubModule {
    DISC_SERVICE_SUB_MODULE_CODE = 1,
    DISC_MANAGER_SUB_MODULE_CODE = 2,
    DISC_BLE_SUB_MODULE_CODE = 3,
    DISC_COAP_SUB_MODULE_CODE = 4,
    DISC_BC_MGR_SUB_MODULE_CODE = 5,
    DISC_BC_ADAPTER_SUB_MODULE_CODE = 6,
    DISC_ACTION_SUB_MODULE_CODE = 7,
};

enum LnnSubModule {
    LNN_LANE_MODULE_CODE = 1,
};

enum SoftBusErrNo {
    /* errno begin: -((203 << 21) | (10 << 16) | 0xFFFF) */
    SOFTBUS_PUBLIC_ERR_BASE = SOFTBUS_ERRNO(PUBLIC_SUB_MODULE_CODE),
    SOFTBUS_TIMOUT,
    SOFTBUS_INVALID_PARAM,
    SOFTBUS_MEM_ERR,
    SOFTBUS_NOT_IMPLEMENT,
    SOFTBUS_NO_INIT,
    SOFTBUS_CREATE_JSON_ERR,
    SOFTBUS_PARSE_JSON_ERR,
    SOFTBUS_PERMISSION_DENIED,
    SOFTBUS_ACCESS_TOKEN_DENIED,
    SOFTBUS_MALLOC_ERR,
    SOFTBUS_STRCPY_ERR,
    SOFTBUS_ENCRYPT_ERR,
    SOFTBUS_DECRYPT_ERR,
    SOFTBUS_INVALID_NUM,
    SOFTBUS_SERVER_NAME_REPEATED,
    SOFTBUS_TCP_SOCKET_ERR,
    SOFTBUS_LOCK_ERR,
    SOFTBUS_GET_REMOTE_UUID_ERR,
    SOFTBUS_NO_ENOUGH_DATA,
    SOFTBUS_INVALID_DATA_HEAD,
    SOFTBUS_INVALID_FD,
    SOFTBUS_FILE_ERR,
    SOFTBUS_DATA_NOT_ENOUGH,
    SOFTBUS_SLICE_ERROR,
    SOFTBUS_ALREADY_EXISTED,
    SOFTBUS_GET_CONFIG_VAL_ERR,
    SOFTBUS_PEER_PROC_ERR,
    SOFTBUS_NOT_FIND,
    SOFTBUS_ALREADY_TRIGGERED,
    SOFTBUS_FILE_BUSY,
    SOFTBUS_IPC_ERR,
    SOFTBUS_DFX_INIT_FAILED,

    SOFTBUS_INVALID_PKGNAME,
    SOFTBUS_FUNC_NOT_SUPPORT,
    SOFTBUS_SERVER_NOT_INIT,
    SOFTBUS_SERVER_NAME_USED,

    SOFTBUS_BLUETOOTH_OFF,
    SOFTBUS_WIFI_OFF,
    SOFTBUS_WIFI_DISCONNECT,
    SOFTBUS_P2P_NOT_SUPPORT,
    SOFTBUS_HML_NOT_SUPPORT,
    SOFTBUS_P2P_ROLE_CONFLICT,
    SOFTBUS_HML_THREE_VAP_CONFLIC,
    SOFTBUS_WIFI_DIRECT_INIT_FAILED,

    /* internal error */
    SOFTBUS_ERR,

    SOFTBUS_NOT_LOGIN, // not login hw account
    SOFTBUS_NOT_SAME_ACCOUNT, // check whether the accounts are the same
    SOFTBUS_NO_ONLINE_DEVICE, // there is no network online device
    SOFTBUS_LOOPER_ERR,  // get looper fail
    SOFTBUS_HMAC_ERR,  // generate hmac hash fail for aes encrypt
    SOFTBUS_HUKS_ERR,  // huks fail for rsa encrypt
    SOFTBUS_BIO_ERR,  // BIO fail for rsa encrypt
    SOFTBUS_NOT_NEED_UPDATE, // not need update
    SOFTBUS_NO_RESOURCE_ERR, // no available resource
    SOFTBUS_INVALID_APPTYPE,
    SOFTBUS_CMP_FAIL, // strcmp failed
    SOFTBUS_CREATE_LIST_ERR,
    SOFTBUS_LIST_EMPTY,
    SOFTBUS_STRCMP_ERR,
    SOFTBUS_SPRINTF_ERR,
    SOFTBUS_INVALID_PORT,
    SOFTBUS_COND_INIT_FAILED,
    SOFTBUS_GET_SYSTIME_FAILED,
    SOFTBUS_BYTE_CONVERT_FAIL,
    SOFTBUS_GENERATE_KEY_FAIL,
    SOFTBUS_GCM_SET_IV_FAIL, // set ivlen fail for aes-gcm encrypt
    SOFTBUS_LOCALE_ERR,
    SOFTBUS_WIDECHAR_ERR,

    /* errno begin: -((203 << 21) | (5 << 16) | 0xFFFF) */
    SOFTBUS_TRANS_ERR_BASE = SOFTBUS_ERRNO(TRANS_SUB_MODULE_CODE),
    SOFTBUS_TRANS_INVALID_SESSION_ID,
    SOFTBUS_TRANS_INVALID_SESSION_NAME,
    SOFTBUS_TRANS_INVALID_CHANNEL_TYPE,
    SOFTBUS_TRANS_BUSINESS_TYPE_NOT_MATCH,
    SOFTBUS_TRANS_SESSION_REPEATED,
    SOFTBUS_TRANS_SESSION_CNT_EXCEEDS_LIMIT,
    SOFTBUS_TRANS_SESSIONSERVER_NOT_CREATED,
    SOFTBUS_TRANS_SESSION_OPENING,
    SOFTBUS_TRANS_GET_LANE_INFO_ERR,
    SOFTBUS_TRANS_CREATE_CHANNEL_ERR,
    SOFTBUS_TRANS_INVALID_DATA_LENGTH,
    SOFTBUS_TRANS_FUNC_NOT_SUPPORT,
    SOFTBUS_TRANS_OPEN_AUTH_CHANNEL_FAILED,
    SOFTBUS_TRANS_GET_P2P_INFO_FAILED,
    SOFTBUS_TRANS_OPEN_AUTH_CONN_FAILED,
    SOFTBUS_TRANS_CHECK_ACL_FAILED,

    SOFTBUS_TRANS_PROXY_PACKMSG_ERR,
    SOFTBUS_TRANS_PROXY_SENDMSG_ERR,
    SOFTBUS_TRANS_PROXY_CHANNLE_STATUS_INVALID,
    SOFTBUS_TRANS_PROXY_SESS_ENCRYPT_ERR,
    SOFTBUS_TRANS_PROXY_INVALID_SLICE_HEAD,
    SOFTBUS_TRANS_PROXY_ASSEMBLE_PACK_NO_INVALID,
    SOFTBUS_TRANS_PROXY_ASSEMBLE_PACK_EXCEED_LENGTH,
    SOFTBUS_TRANS_PROXY_ASSEMBLE_PACK_DATA_NULL,

    SOFTBUS_TRANS_UDP_SERVER_ADD_CHANNEL_FAILED,
    SOFTBUS_TRANS_UDP_CLIENT_ADD_CHANNEL_FAILED,
    SOFTBUS_TRANS_UDP_SERVER_NOTIFY_APP_OPEN_FAILED,
    SOFTBUS_TRANS_UDP_CLIENT_NOTIFY_APP_OPEN_FAILED,
    SOFTBUS_TRANS_UDP_START_STREAM_SERVER_FAILED,
    SOFTBUS_TRANS_UDP_START_STREAM_CLIENT_FAILED,
    SOFTBUS_TRANS_UDP_SEND_STREAM_FAILED,
    SOFTBUS_TRANS_UDP_GET_CHANNEL_FAILED,
    SOFTBUS_TRANS_UDP_CHANNEL_DISABLE,

    SOFTBUS_TRANS_QOS_REPORT_FAILED,
    SOFTBUS_TRANS_QOS_REPORT_TOO_FREQUENT,

    SOFTBUS_TRANS_SESSION_SERVER_NOINIT,
    SOFTBUS_TRANS_SESSION_INFO_NOT_FOUND,
    SOFTBUS_TRANS_SESSION_CREATE_FAILED,
    SOFTBUS_TRANS_SESSION_ADDPKG_FAILED,
    SOFTBUS_TRANS_SESSION_SET_CHANNEL_FAILED,
    SOFTBUS_TRANS_SESSION_NO_ENABLE,
    SOFTBUS_TRANS_SESSION_GROUP_INVALID,
    SOFTBUS_TRANS_SESSION_NAME_NO_EXIST,
    SOFTBUS_TRANS_SESSION_GET_CHANNEL_FAILED,

    SOFTBUS_TRANS_PROXY_REMOTE_NULL,
    SOFTBUS_TRANS_PROXY_WRITETOKEN_FAILED,
    SOFTBUS_TRANS_PROXY_WRITECSTRING_FAILED,
    SOFTBUS_TRANS_PROXY_WRITERAWDATA_FAILED,
    SOFTBUS_TRANS_PROXY_READRAWDATA_FAILED,
    SOFTBUS_TRANS_PROXY_SEND_REQUEST_FAILED,
    SOFTBUS_TRANS_PROXY_INVOKE_FAILED,
    SOFTBUS_TRANS_PROXY_CHANNEL_NOT_FOUND,

    SOFTBUS_TRANS_SEND_LEN_BEYOND_LIMIT,
    SOFTBUS_TRANS_FILE_LISTENER_NOT_INIT,
    SOFTBUS_TRANS_STREAM_ONLY_UDP_CHANNEL,
    SOFTBUS_TRANS_CHANNEL_TYPE_INVALID,
    SOFTBUS_TRANS_TDC_CHANNEL_NOT_FOUND,
    SOFTBUS_TRANS_TDC_CHANNEL_ALREADY_PENDING,
    SOFTBUS_TRANS_TDC_PENDINGLIST_NOT_FOUND,
    SOFTBUS_TRANS_AUTH_CHANNEL_NOT_FOUND,
    SOFTBUS_TRANS_NET_STATE_CHANGED,
    SOFTBUS_TRANS_HANDSHAKE_TIMEOUT,
    SOFTBUS_TRANS_HANDSHAKE_ERROR,
    SOFTBUS_TRANS_PEER_SESSION_NOT_CREATED,
    SOFTBUS_TRANS_PROXY_DISCONNECTED,
    SOFTBUS_TRANS_AUTH_NOTALLOW_OPENED,
    SOFTBUS_TRANS_PROXY_ERROR_APP_TYPE,
    SOFTBUS_TRANS_PROXY_CONN_REPEAT,
    SOFTBUS_TRANS_PROXY_CONN_ADD_REF_FAILED,
    SOFTBUS_TRANS_SOCKET_IN_USE,
    SOFTBUS_TRANS_INVALID_SESSION_TYPE,
    SOFTBUS_TRANS_GET_PID_FAILED,
    SOFTBUS_TRANS_INVALID_CHANNEL_ID,
    SOFTBUS_TRANS_PROXY_CREATE_CHANNEL_FAILED,
    SOFTBUS_TRANS_PROXY_SET_CIPHER_FAILED,
    SOFTBUS_TRANS_PROXY_PACK_HANDSHAKE_ERR,
    SOFTBUS_TRANS_PROXY_PACK_HANDSHAKE_HEAD_ERR,
    SOFTBUS_TRANS_PROXY_UNPACK_FAST_DATA_FAILED,
    SOFTBUS_TRANS_PROXY_HANDSHAKE_GET_REQUEST_FAILED,
    SOFTBUS_TRANS_PROXY_HANDSHAKE_GET_PKG_FAILED,
    SOFTBUS_TRANS_PROXY_HANDSHAKE_GET_SESSIONKEY_FAILED,
    SOFTBUS_TRANS_UDP_PREPARE_APP_INFO_FAILED,
    SOFTBUS_TRANS_UDP_CHANNEL_ALREADY_EXIST,
    SOFTBUS_TRANS_UDP_PACK_INFO_FAILED,
    SOFTBUS_TRANS_GET_LOCAL_IP_FAILED,
    SOFTBUS_TRANS_TCP_UNUSE_LISTENER_MODE,
    SOFTBUS_TRANS_TCP_GET_AUTHID_FAILED,
    SOFTBUS_TRANS_ADD_TRIGGER_FAILED,
    SOFTBUS_TRANS_ADD_SESSION_CONN_FAILED,
    SOFTBUS_TRANS_GET_SESSION_CONN_FAILED,
    SOFTBUS_TRANS_TCP_GET_SRV_DATA_FAILED,
    SOFTBUS_TRANS_TCP_DATABUF_LESS_ZERO,
    SOFTBUS_TRANS_TCP_GENERATE_SESSIONKEY_FAILED,
    SOFTBUS_TRANS_GET_CIPHER_FAILED,
    SOFTBUS_TRANS_PACK_REQUEST_FAILED,
    SOFTBUS_TRANS_UPDATE_DATA_BUF_FAILED,
    SOFTBUS_TRANS_UNPACK_PACKAGE_HEAD_FAILED,
    SOFTBUS_TRANS_UNPACK_REPLY_FAILED,
    SOFTBUS_TRANS_SET_APP_INFO_FAILED,
    SOFTBUS_TRANS_NOT_META_SESSION,
    SOFTBUS_TRANS_SERVER_INIT_FAILED,
    SOFTBUS_TRANS_SESSION_SERVER_NOT_FOUND,
    SOFTBUS_TRANS_ENCRYPT_ERR,
    SOFTBUS_TRANS_DECRYPT_ERR,
    SOFTBUS_TRANS_BAD_KEY, // Send badkey notification for offline events
    SOFTBUS_TRANS_CHECK_PID_ERROR,
    SOFTBUS_TRANS_GET_LOCAL_UID_FAIL, // get local userId fail
    SOFTBUS_TRANS_MSG_BUILD_BC_PARAM_FAIL, // build broadcast params fail
    SOFTBUS_TRANS_MSG_BUILD_PAYLOAD_FAIL, // build broadcast payload fail
    SOFTBUS_TRANS_MSG_INIT_FAIL, // notification message init fail
    SOFTBUS_TRANS_MSG_REPLACE_PAYLOAD_FAIL, // replace payload without stopping the broadcast fail
    SOFTBUS_TRANS_UDP_CHANNEL_NOT_FOUND,
    SOFTBUS_TRANS_TDC_CHANNEL_ALREADY_EXIST, // receive repeat tdc channel open request
    SOFTBUS_TRANS_UDP_SET_CHANNEL_FAILED,
    SOFTBUS_TRANS_STOP_BIND_BY_CANCEL,
    SOFTBUS_TRANS_INVALID_MESSAGE_TYPE,
    SOFTBUS_TRANS_PROXY_GET_AUTH_ID_FAILED,
    SOFTBUS_TRANS_PROXY_INVALID_CHANNEL_ID, //  classify invalid channel id by channel type
    SOFTBUS_TRANS_TDC_INVALID_CHANNEL_ID,
    SOFTBUS_TRANS_UDP_INVALID_CHANNEL_ID,
    SOFTBUS_TRANS_AUTH_INVALID_CHANNEL_ID,
    SOFTBUS_TRANS_MSG_GENERATE_MIC_FAIL, // generate mic fail
    SOFTBUS_TRANS_MSG_INVALID_EVENT_TYPE, // invalid event type
    SOFTBUS_TRANS_MSG_INVALID_CMD, // invalid cmd
    SOFTBUS_TRANS_MSG_GET_LOCAL_CHIPHERKEY_FAIL, // get local chipherkey fail
    SOFTBUS_TRANS_MSG_START_ADV_FAIL, // start adv fail
    SOFTBUS_TRANS_MSG_STOP_ADV_FAIL, // stop adv fail
    SOFTBUS_TRANS_MSG_START_SCAN_FAIL, // start scan fail
    SOFTBUS_TRANS_MSG_STOP_SCAN_FAIL, // stop scan fail
    SOFTBUS_TRANS_MSG_EMPTY_LIST, // list is empty
    SOFTBUS_TRANS_STOP_BIND_BY_TIMEOUT, // stop bind by timeout
    SOFTBUS_TRANS_MSG_NOT_SET_SCREEN_OFF, // send broadcast failed when screen flag is false
    SOFTBUS_TRANS_FILE_PERMISSION_DENIED, // file permission denied
    SOFTBUS_TRANS_FILE_DISK_QUOTA_EXCEEDED, // disk quota exceeded
    SOFTBUS_TRANS_FILE_NO_MEMORY, // no memory
    SOFTBUS_TRANS_FILE_NETWORK_ERROR, // network error
    SOFTBUS_TRANS_FILE_NOT_FOUND, // file not found
    SOFTBUS_TRANS_FILE_EXISTED, // file existed
    SOFTBUS_TRANS_INVALID_UUID,
    SOFTBUS_TRANS_GET_CLIENT_PROXY_NULL,
    SOFTBUS_TRANS_PROXY_READINT_FAILED,
    SOFTBUS_TRANS_PROXY_WRITEINT_FAILED,
    SOFTBUS_TRANS_LIST_INIT_FAILED,
    SOFTBUS_TRANS_AUTH_ALREADY_INIT,
    SOFTBUS_TRANS_AUTH_REQUEST_NOT_FOUND,
    SOFTBUS_TRANS_AUTH_NEGOTIATE_SK_TIMEOUT,
    SOFTBUS_TRANS_NOTIFY_NETWORK_OPEN_ERR,
    SOFTBUS_TRANS_NEGOTIATE_REJECTED,
    SOFTBUS_TRANS_AUTH_NEGO_TASK_NOT_FOUND,
    SOFTBUS_TRANS_GET_APP_INFO_FAILED,
    SOFTBUS_TRANS_GET_AUTH_HANDLE_FAILED,
    SOFTBUS_TRANS_SET_AUTH_HANDLE_FAILED,
    SOFTBUS_TRANS_TDC_START_SESSION_LISTENER_FAILED,
    SOFTBUS_TRANS_VERIFY_P2P_FAILED,
    SOFTBUS_TRANS_P2P_DIRECT_FAILED,
    SOFTBUS_TRANS_ADD_HML_TRIGGER_FAILED,
    SOFTBUS_TRANS_INVALID_SEQ_ID,
    SOFTBUS_TRANS_GET_PACK_REPLY_FAILED,
    SOFTBUS_TRANS_GET_AUTH_ID_FAILED,
    SOFTBUS_TRANS_SEND_TCP_DATA_FAILED,
    SOFTBUS_TRANS_NODE_IS_NULL,
    SOFTBUS_TRANS_ILLEGAL_MODULE,
    SOFTBUS_TRANS_TCP_DATABUF_NOT_FOUND,
    SOFTBUS_TRANS_RECV_DATA_OVER_LEN,
    SOFTBUS_TRANS_TDC_ON_DATA_EVENT_FAILED,
    SOFTBUS_TRANS_NOT_MATCH,
    SOFTBUS_TRANS_REGISTER_LISTENER_FAILED,
    SOFTBUS_TRANS_CHANNEL_OPEN_FAILED,
    SOFTBUS_TRANS_INIT_FAILED,
    SOFTBUS_TRANS_UNEXPECTED_CONN_TYPE,
    SOFTBUS_TRANS_UNPACK_HANDSHAKE_MSG_FAILED,
    SOFTBUS_TRANS_PACK_FAST_DATA_FAILED,
    SOFTBUS_TRANS_NODE_NOT_FOUND,
    SOFTBUS_TRANS_PACK_LEEPALIVE_ACK_FAILED,
    SOFTBUS_TRANS_REQUEST_QOS_INVALID,
    SOFTBUS_TRANS_REQUEST_QOS_FAILED,
    SOFTBUS_TRANS_GET_CONN_OPT_FAILED,
    SOFTBUS_TRANS_REG_AUTH_CHANNEL_LISTERNER_FAILED,
    SOFTBUS_TRANS_CHANNELID_CONVERT_ADDR_FAILED,
    SOFTBUS_TRANS_ON_SESSION_OPENED_FAILED,
    SOFTBUS_TRANS_UDP_CHANNEL_CALLBACK_NULL,
    SOFTBUS_TRANS_ADAPTOR_NOT_EXISTED,
    SOFTBUS_TRANS_ADAPTOR_ALREADY_EXISTED,
    SOFTBUS_TRANS_MAKE_STREAM_FAILED,
    SOFTBUS_TRANS_CLOSE_UDP_CHANNEL_FAILED,
    SOFTBUS_TRANS_TDC_GET_INFO_FAILED,
    SOFTBUS_TRANS_CONN_MANAGER_NOT_INIT,
    SOFTBUS_TRANS_REQUEST_LANE_TIMEOUT,
    SOFTBUS_TRANS_CREATE_SOCKET_SERVER_FAILED,
    SOFTBUS_TRANS_BUSINESSID_COUNT_FAILED,
    SOFTBUS_TRANS_ON_CONNECT_REQUEST_IS_NULL,
    SOFTBUS_TRANS_ON_SOCKET_OPENED_IS_NULL,
    SOFTBUS_TRANS_ON_SOCKET_REQUEST_IS_NULL,
    SOFTBUS_TRANS_ON_SOCKET_CLOSED_IS_NULL,
    SOFTBUS_TRANS_ON_DATA_RECEIVED_IS_NULL,
    SOFTBUS_TRANS_ON_PREDATA_REQUEST_IS_NULL,
    SOFTBUS_TRANS_ON_SERVICE_REQUEST_IS_NULL,
    SOFTBUS_TRANS_ON_SESSION_REQUEST_IS_NULL,
    SOFTBUS_TRANS_ON_SESSION_OPENED_IS_NULL,
    SOFTBUS_TRANS_ON_SESSION_CLOSED_IS_NULL,
    SOFTBUS_TRANS_CREATE_LISTENER_MODULE_FAILED,
    SOFTBUS_TRANS_FILE_SCHEMA_LISTENER_FAILED,
    SOFTBUS_TRANS_DEATH_RECIPIENT_IS_NULL,
    SOFTBUS_TRANS_ADD_DEATH_RECIPIENT_FAILED,
    SOFTBUS_TRANS_ON_CHANNEL_REQ_CALLBACK_FAILED,
    SOFTBUS_TRANS_ON_SERVICE_REQ_CALLBACK_FAILED,
    SOFTBUS_TRANS_ON_OPENED_CHANNEL_CALLBACK_FAILED,
    SOFTBUS_TRANS_ON_CLOSED_CHANNEL_CALLBACK_FAILED,
    SOFTBUS_TRANS_ON_RECV_DATA_CALLBACK_FAILED,
    SOFTBUS_TRANS_ON_PREDATA_REQ_CALLBACK_FAILED,
    SOFTBUS_TRANS_REGCOOMP_FAILED,
    SOFTBUS_TRANS_CHECK_STRING_FAILED,
    SOFTBUS_TRANS_QUERY_PERMISSION_FAILED,
    SOFTBUS_TRANS_NEED_SEND_BUT_FAILED,
    SOFTBUS_TRANS_GET_SERVICE_INFO_FAILED,
    SOFTBUS_TRANS_UPDATE_SPE_CHANNEL_FAILED,
    SOFTBUS_TRANS_GET_SPE_INFO_FAILED,
    SOFTBUS_TRANS_UPDATE_SPE_HANDLE_NUMBER_FAILED,
    SOFTBUS_TRANS_SPRINTF_S_FAILED,
    SOFTBUS_TRANS_STRTOK_S_FAILED,
    SOFTBUS_TRANS_SPE_HANDLE_EXTRACT_FAILED,
    SOFTBUS_TRANS_GET_LNN_NET_IFNAME_FAILED,
    SOFTBUS_TRANS_INVALID_QDISC_HANDLE,
    SOFTBUS_TRANS_RTNL_DELETE_FAILED,
    SOFTBUS_TRANS_RTNL_ADD_FAILED,
    SOFTBUS_TRANS_RTNL_LINK_FAILED,
    SOFTBUS_TRANS_NL_SPCKET_ALLOC_FAILED,
    SOFTBUS_TRANS_NL_CONNECT_FAILED,
    SOFTBUS_TRANS_CONVER_STR_IP_FAILED,
    SOFTBUS_TRANS_SET_IP_PORT_FAILED,
    SOFTBUS_TRANS_SET_QOS_DISC_FAILED,
    SOFTBUS_TRANS_QOS_EXECUTE_FAILED,
    SOFTBUS_TRANS_GET_CLIENT_NAME_FAILED,
    SOFTBUS_TRANS_OBSERVER_EXCEED_LIMIT,
    SOFTBUS_TRANS_ADD_CLIENT_SERVICE_FAILED,
    SOFTBUS_TRANS_PROXY_READUINT_FAILED,
    SOFTBUS_TRANS_PROXY_READBOOL_FAILED,
    SOFTBUS_TRANS_PROXY_WRITEOBJECT_FAILED,
    SOFTBUS_TRANS_PROXY_READBUFFER_FAILED,
    SOFTBUS_TRANS_PROXY_READCSTRING_FAILED,
    SOFTBUS_TRANS_PROXY_READTOKEN_FAILED,
    SOFTBUS_TRANS_INVALID_CONNECT_TYPE,
    SOFTBUS_TRANS_REJECT_CONNECTION,
    SOFTBUS_TRANS_AUTH_CREATE_CHANINFO_FAIL,
    SOFTBUS_TRANS_AUTH_ADD_CHANINFO_FAIL,
    SOFTBUS_TRANS_AUTH_POST_CHANMSG_FAIL,
    SOFTBUS_TRANS_AUTH_FILL_CHANINFO_FAIL,

    /* errno begin: -((203 << 21) | (3 << 16) | 0xFFFF) */
    SOFTBUS_AUTH_ERR_BASE = SOFTBUS_ERRNO(AUTH_SUB_MODULE_CODE),
    SOFTBUS_AUTH_INIT_FAIL,
    SOFTBUS_AUTH_CONN_FAIL,
    SOFTBUS_AUTH_CONN_INIT_FAIL,
    SOFTBUS_AUTH_CONN_TIMEOUT,
    SOFTBUS_AUTH_GET_BR_CONN_INFO_FAIL,
    SOFTBUS_AUTH_GET_SESSION_INFO_FAIL,
    SOFTBUS_AUTH_GET_SESSION_KEY_FAIL,
    SOFTBUS_AUTH_GET_FSM_FAIL,
    SOFTBUS_AUTH_REG_DATA_FAIL,
    SOFTBUS_AUTH_DEVICE_DISCONNECTED,
    SOFTBUS_AUTH_SYNC_DEVID_FAIL,
    SOFTBUS_AUTH_HICHAIN_AUTH_FAIL,
    SOFTBUS_AUTH_HICHAIN_PROCESS_FAIL,
    SOFTBUS_AUTH_HICHAIN_AUTH_ERROR,
    SOFTBUS_AUTH_HICHAIN_NOT_TRUSTED,
    SOFTBUS_AUTH_SYNC_DEVINFO_FAIL,
    SOFTBUS_AUTH_UNPACK_DEVINFO_FAIL,
    SOFTBUS_AUTH_SEND_FAIL,
    SOFTBUS_AUTH_TIMEOUT,
    SOFTBUS_AUTH_NOT_FOUND,
    SOFTBUS_AUTH_INNER_ERR,
    SOFTBUS_AUTH_CONN_START_ERR,
    SOFTBUS_AUTH_START_ERR,
    SOFTBUS_AUTH_EXCHANGE_DEVICE_INFO_START_ERR,
    SOFTBUS_AUTH_NOT_SUPPORT_NORMALIZE,
    SOFTBUS_AUTH_NOT_SUPPORT_THREE_STATE,
    SOFTBUS_AUTH_SESSION_KEY_INVALID,
    SOFTBUS_AUTH_SESSION_KEY_TOO_OLD,
    SOFTBUS_AUTH_DECRYPT_ERR,
    SOFTBUS_AUTH_SYNC_PTK_ERR,
    SOFTBUS_AUTH_SAVE_PTK_ERR,
    SOFTBUS_AUTH_ADD_PTK_LISTEN_ERR,
    SOFTBUS_AUTH_META_INIT_FAIL,
    SOFTBUS_AUTH_SYNC_DEVINFO_ACK_FAIL,
    SOFTBUS_CHANNEL_AUTH_INVALID_PROTOCOL,
    SOFTBUS_CHANNEL_AUTH_START_TIMEOUT,
    SOFTBUS_CHANNEL_AUTH_HANDLE_DATA_FAIL,
    SOFTBUS_CHANNEL_AUTH_PACK_DATA_FAIL,

    /* errno begin: -((203 << 21) | (4 << 16) | 0xFFFF) */
    SOFTBUS_NETWORK_ERR_BASE = SOFTBUS_ERRNO(LNN_SUB_MODULE_CODE),
    SOFTBUS_NETWORK_CONN_FSM_DEAD,
    SOFTBUS_NETWORK_JOIN_CANCELED,
    SOFTBUS_NETWORK_JOIN_LEAVING,
    SOFTBUS_NETWORK_JOIN_TIMEOUT,
    SOFTBUS_NETWORK_DEV_NOT_TRUST,
    SOFTBUS_NETWORK_LEAVE_OFFLINE,
    SOFTBUS_NETWORK_AUTH_DISCONNECT,
    SOFTBUS_NETWORK_TIME_SYNC_HANDSHAKE_ERR,     // time sync channel pipe broken
    SOFTBUS_NETWORK_TIME_SYNC_HANDSHAKE_TIMEOUT, // timeout during handshake
    SOFTBUS_NETWORK_TIME_SYNC_TIMEOUT,           // timeout during sync
    SOFTBUS_NETWORK_TIME_SYNC_INTERFERENCE,      // interference
    SOFTBUS_NETWORK_HEARTBEAT_REPEATED,
    SOFTBUS_NETWORK_HEARTBEAT_UNTRUSTED,
    SOFTBUS_NETWORK_HEARTBEAT_EMPTY_LIST,
    SOFTBUS_NETWORK_NODE_OFFLINE,
    SOFTBUS_NETWORK_NOT_CONNECTABLE,
    SOFTBUS_NETWORK_NODE_DIRECT_ONLINE,
    SOFTBUS_NETWORK_NOT_INIT,
    SOFTBUS_NETWORK_LOOPER_ERR,
    SOFTBUS_NETWORK_GET_NODE_INFO_ERR,
    SOFTBUS_NETWORK_GET_ALL_NODE_INFO_ERR,
    SOFTBUS_NETWORK_GET_LOCAL_NODE_INFO_ERR,
    SOFTBUS_NETWORK_GET_DEVICE_INFO_ERR,
    SOFTBUS_NETWORK_DELETE_INFO_ERR,
    SOFTBUS_NETWORK_REG_EVENT_HANDLER_ERR,
    SOFTBUS_NETWORK_JOIN_REQUEST_ERR,
    SOFTBUS_NETWORK_NOT_FOUND,
    SOFTBUS_NETWORK_NODE_KEY_INFO_ERR,
    SOFTBUS_NETWORK_ACTIVE_META_NODE_ERR,
    SOFTBUS_NETWORK_DEACTIVE_META_NODE_ERR,
    SOFTBUS_NETWORK_GET_META_NODE_INFO_ERR,
    SOFTBUS_NETWORK_JOIN_LNN_START_ERR,
    SOFTBUS_NETWORK_LEAVE_LNN_START_ERR,
    SOFTBUS_NETWORK_BLE_CONNECT_SUSPEND,
    SOFTBUS_CENTER_SERVER_INIT_FAILED,
    SOFTBUS_KV_DB_PTR_NULL,
    SOFTBUS_KV_PUT_DB_FAIL,
    SOFTBUS_KV_DB_INIT_FAIL,
    SOFTBUS_KV_DEL_DB_FAIL,
    SOFTBUS_KV_GET_DB_FAIL,
    SOFTBUS_KV_CLOUD_DISABLED,
    SOFTBUS_KV_CLOUD_SYNC_FAIL,
    SOFTBUS_KV_CLOUD_SYNC_ASYNC_FAILED,
    SOFTBUS_KV_REGISTER_SYNC_LISTENER_FAILED,
    SOFTBUS_KV_UNREGISTER_SYNC_LISTENER_FAILED,
    SOFTBUS_KV_REGISTER_DATA_LISTENER_FAILED,
    SOFTBUS_KV_UNREGISTER_DATA_LISTENER_FAILED,
    SOFTBUS_KV_CONVERT_STRING_FAILED,
    SOFTBUS_KV_CONVERT_BYTES_FAILED,
    SOFTBUS_KV_SET_CLOUD_ABILITY_FAILED,
    SOFTBUS_NETWORK_PEER_NODE_CONNECT,
    SOFTBUS_NETWORK_PC_RESTRICT,
    SOFTBUS_NETWORK_PTK_GEN_FAILED,
    SOFTBUS_NETWORK_UNPACK_DATA_FAILED,
    SOFTBUS_NETWORK_PACK_DATA_FAILED,
    SOFTBUS_NETWORK_SET_NODE_INFO_ERR,

    /* errno begin: -((203 << 21) | (4 << 16) | (1 << 12) | 0x0FFF) */
    SOFTBUS_LANE_ERR_BASE = SOFTBUS_SUB_ERRNO(LNN_SUB_MODULE_CODE, LNN_LANE_MODULE_CODE),
    SOFTBUS_LANE_SELECT_FAIL,
    SOFTBUS_LANE_TRIGGER_LINK_FAIL,
    SOFTBUS_LANE_GET_LEDGER_INFO_ERR,
    SOFTBUS_LANE_DETECT_FAIL,
    SOFTBUS_LANE_ID_GENERATE_FAIL,
    SOFTBUS_LANE_GUIDE_BUILD_FAIL,
    SOFTBUS_LANE_NOT_FOUND,
    SOFTBUS_LANE_RESOURCE_NOT_FOUND,
    SOFTBUS_LANE_NO_AVAILABLE_LINK,
    SOFTBUS_LANE_GET_LINK_SCORE_ERR,
    SOFTBUS_LANE_BUILD_LINK_FAIL,
    SOFTBUS_LANE_BUILD_LINK_TIMEOUT,
    SOFTBUS_LANE_DETECT_TIMEOUT,
    SOFTBUS_LANE_GUIDE_NO_AVAILABLE_LINK,
    SOFTBUS_LANE_RESULT_REPORT_ERR,
    SOFTBUS_LANE_LIST_ERR,
    SOFTBUS_LANE_BT_OFF,
    SOFTBUS_LANE_LOCAL_NO_BR_CAP,
    SOFTBUS_LANE_REMOTE_NO_BR_CAP,
    SOFTBUS_LANE_LOCAL_NO_BLE_CAP,
    SOFTBUS_LANE_REMOTE_NO_BLE_CAP,
    SOFTBUS_LANE_LOCAL_NO_BLE_DIRECT_CAP,
    SOFTBUS_LANE_REMOTE_NO_BLE_DIRECT_CAP,
    SOFTBUS_LANE_WIFI_OFF,
    SOFTBUS_LANE_LOCAL_NO_WIFI_CAP,
    SOFTBUS_LANE_REMOTE_NO_WIFI_CAP,
    SOFTBUS_LANE_LOCAL_NO_WIFI_DIRECT_CAP,
    SOFTBUS_LANE_REMOTE_NO_WIFI_DIRECT_CAP,
    SOFTBUS_LANE_LOCAL_NO_COC_CAP,
    SOFTBUS_LANE_REMOTE_NO_COC_CAP,
    SOFTBUS_LANE_WIFI_BAND_ERR,
    SOFTBUS_LANE_GET_WIFI_INFO_FAIL,
    SOFTBUS_LANE_CHANNEL_UNKNOWN,
    SOFTBUS_LANE_SUCC_AFTER_CANCELED,
    SOFTBUS_LANE_PTK_NOT_MATCH,

    /* errno begin: -((203 << 21) | (2 << 16) | 0xFFFF) */
    SOFTBUS_CONN_ERR_BASE = SOFTBUS_ERRNO(CONN_SUB_MODULE_CODE),
    SOFTBUS_CONN_FAIL = SOFTBUS_CONN_ERR_BASE + 1,
    SOFTBUS_CONN_MANAGER_TYPE_NOT_SUPPORT = SOFTBUS_CONN_ERR_BASE + 2,
    SOFTBUS_CONN_MANAGER_OP_NOT_SUPPORT = SOFTBUS_CONN_ERR_BASE + 3,
    SOFTBUS_CONN_MANAGER_PKT_LEN_INVALID = SOFTBUS_CONN_ERR_BASE + 4,
    SOFTBUS_CONN_MANAGER_LIST_NOT_INIT = SOFTBUS_CONN_ERR_BASE + 5,
    SOFTBUS_CONN_INVALID_CONN_TYPE = SOFTBUS_CONN_ERR_BASE + 6,
    SOFTBUS_CONNECTION_BASE = SOFTBUS_CONN_ERR_BASE + 7,
    SOFTBUS_CONNECTION_ERR_CLOSED = SOFTBUS_CONN_ERR_BASE + 8,
    SOFTBUS_CONNECTION_ERR_DRIVER_CONGEST = SOFTBUS_CONN_ERR_BASE + 9,
    SOFTBUS_CONNECTION_ERR_SOFTBUS_CONGEST = SOFTBUS_CONN_ERR_BASE + 10,
    SOFTBUS_CONNECTION_ERR_CONNID_INVALID = SOFTBUS_CONN_ERR_BASE + 11,
    SOFTBUS_CONNECTION_ERR_SENDQUEUE_FULL = SOFTBUS_CONN_ERR_BASE + 12,
    SOFTBUS_CONN_SERVER_INIT_FAILED = SOFTBUS_CONN_ERR_BASE + 13,

    /* common error for bluetooth medium */
    SOFTBUS_CONN_BLUETOOTH_OFF = SOFTBUS_CONN_ERR_BASE + 14,

    SOFTBUS_CONN_BR_STATE_TURN_OFF = SOFTBUS_CONN_ERR_BASE + 15,
    SOFTBUS_CONN_BR_INTERNAL_ERR = SOFTBUS_CONN_ERR_BASE + 16,
    SOFTBUS_CONN_BR_INVALID_ADDRESS_ERR = SOFTBUS_CONN_ERR_BASE + 17,
    SOFTBUS_CONN_BR_CONNECT_TIMEOUT_ERR = SOFTBUS_CONN_ERR_BASE + 18,
    SOFTBUS_CONN_BR_CONNECTION_NOT_EXIST_ERR = SOFTBUS_CONN_ERR_BASE + 19,
    SOFTBUS_CONN_BR_CONNECTION_NOT_READY_ERR = SOFTBUS_CONN_ERR_BASE + 20,
    SOFTBUS_CONN_BR_CONNECTION_INVALID_SOCKET = SOFTBUS_CONN_ERR_BASE + 21,
    SOFTBUS_CONN_BR_UNDERLAY_CONNECT_FAIL = SOFTBUS_CONN_ERR_BASE + 22,
    SOFTBUS_CONN_BR_UNDERLAY_WRITE_FAIL = SOFTBUS_CONN_ERR_BASE + 23,
    SOFTBUS_CONN_BR_UNDERLAY_SOCKET_CLOSED = SOFTBUS_CONN_ERR_BASE + 24,
    SOFTBUS_CONN_BR_UNDERLAY_READ_FAIL = SOFTBUS_CONN_ERR_BASE + 25,

    SOFTBUS_CONN_BLE_INTERNAL_ERR = SOFTBUS_CONN_ERR_BASE + 26,
    SOFTBUS_CONN_BLE_CONNECT_PREVENTED_ERR = SOFTBUS_CONN_ERR_BASE + 27,
    SOFTBUS_CONN_BLE_DISCONNECT_DIRECTLY_ERR = SOFTBUS_CONN_ERR_BASE + 28,
    SOFTBUS_CONN_BLE_DISCONNECT_WAIT_TIMEOUT_ERR = SOFTBUS_CONN_ERR_BASE + 29,
    SOFTBUS_CONN_BLE_CONNECT_TIMEOUT_ERR = SOFTBUS_CONN_ERR_BASE + 30,
    SOFTBUS_CONN_BLE_EXCHANGE_BASIC_INFO_TIMEOUT_ERR = SOFTBUS_CONN_ERR_BASE + 31,
    SOFTBUS_CONN_BLE_CONNECTION_NOT_EXIST_ERR = SOFTBUS_CONN_ERR_BASE + 32,
    SOFTBUS_CONN_BLE_CONNECTION_NOT_READY_ERR = SOFTBUS_CONN_ERR_BASE + 33,
    SOFTBUS_CONN_BLE_CLIENT_STATE_UNEXPECTED_ERR = SOFTBUS_CONN_ERR_BASE + 34,
    SOFTBUS_CONN_BLE_SERVER_STATE_UNEXPECTED_ERR = SOFTBUS_CONN_ERR_BASE + 35,
    SOFTBUS_CONN_BLE_SERVER_START_SERVER_TIMEOUT_ERR = SOFTBUS_CONN_ERR_BASE + 36,
    SOFTBUS_CONN_BLE_SERVER_STOP_SERVER_TIMEOUT_ERR = SOFTBUS_CONN_ERR_BASE + 37,
    SOFTBUS_CONN_BLE_UNDERLAY_DISCONNECT_TIMEOUT_ERR = SOFTBUS_CONN_ERR_BASE + 38,
    SOFTBUS_CONN_BLE_UNDERLAY_CLIENT_REGISTER_ERR = SOFTBUS_CONN_ERR_BASE + 39,
    SOFTBUS_CONN_BLE_UNDERLAY_CLIENT_CONNECT_ERR = SOFTBUS_CONN_ERR_BASE + 40,
    SOFTBUS_CONN_BLE_UNDERLAY_CLIENT_CONNECT_FAIL = SOFTBUS_CONN_ERR_BASE + 41,
    SOFTBUS_CONN_BLE_UNDERLAY_CLIENT_DISCONNECT_ERR = SOFTBUS_CONN_ERR_BASE + 42,
    SOFTBUS_CONN_BLE_UNDERLAY_CLIENT_DISCONNECT_FAIL = SOFTBUS_CONN_ERR_BASE + 43,
    SOFTBUS_CONN_BLE_UNDERLAY_CLIENT_SEARCH_SERVICE_ERR = SOFTBUS_CONN_ERR_BASE + 44,
    SOFTBUS_CONN_BLE_UNDERLAY_CLIENT_SEARCH_SERVICE_FAIL = SOFTBUS_CONN_ERR_BASE + 45,
    SOFTBUS_CONN_BLE_UNDERLAY_CLIENT_GET_SERVICE_ERR = SOFTBUS_CONN_ERR_BASE + 46,
    SOFTBUS_CONN_BLE_UNDERLAY_CLIENT_REGISTER_NOTIFICATION_ERR = SOFTBUS_CONN_ERR_BASE + 47,
    SOFTBUS_CONN_BLE_UNDERLAY_CLIENT_REGISTER_NOTIFICATION_FAIL = SOFTBUS_CONN_ERR_BASE + 48,
    SOFTBUS_CONN_BLE_UNDERLAY_CLIENT_CONFIGURE_MTU_ERR = SOFTBUS_CONN_ERR_BASE + 49,
    SOFTBUS_CONN_BLE_UNDERLAY_CLIENT_CONFIGURE_MTU_FAIL = SOFTBUS_CONN_ERR_BASE + 50,
    SOFTBUS_CONN_BLE_UNDERLAY_CLIENT_WRITE_ERR = SOFTBUS_CONN_ERR_BASE + 51,
    SOFTBUS_CONN_BLE_UNDERLAY_SERVER_REGISTER_CALLBACK_ERR = SOFTBUS_CONN_ERR_BASE + 52,
    SOFTBUS_CONN_BLE_UNDERLAY_SERVER_ADD_SERVICE_ERR = SOFTBUS_CONN_ERR_BASE + 53,
    SOFTBUS_CONN_BLE_UNDERLAY_SERVER_ADD_SERVICE_FAIL = SOFTBUS_CONN_ERR_BASE + 54,
    SOFTBUS_CONN_BLE_UNDERLAY_CHARACTERISTIC_ADD_ERR = SOFTBUS_CONN_ERR_BASE + 55,
    SOFTBUS_CONN_BLE_UNDERLAY_CHARACTERISTIC_ADD_FAIL = SOFTBUS_CONN_ERR_BASE + 56,
    SOFTBUS_CONN_BLE_UNDERLAY_DESCRIPTOR_ADD_ERR = SOFTBUS_CONN_ERR_BASE + 57,
    SOFTBUS_CONN_BLE_UNDERLAY_DESCRIPTOR_ADD_FAIL = SOFTBUS_CONN_ERR_BASE + 58,
    SOFTBUS_CONN_BLE_UNDERLAY_SERVICE_START_ERR = SOFTBUS_CONN_ERR_BASE + 59,
    SOFTBUS_CONN_BLE_UNDERLAY_SERVICE_START_FAIL = SOFTBUS_CONN_ERR_BASE + 60,
    SOFTBUS_CONN_BLE_UNDERLAY_SERVICE_STOP_ERR = SOFTBUS_CONN_ERR_BASE + 61,
    SOFTBUS_CONN_BLE_UNDERLAY_SERVICE_STOP_FAIL = SOFTBUS_CONN_ERR_BASE + 62,
    SOFTBUS_CONN_BLE_UNDERLAY_SERVICE_DELETE_ERR = SOFTBUS_CONN_ERR_BASE + 63,
    SOFTBUS_CONN_BLE_UNDERLAY_SERVICE_DELETE_FAIL = SOFTBUS_CONN_ERR_BASE + 64,
    SOFTBUS_CONN_BLE_UNDERLAY_UNKNOWN_SERVICE_ERR = SOFTBUS_CONN_ERR_BASE + 65,
    SOFTBUS_CONN_BLE_UNDERLAY_UNKNOWN_CHARACTERISTIC_ERR = SOFTBUS_CONN_ERR_BASE + 66,
    SOFTBUS_CONN_BLE_UNDERLAY_UNKNOWN_DESCRIPTOR_ERR = SOFTBUS_CONN_ERR_BASE + 67,
    SOFTBUS_CONN_BLE_UNDERLAY_SERVICE_HANDLE_MISMATCH_ERR = SOFTBUS_CONN_ERR_BASE + 68,
    SOFTBUS_CONN_BLE_UNDERLAY_CHARACTERISTIC_HANDLE_MISMATCH_ERR = SOFTBUS_CONN_ERR_BASE + 69,
    SOFTBUS_CONN_BLE_UNDERLAY_DESCRIPTOR_HANDLE_MISMATCH_ERR = SOFTBUS_CONN_ERR_BASE + 70,
    SOFTBUS_CONN_BLE_RECV_MSG_ERROR = SOFTBUS_CONN_ERR_BASE + 71,

    SOFTBUS_CONN_BLE_COC_INTERNAL_ERR = SOFTBUS_CONN_ERR_BASE + 72,
    SOFTBUS_CONN_BLE_COC_INVALID_ADDRESS_ERR = SOFTBUS_CONN_ERR_BASE + 73,
    SOFTBUS_CONN_BLE_COC_CONNECT_TIMEOUT_ERR = SOFTBUS_CONN_ERR_BASE + 74,
    SOFTBUS_CONN_BLE_COC_CONNECTION_NOT_EXIST_ERR = SOFTBUS_CONN_ERR_BASE + 75,
    SOFTBUS_CONN_BLE_COC_CONNECTION_NOT_READY_ERR = SOFTBUS_CONN_ERR_BASE + 76,
    SOFTBUS_CONN_BLE_COC_CONNECTION_INVALID_SOCKET = SOFTBUS_CONN_ERR_BASE + 77,
    SOFTBUS_CONN_BLE_COC_UNDERLAY_CONNECT_FAIL = SOFTBUS_CONN_ERR_BASE + 78,
    SOFTBUS_CONN_BLE_COC_UNDERLAY_WRITE_FAIL = SOFTBUS_CONN_ERR_BASE + 79,
    SOFTBUS_CONN_BLE_COC_UNDERLAY_SOCKET_CLOSED = SOFTBUS_CONN_ERR_BASE + 80,
    SOFTBUS_CONN_BLE_COC_UNDERLAY_READ_FAIL = SOFTBUS_CONN_ERR_BASE + 81,

    SOFTBUS_CONN_LINK_BROADCAST_START_ADV_FAIL = SOFTBUS_CONN_ERR_BASE + 82,
    SOFTBUS_CONN_LINK_BROADCAST_QUERY_RPA_FAIL = SOFTBUS_CONN_ERR_BASE + 83,

    SOFTBUS_BLECONNECTION_REG_GATTS_CALLBACK_FAIL = SOFTBUS_CONN_ERR_BASE + 84,
    SOFTBUS_GATTC_INTERFACE_FAILED = SOFTBUS_CONN_ERR_BASE + 85,

    SOFTBUS_TCPCONNECTION_SOCKET_ERR = SOFTBUS_CONN_ERR_BASE + 86,
    SOFTBUS_TCPFD_NOT_IN_TRIGGER = SOFTBUS_CONN_ERR_BASE + 87,
    SOFTBUS_CONN_BLE_DIRECT_INIT_FAILED = SOFTBUS_CONN_ERR_BASE + 88,
    SOFTBUS_SOCKET_ADDR_ERR = SOFTBUS_CONN_ERR_BASE + 89,
    SOFTBUS_SOCKET_BIND_ERR = SOFTBUS_CONN_ERR_BASE + 90,
    SOFTBUS_CONN_BLE_REUSE_FAILED = SOFTBUS_CONN_ERR_BASE + 91,

    SOFTBUS_CONN_PV1_WAIT_CONNECT_RESPONSE_TIMEOUT = SOFTBUS_CONN_ERR_BASE + 92,
    SOFTBUS_CONN_PV2_WAIT_CONNECT_RESPONSE_TIMEOUT = SOFTBUS_CONN_ERR_BASE + 93,
    SOFTBUS_CONN_HV1_WAIT_CONNECT_RESPONSE_TIMEOUT = SOFTBUS_CONN_ERR_BASE + 94,
    SOFTBUS_CONN_HV2_WAIT_CONNECT_RESPONSE_TIMEOUT = SOFTBUS_CONN_ERR_BASE + 95,

    SOFTBUS_CONN_COND_WAIT_FAIL = SOFTBUS_CONN_ERR_BASE + 96,
    SOFTBUS_CONN_INTERNAL_ERR = SOFTBUS_CONN_ERR_BASE + 97,
    SOFTBUS_CONN_LISTENER_NOT_IDLE = SOFTBUS_CONN_ERR_BASE + 98,
    SOFTBUS_CONN_GET_TIME_FAIL = SOFTBUS_CONN_ERR_BASE + 99,
    SOFTBUS_CONN_GET_MSG_FAIL = SOFTBUS_CONN_ERR_BASE + 100,
    SOFTBUS_COMM_BLE_ENABLE_ERR = SOFTBUS_CONN_ERR_BASE + 101,
    SOFTBUS_COMM_BLE_DISABLE_ERR = SOFTBUS_CONN_ERR_BASE + 102,
    SOFTBUS_COMM_BLUETOOTH_ADD_STATE_LISTENER_ERR = SOFTBUS_CONN_ERR_BASE + 103,
    SOFTBUS_COMM_BLUETOOTH_UNDERLAY_GET_ADDR_ERR = SOFTBUS_CONN_ERR_BASE + 104,
    SOFTBUS_COMM_BLUETOOTH_UNDERLAY_SET_NAME_ERR = SOFTBUS_CONN_ERR_BASE + 105,
    SOFTBUS_COMM_BLUETOOTH_UNDERLAY_REGISTER_CB_ERR = SOFTBUS_CONN_ERR_BASE + 106,
    SOFTBUS_COMM_BLUETOOTH_SWITCH_STATE_ERR = SOFTBUS_CONN_ERR_BASE + 107,
    SOFTBUS_COMM_BLUETOOTH_ACL_SWITCH_STATE_ERR = SOFTBUS_CONN_ERR_BASE + 108,
    SOFTBUS_CONN_BR_SOCKET_CONNECT_ERR = SOFTBUS_CONN_ERR_BASE + 109,
    SOFTBUS_CONN_BR_SPP_SERVER_ERR = SOFTBUS_CONN_ERR_BASE + 110,
    SOFTBUS_CONN_BR_CREATE_QUEUE_FAIL = SOFTBUS_CONN_ERR_BASE + 111,
    SOFTBUS_CONN_BR_SET_PENDING_PACKET_ERR = SOFTBUS_CONN_ERR_BASE + 112,
    SOFTBUS_CONN_BLE_UNDERLAY_CLIENT_SET_FASTEST_ERR = SOFTBUS_CONN_ERR_BASE + 113,
    SOFTBUS_CONN_BLE_UNDERLAY_CLIENT_SET_PRIORITY_ERR = SOFTBUS_CONN_ERR_BASE + 114,
    SOFTBUS_CONN_BLE_UNDERLAY_SERVER_CONNECT_ERR = SOFTBUS_CONN_ERR_BASE + 115,
    SOFTBUS_CONN_BLE_UNDERLAY_SERVER_DISCONNECT_ERR = SOFTBUS_CONN_ERR_BASE + 116,
    SOFTBUS_CONN_BLE_UNDERLAY_SERVER_SEND_RESPONSE_ERR = SOFTBUS_CONN_ERR_BASE + 117,
    SOFTBUS_CONN_BLE_UNDERLAY_SERVER_SEND_INDICATION_ERR = SOFTBUS_CONN_ERR_BASE + 118,
    SOFTBUS_CONN_BLE_CHECK_STATUS_ERR = SOFTBUS_CONN_ERR_BASE + 119,
    SOFTBUS_CONN_SOCKET_INTERNAL_ERR = SOFTBUS_CONN_ERR_BASE + 120,
    SOFTBUS_CONN_SOCKET_GET_INTERFACE_ERR = SOFTBUS_CONN_ERR_BASE + 121,
    SOFTBUS_CONN_SOCKET_FCNTL_ERR = SOFTBUS_CONN_ERR_BASE + 122,
    SOFTBUS_CONN_BYTES_TO_HEX_STR_ERR = SOFTBUS_CONN_ERR_BASE + 123,
    SOFTBUS_CONN_HEX_STR_TO_BYTES_ERR = SOFTBUS_CONN_ERR_BASE + 124,

    SOFTBUS_CONN_COAP_INTERNAL_ERR = SOFTBUS_CONN_ERR_BASE + 125,
    SOFTBUS_CONN_COAP_DMSG_CONNET_ERR = SOFTBUS_CONN_ERR_BASE + 126,
    SOFTBUS_CONN_COAP_DMSG_CLOSE_ERR = SOFTBUS_CONN_ERR_BASE + 127,
    SOFTBUS_CONN_COAP_DMSG_SEND_ERR = SOFTBUS_CONN_ERR_BASE + 128,
    SOFTBUS_CONN_COAP_DMSG_REGISTE_LOG_ERR = SOFTBUS_CONN_ERR_BASE + 129,

    SOFTBUS_CONN_LEGACY_INTERNAL_ERR = SOFTBUS_CONN_ERR_BASE + 130,
    SOFTBUS_CONN_LEGACY_GET_CHANNEL_FAIL = SOFTBUS_CONN_ERR_BASE + 131,
    SOFTBUS_CONN_LEGACY_BLE_GET_CONNECTION_FAIL = SOFTBUS_CONN_ERR_BASE + 132,
    SOFTBUS_CONN_LEGACY_BR_GET_CONNECTION_FAIL = SOFTBUS_CONN_ERR_BASE + 133,
    SOFTBUS_CONN_LEGACY_HML_DEVICEID_ERR = SOFTBUS_CONN_ERR_BASE + 134,
    SOFTBUS_CONN_LEGACY_HML_CONNECT_FAIL = SOFTBUS_CONN_ERR_BASE + 135,
    SOFTBUS_CONN_LEGACY_HML_INTERNAL_ERR = SOFTBUS_CONN_ERR_BASE + 136,
    SOFTBUS_CONN_LEGACY_P2P_INTERNAL_ERR = SOFTBUS_CONN_ERR_BASE + 137,
    SOFTBUS_CONN_LEGACY_CREAT_LISTENER_MODULE_ERR = SOFTBUS_CONN_ERR_BASE + 138,
    SOFTBUS_CONN_LEGACY_TCP_INTERNAL_ERR = SOFTBUS_CONN_ERR_BASE + 139,
    SOFTBUS_CONN_LEGACY_TCP_SEND_SIZE_ERR = SOFTBUS_CONN_ERR_BASE + 140,
    SOFTBUS_CONN_LEGACY_ADD_TRIGGER_FAIL = SOFTBUS_CONN_ERR_BASE + 141,
    SOFTBUS_CONN_LEGACY_HANDLE_OPEN_REQ_FAIL = SOFTBUS_CONN_ERR_BASE + 142,
    SOFTBUS_CONN_LEGACY_POST_TIME_OUT_FAIL = SOFTBUS_CONN_ERR_BASE + 143,
    SOFTBUS_CONN_LEGACY_POST_MSG_TO_LOOPER_FAIL = SOFTBUS_CONN_ERR_BASE + 144,
    SOFTBUS_CONN_LEGACY_GET_CHANNEL_MANAGER_FAIL = SOFTBUS_CONN_ERR_BASE + 145,
    SOFTBUS_CONN_LEGACY_SEND_MESSAGE_FAIL = SOFTBUS_CONN_ERR_BASE + 146,
    SOFTBUS_CONN_LEGACY_SEND_MESSAGE_DELAYED_FAIL = SOFTBUS_CONN_ERR_BASE + 147,
    SOFTBUS_CONN_LEGACY_GET_P2P_ABILITY_FAIL = SOFTBUS_CONN_ERR_BASE + 148,
    SOFTBUS_CONN_LEGACY_GET_GROUP_INFO_FAIL = SOFTBUS_CONN_ERR_BASE + 149,

    SOFTBUS_CONN_BLE_COC_RETRY_OPEN_SERVER = SOFTBUS_CONN_ERR_BASE + 150,
    SOFTBUS_CONN_BR_RETRY_OPEN_SERVER = SOFTBUS_CONN_ERR_BASE + 151,

    SOFTBUS_CONN_HV2_BLE_TRIGGER_TIMEOUT = SOFTBUS_CONN_ERR_BASE + 152,
    SOFTBUS_CONN_HV2_AUTH_WIFI_TRIGGER_TIMEOUT = SOFTBUS_CONN_ERR_BASE + 153,
    SOFTBUS_CONN_HV2_AUTH_BLE_TRIGGER_TIMEOUT = SOFTBUS_CONN_ERR_BASE + 154,
    SOFTBUS_CONN_HV2_AUTH_BR_TRIGGER_TIMEOUT = SOFTBUS_CONN_ERR_BASE + 155,

    SOFTBUS_CONN_BLE_FAST_CONNECT_FAILED_NOT_RETRY = SOFTBUS_CONN_ERR_BASE + 156,

    SOFTBUS_CONN_PV1_INTERNAL_ERR0R = SOFTBUS_CONN_ERR_BASE + 600,
    SOFTBUS_CONN_PV1_WAIT_REUSE_RESPONSE_TIMEOUT = SOFTBUS_CONN_ERR_BASE + 601,
    SOFTBUS_CONN_PV1_WAIT_AUTH_HANDSHAKE_TIMEOUT = SOFTBUS_CONN_ERR_BASE + 602,
    SOFTBUS_CONN_PV1_IF_ROLE_INVALID = SOFTBUS_CONN_ERR_BASE + 603,
    SOFTBUS_CONN_PV1_IF_NOT_AVAILABLE = SOFTBUS_CONN_ERR_BASE + 604,
    SOFTBUS_CONN_PV1_REQUEST_ROLE_INVALID = SOFTBUS_CONN_ERR_BASE + 605,
    SOFTBUS_CONN_PV1_APPLY_GC_IP_FAIL = SOFTBUS_CONN_ERR_BASE + 606,
    SOFTBUS_CONN_PV1_GC_CONNECTED_TO_ANOTHER_DEVICE = SOFTBUS_CONN_ERR_BASE + 607,
    SOFTBUS_CONN_PV1_BOTH_GO_ERR = SOFTBUS_CONN_ERR_BASE + 608,
    SOFTBUS_CONN_PV1_REUSE_FAIL = SOFTBUS_CONN_ERR_BASE + 609,
    SOFTBUS_CONN_PV1_CONNECT_GROUP_FAIL = SOFTBUS_CONN_ERR_BASE + 610,
    SOFTBUS_CONN_PV1_BUSY_ERR = SOFTBUS_CONN_ERR_BASE + 611,
    SOFTBUS_CONN_PV1_CONNECTED_WITH_MISMATCHED_ROLE_ERR = SOFTBUS_CONN_ERR_BASE + 612,
    SOFTBUS_CONN_PV1_WRONG_NEGOTIATION_MSG_ERR = SOFTBUS_CONN_ERR_BASE + 613,
    SOFTBUS_CONN_PV1_USED_BY_OTHER_SERVICE_ERR = SOFTBUS_CONN_ERR_BASE + 614,
    SOFTBUS_CONN_PV1_PEER_GC_CONNECTED_TO_ANOTHER_DEVICE = SOFTBUS_CONN_ERR_BASE + 615,
    SOFTBUS_CONN_PV1_LOCAL_DISCONNECTED_REMOTE_CONNECTED = SOFTBUS_CONN_ERR_BASE + 616,
    SOFTBUS_CONN_PV1_GC_AVAILABLE_WITH_MISMATCHED_ROLE_ERR = SOFTBUS_CONN_ERR_BASE + 617,
    SOFTBUS_CONN_PV1_PEER_ROLE_INVALID = SOFTBUS_CONN_ERR_BASE + 618,
    SOFTBUS_CONN_NEED_RENEGOTIATE = SOFTBUS_CONN_ERR_BASE + 619,
    SOFTBUS_CONN_HVA_ERROR_SINK_NO_LINK = SOFTBUS_CONN_ERR_BASE + 620,
    SOFTBUS_CONN_AVAILABLE_LINK_LIST_EMPTY = SOFTBUS_CONN_ERR_BASE + 621,
    SOFTBUS_CONN_PREFER_LINK_LIST_EMPTY = SOFTBUS_CONN_ERR_BASE + 622,
    SOFTBUS_CONN_GET_RECOMMEND_LINK_FAIL = SOFTBUS_CONN_ERR_BASE + 623,
    SOFTBUS_CONN_SWITCH_NOTIFY_FAIL = SOFTBUS_CONN_ERR_BASE + 624,
    SOFTBUS_CONN_APPLY_SUBNET_FAIL = SOFTBUS_CONN_ERR_BASE + 625,
    SOFTBUS_CONN_SOURCE_IP_TO_IPV4_FAIL = SOFTBUS_CONN_ERR_BASE + 626,
    SOFTBUS_CONN_SINK_IP_TO_IPV4_FAIL = SOFTBUS_CONN_ERR_BASE + 627,
    SOFTBUS_CONN_CONVERT_LOCAL_IP_FAIL = SOFTBUS_CONN_ERR_BASE + 628,
    SOFTBUS_CONN_CONVERT_REMOTE_IP_FAIL = SOFTBUS_CONN_ERR_BASE + 629,
    SOFTBUS_CONN_FIND_DOT_FAIL = SOFTBUS_CONN_ERR_BASE + 630,
    SOFTBUS_CONN_AUTH_START_LISTEN_FAIL = SOFTBUS_CONN_ERR_BASE + 631,
    SOFTBUS_CONN_ACTION_POST_DATA_FAILED = SOFTBUS_CONN_ERR_BASE + 632,
    SOFTBUS_CONN_AUTH_POST_DATA_FAILED = SOFTBUS_CONN_ERR_BASE + 633,
    SOFTBUS_CONN_SHARE_POST_DATA_FAILED = SOFTBUS_CONN_ERR_BASE + 634,
    SOFTBUS_CONN_CREATE_GROUP_FAILED = SOFTBUS_CONN_ERR_BASE + 635,
    SOFTBUS_CONN_HV2_RENEGO_TO_P2P = SOFTBUS_CONN_ERR_BASE + 636,
    SOFTBUS_CONN_HV2_CONNECT_NOTIFY_FAIL = SOFTBUS_CONN_ERR_BASE + 637,
    SOFTBUS_CONN_LNN_PROTOCOL_IP_NOT_SUPPORTED = SOFTBUS_CONN_ERR_BASE + 638,
    SOFTBUS_CONN_HV2_PRE_ASSIGN_PORT_FAILED = SOFTBUS_CONN_ERR_BASE + 639,
    SOFTBUS_CONN_HV2_CONFIG_IP_FAIL = SOFTBUS_CONN_ERR_BASE + 640,
    SOFTBUS_CONN_HV2_AUTH_OPEN_TCP_CONNECTION_FAIL = SOFTBUS_CONN_ERR_BASE + 641,
    SOFTBUS_CONN_HV2_AUTH_OPEN_CONNECTION_TIMEOUT_FAIL = SOFTBUS_CONN_ERR_BASE + 642,
    SOFTBUS_CONN_SOURCE_REUSE_LINK_FAILED = SOFTBUS_CONN_ERR_BASE + 643,
    SOFTBUS_CONN_HV2_BUILD_TRIGGER_MSG_FAILED = SOFTBUS_CONN_ERR_BASE + 644,
    SOFTBUS_CONN_HV2_SEND_TRIGGER_MSG_FAILED = SOFTBUS_CONN_ERR_BASE + 645,
    SOFTBUS_CONN_SINK_NO_LINK_FAILED = SOFTBUS_CONN_ERR_BASE + 646,
    SOFTBUS_CONN_POST_DATA_FAILED = SOFTBUS_CONN_ERR_BASE + 647,
    SOFTBUS_CONN_PV2_BOTH_GO = SOFTBUS_CONN_ERR_BASE + 648,
    SOFTBUS_CONN_PV2_PEER_GC_CONNECTED_TO_ANOTHER_DEVICE = SOFTBUS_CONN_ERR_BASE + 649,
    SOFTBUS_CONN_PV2_COPY_SSID_FAILED = SOFTBUS_CONN_ERR_BASE + 650,
    SOFTBUS_CONN_PV2_COPY_SHARE_KEY_FAILED = SOFTBUS_CONN_ERR_BASE + 651,
    SOFTBUS_CONN_PV2_SET_PEER_WIFI_CONFIG_FAILED = SOFTBUS_CONN_ERR_BASE + 652,
    SOFTBUS_CONN_OPEN_SOCKET_FAILED = SOFTBUS_CONN_ERR_BASE + 653,
    SOFTBUS_CONN_COPY_INTERFACE_NAME_FAILED = SOFTBUS_CONN_ERR_BASE + 654,
    SOFTBUS_CONN_GET_IFR_CONF_FAILED = SOFTBUS_CONN_ERR_BASE + 655,
    SOFTBUS_CONN_INET_NTOP_FAILED = SOFTBUS_CONN_ERR_BASE + 656,
    SOFTBUS_CONN_CONVERT_GATEWAY_TO_INTARRAY_FAILED = SOFTBUS_CONN_ERR_BASE + 657,
    SOFTBUS_CONN_PV2_BUILD_RESPONSE_FAILED = SOFTBUS_CONN_ERR_BASE + 658,
    SOFTBUS_CONN_PV2_BUILD_REQUEST2_FAILED = SOFTBUS_CONN_ERR_BASE + 659,
    SOFTBUS_CONN_PV2_BUILD_REQUEST_FAILED = SOFTBUS_CONN_ERR_BASE + 660,
    SOFTBUS_CONN_PV2_GC_AVAILABLE_WITH_MISMATCHED_ROLE = SOFTBUS_CONN_ERR_BASE + 661,
    SOFTBUS_CONN_PV2_AUTH_START_LISTEN_FAILED = SOFTBUS_CONN_ERR_BASE + 662,
    SOFTBUS_CONN_PV2_SOURCE_REUSE_LINK_TIMEOUT = SOFTBUS_CONN_ERR_BASE + 663,
    SOFTBUS_CONN_PV2_WIFI_DIRECT_SINK_GET_LINK_INFO_FAILED = SOFTBUS_CONN_ERR_BASE + 664,
    SOFTBUS_CONN_PV2_P2P_GC_AVAILABLE_WITH_MISMATCHED_ROLE = SOFTBUS_CONN_ERR_BASE + 665,
    SOFTBUS_CONN_PV2_P2P_GC_CONNECTED_TO_ANOTHER_DEVICE = SOFTBUS_CONN_ERR_BASE + 666,
    SOFTBUS_CONN_CREATE_GROUP_TIMEOUT = SOFTBUS_CONN_ERR_BASE + 667,
    SOFTBUS_CONN_DESTROY_GROUP_TIMEOUT = SOFTBUS_CONN_ERR_BASE + 668,
    SOFTBUS_CONN_CONN_NOTIFY_TIMEOUT = SOFTBUS_CONN_ERR_BASE + 669,
    SOFTBUS_CONN_CONNECT_GROUP_TIMEOUT = SOFTBUS_CONN_ERR_BASE + 670,
    SOFTBUS_CONN_DISCONNECT_GROUP_TIMEOUT = SOFTBUS_CONN_ERR_BASE + 671,
    SOFTBUS_CONN_SWITCH_NOTIFY_TIMEOUT = SOFTBUS_CONN_ERR_BASE + 672,
    SOFTBUS_CONN_HV2_RETRY_FOR_AVOID_BLOCK = SOFTBUS_CONN_ERR_BASE + 673,
    SOFTBUS_CONN_UNKNOWN_ROLE = SOFTBUS_CONN_ERR_BASE + 674,
    SOFTBUS_CONN_CONFIG_IPV6_CONFIG_IP_FAILED = SOFTBUS_CONN_ERR_BASE + 675,
    SOFTBUS_CONN_NOT_SUPPORT_FAILED = SOFTBUS_CONN_ERR_BASE + 676,
    SOFTBUS_CONN_GET_LOCAL_WIFI_CONFIG_FAILED = SOFTBUS_CONN_ERR_BASE + 677,
    SOFTBUS_CONN_ARRAY_EMPTY_FAILED = SOFTBUS_CONN_ERR_BASE + 678,
    SOFTBUS_CONN_OPEN_CONNECTION_GET_REMOTE_UUID_FAILED = SOFTBUS_CONN_ERR_BASE + 679,
    SOFTBUS_CONN_OPEN_CONNECTION_COPY_IP_FAILED = SOFTBUS_CONN_ERR_BASE + 680,
    SOFTBUS_CONN_OPEN_CONNECTION_COPY_UUID_FAILED = SOFTBUS_CONN_ERR_BASE + 681,
    SOFTBUS_CONN_ENTITY_UNAVAILABLE = SOFTBUS_CONN_ERR_BASE + 682,
    SOFTBUS_CONN_REMOTE_DEVICE_ID_EMPTY = SOFTBUS_CONN_ERR_BASE + 683,
    SOFTBUS_CONN_GET_PROCESSOR_FAILED = SOFTBUS_CONN_ERR_BASE + 684,
    SOFTBUS_CONN_INET_PTON_FAILED = SOFTBUS_CONN_ERR_BASE + 685,
    SOFTBUS_CONN_SCAN_IP_NUMBER_FAILED = SOFTBUS_CONN_ERR_BASE + 686,
    SOFTBUS_CONN_NOT_FOUND_FAILED = SOFTBUS_CONN_ERR_BASE + 687,
    SOFTBUS_CONN_GET_LOCAL_IP_BY_REMOTE_IP_FAILED = SOFTBUS_CONN_ERR_BASE + 688,
    SOFTBUS_CONN_P2P_CONNECT_STATE_WIFI_STATE_NOT_STARTED = SOFTBUS_CONN_ERR_BASE + 689,
    SOFTBUS_CONN_P2P_ABNORMAL_DISCONNECTION = SOFTBUS_CONN_ERR_BASE + 690,
    SOFTBUS_CONN_P2P_SHORT_RANGE_CALLBACK_DESTROY_FAILED = SOFTBUS_CONN_ERR_BASE + 691,
    SOFTBUS_CONN_P2P_CLEAR_JOIN_CLIENTS_FAILED = SOFTBUS_CONN_ERR_BASE + 692,
    SOFTBUS_CONN_NULL_PROCESSOR_ERR = SOFTBUS_CONN_ERR_BASE + 693,
    SOFTBUS_CONN_CHECK_NOT_AVAILABLE = SOFTBUS_CONN_ERR_BASE + 694,
    SOFTBUS_CONN_REMOTE_CONFIG_NULL = SOFTBUS_CONN_ERR_BASE + 695,
    SOFTBUS_CONN_PV1_CONNECT_GROUP_TIMEOUT = SOFTBUS_CONN_ERR_BASE + 696,
    SOFTBUS_CONN_CONNECT_COMMAND_TIMEOUT_ERROR = SOFTBUS_CONN_ERR_BASE + 697,
    SOFTBUS_CONN_SET_PEER_WIFI_CONFIG_FAIL = SOFTBUS_CONN_ERR_BASE + 698,
    SOFTBUS_CONN_TRIGGER_MSG_NOT_HANDLED_FAIL = SOFTBUS_CONN_ERR_BASE + 699,
    SOFTBUS_CONN_WIFI_DIRECT_NO_AVAILABLE_INTERFACE = SOFTBUS_CONN_ERR_BASE + 700,
    SOFTBUS_CONN_PARALLELISM_CONFLICT = SOFTBUS_CONN_ERR_BASE + 701,
    SOFTBUS_CONN_NO_NEGO_CHANNEL = SOFTBUS_CONN_ERR_BASE + 702,
    SOFTBUS_CONN_NO_WIFI_CONFIG_INFO = SOFTBUS_CONN_ERR_BASE + 703,
    SOFTBUS_CONN_HV3_WAIT_CONNECTION_TIMEOUT = SOFTBUS_CONN_ERR_BASE + 704,
    SOFTBUS_CONN_HV3_WAITING_HANDSHAKE_RESPONSE_TIMEOUT = SOFTBUS_CONN_ERR_BASE + 705,
    SOFTBUS_CONN_HV2_SWITCHED_CONNECT_TIMEOUT = SOFTBUS_CONN_ERR_BASE + 706,
    SOFTBUS_CONN_HV3_NEGO_CUSTOM_PORT_FAIL = SOFTBUS_CONN_ERR_BASE + 707,
    SOFTBUS_CONN_HV3_NEGO_CUSTOM_PORT_TIMEOUT = SOFTBUS_CONN_ERR_BASE + 708,
    SOFTBUS_CONN_HV3_NO_NEGOTIATE_CHANNEL = SOFTBUS_CONN_ERR_BASE + 709,
    SOFTBUS_CONN_CONNECT_NOTIFY_FAIL = SOFTBUS_CONN_ERR_BASE + 710,
    SOFTBUS_CONN_HV3_CONFIG_IP_FAIL = SOFTBUS_CONN_ERR_BASE + 711,
    SOFTBUS_CONN_ACTION_SEND_DATA_FAIL = SOFTBUS_CONN_ERR_BASE + 712,
    SOFTBUS_CONN_DESTROY_GROUP_FAIL = SOFTBUS_CONN_ERR_BASE + 713,
    SOFTBUS_CONN_HV2_GET_RECOMMEND_LINK_INFO_FAIL = SOFTBUS_CONN_ERR_BASE + 714,
    SOFTBUS_CONN_GET_RECOMMEND_ACTION_LISTEN_CONFIG_FAIL = SOFTBUS_CONN_ERR_BASE + 715,
    SOFTBUS_CONN_START_ACTION_LISTEN_FAIL = SOFTBUS_CONN_ERR_BASE + 716,

    /* soft bus connection mapping short range conflict error code */
    SOFTBUS_CONN_SHORT_RANGE_BASE = SOFTBUS_CONN_ERR_BASE + 1000,
    SOFTBUS_CONN_ACTIVE_TYPE_NO_CONFLICT = SOFTBUS_CONN_ERR_BASE + 1001,
    SOFTBUS_CONN_PASSIVE_TYPE_NO_CONFLICT = SOFTBUS_CONN_ERR_BASE + 1002,
    SOFTBUS_CONN_ACTIVE_TYPE_ERROR = SOFTBUS_CONN_ERR_BASE + 1003,
    SOFTBUS_CONN_PASSIVE_TYPE_ERROR = SOFTBUS_CONN_ERR_BASE + 1004,
    SOFTBUS_CONN_ACTIVE_TYPE_AP_STA_CHIP_CONFLICT = SOFTBUS_CONN_ERR_BASE + 1005,
    SOFTBUS_CONN_PASSIVE_TYPE_AP_STA_CHIP_CONFLICT = SOFTBUS_CONN_ERR_BASE + 1006,
    SOFTBUS_CONN_ACTIVE_TYPE_AP_P2P_CHIP_CONFLICT = SOFTBUS_CONN_ERR_BASE + 1007,
    SOFTBUS_CONN_PASSIVE_TYPE_AP_P2P_CHIP_CONFLICT = SOFTBUS_CONN_ERR_BASE + 1008,
    SOFTBUS_CONN_ACTIVE_TYPE_AP_HML_CHIP_CONFLICT = SOFTBUS_CONN_ERR_BASE + 1009,
    SOFTBUS_CONN_PASSIVE_TYPE_AP_HML_CHIP_CONFLICT = SOFTBUS_CONN_ERR_BASE + 1010,
    SOFTBUS_CONN_ACTIVE_TYPE_AP_STA_HML_CHIP_CONFLICT = SOFTBUS_CONN_ERR_BASE + 1011,
    SOFTBUS_CONN_PASSIVE_TYPE_AP_STA_HML_CHIP_CONFLICT = SOFTBUS_CONN_ERR_BASE + 1012,
    SOFTBUS_CONN_ACTIVE_TYPE_AP_STA_P2P_CHIP_CONFLICT = SOFTBUS_CONN_ERR_BASE + 1013,
    SOFTBUS_CONN_PASSIVE_TYPE_AP_STA_P2P_CHIP_CONFLICT = SOFTBUS_CONN_ERR_BASE + 1014,
    SOFTBUS_CONN_ACTIVE_TYPE_AP_P2P_HML_CHIP_CONFLICT = SOFTBUS_CONN_ERR_BASE + 1015,
    SOFTBUS_CONN_PASSIVE_TYPE_AP_P2P_HML_CHIP_CONFLICT = SOFTBUS_CONN_ERR_BASE + 1016,
    SOFTBUS_CONN_ACTIVE_TYPE_STA_P2P_HML_55_CONFLICT = SOFTBUS_CONN_ERR_BASE + 1017,
    SOFTBUS_CONN_PASSIVE_TYPE_STA_P2P_HML_55_CONFLICT = SOFTBUS_CONN_ERR_BASE + 1018,
    SOFTBUS_CONN_ACTIVE_TYPE_STA_P2P_HML_225_CONFLICT = SOFTBUS_CONN_ERR_BASE + 1019,
    SOFTBUS_CONN_PASSIVE_TYPE_STA_P2P_HML_225_CONFLICT = SOFTBUS_CONN_ERR_BASE + 1020,
    SOFTBUS_CONN_ACTIVE_TYPE_STA_P2P_HML_255_CONFLICT = SOFTBUS_CONN_ERR_BASE + 1021,
    SOFTBUS_CONN_PASSIVE_TYPE_STA_P2P_HML_255_CONFLICT = SOFTBUS_CONN_ERR_BASE + 1022,
    SOFTBUS_CONN_ACTIVE_TYPE_STA_P2P_HML_525_CONFLICT = SOFTBUS_CONN_ERR_BASE + 1023,
    SOFTBUS_CONN_PASSIVE_TYPE_STA_P2P_HML_525_CONFLICT = SOFTBUS_CONN_ERR_BASE + 1024,
    SOFTBUS_CONN_ACTIVE_TYPE_STA_P2P_HML_555_CONFLICT = SOFTBUS_CONN_ERR_BASE + 1025,
    SOFTBUS_CONN_PASSIVE_TYPE_STA_P2P_HML_555_CONFLICT = SOFTBUS_CONN_ERR_BASE + 1026,
    SOFTBUS_CONN_ACTIVE_TYPE_P2P_GO_GC_CONFLICT = SOFTBUS_CONN_ERR_BASE + 1027,
    SOFTBUS_CONN_PASSIVE_TYPE_P2P_GO_GC_CONFLICT = SOFTBUS_CONN_ERR_BASE + 1028,
    SOFTBUS_CONN_ACTIVE_TYPE_P2P_NUM_LIMITED_CONFLICT = SOFTBUS_CONN_ERR_BASE + 1029,
    SOFTBUS_CONN_PASSIVE_TYPE_P2P_NUM_LIMITED_CONFLICT = SOFTBUS_CONN_ERR_BASE + 1030,
    SOFTBUS_CONN_ACTIVE_TYPE_HML_NUM_LIMITED_CONFLICT = SOFTBUS_CONN_ERR_BASE + 1031,
    SOFTBUS_CONN_PASSIVE_TYPE_HML_NUM_LIMITED_CONFLICT = SOFTBUS_CONN_ERR_BASE + 1032,

    /* soft bus connection legacy modules error code */
    SOFTBUS_CONN_NEARBY_CONTROL_CHANNEL_CONNECT_FAILED = SOFTBUS_CONN_ERR_BASE + 2000,
    SOFTBUS_CONN_NEARBY_CONTROL_CHANNEL_DATA_EXCEPTION = SOFTBUS_CONN_ERR_BASE + 2001,
    SOFTBUS_CONN_NEARBY_NO_AVAILABLE_DATA_CHANNEL = SOFTBUS_CONN_ERR_BASE + 2002,
    SOFTBUS_CONN_NEARBY_DEVICE_CONNECT_FAILED = SOFTBUS_CONN_ERR_BASE + 2003,
    SOFTBUS_CONN_NEARBY_DATA_SEND_FAILED = SOFTBUS_CONN_ERR_BASE + 2004,
    SOFTBUS_CONN_NEARBY_SAME_BID_BTAG = SOFTBUS_CONN_ERR_BASE + 2005,
    SOFTBUS_CONN_NEARBY_TIMEOUT = SOFTBUS_CONN_ERR_BASE + 2006,
    SOFTBUS_CONN_NEARBY_PEER_DEVICE_BUSY = SOFTBUS_CONN_ERR_BASE + 2007,
    SOFTBUS_CONN_NEARBY_LOCAL_DEVICE_BUSY = SOFTBUS_CONN_ERR_BASE + 2008,
    SOFTBUS_CONN_NEARBY_ERROR_PEER_DEVICE_IMPORT_DATA = SOFTBUS_CONN_ERR_BASE + 2009,
    SOFTBUS_CONN_NEARBY_PEER_DEVICE_HOSTSPOT_ON = SOFTBUS_CONN_ERR_BASE + 2010,
    SOFTBUS_CONN_NEARBY_LOCAL_DEVICE_HOSTSPOT_ON = SOFTBUS_CONN_ERR_BASE + 2011,
    SOFTBUS_CONN_NEARBY_PEER_SHARE_BUSY = SOFTBUS_CONN_ERR_BASE + 2012,
    SOFTBUS_CONN_NEARBY_CREATE_SOCKET_TIMEOUT = SOFTBUS_CONN_ERR_BASE + 2013,
    SOFTBUS_CONN_NEARBY_CLIENT_CONNECT_FAILED = SOFTBUS_CONN_ERR_BASE + 2014,
    SOFTBUS_CONN_NEARBY_MESSAGE_OPEN_NEARBY_SOCKET_TIMEOUT = SOFTBUS_CONN_ERR_BASE + 2015,
    SOFTBUS_CONN_NEARBY_MESSAGE_REMOTE_REJECTED = SOFTBUS_CONN_ERR_BASE + 2016,
    SOFTBUS_CONN_NEARBY_CONFLICT_REUSE_FAIL = SOFTBUS_CONN_ERR_BASE + 2017,
    SOFTBUS_CONN_NEARBY_ROLE_LOCAL_ALREADY_GC = SOFTBUS_CONN_ERR_BASE + 2018,
    SOFTBUS_CONN_NEARBY_DATACHANNEL_LOCAL_BUSY = SOFTBUS_CONN_ERR_BASE + 2019,
    SOFTBUS_CONN_LEGACY_CONFLICT_NOTIFY_DISCONENCT = SOFTBUS_CONN_ERR_BASE + 2020,

    SOFTBUS_CONN_LEGACY_BLE_CONNECT_TIMEOUT_ERR = SOFTBUS_CONN_ERR_BASE + 2200,
    SOFTBUS_CONN_LEGACY_BLE_CONNECT_INTERNAL_ERR = SOFTBUS_CONN_ERR_BASE + 2201,
    SOFTBUS_CONN_LEGACY_BLE_INTERNAL_ERR = SOFTBUS_CONN_ERR_BASE + 2202,
    SOFTBUS_CONN_LEGACY_BLE_UNDERLAY_CLIENT_REGISTER_ERR = SOFTBUS_CONN_ERR_BASE + 2203,
    SOFTBUS_CONN_LEGACY_BLE_UNDERLAY_CLIENT_CONNECT_ERR = SOFTBUS_CONN_ERR_BASE + 2204,
    SOFTBUS_CONN_LEGACY_BLE_UNDERLAY_CLIENT_CONNECT_FAIL = SOFTBUS_CONN_ERR_BASE + 2205,
    SOFTBUS_CONN_LEGACY_BLE_UNDERLAY_CLIENT_SEARCH_SERVICE_ERR = SOFTBUS_CONN_ERR_BASE + 2206,
    SOFTBUS_CONN_LEGACY_BLE_UNDERLAY_CLIENT_SEARCH_SERVICE_FAIL = SOFTBUS_CONN_ERR_BASE + 2207,
    SOFTBUS_CONN_LEGACY_BLE_UNDERLAY_CLIENT_GET_SERVICE_ERR = SOFTBUS_CONN_ERR_BASE + 2208,
    SOFTBUS_CONN_LEGACY_BLE_UNDERLAY_CLIENT_REGISTER_NOTIFICATION_ERR = SOFTBUS_CONN_ERR_BASE + 2209,
    SOFTBUS_CONN_LEGACY_BLE_UNDERLAY_CLIENT_REGISTER_NOTIFICATION_FAIL = SOFTBUS_CONN_ERR_BASE + 2210,
    SOFTBUS_CONN_LEGACY_BLE_UNDERLAY_CLIENT_CONFIGURE_MTU_ERR = SOFTBUS_CONN_ERR_BASE + 2211,
    SOFTBUS_CONN_LEGACY_BLE_UNDERLAY_CLIENT_CONFIGURE_MTU_FAIL = SOFTBUS_CONN_ERR_BASE + 2212,
    SOFTBUS_CONN_LEGACY_BLE_DISCONNECT_DIRECTLY_ERR = SOFTBUS_CONN_ERR_BASE + 2213,
    SOFTBUS_CONN_LEGACY_BLE_DISCONNECT_WAIT_TIMEOUT_ERR = SOFTBUS_CONN_ERR_BASE + 2214,
    SOFTBUS_CONN_LEGACY_BLE_UNDERLAY_SERVER_REGISTER_CALLBACK_ERR = SOFTBUS_CONN_ERR_BASE + 2215,
    SOFTBUS_CONN_LEGACY_BLE_UNDERLAY_SERVER_ADD_SERVICE_ERR = SOFTBUS_CONN_ERR_BASE + 2216,
    SOFTBUS_CONN_LEGACY_BLE_UNDERLAY_SERVER_ADD_SERVICE_FAIL = SOFTBUS_CONN_ERR_BASE + 2217,
    SOFTBUS_CONN_LEGACY_BLE_UNDERLAY_UNKNOWN_SERVICE_ERR = SOFTBUS_CONN_ERR_BASE + 2218,
    SOFTBUS_CONN_LEGACY_BLE_UNDERLAY_CHARACTERISTIC_ADD_ERR = SOFTBUS_CONN_ERR_BASE + 2219,
    SOFTBUS_CONN_LEGACY_BLE_UNDERLAY_CHARACTERISTIC_ADD_FAIL = SOFTBUS_CONN_ERR_BASE + 2220,
    SOFTBUS_CONN_LEGACY_BLE_UNDERLAY_DESCRIPTOR_ADD_ERR = SOFTBUS_CONN_ERR_BASE + 2221,
    SOFTBUS_CONN_LEGACY_BLE_UNDERLAY_SERVICE_HANDLE_MISMATCH_ERR = SOFTBUS_CONN_ERR_BASE + 2222,
    SOFTBUS_CONN_LEGACY_BLE_UNDERLAY_SERVICE_START_ERR = SOFTBUS_CONN_ERR_BASE + 2223,
    SOFTBUS_CONN_LEGACY_BLE_UNDERLAY_SERVICE_START_FAIL = SOFTBUS_CONN_ERR_BASE + 2224,
    SOFTBUS_CONN_LEGACY_BLE_SERVER_STATE_UNEXPECTED_ERR = SOFTBUS_CONN_ERR_BASE + 2225,
    SOFTBUS_CONN_LEGACY_BLE_SERVER_START_SERVER_TIMEOUT_ERR = SOFTBUS_CONN_ERR_BASE + 2226,
    SOFTBUS_CONN_LEGACY_BLE_UNDERLAY_SERVICE_STOP_ERR = SOFTBUS_CONN_ERR_BASE + 2227,
    SOFTBUS_CONN_LEGACY_BLE_UNDERLAY_SERVICE_STOP_FAIL = SOFTBUS_CONN_ERR_BASE + 2228,
    SOFTBUS_CONN_LEGACY_BLE_UNDERLAY_SERVICE_DELETE_ERR = SOFTBUS_CONN_ERR_BASE + 2229,
    SOFTBUS_CONN_LEGACY_BLE_UNDERLAY_SERVICE_DELETE_FAIL = SOFTBUS_CONN_ERR_BASE + 2230,
    SOFTBUS_CONN_LEGACY_BLE_SERVER_STOP_SERVER_TIMEOUT_ERR = SOFTBUS_CONN_ERR_BASE + 2231,
    SOFTBUS_CONN_LEGACY_BLE_CLIENT_STATE_UNEXPECTED_ERR = SOFTBUS_CONN_ERR_BASE + 2232,
    SOFTBUS_CONN_LEGACY_BLE_REPEAT_CONNECT_ERR = SOFTBUS_CONN_ERR_BASE + 2233,
    SOFTBUS_CONN_LEGACY_BLE_UNDERLAY_DESCRIPTOR_ADD_FAIL = SOFTBUS_CONN_ERR_BASE + 2234,
    SOFTBUS_CONN_LEGACY_BLE_UNDERLAY_UNKNOWN_DESCRIPTOR_ERR = SOFTBUS_CONN_ERR_BASE + 2235,
    SOFTBUS_CONN_LEGACY_BLE_UNKNOWN_CHARACTERISTIC_TYPE_ERR = SOFTBUS_CONN_ERR_BASE + 2236,

    SOFTBUS_CONN_LEGACY_HML_UNDERLAY_EXCEPTION = SOFTBUS_CONN_ERR_BASE + 2400,
    SOFTBUS_CONN_LEGACY_HML_SOCKET_CONNECT_TIMEOUT = SOFTBUS_CONN_ERR_BASE + 2401,
    SOFTBUS_CONN_LEGACY_P2P_SEND_GET_GC_MAC_REQ_FAIL = SOFTBUS_CONN_ERR_BASE + 2402,
    SOFTBUS_CONN_LEGACY_P2P_CONNECT_DEVICE_FAIL = SOFTBUS_CONN_ERR_BASE + 2403,
    SOFTBUS_CONN_LEGACY_P2P_DISCONNECT_DEVICE_FAIL = SOFTBUS_CONN_ERR_BASE + 2404,
    SOFTBUS_CONN_LEGACY_P2P_REUSE_LINK_FAIL = SOFTBUS_CONN_ERR_BASE + 2405,
    SOFTBUS_CONN_LEGACY_P2P_COMMAND_SET_DATA_FAIL = SOFTBUS_CONN_ERR_BASE + 2406,
    SOFTBUS_CONN_LEGACY_P2P_SEND_COMMAND_FAIL = SOFTBUS_CONN_ERR_BASE + 2407,
    SOFTBUS_CONN_LEGACY_P2P_START_SERVER_SOCKET_FAIL = SOFTBUS_CONN_ERR_BASE + 2408,
    SOFTBUS_CONN_LEGACY_P2P_GO_SEND_CONFIG_INFO_FAIL = SOFTBUS_CONN_ERR_BASE + 2409,
    SOFTBUS_CONN_LEGACY_P2P_CREATE_GROUP_FAIL = SOFTBUS_CONN_ERR_BASE + 2410,
    SOFTBUS_CONN_LEGACY_P2P_CREATE_GROUP_TIMEOUT = SOFTBUS_CONN_ERR_BASE + 2411,
    SOFTBUS_CONN_LEGACY_P2P_CONNECT_GROUP_FAIL = SOFTBUS_CONN_ERR_BASE + 2412,
    SOFTBUS_CONN_LEGACY_P2P_CONNECT_GROUP_TIMEOUT = SOFTBUS_CONN_ERR_BASE + 2413,
    SOFTBUS_CONN_LEGACY_P2P_REMOVE_GROUP_FAIL = SOFTBUS_CONN_ERR_BASE + 2414,
    SOFTBUS_CONN_LEGACY_P2P_ADD_SEVER_TCP_CHANNEL_FAIL = SOFTBUS_CONN_ERR_BASE + 2415,
    SOFTBUS_CONN_LEGACY_P2P_NOT_AVAILABLE = SOFTBUS_CONN_ERR_BASE + 2416,

    SOFTBUS_CONN_KERNELS_BASE = SOFTBUS_ERRNO(KERNELS_SUB_MODULE_CODE),
    SOFTBUS_CONN_NET_REACH = SOFTBUS_CONN_KERNELS_BASE + 101,
    SOFTBUS_CONN_SOCKET_TIME_OUT = SOFTBUS_CONN_KERNELS_BASE + 110,
    SOFTBUS_CONN_SOCKET_REFUSED = SOFTBUS_CONN_KERNELS_BASE + 111,

    /* errno begin: -((203 << 21) | (1 << 16) | 0xFFFF) */
    SOFTBUS_DISCOVER_ERR_BASE = SOFTBUS_ERRNO(DISC_SUB_MODULE_CODE),
    /* errno begin: -((203 << 21) | (1 << 16) | (1 << 12) | 0x0FFF) */
    SOFTBUS_DISCOVER_SERVICE_ERR_BASE = SOFTBUS_SUB_ERRNO(DISC_SUB_MODULE_CODE, DISC_SERVICE_SUB_MODULE_CODE),
    SOFTBUS_DISCOVER_NOT_INIT,
    SOFTBUS_DISC_SERVER_INIT_FAILED,
    SOFTBUS_DISCOVER_GET_LOCAL_STR_FAILED,
    SOFTBUS_DISCOVER_SET_LOCALE_FAILED,
    SOFTBUS_DISCOVER_CHAR_CONVERT_FAILED,
    SOFTBUS_DISCOVER_GET_REMOTE_FAILED,
    SOFTBUS_DISCOVER_GET_CLIENT_PROXY_FAILED,
    SOFTBUS_DISCOVER_ADD_LISTENER_FAILED,
    SOFTBUS_DISCOVER_TEST_CASE_ERRCODE,
    /* errno begin: -((203 << 21) | (1 << 16) | (2 << 12) | 0x0FFF) */
    SOFTBUS_DISCOVER_MANAGER_ERR_BASE = SOFTBUS_SUB_ERRNO(DISC_SUB_MODULE_CODE, DISC_MANAGER_SUB_MODULE_CODE),
    SOFTBUS_DISCOVER_MANAGER_NOT_INIT,
    SOFTBUS_DISCOVER_MANAGER_INIT_FAIL,
    SOFTBUS_DISCOVER_MANAGER_ITEM_NOT_CREATE,
    SOFTBUS_DISCOVER_MANAGER_INFO_NOT_CREATE,
    SOFTBUS_DISCOVER_MANAGER_INFO_NOT_DELETE,
    SOFTBUS_DISCOVER_MANAGER_INNERFUNCTION_FAIL,
    SOFTBUS_DISCOVER_MANAGER_CAPABILITY_INVALID,
    SOFTBUS_DISCOVER_MANAGER_DUPLICATE_PARAM,
    SOFTBUS_DISCOVER_MANAGER_INVALID_MEDIUM,
    /* errno begin: -((203 << 21) | (1 << 16) | (3 << 12) | 0x0FFF) */
    SOFTBUS_DISCOVER_BLE_ERR_BASE = SOFTBUS_SUB_ERRNO(DISC_SUB_MODULE_CODE, DISC_BLE_SUB_MODULE_CODE),
    SOFTBUS_DISCOVER_BLE_DISPATCHER_FAIL,
    SOFTBUS_DISCOVER_BLE_GET_BROADCAST_DATA_FAIL,
    SOFTBUS_DISCOVER_BLE_BUILD_CONFIG_ADV_DATA_FAIL,
    SOFTBUS_DISCOVER_BLE_REGISTER_CAP_FAIL,
    SOFTBUS_DISCOVER_BLE_START_BROADCAST_FAIL,
    SOFTBUS_DISCOVER_BLE_END_BROADCAST_FAIL,
    SOFTBUS_DISCOVER_BLE_START_SCAN_FAIL,
    SOFTBUS_DISCOVER_BLE_END_SCAN_FAIL,
    SOFTBUS_DISCOVER_BLE_GET_DEVICE_INFO_FAIL,
    SOFTBUS_DISCOVER_BLE_REPORT_FILTER_FAIL,
    SOFTBUS_DISCOVER_BLE_ADV_INIT_FAIL,
    SOFTBUS_DISCOVER_BLE_SET_BROADCAST_DATA_FAIL,
    SOFTBUS_DISCOVER_BLE_ASSEMBLE_DATA_FAIL,
    SOFTBUS_DISCOVER_BLE_PARSE_RECV_DATA_FAIL,
    SOFTBUS_DISCOVER_BLE_UNKNOW_TYPE_FAIL,
    SOFTBUS_DISCOVER_BLE_SET_FILTER_FAIL,
    SOFTBUS_DISCOVER_BLE_CONVERT_BYTES_FAILED,
    /* errno begin: -((203 << 21) | (1 << 16) | (4 << 12) | 0x0FFF) */
    SOFTBUS_DISCOVER_COAP_ERR_BASE = SOFTBUS_SUB_ERRNO(DISC_SUB_MODULE_CODE, DISC_COAP_SUB_MODULE_CODE),
    SOFTBUS_DISCOVER_COAP_NOT_INIT,
    SOFTBUS_DISCOVER_COAP_INIT_FAIL,
    SOFTBUS_DISCOVER_COAP_MERGE_CAP_FAIL,
    SOFTBUS_DISCOVER_COAP_CANCEL_CAP_FAIL,
    SOFTBUS_DISCOVER_COAP_REGISTER_CAP_FAIL,
    SOFTBUS_DISCOVER_COAP_SET_FILTER_CAP_FAIL,
    SOFTBUS_DISCOVER_COAP_START_PUBLISH_FAIL,
    SOFTBUS_DISCOVER_COAP_STOP_PUBLISH_FAIL,
    SOFTBUS_DISCOVER_COAP_START_DISCOVER_FAIL,
    SOFTBUS_DISCOVER_COAP_STOP_DISCOVER_FAIL,
    SOFTBUS_DISCOVER_COAP_SEND_RSP_FAIL,
    SOFTBUS_DISCOVER_COAP_PARSE_DATA_FAIL,
    SOFTBUS_DISCOVER_COAP_REGISTER_CAP_DATA_FAIL,
    SOFTBUS_DISCOVER_COAP_GET_DEVICE_INFO_FAIL,
    /* errno begin: -((203 << 21) | (1 << 16) | (5 << 12) | 0x0FFF) */
    SOFTBUS_DISCOVER_BC_MGR_ERR_BASE = SOFTBUS_SUB_ERRNO(DISC_SUB_MODULE_CODE, DISC_BC_MGR_SUB_MODULE_CODE),
    SOFTBUS_BC_MGR_NO_FUNC_REGISTERED, // no medium has registered
    SOFTBUS_BC_MGR_FUNC_NULL, // the function registered is null
    SOFTBUS_BC_MGR_BUILD_ADV_PACKT_FAIL, // build broadcast adv packet fail
    SOFTBUS_BC_MGR_BUILD_RSP_PACKT_FAIL, // build broadcast rsp packet fail
    SOFTBUS_BC_MGR_INVALID_BC_ID, // invalid broadcast id
    SOFTBUS_BC_MGR_INVALID_LISN_ID, // invalid listener id
    SOFTBUS_BC_MGR_INVALID_SRV, // invalid service type
    SOFTBUS_BC_MGR_NOT_BROADCASTING, // not broadcasting
    SOFTBUS_BC_MGR_START_SCAN_NO_FILTER, // start scan without setting filter
    SOFTBUS_BC_MGR_REG_NO_AVAILABLE_BC_ID, // no available broadcast id
    SOFTBUS_BC_MGR_REG_NO_AVAILABLE_LISN_ID, // no available listener id
    SOFTBUS_BC_MGR_REG_DUP, // duplicate registration
    SOFTBUS_BC_MGR_WAIT_COND_FAIL, // wait signal fail
    SOFTBUS_BC_MGR_UNEXPECTED_PACKETS, // parse packets fail
    /* errno begin: -((203 << 21) | (1 << 16) | (6 << 12) | 0x0FFF) */
    SOFTBUS_DISCOVER_BC_ADAPTER_ERR_BASE = SOFTBUS_SUB_ERRNO(DISC_SUB_MODULE_CODE, DISC_BC_ADAPTER_SUB_MODULE_CODE),
    SOFTBUS_BC_ADAPTER_REGISTER_FAIL,
    SOFTBUS_BC_ADAPTER_ASSEMBLE_FAIL,
    SOFTBUS_BC_ADAPTER_PARSE_FAIL,
    SOFTBUS_BC_ADAPTER_NOT_IN_USED_FAIL,
    SOFTBUS_BC_ADAPTER_START_ADV_FAIL,
    /* errno begin: -((203 << 21) | (1 << 16) | (7 << 12) | 0x0FFF) */
    SOFTBUS_DISCOVER_ACTION_ERR_BASE = SOFTBUS_SUB_ERRNO(DISC_SUB_MODULE_CODE, DISC_ACTION_SUB_MODULE_CODE),
    SOFTBUS_DISCOVER_ACTION_INNER_ERROR,
    SOFTBUS_DISCOVER_ACTION_INIT_FAILED,
    SOFTBUS_DISCOVER_ACTION_NOT_SUPPORT,
    SOFTBUS_DISCOVER_ACTION_NOT_PRELINK,
    SOFTBUS_DISCOVER_ACTION_PARSE_FAILED,
    SOFTBUS_DISCOVER_ACTION_ASSEMBLE_FAILED,
    SOFTBUS_DISCOVER_ACTION_START_FAILED,
    SOFTBUS_DISCOVER_ACTION_STOP_FAILED,
    SOFTBUS_DISCOVER_ACTION_REPLY_FAILED,
    SOFTBUS_DISCOVER_ACTION_REPEAT_TYPE,
    SOFTBUS_DISCOVER_ACTION_HAD_PRELINK,

    /* softbus ok */
    SOFTBUS_OK = 0,
};

/**
 * from  trans_type.h
 */
typedef enum {
    DATA_TYPE_MESSAGE = 1,         /**< Message */
    DATA_TYPE_BYTES,               /**< Bytes */
    DATA_TYPE_FILE,                /**< File */
    DATA_TYPE_RAW_STREAM,          /**< Raw data stream */
    DATA_TYPE_VIDEO_STREAM,        /**< Video data stream */
    DATA_TYPE_AUDIO_STREAM,        /**< Audio data stream */
    DATA_TYPE_SLICE_STREAM,        /**< Video slice stream */
    DATA_TYPE_RAW_STREAM_ENCRYPED, /**< Encryped raw stream data */
    DATA_TYPE_BUTT,
} TransDataType;

typedef struct {
    char *name;             /**< My socket name, maximum length 255 bytes */
    char *peerName;         /**< Peer socket name, maximum length 255 bytes */
    char *peerNetworkId;    /**< Peer network ID, maximum length 64 bytes */
    char *pkgName;          /**< Package name, maximum length 64 bytes */
    TransDataType dataType; /**< Data type */
} SocketInfo;

typedef struct {
    char *name;              /**< Peer socket name, maximum length 255 bytes */
    char *networkId;         /**< Peer network ID, maximum length 64 bytes */
    char *pkgName;           /**< Peer package name, maximum length 64 bytes */
    TransDataType dataType;  /**< Data type of peer socket*/
    char *accountId;         /**< Peer accountId, maximum length 64 bytes */
    void *extraData;         /**< Peer extradata, maximum length 5 bytes */
    uint32_t dataLen;        /**< Peer dataLen, maximum 5 */
} PeerSocketInfo;

typedef struct {
    char *peerNetworkId;    /**< Peer network ID, maximum length 64 bytes */
    int64_t serviceId;      /**< My service id */
    int64_t peerServiceId;  /**< Peer service id */
    TransDataType dataType; /**< Data type */
} ServiceSocketInfo;

typedef enum {
    EVENT_TYPE_MT_MUTIPATH,
    EVENT_TYPE_MT_MAX,
} MultiPathEventType;

typedef enum {
    SHUTDOWN_REASON_UNKNOWN,       /**< Shutdown for unknown reason */
    SHUTDOWN_REASON_LOCAL,         /**< Shutdown by local process */
    SHUTDOWN_REASON_PEER,          /**< Shutdown by peer process */
    SHUTDOWN_REASON_LNN_CHANGED,   /**< Shutdown for LNN changed */
    SHUTDOWN_REASON_CONN_CHANGED,  /**< Shutdown for CONN Changed */
    SHUTDOWN_REASON_TIMEOUT,       /**< Shutdown for timeout */
    SHUTDOWN_REASON_SEND_FILE_ERR, /**< Shutdown for sending file error */
    SHUTDOWN_REASON_RECV_FILE_ERR, /**< Shutdown for receiving file error */
    SHUTDOWN_REASON_RECV_DATA_ERR, /**< Shutdown for receiving data error */
    SHUTDOWN_REASON_UNEXPECTED,    /**< Shutdown for unexpected reason */
    SHUTDOWN_REASON_SERVICE_DIED,  /**< Shutdown for death service */
    SHUTDOWN_REASON_LNN_OFFLINE,   /**< Shutdown for offline */
    SHUTDOWN_REASON_LINK_DOWN,     /**< Shutdown for link down */
} ShutdownReason;

typedef enum {
    QOS_TYPE_MIN_BW,            /**< Minimum bandwidth. */
    QOS_TYPE_MAX_WAIT_TIMEOUT = 1,  /**< Maximum timeout of Bind. */
    QOS_TYPE_MAX_LATENCY = 1,       /**< Maximum latency. */
    QOS_TYPE_MIN_LATENCY,       /**< Minimum latency. */
    QOS_TYPE_RTT_LEVEL,         /**< Level of round trip time. */
    QOS_TYPE_MAX_BUFFER,        /**< @reserved Maximum cache. */
    QOS_TYPE_FIRST_PACKAGE,     /**< @reserved First packet size. */
    QOS_TYPE_MAX_IDLE_TIMEOUT,  /**< Maximum idle time. */
    QOS_TYPE_TRANS_RELIABILITY, /**< @reserved Transmission reliability. */
    QOS_TYPE_BUTT,
} QosType;

typedef struct {
    QosType qos;   /**< Qos type {@link QosType} */
    int32_t value; /**< Value of Qos types */
} QosTV;

typedef struct {
    char *buf;  /**< Pointer to the buffer for storing the stream data */
    int bufLen; /**< Length of the buffer */
} StreamData;

typedef struct {
    int32_t type;  /**< Extended data type {@link TransEnumEventType} */
    int64_t value; /**< Value of the extended data */
} TV;

typedef struct {
    int32_t frameType; /**< Frame type, which can be I-frame or P-frame. */
    int64_t timeStamp; /**< Timestamp. */
    int32_t seqNum;    /**< Sequence number. */
    int32_t seqSubNum; /**< Sequence number of the slice. */
    int32_t level;     /**< Scalable video coding level. <b>0</b> stands for the base level,
                        <b>1</b> for level 1, and <b>2</b> for level 2. */
    int32_t bitMap;    /**< Bitmap, which indicates the start or end slice of a frame. */
    int32_t tvCount;   /**< Number of scalable tag-values (TVs). */
    TV *tvList;        /**< Pointer to the TV list. */
} StreamFrameInfo;

typedef enum {
    FILE_EVENT_SEND_PROCESS,     /**< Sending file */
    FILE_EVENT_SEND_FINISH,      /**< Send file end */
    FILE_EVENT_SEND_ERROR,       /**< Send file failed */
    FILE_EVENT_RECV_UPDATE_PATH, /**< Update root directory*/
    FILE_EVENT_RECV_START,       /**< Receive file start */
    FILE_EVENT_RECV_PROCESS,     /**< Receiving file */
    FILE_EVENT_RECV_FINISH,      /**< Receive file end */
    FILE_EVENT_RECV_ERROR,       /**< Receive file failed */
    FILE_EVENT_TRANS_STATUS,     /**< Transmission status of the files */
    FILE_EVENT_TRANS_LIMIT_CHANGED, /**< Transmission limit changed */
    FILE_EVENT_BUTT,
} FileEventType;

typedef struct {
    char **files;     /**< File path */
    uint32_t fileCnt; /**< Count of the files */
} FileList;

typedef struct {
    FileList completedList;    /**< Completed file list */
    FileList notCompletedList; /**< Not completed file list */
    FileList notStartedList;   /**< Not started file list */
} FileStatusList;

typedef enum {
    FILE_PRIORITY_TYPE_DEFAUT = 0, /**< Default priority */
    FILE_PRIORITY_TYPE_LOW,        /**< Low priority */
} FilePriority;

typedef struct {
    FileEventType type;                  /**< Event data type of the files*/
    const char **files;                  /**< File path*/
    uint32_t fileCnt;                    /**< Count of the files*/
    uint64_t bytesProcessed;             /**< Send or receive bytes of the files*/
    uint64_t bytesTotal;                 /**< Total bytes of the files*/
    const char *(*UpdateRecvPath)(void); /**< Update file receiving directory*/
    FileStatusList statusList;           /**< File status list */
    int32_t errorCode;                   /**< Error code */
    uint32_t rate;                       /**< Rate of the file transmission */
    FilePriority filePriority;          /**< Priority of the file */
} FileEvent;

/**
 * from  socket.h
 */
typedef enum {
    QOS_SATISFIED,     /**< Feedback on satisfied quality */
    QOS_NOT_SATISFIED, /**< Feedback on not satisfied quality */
} QoSEvent;

typedef struct {
    int32_t userId;         /**< User ID of the application that initiates link setup */
    uint64_t localTokenId;  /**< Token ID of the application that initiates link setup */
    char *businessAccountId;/**< Business account ID of the application that initiates link setup (reserved)*/
    char *extraAccessInfo;  /**< Extra Info of the application that initiates link setup, maximum length 256 bytes */
} SocketAccessInfo;

typedef struct {
    void (*OnBind)(int32_t socket, PeerSocketInfo info);
    void (*OnShutdown)(int32_t socket, ShutdownReason reason);
    void (*OnBytes)(int32_t socket, const void *data, uint32_t dataLen);
    void (*OnMessage)(int32_t socket, const void *data, uint32_t dataLen);
    void (*OnStream)(int32_t socket, const StreamData *data, const StreamData *ext, const StreamFrameInfo *param);
    void (*OnFile)(int32_t socket, FileEvent *event);
    void (*OnQos)(int32_t socket, QoSEvent eventId, const QosTV *qos, uint32_t qosCount);
    void (*OnError)(int32_t socket, int32_t errCode);
    bool (*OnNegotiate)(int32_t socket, PeerSocketInfo info);
    void (*OnBytesSent)(int32_t socket, uint32_t dataSeq, int32_t errCode);
    bool (*OnNegotiate2)(int32_t socket, PeerSocketInfo info, SocketAccessInfo *peerInfo, SocketAccessInfo *localInfo);
    void (*OnMessageSent)(int32_t socket, uint16_t dataSeq, int32_t errCode);
    void (*OnEvent)(int32_t socket, MultiPathEventType eventType, const void *eventData, uint32_t dataLen);
    void (*OnServiceBind)(int32_t socket, ServiceSocketInfo info);
    bool (*OnServiceNegotiate)(int32_t socket, ServiceSocketInfo info);
} ISocketListener;

#ifdef __cplusplus
}
#endif
#endif /* DSOFTBUS_INTERFACE_H */