xref: /illumos-gate/usr/src/uts/common/sys/vxlan.h (revision 12faddfc)
1*12faddfcSRobert Mustacchi /*
2*12faddfcSRobert Mustacchi  * This file and its contents are supplied under the terms of the
3*12faddfcSRobert Mustacchi  * Common Development and Distribution License ("CDDL"), version 1.0.
4*12faddfcSRobert Mustacchi  * You may only use this file in accordance with the terms of version
5*12faddfcSRobert Mustacchi  * 1.0 of the CDDL.
6*12faddfcSRobert Mustacchi  *
7*12faddfcSRobert Mustacchi  * A full copy of the text of the CDDL should have accompanied this
8*12faddfcSRobert Mustacchi  * source.  A copy of the CDDL is also available via the Internet at
9*12faddfcSRobert Mustacchi  * http://www.illumos.org/license/CDDL.
10*12faddfcSRobert Mustacchi  */
11*12faddfcSRobert Mustacchi 
12*12faddfcSRobert Mustacchi /*
13*12faddfcSRobert Mustacchi  * Copyright 2015 Joyent, Inc.
14*12faddfcSRobert Mustacchi  */
15*12faddfcSRobert Mustacchi 
16*12faddfcSRobert Mustacchi #ifndef _SYS_VXLAN_H
17*12faddfcSRobert Mustacchi #define	_SYS_VXLAN_H
18*12faddfcSRobert Mustacchi 
19*12faddfcSRobert Mustacchi /*
20*12faddfcSRobert Mustacchi  * Common VXLAN information
21*12faddfcSRobert Mustacchi  */
22*12faddfcSRobert Mustacchi 
23*12faddfcSRobert Mustacchi #include <sys/inttypes.h>
24*12faddfcSRobert Mustacchi 
25*12faddfcSRobert Mustacchi #ifdef __cplusplus
26*12faddfcSRobert Mustacchi extern "C" {
27*12faddfcSRobert Mustacchi #endif
28*12faddfcSRobert Mustacchi 
29*12faddfcSRobert Mustacchi /* Sizes in bytes */
30*12faddfcSRobert Mustacchi #define	VXLAN_HDR_LEN	8
31*12faddfcSRobert Mustacchi #define	VXLAN_ID_LEN	3
32*12faddfcSRobert Mustacchi 
33*12faddfcSRobert Mustacchi #define	VXLAN_F_VDI	0x08000000
34*12faddfcSRobert Mustacchi #define	VXLAN_ID_SHIFT	8
35*12faddfcSRobert Mustacchi 
36*12faddfcSRobert Mustacchi #pragma pack(1)
37*12faddfcSRobert Mustacchi typedef struct vxlan_hdr {
38*12faddfcSRobert Mustacchi 	uint32_t vxlan_flags;
39*12faddfcSRobert Mustacchi 	uint32_t vxlan_id;
40*12faddfcSRobert Mustacchi } vxlan_hdr_t;
41*12faddfcSRobert Mustacchi #pragma pack()
42*12faddfcSRobert Mustacchi 
43*12faddfcSRobert Mustacchi #ifdef __cplusplus
44*12faddfcSRobert Mustacchi }
45*12faddfcSRobert Mustacchi #endif
46*12faddfcSRobert Mustacchi 
47*12faddfcSRobert Mustacchi #endif /* _SYS_VXLAN_H */
48