FD.io VPP  v21.06-3-gbb25fbf28
Vector Packet Processing
in_out_acl.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2015 Cisco and/or its affiliates.
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 __included_vnet_in_out_acl_h__
17 #define __included_vnet_in_out_acl_h__
18 
19 #include <vlib/vlib.h>
20 #include <vnet/vnet.h>
22 
23 typedef enum
24 {
28 
29 typedef enum
30 {
36 
37 typedef enum
38 {
43 
44 typedef struct
45 {
46 
47  /* classifier table vectors */
48  u32
49  * classify_table_index_by_sw_if_index[IN_OUT_ACL_N_TABLE_GROUPS]
51 
52  /* convenience variables */
59 
61 
63  u32 ip4_table_index,
64  u32 ip6_table_index,
65  u32 l2_table_index, u32 is_add, u32 is_output);
66 
68  u32 ip4_table_index,
69  u32 ip6_table_index,
70  u32 l2_table_index, u32 is_add);
71 
73  u32 ip4_table_index,
74  u32 ip6_table_index,
75  u32 l2_table_index, u32 is_add);
76 
77 #endif /* __included_vnet_in_out_acl_h__ */
78 
79 /*
80  * fd.io coding-style-patch-verification: ON
81  *
82  * Local Variables:
83  * eval: (c-set-style "gnu")
84  * End:
85  */
vlib.h
ACL_NEXT_INDEX_DENY
@ ACL_NEXT_INDEX_DENY
Definition: in_out_acl.h:25
in_out_acl_table_group_id_t
in_out_acl_table_group_id_t
Definition: in_out_acl.h:37
vnet_set_output_acl_intfc
int vnet_set_output_acl_intfc(vlib_main_t *vm, u32 sw_if_index, u32 ip4_table_index, u32 ip6_table_index, u32 l2_table_index, u32 is_add)
Definition: in_out_acl.c:139
in_out_acl_main_t::vnet_main
vnet_main_t * vnet_main
Definition: in_out_acl.h:54
IN_OUT_ACL_TABLE_IP4
@ IN_OUT_ACL_TABLE_IP4
Definition: in_out_acl.h:31
vm
vlib_main_t * vm
X-connect all packets from the HOST to the PHY.
Definition: nat44_ei.c:3047
IN_OUT_ACL_INPUT_TABLE_GROUP
@ IN_OUT_ACL_INPUT_TABLE_GROUP
Definition: in_out_acl.h:39
vnet_set_in_out_acl_intfc
int vnet_set_in_out_acl_intfc(vlib_main_t *vm, u32 sw_if_index, u32 ip4_table_index, u32 ip6_table_index, u32 l2_table_index, u32 is_add, u32 is_output)
Definition: in_out_acl.c:70
IN_OUT_ACL_OUTPUT_TABLE_GROUP
@ IN_OUT_ACL_OUTPUT_TABLE_GROUP
Definition: in_out_acl.h:40
IN_OUT_ACL_N_TABLES
@ IN_OUT_ACL_N_TABLES
Definition: in_out_acl.h:34
in_out_acl_main_t::vlib_main
vlib_main_t * vlib_main
Definition: in_out_acl.h:53
vnet_main_t
Definition: vnet.h:76
vnet_config_main_t
Definition: config.h:86
in_out_acl_main_t::vnet_classify_main
vnet_classify_main_t * vnet_classify_main
Definition: in_out_acl.h:55
u32
unsigned int u32
Definition: types.h:88
vnet_classify_main_t
struct _vnet_classify_main vnet_classify_main_t
Definition: vnet_classify.h:61
vnet_classify.h
vlib_main_t
Definition: main.h:102
ACL_NEXT_INDEX_N_NEXT
@ ACL_NEXT_INDEX_N_NEXT
Definition: in_out_acl.h:26
in_out_acl_table_id_t
in_out_acl_table_id_t
Definition: in_out_acl.h:29
IN_OUT_ACL_N_TABLE_GROUPS
@ IN_OUT_ACL_N_TABLE_GROUPS
Definition: in_out_acl.h:41
in_out_acl_main
in_out_acl_main_t in_out_acl_main
Definition: in_out_acl.c:21
acl_next_index_t
acl_next_index_t
Definition: in_out_acl.h:23
vnet.h
IN_OUT_ACL_TABLE_L2
@ IN_OUT_ACL_TABLE_L2
Definition: in_out_acl.h:33
sw_if_index
vl_api_interface_index_t sw_if_index
Definition: wireguard.api:34
vnet_set_input_acl_intfc
int vnet_set_input_acl_intfc(vlib_main_t *vm, u32 sw_if_index, u32 ip4_table_index, u32 ip6_table_index, u32 l2_table_index, u32 is_add)
Definition: in_out_acl.c:129
in_out_acl_main_t
Definition: in_out_acl.h:44
IN_OUT_ACL_TABLE_IP6
@ IN_OUT_ACL_TABLE_IP6
Definition: in_out_acl.h:32