summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorFernando Fernandez Mancera <ffmancera@riseup.net>2019-08-02 12:12:08 +0200
committerPablo Neira Ayuso <pablo@netfilter.org>2019-08-08 12:32:48 +0200
commit627c451b2351310da9ad82dbdb64747b1fada8e5 (patch)
treea049c393ec78296bd014d807943c573c75695e81 /include
parent45cb29a2ada4edfc2b547fe023d923ce0299a61d (diff)
src: allow variables in the chain priority specification
This patch allows you to use variables in chain priority definitions, e.g. define prio = filter define prionum = 10 define prioffset = "filter - 150" add table ip foo add chain ip foo bar { type filter hook input priority $prio; } add chain ip foo ber { type filter hook input priority $prionum; } add chain ip foo bor { type filter hook input priority $prioffset; } Signed-off-by: Fernando Fernandez Mancera <ffmancera@riseup.net> Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Diffstat (limited to 'include')
-rw-r--r--include/datatype.h1
-rw-r--r--include/rule.h7
2 files changed, 3 insertions, 5 deletions
diff --git a/include/datatype.h b/include/datatype.h
index cf115158..ddcb7db8 100644
--- a/include/datatype.h
+++ b/include/datatype.h
@@ -262,6 +262,7 @@ extern const struct datatype icmpx_code_type;
extern const struct datatype igmp_type_type;
extern const struct datatype time_type;
extern const struct datatype boolean_type;
+extern const struct datatype priority_type;
void inet_service_type_print(const struct expr *expr, struct output_ctx *octx);
diff --git a/include/rule.h b/include/rule.h
index ee881b9c..4c8cab13 100644
--- a/include/rule.h
+++ b/include/rule.h
@@ -174,14 +174,11 @@ enum chain_flags {
* struct prio_spec - extendend priority specification for mixed
* textual/numerical parsing.
*
- * @str: name of the standard priority value
- * @num: Numerical value. This MUST contain the parsed value of str after
- * evaluation.
+ * @expr: expr of the standard priority value
*/
struct prio_spec {
- const char *str;
- int num;
struct location loc;
+ struct expr *expr;
};
/**