blob: c7d99dd1bc23fc35e29dce3fc8352da7dc023298 [file] [log] [blame]
rjw6c1fd8f2022-11-30 14:33:01 +08001#ifndef IPSEC_WTUNNEL_MSG_H
2#define IPSEC_WTUNNEL_MSG_H
3
4#include "ipsec_common_interface.h"
5#ifdef __N3GPP_OVER_DATA__
6#include "network_dev_info_struct.h"
7#endif
8
9
10//MSG_ID_WTUNNEL_IPSEC_ENCAP_REQ
11typedef struct
12{
13 LOCAL_PARA_HDR
14
15 kal_uint32 transaction_id;//to identify the packet
16 kal_uint32 input_buffer_len;
17 kal_uint32 output_buffer_len;
18 void* p_input_buffer;//point to the beginning of the IP header
19 void* p_output_buffer;
20 kal_uint32 sa_id;
21
22}wtunnel_ipsec_encap_req_struct;
23
24
25//MSG_ID_WTUNNEL_IPSEC_DECAP_REQ
26typedef struct
27{
28 LOCAL_PARA_HDR
29
30 kal_uint32 transaction_id;//to identify the packet
31 kal_uint32 input_buffer_len;
32 kal_uint32 output_buffer_len;
33 void* p_input_buffer;//point to the beginning of the IP header
34 void* p_output_buffer;
35
36}wtunnel_ipsec_decap_req_struct;
37
38
39//MSG_ID_WTUNNEL_IPSEC_ENCAP_RSP
40typedef struct
41{
42 LOCAL_PARA_HDR
43
44 kal_uint32 transaction_id;//to identify the packet
45 //kal_uint32 output_data_len;//maybe no-need, could be gotten from the outer ip header
46 ipsec_status_enum status;//result
47 ipsec_fragment_info_t frag_list[MAX_IP_FRAGMENT_SIZE];//output_buffer fragmentation
48 kal_uint32 frag_num;
49}wtunnel_ipsec_encap_rsp_struct;
50
51
52//MSG_ID_WTUNNEL_IPSEC_DECAP_RSP
53typedef struct
54{
55 LOCAL_PARA_HDR
56
57 kal_uint32 transaction_id;//to identify the packet
58 kal_uint32 sa_id;
59 kal_uint32 output_data_len;//maybe no-need, could be gotten from the outer ip header
60 ipsec_status_enum status;//result
61}wtunnel_ipsec_decap_rsp_struct;
62
63
64typedef struct
65{
66 LOCAL_PARA_HDR
67
68 kal_uint32 sa_id;
69 kal_uint8 tunnel_src[MAX_IP_ADDR_SIZE];
70 kal_uint8 tunnel_dst[MAX_IP_ADDR_SIZE];
71 ipsec_addr_family_enum tunnel_addr_family;
72#ifdef __N3GPP_OVER_DATA__
73 nw_device_id_enum dev_id;
74#endif
75}ipsec_wtunnel_pmtu_register_req_struct;
76
77typedef struct
78{
79 LOCAL_PARA_HDR
80
81 ipsec_mode_enum mode;
82 kal_uint32 sa_id;
83 kal_uint32 pmtu;
84}ipsec_wtunnel_pmtu_update_ind_struct;
85
86#endif