2018-01-29 13:11:36 +00:00
|
|
|
/* SPDX-License-Identifier: BSD-3-Clause
|
|
|
|
* Copyright 2017 6WIND S.A.
|
2018-03-20 19:20:35 +00:00
|
|
|
* Copyright 2017 Mellanox Technologies, Ltd
|
2017-03-23 08:33:56 +00:00
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef _TAP_TCMSGS_H_
|
|
|
|
#define _TAP_TCMSGS_H_
|
|
|
|
|
2018-01-20 21:11:36 +00:00
|
|
|
#include <tap_autoconf.h>
|
2017-03-23 08:33:56 +00:00
|
|
|
#include <linux/if_ether.h>
|
|
|
|
#include <linux/rtnetlink.h>
|
|
|
|
#include <linux/pkt_sched.h>
|
|
|
|
#include <linux/pkt_cls.h>
|
|
|
|
#include <linux/tc_act/tc_mirred.h>
|
|
|
|
#include <linux/tc_act/tc_gact.h>
|
|
|
|
#include <linux/tc_act/tc_skbedit.h>
|
2018-01-20 21:11:36 +00:00
|
|
|
#ifdef HAVE_TC_ACT_BPF
|
|
|
|
#include <linux/tc_act/tc_bpf.h>
|
|
|
|
#endif
|
2017-03-23 08:33:56 +00:00
|
|
|
#include <inttypes.h>
|
|
|
|
|
|
|
|
#include <rte_ether.h>
|
|
|
|
#include <tap_netlink.h>
|
|
|
|
|
|
|
|
#define MULTIQ_MAJOR_HANDLE (1 << 16)
|
|
|
|
|
|
|
|
void tc_init_msg(struct nlmsg *msg, uint16_t ifindex, uint16_t type,
|
|
|
|
uint16_t flags);
|
|
|
|
int qdisc_list(int nlsk_fd, uint16_t ifindex);
|
|
|
|
int qdisc_flush(int nlsk_fd, uint16_t ifindex);
|
|
|
|
int qdisc_create_ingress(int nlsk_fd, uint16_t ifindex);
|
|
|
|
int qdisc_create_multiq(int nlsk_fd, uint16_t ifindex);
|
|
|
|
int qdisc_add_ingress(int nlsk_fd, uint16_t ifindex);
|
|
|
|
int qdisc_add_multiq(int nlsk_fd, uint16_t ifindex);
|
|
|
|
int filter_list_ingress(int nlsk_fd, uint16_t ifindex);
|
|
|
|
|
|
|
|
#endif /* _TAP_TCMSGS_H_ */
|