summaryrefslogtreecommitdiffstats
path: root/include/netlink
diff options
context:
space:
mode:
authorCong Wang <xiyou.wangcong@gmail.com>2015-01-28 23:19:18 (GMT)
committerThomas Haller <thaller@redhat.com>2015-02-02 17:16:11 (GMT)
commit6d5b9ab8ae731050ab2242360429b8a192c27a4d (patch)
tree6ccb1a04755ce0c39f6c6c8d863259801183d20e /include/netlink
parentb5a56254b9f9c3b74ae8bf54f468db4efb3d0978 (diff)
downloadlibnl-6d5b9ab8ae731050ab2242360429b8a192c27a4d.zip
libnl-6d5b9ab8ae731050ab2242360429b8a192c27a4d.tar.gz
libnl-6d5b9ab8ae731050ab2242360429b8a192c27a4d.tar.bz2
route/act: add skbedit action
[thaller@redhat.com: changed whitespace and libnl-route.sym] Signed-off-by: Cong Wang <xiyou.wangcong@gmail.com> Signed-off-by: Thomas Haller <thaller@redhat.com>
Diffstat (limited to 'include/netlink')
-rw-r--r--include/netlink/route/act/skbedit.h37
1 files changed, 37 insertions, 0 deletions
diff --git a/include/netlink/route/act/skbedit.h b/include/netlink/route/act/skbedit.h
new file mode 100644
index 0000000..69829e8
--- /dev/null
+++ b/include/netlink/route/act/skbedit.h
@@ -0,0 +1,37 @@
+/*
+ * netlink/route/act/skbedit.h skbedit 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) 2015 Cong Wang <xiyou.wangcong@gmail.com>
+ */
+
+#ifndef NETLINK_SKBEDIT_H_
+#define NETLINK_SKBEDIT_H_
+
+#include <netlink/netlink.h>
+#include <netlink/cache.h>
+#include <netlink/route/action.h>
+#include <linux/tc_act/tc_skbedit.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+extern int rtnl_skbedit_set_action(struct rtnl_act *act, int action);
+extern int rtnl_skbedit_get_action(struct rtnl_act *act);
+extern int rtnl_skbedit_set_queue_mapping(struct rtnl_act *act, uint16_t index);
+extern int rtnl_skbedit_get_queue_mapping(struct rtnl_act *act, uint16_t *index);
+extern int rtnl_skbedit_set_mark(struct rtnl_act *act, uint32_t mark);
+extern int rtnl_skbedit_get_mark(struct rtnl_act *act, uint32_t *mark);
+extern int rtnl_skbedit_set_priority(struct rtnl_act *act, uint32_t prio);
+extern int rtnl_skbedit_get_priority(struct rtnl_act *act, uint32_t *prio);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif