summaryrefslogtreecommitdiffstats
path: root/src/rule.c
diff options
context:
space:
mode:
authorÁlvaro Neira Ayuso <alvaroneay@gmail.com>2013-10-13 21:52:34 +0200
committerPablo Neira Ayuso <pablo@netfilter.org>2013-10-17 10:03:37 +0200
commitec4b60bebcab23d46aa09bed06018457c35e5afa (patch)
tree20a277a82715a2771869320cb1854daa55e52644 /src/rule.c
parent271442070bdde632e591871ade7b39ffd2cf63fb (diff)
src: json: remove spaces
Remove all the spaces from the JSON output to reduce the size of the output string, this also provides a consistent output in table, chain, rule and set. As Stephen Hemminger suggested, better to squash the output to consume as less bytes as possible. Signed-off-by: Alvaro Neira Ayuso <alvaroneay@gmail.com> Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Diffstat (limited to 'src/rule.c')
-rw-r--r--src/rule.c18
1 files changed, 8 insertions, 10 deletions
diff --git a/src/rule.c b/src/rule.c
index 7f2bce6..50f4486 100644
--- a/src/rule.c
+++ b/src/rule.c
@@ -705,37 +705,35 @@ static int nft_rule_snprintf_json(char *buf, size_t size, struct nft_rule *r,
int ret, len = size, offset = 0;
struct nft_rule_expr *expr;
- ret = snprintf(buf, len,
- "{ \"rule\": { \"family\" : \"%s\", \"table\" : \"%s\", "
- "\"chain\" : \"%s\", \"handle\" : %llu,",
+ ret = snprintf(buf, len, "{\"rule\":{\"family\":\"%s\",\"table\":\"%s\","
+ "\"chain\":\"%s\",\"handle\":%llu,",
nft_family2str(r->family), r->table, r->chain,
(unsigned long long)r->handle);
SNPRINTF_BUFFER_SIZE(ret, size, len, offset);
- ret = snprintf(buf+offset, len, "\"flags\" : %u, ", r->rule_flags);
+ ret = snprintf(buf+offset, len, "\"flags\":%u,", r->rule_flags);
SNPRINTF_BUFFER_SIZE(ret, size, len, offset);
if (r->flags & (1 << NFT_RULE_ATTR_COMPAT_PROTO) ||
r->flags & (1 << NFT_RULE_ATTR_COMPAT_FLAGS)) {
- ret = snprintf(buf+offset, len, "\"compat_flags\" : %u, "
- "\"compat_proto\" : %u, ",
+ ret = snprintf(buf+offset, len, "\"compat_flags\":%u,"
+ "\"compat_proto\":%u,",
r->compat.flags, r->compat.proto);
SNPRINTF_BUFFER_SIZE(ret, size, len, offset);
}
if (r->flags & (1 << NFT_RULE_ATTR_POSITION)) {
- ret = snprintf(buf+offset, len,
- "\"position\" : %"PRIu64", ",
+ ret = snprintf(buf+offset, len, "\"position\":%"PRIu64",",
r->position);
SNPRINTF_BUFFER_SIZE(ret, size, len, offset);
}
- ret = snprintf(buf+offset, len, "\"expr\" : [");
+ ret = snprintf(buf+offset, len, "\"expr\":[");
SNPRINTF_BUFFER_SIZE(ret, size, len, offset);
list_for_each_entry(expr, &r->expr_list, head) {
ret = snprintf(buf+offset, len,
- " { \"type\" : \"%s\", ", expr->ops->name);
+ "{\"type\":\"%s\",", expr->ops->name);
SNPRINTF_BUFFER_SIZE(ret, size, len, offset);
ret = expr->ops->snprintf(buf+offset, len, type, flags, expr);