38 строки
634 B
C
38 строки
634 B
C
|
/* Copyright (c) 2016 Facebook
|
||
|
*
|
||
|
* This program is free software; you can redistribute it and/or
|
||
|
* modify it under the terms of version 2 of the GNU General Public
|
||
|
* License as published by the Free Software Foundation.
|
||
|
*/
|
||
|
#ifndef _SAMPLES_BPF_XDP_TX_IPTNL_COMMON_H
|
||
|
#define _SAMPLES_BPF_XDP_TX_IPTNL_COMMON_H
|
||
|
|
||
|
#include <linux/types.h>
|
||
|
|
||
|
#define MAX_IPTNL_ENTRIES 256U
|
||
|
|
||
|
struct vip {
|
||
|
union {
|
||
|
__u32 v6[4];
|
||
|
__u32 v4;
|
||
|
} daddr;
|
||
|
__u16 dport;
|
||
|
__u16 family;
|
||
|
__u8 protocol;
|
||
|
};
|
||
|
|
||
|
struct iptnl_info {
|
||
|
union {
|
||
|
__u32 v6[4];
|
||
|
__u32 v4;
|
||
|
} saddr;
|
||
|
union {
|
||
|
__u32 v6[4];
|
||
|
__u32 v4;
|
||
|
} daddr;
|
||
|
__u16 family;
|
||
|
__u8 dmac[6];
|
||
|
};
|
||
|
|
||
|
#endif
|