misc: minimize dependencies on udp.h
[vpp.git] / src / plugins / oddbuf / oddbuf.h
1
2 /*
3  * oddbuf.h - awkward chained buffer geometry test tool
4  *
5  * Copyright (c) 2019 by Cisco and/or its affiliates.
6  * Licensed under the Apache License, Version 2.0 (the "License");
7  * you may not use this file except in compliance with the License.
8  * You may obtain a copy of the License at:
9  *
10  *     http://www.apache.org/licenses/LICENSE-2.0
11  *
12  * Unless required by applicable law or agreed to in writing, software
13  * distributed under the License is distributed on an "AS IS" BASIS,
14  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15  * See the License for the specific language governing permissions and
16  * limitations under the License.
17  */
18 #ifndef __included_oddbuf_h__
19 #define __included_oddbuf_h__
20
21 #include <vnet/vnet.h>
22 #include <vnet/ip/ip.h>
23 #include <vnet/ethernet/ethernet.h>
24
25 #include <vppinfra/hash.h>
26 #include <vppinfra/error.h>
27
28 typedef struct
29 {
30   /* API message ID base */
31   u16 msg_id_base;
32
33   /* on/off switch for the periodic function */
34   u8 periodic_timer_enabled;
35
36   /* config parameters */
37   int n_to_copy;
38   int second_chunk_offset;
39   int first_chunk_offset;
40
41   /* convenience */
42   vlib_main_t *vlib_main;
43   vnet_main_t *vnet_main;
44   ethernet_main_t *ethernet_main;
45 } oddbuf_main_t;
46
47 extern oddbuf_main_t oddbuf_main;
48
49 extern vlib_node_registration_t oddbuf_node;
50
51 #endif /* __included_oddbuf_h__ */
52
53 /*
54  * fd.io coding-style-patch-verification: ON
55  *
56  * Local Variables:
57  * eval: (c-set-style "gnu")
58  * End:
59  */