diff options
author | Álvaro Neira Ayuso <alvaroneay@gmail.com> | 2013-10-13 21:52:34 +0200 |
---|---|---|
committer | Pablo Neira Ayuso <pablo@netfilter.org> | 2013-10-17 10:03:37 +0200 |
commit | ec4b60bebcab23d46aa09bed06018457c35e5afa (patch) | |
tree | 20a277a82715a2771869320cb1854daa55e52644 /src/rule.c | |
parent | 271442070bdde632e591871ade7b39ffd2cf63fb (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.c | 18 |
1 files changed, 8 insertions, 10 deletions
@@ -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); |