FD.io VPP
v21.01.1
Vector Packet Processing
mactime_device.h
Go to the documentation of this file.
1
/*
2
* mactime_device.h - device table entry
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_mactime_device_h
19
#define included_mactime_device_h
20
#include <
vppinfra/time_range.h
>
21
22
#define MACTIME_RANGE_TYPE_DROP 0
23
#define MACTIME_RANGE_TYPE_ALLOW 1
24
25
typedef
struct
26
{
27
u8
*
device_name
;
28
u8
mac_address
[6];
29
u64
data_quota
;
30
u64
data_used_in_range
;
31
u32
flags
;
32
u32
pool_index
;
33
f64
last_seen
;
34
clib_timebase_range_t
*
ranges
;
35
}
mactime_device_t
;
36
37
/** Always drop packets from this device */
38
#define MACTIME_DEVICE_FLAG_STATIC_DROP (1<<0)
39
#define MACTIME_DEVICE_FLAG_STATIC_ALLOW (1<<1)
40
#define MACTIME_DEVICE_FLAG_DYNAMIC_DROP (1<<2)
41
#define MACTIME_DEVICE_FLAG_DYNAMIC_ALLOW (1<<3)
42
#define MACTIME_DEVICE_FLAG_DYNAMIC_ALLOW_QUOTA (1<<4)
43
#define MACTIME_DEVICE_FLAG_DROP_UDP_10001 (1<<5)
44
45
#endif
/* included_mactime_device_h */
46
47
/*
48
* fd.io coding-style-patch-verification: ON
49
*
50
* Local Variables:
51
* eval: (c-set-style "gnu")
52
* End:
53
*/
mactime_device_t::data_quota
u64 data_quota
Definition:
mactime_device.h:29
mactime_device_t::pool_index
u32 pool_index
Definition:
mactime_device.h:32
u64
unsigned long u64
Definition:
types.h:89
u8
unsigned char u8
Definition:
types.h:56
f64
double f64
Definition:
types.h:142
mactime_device_t::ranges
clib_timebase_range_t * ranges
Definition:
mactime_device.h:34
mactime_device_t::last_seen
f64 last_seen
Definition:
mactime_device.h:33
u32
unsigned int u32
Definition:
types.h:88
mactime_device_t::flags
u32 flags
Definition:
mactime_device.h:31
clib_timebase_range_t
Definition:
time_range.h:49
mactime_device_t::data_used_in_range
u64 data_used_in_range
Definition:
mactime_device.h:30
time_range.h
mactime_device_t
Definition:
mactime_device.h:25
mactime_device_t::device_name
u8 * device_name
Definition:
mactime_device.h:27
mac_address
manual_print typedef u8 mac_address[6]
Definition:
ethernet_types.api:19
src
plugins
mactime
mactime_device.h
Generated on Wed Jul 14 2021 16:04:21 for FD.io VPP by
1.8.13