1 /* 2 * Copyright (c) 2023 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 TRANS_EVENT_ATOM_FORM_H 17 #define TRANS_EVENT_ATOM_FORM_H 18 19 #include <stdint.h> 20 21 #include "event_form_enum.h" 22 23 #ifdef __cplusplus 24 extern "C" { 25 #endif 26 27 typedef enum { 28 EVENT_SCENE_OPEN_CHANNEL = 1, 29 EVENT_SCENE_CLOSE_CHANNEL_ACTIVE = 2, 30 EVENT_SCENE_CLOSE_CHANNEL_PASSIVE = 3, 31 EVENT_SCENE_CLOSE_CHANNEL_TIMEOUT = 4, 32 EVENT_SCENE_BT_FLOW = 5, 33 EVENT_SCENE_LANE_SCORE = 6, 34 EVENT_SCENE_ACTIVATION = 7, 35 EVENT_SCENE_DETECTION = 8, 36 EVENT_SCENE_OPEN_CHANNEL_SERVER = 9, 37 EVENT_SCENE_TRANS_CREATE_SESS_SERVER = 10, 38 EVENT_SCENE_TRANS_REMOVE_SESS_SERVER = 11, 39 EVENT_SCENE_TRANS_PROXY_RESET_PEER = 12, 40 EVENT_SCENE_TRANS_CHANNEL_STATISTICS = 13, 41 EVENT_SCENE_TRANS_CHANNEL_INSTANT = 14, 42 } TransEventScene; 43 44 typedef enum { 45 EVENT_STAGE_OPEN_CHANNEL_START = 1, 46 EVENT_STAGE_SELECT_LANE = 2, 47 EVENT_STAGE_START_CONNECT = 3, 48 EVENT_STAGE_HANDSHAKE_START = 4, 49 EVENT_STAGE_HANDSHAKE_REPLY = 5, 50 EVENT_STAGE_OPEN_CHANNEL_END = 6, 51 } TransEventOpenChannelStage; 52 53 typedef enum { 54 EVENT_STAGE_CLOSE_CHANNEL = 1, 55 } TransEventCloseChannelStage; 56 57 typedef enum { 58 EVENT_STAGE_TRANS_COMMON_ONE = 1, 59 } TransEventCommonStage; 60 61 typedef enum { 62 DEVICE_STATE_INVALID = 1, 63 DEVICE_STATE_LOCAL_BT_HALF_OFF, 64 DEVICE_STATE_REMOTE_BT_HALF_OFF, 65 DEVICE_STATE_LOCAL_WIFI_HALF_OFF, 66 DEVICE_STATE_REMOTE_WIFI_HALF_OFF, 67 DEVICE_STATE_NOT_CARE, 68 DEVICE_STATE_BUTT, 69 } TransDeviceState; 70 71 typedef struct { 72 int32_t result; // STAGE_RES 73 int32_t errcode; // ERROR_CODE 74 const char *socketName; // SESSION_NAME 75 int32_t dataType; // DATA_TYPE 76 int32_t channelType; // LOGIC_CHAN_TYPE 77 int32_t laneId; // LANE_ID 78 int32_t preferLinkType; // PREFER_LINK_TYPE 79 int32_t laneTransType; // LANE_TRANS_TYPE 80 int32_t channelId; // CHAN_ID 81 int32_t requestId; // REQ_ID 82 int32_t connectionId; // CONN_ID 83 int32_t linkType; // LINK_TYPE 84 int32_t authId; // AUTH_ID 85 int32_t socketFd; // SOCKET_FD 86 int32_t costTime; // TIME_CONSUMING 87 int32_t channelScore; // CHAN_SCORE 88 int32_t peerChannelId; // PEER_CHAN_ID 89 int32_t btFlow; // BT_FLOW 90 const char *peerNetworkId; // PEER_NET_ID 91 const char *peerUdid; // PEER_UDID 92 const char *peerDevVer; // PEER_DEV_VER 93 const char *localUdid; // LOCAL_UDID 94 const char *callerPkg; // HOST_PKG 95 const char *calleePkg; // TO_CALL_PKG 96 const char *firstTokenName; // FIRST_TOKEN_NAME 97 uint32_t firstTokenId; // FIRST_TOKEN_ID 98 int32_t firstTokenType; // FIRST_TOKEN_TYPE 99 const char *trafficStats; // TRAFFIC_STATS 100 int32_t osType; // OS_TYPE 101 int32_t deviceState; // DEVICE_STATE 102 int32_t businessId; // BUSSINESS_ID 103 int32_t businessType; // BUSINESS_TYPE 104 } TransEventExtra; 105 106 typedef enum { 107 ALARM_SCENE_TRANS_RESERVED = 1, 108 } TransAlarmScene; 109 110 typedef struct { 111 int32_t errcode; 112 int32_t result; 113 int32_t callerPid; 114 int32_t linkType; 115 int32_t minBw; 116 int32_t methodId; 117 int32_t duration; 118 int32_t curFlow; 119 int32_t limitFlow; 120 int32_t limitTime; 121 int32_t occupyRes; 122 int32_t syncType; 123 int32_t syncData; 124 int32_t retryCount; 125 int32_t retryReason; 126 const char *conflictName; 127 const char *conflictedName; 128 const char *occupyedName; 129 const char *permissionName; 130 const char *sessionName; 131 } TransAlarmExtra; 132 133 typedef enum { 134 STATS_SCENE_TRANS_RESERVED = 1, 135 } TransStatsScene; 136 137 typedef struct { 138 int32_t reserved; 139 } TransStatsExtra; 140 141 typedef enum { 142 AUDIT_SCENE_OPEN_SESSION = 1, 143 AUDIT_SCENE_SEND_FILE, 144 AUDIT_SCENE_SEND_BYTES, 145 AUDIT_SCENE_SEND_MSG, 146 AUDIT_SCENE_SEND_STREAM, 147 } TransAuditScene; 148 149 typedef enum { 150 TRANS_AUDIT_CONTINUE = 1, 151 TRANS_AUDIT_DISCONTINUE, 152 TRANS_AUDIT_TRY_AGAIN, 153 } TransAuditResult; 154 155 typedef struct { 156 const char *hostPkg; // HOST_PKG 157 int32_t result; // RESULT 158 int32_t errcode; // ERROR_CODE 159 SoftbusAuditType auditType; // AUDIT_TYPE 160 const char *localIp; // LOCAL_IP 161 const char *localPort; // LOCAL_PORT 162 const char *localDevId; // LOCAL_DEV_ID 163 int32_t localDevType; // LOCAL_DEV_TYPE 164 const char *localSessName; // LOCAL_SESS_NAME 165 int32_t localChannelId; // LOCAL_CHANNEL_ID 166 const char *peerIp; // PEER_IP 167 const char *peerPort; // PEER_PORT 168 const char *peerDevId; // PEER_DEV_ID 169 int32_t peerDevType; // PEER_DEV_TYPE 170 const char *peerSessName; // PEER_SESS_NAME 171 int32_t peerChannelId; // PEER_CHANNEL_ID 172 int32_t channelType; // LOGIC_CHAN_TYPE 173 int32_t authId; // AUTH_ID 174 int32_t reqId; // REQ_ID 175 int32_t linkType; // LINK_TYPE 176 int32_t connId; // CONN_ID 177 int32_t socketFd; // SOCKET_FD 178 int32_t dataType; // DATA_TYPE 179 int32_t dataLen; // DATA_LENGTH 180 int32_t dataSeq; // DATA_SEQ 181 int32_t costTime; // TIME_CONSUMING 182 int32_t dataTraffic; // DATA_TRAFFIC 183 int32_t reqCount; // REQ_COUNT 184 } TransAuditExtra; 185 186 #ifdef __cplusplus 187 } 188 #endif /* __cplusplus */ 189 #endif // TRANS_EVENT_ATOM_FORM_H 190