output: add mustach templating support

Based on José Bollo's mustache C implementation.  This adaptation uses
project specific data structures to avoid overhead with json parsing.

Reference: https://gitlab.com/jobol/mustach.git
Commit: d84608a69033d38c81b8fcff0cb272e225dd5428
Signed-off-by: Sami Kerola <kerolasa@iki.fi>
This commit is contained in:
Sami Kerola 2017-11-09 09:49:26 +00:00
parent fe847bb9b1
commit 7d9a5b5561
No known key found for this signature in database
GPG key ID: A9553245FDE9B739
9 changed files with 741 additions and 6 deletions

View file

@ -8,6 +8,7 @@ dhcpd-pools \- ISC dhcpd pools usage analysis
.OP \-\-sort nimcptTe
.OP \-\-reverse
.OP \-\-format tHcxXjJ
.OP \-\-mustach template
.OP \-\-output file
.OP \-\-limit nr
.OP \-\-color when
@ -103,6 +104,14 @@ to include ethernet address.
The default format is
.IR @OUTPUT_FORMAT@ .
.TP
\fB\-\-mustach\fR=\fITEMPLATE\fR
Output using mustach
.I template
file. Mustache tags in the template are same as json output without IP
address information. When the native output formats controlled with
.B \-\-format
option do not provide what you need you should use mustach instead.
.TP
\fB\-o\fR, \fB\-\-output\fR=\fIFILE\fR
.I File
where output is written. Default is stdout.
@ -280,8 +289,11 @@ Original design by Sami Kerola.
XML support by Dominic Germain, Sogetel inc.
.br
IPv6 support by Cheer Xiao.
.PP
The software has FreeBSD License.
.br
Mustache templating support by José Bollo.
.SH LICENSE
The dhcpd-pools uses FreeBSD License, the mustache uses Apache License, and
the gnulib modules are Mostly, but not entirely, GPL.
.SH "REPORTING BUGS"
Report bugs to
.MT @PACKAGE_BUGREPORT@
@ -294,4 +306,6 @@ Home page
.SH "SEE ALSO"
.BR dhcpd.leases (5),
.BR dhcpd.conf (5),
.BR chmod (1)
.BR chmod (1),
.UR https://mustache.github.io/
.UE