From: Ana Rey Date: Thu, 19 Jun 2014 17:34:21 +0000 (+0200) Subject: expr: cmp: Get a nft_rule_expr type in nft_rule_expr_cmp_snprintf_* functions X-Git-Tag: libnftnl-1.0.2~24 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=224d91bfc79ea8d6868560f55ec301c71b5805dd;p=thirdparty%2Flibnftnl.git expr: cmp: Get a nft_rule_expr type in nft_rule_expr_cmp_snprintf_* functions Code refactoring in nft_rule_expr_cmp_snprintf_* functions to get a nft_rule_expr type instead of nft_expr_cmp type. Signed-off-by: Ana Rey Signed-off-by: Pablo Neira Ayuso --- diff --git a/src/expr/cmp.c b/src/expr/cmp.c index 2c334ab0..b21fa9de 100644 --- a/src/expr/cmp.c +++ b/src/expr/cmp.c @@ -253,9 +253,10 @@ static int nft_rule_expr_cmp_xml_parse(struct nft_rule_expr *e, mxml_node_t *tre #endif } -static int -nft_rule_expr_cmp_snprintf_json(char *buf, size_t size, struct nft_expr_cmp *cmp) +static int nft_rule_expr_cmp_snprintf_json(char *buf, size_t size, + struct nft_rule_expr *e) { + struct nft_expr_cmp *cmp = nft_expr_data(e); int len = size, offset = 0, ret; ret = snprintf(buf, len, "\"sreg\":%u,\"op\":\"%s\",", @@ -269,9 +270,10 @@ nft_rule_expr_cmp_snprintf_json(char *buf, size_t size, struct nft_expr_cmp *cmp return offset; } -static int -nft_rule_expr_cmp_snprintf_xml(char *buf, size_t size, struct nft_expr_cmp *cmp) +static int nft_rule_expr_cmp_snprintf_xml(char *buf, size_t size, + struct nft_rule_expr *e) { + struct nft_expr_cmp *cmp = nft_expr_data(e); int len = size, offset = 0, ret; ret = snprintf(buf, len, "%u%s", @@ -285,10 +287,10 @@ nft_rule_expr_cmp_snprintf_xml(char *buf, size_t size, struct nft_expr_cmp *cmp) return offset; } -static int -nft_rule_expr_cmp_snprintf_default(char *buf, size_t size, - struct nft_expr_cmp *cmp) +static int nft_rule_expr_cmp_snprintf_default(char *buf, size_t size, + struct nft_rule_expr *e) { + struct nft_expr_cmp *cmp = nft_expr_data(e); int len = size, offset = 0, ret; ret = snprintf(buf, len, "%s reg %u ", @@ -306,15 +308,13 @@ static int nft_rule_expr_cmp_snprintf(char *buf, size_t size, uint32_t type, uint32_t flags, struct nft_rule_expr *e) { - struct nft_expr_cmp *cmp = nft_expr_data(e); - switch(type) { case NFT_OUTPUT_DEFAULT: - return nft_rule_expr_cmp_snprintf_default(buf, size, cmp); + return nft_rule_expr_cmp_snprintf_default(buf, size, e); case NFT_OUTPUT_XML: - return nft_rule_expr_cmp_snprintf_xml(buf, size, cmp); + return nft_rule_expr_cmp_snprintf_xml(buf, size, e); case NFT_OUTPUT_JSON: - return nft_rule_expr_cmp_snprintf_json(buf, size, cmp); + return nft_rule_expr_cmp_snprintf_json(buf, size, e); default: break; }