From 8f6e1c37e3e74e1fd490a0de5360ff1467c521cd Mon Sep 17 00:00:00 2001 From: Phil Sutter Date: Wed, 29 Aug 2018 16:23:26 +0200 Subject: JSON: Rename mangle statement properties Instead of the generic "left" and "right", use "key" and "value". Signed-off-by: Phil Sutter Signed-off-by: Pablo Neira Ayuso --- src/json.c | 16 ++++++++-------- src/parser_json.c | 46 +++++++++++++++++++++++----------------------- 2 files changed, 31 insertions(+), 31 deletions(-) (limited to 'src') diff --git a/src/json.c b/src/json.c index 1b596897..4af8ee8e 100644 --- a/src/json.c +++ b/src/json.c @@ -929,15 +929,15 @@ json_t *expr_stmt_json(const struct stmt *stmt, struct output_ctx *octx) json_t *payload_stmt_json(const struct stmt *stmt, struct output_ctx *octx) { return json_pack("{s: {s:o, s:o}}", "mangle", - "left", expr_print_json(stmt->payload.expr, octx), - "right", expr_print_json(stmt->payload.val, octx)); + "key", expr_print_json(stmt->payload.expr, octx), + "value", expr_print_json(stmt->payload.val, octx)); } json_t *exthdr_stmt_json(const struct stmt *stmt, struct output_ctx *octx) { return json_pack("{s: {s:o, s:o}}", "mangle", - "left", expr_print_json(stmt->exthdr.expr, octx), - "right", expr_print_json(stmt->exthdr.val, octx)); + "key", expr_print_json(stmt->exthdr.expr, octx), + "value", expr_print_json(stmt->exthdr.val, octx)); } json_t *quota_stmt_json(const struct stmt *stmt, struct output_ctx *octx) @@ -973,8 +973,8 @@ json_t *ct_stmt_json(const struct stmt *stmt, struct output_ctx *octx) }; return json_pack("{s:{s:o, s:o}}", "mangle", - "left", ct_expr_json(&expr, octx), - "right", expr_print_json(stmt->ct.expr, octx)); + "key", ct_expr_json(&expr, octx), + "value", expr_print_json(stmt->ct.expr, octx)); } json_t *limit_stmt_json(const struct stmt *stmt, struct output_ctx *octx) @@ -1051,8 +1051,8 @@ json_t *meta_stmt_json(const struct stmt *stmt, struct output_ctx *octx) root = json_pack("{s:{s:s}}", "meta", "key", meta_templates[stmt->meta.key].token); root = json_pack("{s:o, s:o}", - "left", root, - "right", expr_print_json(stmt->meta.expr, octx)); + "key", root, + "value", expr_print_json(stmt->meta.expr, octx)); return json_pack("{s:o}", "mangle", root); } diff --git a/src/parser_json.c b/src/parser_json.c index 1bb4f1f1..2f7e0a3e 100644 --- a/src/parser_json.c +++ b/src/parser_json.c @@ -1441,50 +1441,50 @@ static struct stmt *json_parse_verdict_stmt(struct json_ctx *ctx, } static struct stmt *json_parse_mangle_stmt(struct json_ctx *ctx, - const char *key, json_t *value) + const char *type, json_t *root) { - json_t *jleft, *jright; - struct expr *left, *right; + json_t *jkey, *jvalue; + struct expr *key, *value; struct stmt *stmt; - if (json_unpack_err(ctx, value, "{s:o, s:o}", - "left", &jleft, "right", &jright)) + if (json_unpack_err(ctx, root, "{s:o, s:o}", + "key", &jkey, "value", &jvalue)) return NULL; - left = json_parse_mangle_lhs_expr(ctx, jleft); - if (!left) { - json_error(ctx, "Invalid LHS of mangle statement"); + key = json_parse_mangle_lhs_expr(ctx, jkey); + if (!key) { + json_error(ctx, "Invalid mangle statement key"); return NULL; } - right = json_parse_stmt_expr(ctx, jright); - if (!right) { - json_error(ctx, "Invalid RHS of mangle statement"); - expr_free(left); + value = json_parse_stmt_expr(ctx, jvalue); + if (!value) { + json_error(ctx, "Invalid mangle statement value"); + expr_free(key); return NULL; } - switch (left->ops->type) { + switch (key->ops->type) { case EXPR_EXTHDR: - return exthdr_stmt_alloc(int_loc, left, right); + return exthdr_stmt_alloc(int_loc, key, value); case EXPR_PAYLOAD: - return payload_stmt_alloc(int_loc, left, right); + return payload_stmt_alloc(int_loc, key, value); case EXPR_META: - stmt = meta_stmt_alloc(int_loc, left->meta.key, right); - expr_free(left); + stmt = meta_stmt_alloc(int_loc, key->meta.key, value); + expr_free(key); return stmt; case EXPR_CT: - if (left->ct.key == NFT_CT_HELPER) { + if (key->ct.key == NFT_CT_HELPER) { stmt = objref_stmt_alloc(int_loc); stmt->objref.type = NFT_OBJECT_CT_HELPER; - stmt->objref.expr = right; + stmt->objref.expr = value; } else { - stmt = ct_stmt_alloc(int_loc, left->ct.key, - left->ct.direction, right); + stmt = ct_stmt_alloc(int_loc, key->ct.key, + key->ct.direction, value); } - expr_free(left); + expr_free(key); return stmt; default: - json_error(ctx, "Invalid LHS expression type for mangle statement."); + json_error(ctx, "Invalid mangle statement key expression type."); return NULL; } } -- cgit v1.2.3