summaryrefslogtreecommitdiff
path: root/include/netlink
diff options
context:
space:
mode:
authorVolodymyr Bendiuga <volodymyr.bendiuga@westermo.se>2018-05-04 11:13:10 +0200
committerThomas Haller <thaller@redhat.com>2018-10-10 11:12:08 +0200
commitb004e4006374c9f0311461010c9082411c6ef563 (patch)
tree64a3c2e6816faeba71d1e2f17f1ee27eb70c7919 /include/netlink
parent07fa87ba90758355781557ad8c4d1f680312ca45 (diff)
downloadlibnl-b004e4006374c9f0311461010c9082411c6ef563.tar.gz
route:act: add vlan action
For more information please see: http://man7.org/linux/man-pages/man8/tc-vlan.8.html Signed-off-by: Volodymyr Bendiuga <volodymyr.bendiuga@westermo.se>
Diffstat (limited to 'include/netlink')
-rw-r--r--include/netlink/route/act/vlan.h39
1 files changed, 39 insertions, 0 deletions
diff --git a/include/netlink/route/act/vlan.h b/include/netlink/route/act/vlan.h
new file mode 100644
index 00000000..47fc7dc7
--- /dev/null
+++ b/include/netlink/route/act/vlan.h
@@ -0,0 +1,39 @@
+/*
+ * netlink/route/act/vlan.h vlan action
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation version 2.1
+ * of the License.
+ *
+ * Copyright (c) 2018 Volodymyr Bendiuga <volodymyr.bendiuga@gmail.com>
+ */
+
+#ifndef NETLINK_VLAN_H_
+#define NETLINK_VLAN_H_
+
+#include <netlink/netlink.h>
+#include <netlink/cache.h>
+#include <netlink/route/action.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+extern int rtnl_vlan_set_mode(struct rtnl_act *act, int mode);
+extern int rtnl_vlan_get_mode(struct rtnl_act *act);
+extern int rtnl_vlan_set_action(struct rtnl_act *act, int action);
+extern int rtnl_vlan_get_action(struct rtnl_act *act);
+extern int rtnl_vlan_set_protocol(struct rtnl_act *act, uint16_t protocol);
+extern uint16_t rtnl_vlan_get_protocol(struct rtnl_act *act);
+extern int rtnl_vlan_set_vlan_id(struct rtnl_act *act, uint16_t vid);
+extern uint16_t rtnl_vlan_get_vlan_id(struct rtnl_act *act);
+extern int rtnl_vlan_set_vlan_prio(struct rtnl_act *act, uint8_t prio);
+extern uint8_t rtnl_vlan_get_vlan_prio(struct rtnl_act *act);
+
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* NETLINK_VLAN_H */