Since 5c2b2b0a2ba7 ("src: error reporting with -f and read from stdin") stdin is stored in a buffer, update json support to use it instead of reading from /dev/stdin. Some systems do not provide /dev/stdin symlink to /proc/self/fd/0 according to reporter (that mentions Yocto Linux as example). Signed-off-by: Pablo Neira Ayuso <pablo@xxxxxxxxxxxxx> --- src/parser_json.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/parser_json.c b/src/parser_json.c index ee4657ee8044..4912d3608b2b 100644 --- a/src/parser_json.c +++ b/src/parser_json.c @@ -4357,6 +4357,13 @@ int nft_parse_json_filename(struct nft_ctx *nft, const char *filename, json_error_t err; int ret; + if (nft->stdin_buf) { + json_indesc.type = INDESC_STDIN; + json_indesc.name = "/dev/stdin"; + + return nft_parse_json_buffer(nft, nft->stdin_buf, msgs, cmds); + } + json_indesc.type = INDESC_FILE; json_indesc.name = filename; -- 2.30.2