6#ifndef NETLINK_FLOWER_H_
7#define NETLINK_FLOWER_H_
9#include <netlink/netlink.h>
10#include <netlink/cache.h>
11#include <netlink/route/classifier.h>
12#include <netlink/route/action.h>
18extern int rtnl_flower_set_proto(
struct rtnl_cls *cls, uint16_t);
19extern int rtnl_flower_get_proto(
struct rtnl_cls *cls, uint16_t *);
21extern int rtnl_flower_set_vlan_id(
struct rtnl_cls *, uint16_t);
22extern int rtnl_flower_get_vlan_id(
struct rtnl_cls *, uint16_t *);
24extern int rtnl_flower_set_vlan_prio(
struct rtnl_cls *, uint8_t);
25extern int rtnl_flower_get_vlan_prio(
struct rtnl_cls *, uint8_t *);
27extern int rtnl_flower_set_vlan_ethtype(
struct rtnl_cls *, uint16_t);
29extern int rtnl_flower_set_dst_mac(
struct rtnl_cls *,
unsigned char *,
31extern int rtnl_flower_get_dst_mac(
struct rtnl_cls *,
unsigned char *,
34extern int rtnl_flower_set_src_mac(
struct rtnl_cls *,
unsigned char *,
36extern int rtnl_flower_get_src_mac(
struct rtnl_cls *,
unsigned char *,
39extern int rtnl_flower_set_ip_dscp(
struct rtnl_cls *, uint8_t, uint8_t);
40extern int rtnl_flower_get_ip_dscp(
struct rtnl_cls *, uint8_t *, uint8_t *);
42extern int rtnl_flower_set_ipv4_src(
struct rtnl_cls *, in_addr_t, in_addr_t);
43extern int rtnl_flower_get_ipv4_src(
struct rtnl_cls *, in_addr_t *,
45extern int rtnl_flower_set_ipv4_dst(
struct rtnl_cls *, in_addr_t, in_addr_t);
46extern int rtnl_flower_get_ipv4_dst(
struct rtnl_cls *, in_addr_t *,
49extern int rtnl_flower_set_flags(
struct rtnl_cls *,
int);
51extern int rtnl_flower_append_action(
struct rtnl_cls *,
struct rtnl_act *);
52extern int rtnl_flower_del_action(
struct rtnl_cls *,
struct rtnl_act *);
53extern struct rtnl_act* rtnl_flower_get_action(
struct rtnl_cls *);