]>
Commit | Line | Data |
---|---|---|
52ad194e | 1 | /* SPDX-License-Identifier: LGPL-2.1+ */ |
81c58355 MB |
2 | #pragma once |
3 | ||
81c58355 MB |
4 | typedef struct Geneve Geneve; |
5 | ||
6 | #include "in-addr-util.h" | |
7 | #include "netdev.h" | |
8 | #include "networkd-link.h" | |
9 | #include "networkd-network.h" | |
10 | ||
11 | #define GENEVE_VID_MAX (1u << 24) - 1 | |
12 | ||
13 | struct Geneve { | |
14 | NetDev meta; | |
15 | ||
16 | uint32_t id; | |
17 | uint32_t flow_label; | |
18 | ||
19 | int remote_family; | |
20 | ||
21 | uint8_t tos; | |
22 | uint8_t ttl; | |
23 | ||
24 | uint16_t dest_port; | |
25 | ||
26 | bool udpcsum; | |
27 | bool udp6zerocsumtx; | |
28 | bool udp6zerocsumrx; | |
29 | ||
30 | union in_addr_union remote; | |
31 | }; | |
32 | ||
33 | DEFINE_NETDEV_CAST(GENEVE, Geneve); | |
34 | extern const NetDevVTable geneve_vtable; | |
35 | ||
6e866b33 MB |
36 | CONFIG_PARSER_PROTOTYPE(config_parse_geneve_vni); |
37 | CONFIG_PARSER_PROTOTYPE(config_parse_geneve_address); | |
38 | CONFIG_PARSER_PROTOTYPE(config_parse_geneve_flow_label); |