Sebastian Priebe [0] requested Linenoise support for the CLI as an alternative to Readline, so I thought I'd have a go at providing it. Linenoise is a minimal, zero-config, BSD licensed, Readline replacement used in Redis, MongoDB, and Android [1]. 0 - https://lore.kernel.org/netfilter-devel/4df20614cd10434b9f91080d0862dd0c@xxxxxx.group/ 1 - https://github.com/antirez/linenoise/ By default, the CLI continues to be build using Readline, but passing `--with-cli=linenoise` instead causes Linenoise to be used instead. `nft -v` has been extended to display what CLI implementation was built and whether mini-gmp was used. Changes since v1: * dropped the linenoise source from the nftables tree and added an `AC_CHECK_LIB` check instead. Changes since RFC: * two tidy-up patches dropped because they have already been applied; * source now added to include/ and src/; * tests/build/run-tests.sh updated to test `--with-cli=linenoise`; * `nft -v` extended. Jeremy Sowden (2): cli: add linenoise CLI implementation. main: add more information to `nft -v`. configure.ac | 17 ++++++++--- include/cli.h | 2 +- src/Makefile.am | 3 ++ src/cli.c | 64 ++++++++++++++++++++++++++++++++++------ src/main.c | 28 ++++++++++++++++-- tests/build/run-tests.sh | 4 +-- 6 files changed, 100 insertions(+), 18 deletions(-) -- 2.23.0