1 /* SPDX-License-Identifier: LGPL-2.1-only */ 2 /* 3 * Copyright (c) 2018 Volodymyr Bendiuga <[email protected]> 4 */ 5 6 #ifndef NETLINK_VLAN_H_ 7 #define NETLINK_VLAN_H_ 8 9 #include <netlink/netlink.h> 10 #include <netlink/cache.h> 11 #include <netlink/route/action.h> 12 13 #ifdef __cplusplus 14 extern "C" { 15 #endif 16 17 extern int rtnl_vlan_set_mode(struct rtnl_act *act, int mode); 18 extern int rtnl_vlan_get_mode(struct rtnl_act *act, int *out_mode); 19 extern int rtnl_vlan_set_action(struct rtnl_act *act, int action); 20 extern int rtnl_vlan_get_action(struct rtnl_act *act, int *out_action); 21 extern int rtnl_vlan_set_protocol(struct rtnl_act *act, uint16_t protocol); 22 extern int rtnl_vlan_get_protocol(struct rtnl_act *act, uint16_t *out_protocol); 23 extern int rtnl_vlan_set_vlan_id(struct rtnl_act *act, uint16_t vid); 24 extern int rtnl_vlan_get_vlan_id(struct rtnl_act *act, uint16_t *out_vid); 25 extern int rtnl_vlan_set_vlan_prio(struct rtnl_act *act, uint8_t prio); 26 extern int rtnl_vlan_get_vlan_prio(struct rtnl_act *act, uint8_t *out_prio); 27 28 #ifdef __cplusplus 29 } 30 #endif 31 32 #endif /* NETLINK_VLAN_H_ */ 33