1ec30dcce718ebe13f6396cb560283d3cbcca7354Herbert Xu#ifndef __LINUX_TC_NAT_H 2ec30dcce718ebe13f6396cb560283d3cbcca7354Herbert Xu#define __LINUX_TC_NAT_H 3ec30dcce718ebe13f6396cb560283d3cbcca7354Herbert Xu 4ec30dcce718ebe13f6396cb560283d3cbcca7354Herbert Xu#include <linux/pkt_cls.h> 5ec30dcce718ebe13f6396cb560283d3cbcca7354Herbert Xu#include <linux/types.h> 6ec30dcce718ebe13f6396cb560283d3cbcca7354Herbert Xu 7ec30dcce718ebe13f6396cb560283d3cbcca7354Herbert Xu#define TCA_ACT_NAT 9 8ec30dcce718ebe13f6396cb560283d3cbcca7354Herbert Xu 9ab322673298bd0b8927cdd9d11f3d36af5941b93Stephen Hemmingerenum { 10ec30dcce718ebe13f6396cb560283d3cbcca7354Herbert Xu TCA_NAT_UNSPEC, 11ec30dcce718ebe13f6396cb560283d3cbcca7354Herbert Xu TCA_NAT_PARMS, 12ec30dcce718ebe13f6396cb560283d3cbcca7354Herbert Xu TCA_NAT_TM, 13ec30dcce718ebe13f6396cb560283d3cbcca7354Herbert Xu __TCA_NAT_MAX 14ec30dcce718ebe13f6396cb560283d3cbcca7354Herbert Xu}; 15ec30dcce718ebe13f6396cb560283d3cbcca7354Herbert Xu#define TCA_NAT_MAX (__TCA_NAT_MAX - 1) 16ec30dcce718ebe13f6396cb560283d3cbcca7354Herbert Xu 17ec30dcce718ebe13f6396cb560283d3cbcca7354Herbert Xu#define TCA_NAT_FLAG_EGRESS 1 18ec30dcce718ebe13f6396cb560283d3cbcca7354Herbert Xu 19ab322673298bd0b8927cdd9d11f3d36af5941b93Stephen Hemmingerstruct tc_nat { 20ec30dcce718ebe13f6396cb560283d3cbcca7354Herbert Xu tc_gen; 21ec30dcce718ebe13f6396cb560283d3cbcca7354Herbert Xu __be32 old_addr; 22ec30dcce718ebe13f6396cb560283d3cbcca7354Herbert Xu __be32 new_addr; 23ec30dcce718ebe13f6396cb560283d3cbcca7354Herbert Xu __be32 mask; 24ec30dcce718ebe13f6396cb560283d3cbcca7354Herbert Xu __u32 flags; 25ec30dcce718ebe13f6396cb560283d3cbcca7354Herbert Xu}; 26ec30dcce718ebe13f6396cb560283d3cbcca7354Herbert Xu 27ec30dcce718ebe13f6396cb560283d3cbcca7354Herbert Xu#endif 28