FD.io VPP  v21.06-3-gbb25fbf28
Vector Packet Processing
mss_clamp.h
Go to the documentation of this file.
1 /*
2  * mss_clamp.h - TCP MSS clamping plug-in header file
3  *
4  * Copyright (c) 2018 Cisco 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 #ifndef __included_mss_clamp_h__
19 #define __included_mss_clamp_h__
20 
21 #include <stdbool.h> /* for bool in .api */
22 #include <vnet/vnet.h>
23 
24 extern int mssc_enable_disable (u32 sw_if_index, u8 dir4, u8 dir6, u16 mss4,
25  u16 mss6);
26 extern int mssc_get_mss (u32 sw_if_index, u8 *dir4, u8 *dir6, u16 *mss4,
27  u16 *mss6);
28 
29 typedef struct
30 {
31  /* Maximum segment size per interface for IPv4/IPv6 */
34 
35  /* Direction the feature is enabled for IPv4/IPv6 (rx, tx, both) */
38 
39  /* API message ID base */
41 } mssc_main_t;
42 
43 extern mssc_main_t mssc_main;
44 
45 #define MSS_CLAMP_UNSET 0xffff
46 
47 #endif /* __included_mss_clamp_h__ */
48 
49 /*
50  * fd.io coding-style-patch-verification: ON
51  *
52  * Local Variables:
53  * eval: (c-set-style "gnu")
54  * End:
55  */
mssc_main_t::max_mss6
u16 * max_mss6
Definition: mss_clamp.h:33
mssc_main_t::dir_enabled6
u8 * dir_enabled6
Definition: mss_clamp.h:37
mssc_get_mss
int mssc_get_mss(u32 sw_if_index, u8 *dir4, u8 *dir6, u16 *mss4, u16 *mss6)
Definition: mss_clamp.c:85
u16
unsigned short u16
Definition: types.h:57
mssc_enable_disable
int mssc_enable_disable(u32 sw_if_index, u8 dir4, u8 dir6, u16 mss4, u16 mss6)
Definition: mss_clamp.c:50
mssc_main_t::max_mss4
u16 * max_mss4
Definition: mss_clamp.h:32
mssc_main
mssc_main_t mssc_main
Definition: mss_clamp.c:23
mssc_main_t::dir_enabled4
u8 * dir_enabled4
Definition: mss_clamp.h:36
mssc_main_t::msg_id_base
u16 msg_id_base
Definition: mss_clamp.h:40
u32
unsigned int u32
Definition: types.h:88
mssc_main_t
Definition: mss_clamp.h:29
u8
unsigned char u8
Definition: types.h:56
vnet.h
sw_if_index
vl_api_interface_index_t sw_if_index
Definition: wireguard.api:34