vpp-swan: Add plugin for vpp-swan
[vpp.git] / extras / strongswan / vpp_sswan / kernel_vpp_ipsec.h
1 #ifndef KERNEL_VPP_IPSEC_H_
2 #define KERNEL_VPP_IPSEC_H_
3 /*
4  * Copyright (c) 2022 Intel and/or its affiliates.
5  * Licensed under the Apache License, Version 2.0 (the "License");
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at:
8  *
9  *     http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  */
17
18 #include <kernel/kernel_ipsec.h>
19
20 typedef struct kernel_vpp_ipsec_t kernel_vpp_ipsec_t;
21
22 /**
23  * Implementation of the kernel ipsec interface using Netlink.
24  */
25 struct kernel_vpp_ipsec_t
26 {
27
28   /**
29    * Implements kernel_ipsec_t interface
30    */
31   kernel_ipsec_t interface;
32 };
33
34 /**
35  * Create a vpp kernel ipsec interface instance.
36  *
37  * @return          kernel_vpp_ipsec_t instance
38  */
39 kernel_vpp_ipsec_t *kernel_vpp_ipsec_create ();
40
41 #endif /** KERNEL_VPP_IPSEC_H_ @}*/