forked from mirrors/linux
		
	 c0dd967818
			
		
	
	
		c0dd967818
		
	
	
	
	
		
			
			Bring the erspan uapi header file so BPF tunnel helpers can use it.
Fixes: 933a741e3b ("selftests/bpf: bpf tunnel test.")
Reported-by: Yonghong Song <yhs@fb.com>
Signed-off-by: William Tu <u9012063@gmail.com>
Acked-by: Yonghong Song <yhs@fb.com>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
		
	
			
		
			
				
	
	
		
			52 lines
		
	
	
	
		
			1 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			52 lines
		
	
	
	
		
			1 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
 | |
| /*
 | |
|  * ERSPAN Tunnel Metadata
 | |
|  *
 | |
|  * Copyright (c) 2018 VMware
 | |
|  *
 | |
|  * This program is free software; you can redistribute it and/or modify
 | |
|  * it under the terms of the GNU General Public License version 2
 | |
|  * as published by the Free Software Foundation.
 | |
|  *
 | |
|  * Userspace API for metadata mode ERSPAN tunnel
 | |
|  */
 | |
| #ifndef _UAPI_ERSPAN_H
 | |
| #define _UAPI_ERSPAN_H
 | |
| 
 | |
| #include <linux/types.h>	/* For __beXX in userspace */
 | |
| #include <asm/byteorder.h>
 | |
| 
 | |
| /* ERSPAN version 2 metadata header */
 | |
| struct erspan_md2 {
 | |
| 	__be32 timestamp;
 | |
| 	__be16 sgt;	/* security group tag */
 | |
| #if defined(__LITTLE_ENDIAN_BITFIELD)
 | |
| 	__u8	hwid_upper:2,
 | |
| 		ft:5,
 | |
| 		p:1;
 | |
| 	__u8	o:1,
 | |
| 		gra:2,
 | |
| 		dir:1,
 | |
| 		hwid:4;
 | |
| #elif defined(__BIG_ENDIAN_BITFIELD)
 | |
| 	__u8	p:1,
 | |
| 		ft:5,
 | |
| 		hwid_upper:2;
 | |
| 	__u8	hwid:4,
 | |
| 		dir:1,
 | |
| 		gra:2,
 | |
| 		o:1;
 | |
| #else
 | |
| #error "Please fix <asm/byteorder.h>"
 | |
| #endif
 | |
| };
 | |
| 
 | |
| struct erspan_metadata {
 | |
| 	int version;
 | |
| 	union {
 | |
| 		__be32 index;		/* Version 1 (type II)*/
 | |
| 		struct erspan_md2 md2;	/* Version 2 (type III) */
 | |
| 	} u;
 | |
| };
 | |
| 
 | |
| #endif /* _UAPI_ERSPAN_H */
 |