• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (c) 2025 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 LNN_SYNC_INFO_MANAGER_STRUCT_H
17 #define LNN_SYNC_INFO_MANAGER_STRUCT_H
18 
19 #include <stdint.h>
20 
21 #include "softbus_common.h"
22 
23 #ifdef __cplusplus
24 extern "C" {
25 #endif
26 
27 typedef enum {
28     LNN_INFO_TYPE_CAPABILITY = 0,
29     LNN_INFO_TYPE_CONNECTION_INFO,
30     LNN_INFO_TYPE_DEVICE_NAME,
31     LNN_INFO_TYPE_BATTERY_INFO,
32     LNN_INFO_TYPE_SCREEN_STATUS,
33     LNN_INFO_TYPE_OFFLINE = 5,
34     LNN_INFO_TYPE_P2P_INFO,
35     LNN_INFO_TYPE_CHANNEL_NOISE_INFO,
36     LNN_INFO_TYPE_NOT_TRUSTED,
37     LNN_INFO_TYPE_WIFI_DIRECT,
38     LNN_INFO_TYPE_NICK_NAME = 10,
39     LNN_INFO_TYPE_MASTER_ELECT,
40     LNN_INFO_TYPE_BSS_TRANS,
41     LNN_INFO_TYPE_TOPO_UPDATE,
42     LNN_INFO_TYPE_NODE_ADDR,
43     LNN_INFO_TYPE_NODE_ADDR_DETECTION,
44     LNN_INFO_TYPE_SYNC_CIPHERKEY,
45     LNN_INFO_TYPE_ROUTE_LSU,
46     LNN_INFO_TYPE_PTK,
47     LNN_INFO_TYPE_USERID,
48     LNN_INFO_TYPE_SYNC_BROADCASTLINKKEY,
49     LNN_INFO_TYPE_SLE_MAC,
50     LNN_INFO_TYPE_COUNT,
51     //LNN_INFO_TYPE_P2P_ROLE = 256,
52 } LnnSyncInfoType;
53 
54 typedef void (*LnnSyncInfoMsgHandler)(LnnSyncInfoType type, const char *networkId, const uint8_t *msg, uint32_t len);
55 typedef void (*LnnSyncInfoMsgComplete)(LnnSyncInfoType type, const char *networkId, const uint8_t *msg, uint32_t len);
56 
57 typedef struct {
58     LnnSyncInfoType type;
59     char networkId[NETWORK_ID_BUF_LEN];
60     uint8_t *msg;
61     uint32_t len;
62     LnnSyncInfoMsgComplete complete;
63 } SendSyncInfoParam;
64 
65 #ifdef __cplusplus
66 }
67 #endif
68 #endif // LNN_SYNC_INFO_MANAGER_STRUCT_H
69