#include "ip6_addr.h"
#include "flow_iter.h"
#include "parse_utils.h"
+#include "prox_compat.h"
struct rte_mbuf;
struct lcore_cfg;
};
enum task_mode {NOT_SET, MASTER, QINQ_DECAP4, QINQ_DECAP6,
- QINQ_ENCAP4, QINQ_ENCAP6, GRE_DECAP, GRE_ENCAP,CGNAT, ESP_ENC, ESP_DEC,
+ QINQ_ENCAP4, QINQ_ENCAP6, GRE_DECAP, GRE_ENCAP,CGNAT, ESP_ENC, ESP_DEC, QOS, POLICE
};
struct task_args;
}
enum police_action {
- ACT_GREEN = e_RTE_METER_GREEN,
- ACT_YELLOW = e_RTE_METER_YELLOW,
- ACT_RED = e_RTE_METER_RED,
+ ACT_GREEN = RTE_COLOR_GREEN,
+ ACT_YELLOW = RTE_COLOR_YELLOW,
+ ACT_RED = RTE_COLOR_RED,
ACT_DROP = 3,
ACT_INVALID = 4
};
uint32_t gateway_ipv4;
uint32_t local_ipv4;
uint32_t remote_ipv4;
+ uint32_t arp_timeout;
+ uint32_t arp_update_time;
struct ipv6_addr local_ipv6; /* For IPv6 Tunnel, it's the local tunnel endpoint address */
struct rte_ring *rx_rings[MAX_RINGS_PER_TASK];
struct rte_ring *tx_rings[MAX_RINGS_PER_TASK];
uint irq_debug;
struct task_base *tmaster;
char sub_mode_str[PROX_MODE_LEN];
+ uint32_t igmp_address;
};
/* Return the first port that is reachable through the task. If the