haproxy/src
Willy Tarreau c6b7a97e54 BUG/MINOR: cli/stats: add missing trailing LF after "show info json"
This is the continuation of commit 5a0e7ca5d ("BUG/MINOR: cli/stats: add
missing trailing LF after JSON outputs"). There's also a "show info json"
command which was also missing the trailing LF. It's constructed exactly
like the "show stat json", in that it dumps a series of fields without any
LF. The difference however is that for the stats output, everything was
enclosed in an array which required an LF *after* the closing bracket,
while here there's no such array so we have to emit the LF after the loop.
That makes the two functions a bit inconsistent, it's quite annoying, but
making them better would require sending one LF per line in the stats
output, which is not particularly interesting.

Given that it took 5+ years to spot that this code wasn't working as
expected it doesn't seem worth investing much time trying to refactor
it to make it look cleaner at the risk of breaking other obscure parts.
2022-06-10 15:12:21 +02:00
..
acl.c
action.c BUG/MINOR: rules: Fix check_capture() function to use the right rule arguments 2022-04-25 15:28:21 +02:00
activity.c CLEANUP: applet: rename appctx_cs() to appctx_sc() 2022-05-27 19:33:35 +02:00
applet.c CLEANUP: applet: rename appctx_cs() to appctx_sc() 2022-05-27 19:33:35 +02:00
arg.c
auth.c
backend.c CLEANUP: stconn: replace a few remaining occurrences of CS in comments or traces 2022-05-27 19:33:35 +02:00
base64.c
cache.c CLEANUP: applet: rename appctx_cs() to appctx_sc() 2022-05-27 19:33:35 +02:00
calltrace.c BUILD: calltrace: fix wrong include when building with TRACE=1 2022-04-19 08:23:30 +02:00
cbuf.c
cfgcond.c
cfgdiag.c
cfgparse-global.c MINOR: config: Add "cluster-secret" new global keyword 2022-05-12 17:48:35 +02:00
cfgparse-listen.c MINOR: config: use the new bind_parse_args_list() to parse a "bind" line 2022-05-20 18:39:43 +02:00
cfgparse-quic.c MINOR: quic: Connection TX buffer setting renaming. 2022-05-30 09:59:26 +02:00
cfgparse-ssl.c MINOR: listener/ssl: set the SSL xprt layer only once the whole config is known 2022-05-20 18:41:55 +02:00
cfgparse-tcp.c CLEANUP: tree-wide: remove 25 occurrences of unneeded fcntl.h 2022-04-26 10:59:48 +02:00
cfgparse-unix.c CLEANUP: tree-wide: remove 25 occurrences of unneeded fcntl.h 2022-04-26 10:59:48 +02:00
cfgparse.c BUG/MINOR: peers: detect and warn on init_addr/resolvers/check/agent-check 2022-05-31 09:42:44 +02:00
channel.c CLEANUP: conn_stream: tree-wide rename to stconn (stream connector) 2022-05-27 19:33:34 +02:00
check.c BUG/MINOR: checks: Properly handle email alerts in trace messages 2022-06-08 15:28:38 +02:00
chunk.c CLEANUP: chunks: release trash also in deinit 2022-04-27 17:55:41 +02:00
cli.c CLEANUP: applet: rename appctx_cs() to appctx_sc() 2022-05-27 19:33:35 +02:00
clock.c
compression.c CLEANUP: compression: move the default setting of maxzlibmem to defaults 2022-04-25 19:42:43 +02:00
connection.c MINOR: connection: support HTTP/3.0 for smp_*_http_major fetch 2022-06-07 12:04:12 +02:00
cpuset.c
debug.c CLEANUP: applet: rename appctx_cs() to appctx_sc() 2022-05-27 19:33:35 +02:00
dgram.c
dict.c
dns.c CLEANUP: applet: rename appctx_cs() to appctx_sc() 2022-05-27 19:33:35 +02:00
dynbuf.c
eb32sctree.c
eb32tree.c
eb64tree.c
ebimtree.c
ebistree.c
ebmbtree.c
ebpttree.c
ebsttree.c
ebtree.c
errors.c CLEANUP: ring: pass the ring watch flags to ring_attach_cli(), not in ctx.cli 2022-05-06 18:13:36 +02:00
ev_epoll.c BUILD: pollers: use an initcall to register the pollers 2022-04-25 19:00:55 +02:00
ev_evports.c BUILD: pollers: use an initcall to register the pollers 2022-04-25 19:00:55 +02:00
ev_kqueue.c BUILD: pollers: use an initcall to register the pollers 2022-04-25 19:00:55 +02:00
ev_poll.c BUILD: pollers: use an initcall to register the pollers 2022-04-25 19:00:55 +02:00
ev_select.c BUILD: pollers: use an initcall to register the pollers 2022-04-25 19:00:55 +02:00
extcheck.c MINOR: ext-check: indicate the transport and protocol of a server 2022-05-13 16:06:29 +02:00
fcgi-app.c MEDIUM: http-ana: Add a proxy option to restrict chars in request header names 2022-05-16 16:00:26 +02:00
fcgi.c
fd.c BUILD: fd: disguise the fd_set_nonblock/cloexec result 2022-04-27 10:52:21 +02:00
filters.c CLEANUP: tree-wide: Remove any ref to stream-interfaces 2022-04-13 15:10:16 +02:00
fix.c
flt_http_comp.c BUG/MEDIUM: compression: Don't forget to update htx_sl and http_msg flags 2022-04-15 16:22:33 +02:00
flt_spoe.c CLEANUP: applet: rename appctx_cs() to appctx_sc() 2022-05-27 19:33:35 +02:00
flt_trace.c
freq_ctr.c
frontend.c REORG: rename cs_utils.h to sc_strm.h 2022-05-27 19:33:35 +02:00
h1.c
h1_htx.c BUG/MEDIUM: http: Properly reject non-HTTP/1.x protocols 2022-05-24 15:38:05 +02:00
h2.c
h3.c BUG/MEDIUM: h3: fix SETTINGS parsing 2022-06-09 14:34:43 +02:00
h3_stats.c MINOR: h3: Add a statistics module for h3 2022-05-30 09:59:26 +02:00
haproxy.c MINOR: quic: Clarifications about transport parameters value 2022-05-30 09:59:26 +02:00
hash.c
hlua.c CLEANUP: applet: rename appctx_cs() to appctx_sc() 2022-05-27 19:33:35 +02:00
hlua_fcn.c CLEANUP: Add missing header to hlua_fcn.c 2022-05-17 11:40:33 +02:00
hpack-dec.c
hpack-enc.c
hpack-huff.c
hpack-tbl.c
hq_interop.c MINOR: mux-quic/h3: adjust demuxing function return values 2022-06-07 18:15:47 +02:00
http.c MEDIUM: h1: enlarge the scope of accepted version chars with accept-invalid-http-request 2022-05-24 15:38:54 +02:00
http_acl.c
http_act.c REORG: stconn: rename conn_stream.{c,h} to stconn.{c,h} 2022-05-27 19:33:35 +02:00
http_ana.c MEDIUM: http-ana: Always report rewrite failures as PRXCOND in logs 2022-06-02 12:21:32 +02:00
http_client.c MEDIUM: httpclient: Don't close CLI applet at the end of a response 2022-06-01 17:20:57 +02:00
http_conv.c
http_fetch.c REORG: rename cs_utils.h to sc_strm.h 2022-05-27 19:33:35 +02:00
http_htx.c CLEANUP: Destroy `http_err_chunks` members during deinit 2022-04-26 23:39:43 +02:00
http_rules.c BUILD: http: remove the two unused constructors in rules and ana 2022-04-25 19:26:26 +02:00
htx.c
init.c MINOR: init: add the pre-check callback 2022-04-22 15:45:47 +02:00
jwt.c
lb_chash.c
lb_fas.c
lb_fwlc.c
lb_fwrr.c
lb_map.c
listener.c MINOR: quic: QUIC transport parameters split. 2022-05-30 09:59:26 +02:00
log.c CLEANUP: applet: rename appctx_cs() to appctx_sc() 2022-05-27 19:33:35 +02:00
lru.c
mailers.c BUG/MEDIUM: mailers: Set the object type for check attached to an email alert 2022-06-08 15:28:38 +02:00
map.c CLEANUP: applet: rename appctx_cs() to appctx_sc() 2022-05-27 19:33:35 +02:00
mjson.c
mqtt.c
mux_fcgi.c BUILD: htx: use the unchecked version of htx_get_head_blk() where needed 2022-05-30 16:27:48 +02:00
mux_h1.c CLEANUP: muxes: Consider stream's sd as defined in .show_fd callback functions 2022-05-30 08:45:16 +02:00
mux_h2.c OPTIM: mux-h2: increase h2_settings_initial_window_size default to 64k 2022-06-09 09:28:21 +02:00
mux_pt.c CLEANUP: mux-pt: rename the "endp" field to "sd" 2022-05-27 19:33:35 +02:00
mux_quic.c MINOR: mux-quic/h3: adjust demuxing function return values 2022-06-07 18:15:47 +02:00
mworker-prog.c
mworker.c CLEANUP: applet: rename appctx_cs() to appctx_sc() 2022-05-27 19:33:35 +02:00
namespace.c
ncbuf.c CLEANUP: Re-apply xalloc_size.cocci (2) 2022-06-02 14:12:18 +02:00
pattern.c
payload.c CLEANUP: check: rename all occurrences of stconn "cs" to "sc" 2022-05-27 19:33:35 +02:00
peers.c CLEANUP: peers/cli: make peers_dump_peer() take an appctx instead of an stconn 2022-05-31 08:55:54 +02:00
pipe.c
pool.c REORG: stconn: rename conn_stream.{c,h} to stconn.{c,h} 2022-05-27 19:33:35 +02:00
proto_quic.c CLEANUP: Re-apply xalloc_size.cocci (2) 2022-06-02 14:12:18 +02:00
proto_sockpair.c MINOR: protocol: replace ctrl_type with xprt_type and clarify it 2022-05-20 18:39:43 +02:00
proto_tcp.c MINOR: protocol: replace ctrl_type with xprt_type and clarify it 2022-05-20 18:39:43 +02:00
proto_udp.c MINOR: protocol: replace ctrl_type with xprt_type and clarify it 2022-05-20 18:39:43 +02:00
proto_uxdg.c MINOR: protocol: replace ctrl_type with xprt_type and clarify it 2022-05-20 18:39:43 +02:00
proto_uxst.c MINOR: protocol: replace ctrl_type with xprt_type and clarify it 2022-05-20 18:39:43 +02:00
protocol.c MINOR: protocol: replace ctrl_type with xprt_type and clarify it 2022-05-20 18:39:43 +02:00
proxy.c MINOR: quic: QUIC transport parameters split. 2022-05-30 09:59:26 +02:00
qpack-dec.c BUG/MINOR: qpack: do not consider empty enc/dec stream as error 2022-05-31 15:35:06 +02:00
qpack-enc.c BUG/MINOR: qpack: support bigger prefix-integer encoding 2022-05-30 14:30:05 +02:00
qpack-tbl.c
queue.c CLEANUP: stream: rename "csf" and "csb" to "scf" and "scb" 2022-05-27 19:33:34 +02:00
quic_cc.c
quic_cc_newreno.c
quic_frame.c CLEANUP: quic: wrong use of eb*entry() macro 2022-05-12 17:48:35 +02:00
quic_loss.c MINOR: quic_stats: Add transport new counters (lost, stateless reset, drop) 2022-05-30 09:59:26 +02:00
quic_sock.c CLEANUP: Re-apply xalloc_size.cocci (2) 2022-06-02 14:12:18 +02:00
quic_stats.c MINOR: quic_stats: Add transport new counters (lost, stateless reset, drop) 2022-05-30 09:59:26 +02:00
quic_stream.c CLEANUP: quic: drop the name "conn_stream" from the pool variable names 2022-05-27 19:33:35 +02:00
quic_tls.c MINOR: quic_tls: Add quic_tls_decrypt2() implementation 2022-05-20 16:57:12 +02:00
quic_tp.c MINOR: quic: Clarifications about transport parameters value 2022-05-30 09:59:26 +02:00
raw_sock.c MINOR: tree-wide: always consider EWOULDBLOCK in addition to EAGAIN 2022-04-25 20:32:15 +02:00
regex.c
resolvers.c BUG/MINOR: server: do not enable DNS resolution on disabled proxies 2022-06-10 11:17:27 +02:00
ring.c CLEANUP: applet: rename appctx_cs() to appctx_sc() 2022-05-27 19:33:35 +02:00
sample.c BUG/MEDIUM: sample: Fix adjusting size in word converter 2022-05-27 19:33:34 +02:00
server.c MINOR: server: indicate when no address was expected for a server 2022-05-31 09:25:34 +02:00
server_state.c
session.c
sha1.c
shctx.c
signal.c
sink.c CLEANUP: applet: rename appctx_cs() to appctx_sc() 2022-05-27 19:33:35 +02:00
slz.c
sock.c MINOR: connection: get rid of the CO_FL_ADDR_*_SET flags 2022-05-02 17:47:46 +02:00
sock_inet.c CLEANUP: tree-wide: use fd_set_nonblock() and fd_set_cloexec() 2022-04-26 10:59:48 +02:00
sock_unix.c CLEANUP: tree-wide: use fd_set_nonblock() and fd_set_cloexec() 2022-04-26 10:59:48 +02:00
ssl_ckch.c BUG/MINOR: ssl_ckch: Fix another possible uninitialized value 2022-06-03 16:49:53 +02:00
ssl_crtlist.c BUG/MEDIUM: ssl/crt-list: Rework 'add ssl crt-list' to handle full buffer cases 2022-06-01 17:20:57 +02:00
ssl_sample.c CLEANUP: check: rename all occurrences of stconn "cs" to "sc" 2022-05-27 19:33:35 +02:00
ssl_sock.c MINOR: quic: QUIC transport parameters split. 2022-05-30 09:59:26 +02:00
ssl_utils.c CLEANUP: Add missing header to ssl_utils.c 2022-05-17 11:40:33 +02:00
stats.c BUG/MINOR: cli/stats: add missing trailing LF after "show info json" 2022-06-10 15:12:21 +02:00
stconn.c CLEANUP: stconn: remove the new unneeded SE_FL_APP_MASK 2022-05-27 19:33:35 +02:00
stick_table.c CLEANUP: applet: rename appctx_cs() to appctx_sc() 2022-05-27 19:33:35 +02:00
stream.c BUILD: htx: use the unchecked version of htx_get_head_blk() where needed 2022-05-30 16:27:48 +02:00
task.c
tcp_act.c REORG: rename cs_utils.h to sc_strm.h 2022-05-27 19:33:35 +02:00
tcp_rules.c REORG: stconn: rename conn_stream.{c,h} to stconn.{c,h} 2022-05-27 19:33:35 +02:00
tcp_sample.c CLEANUP: check: rename all occurrences of stconn "cs" to "sc" 2022-05-27 19:33:35 +02:00
tcpcheck.c CLEANUP: tcpcheck: Remove useless test on the stream-connector in tcpcheck_main 2022-05-30 08:37:40 +02:00
thread.c CLEANUP: tree-wide: remove 25 occurrences of unneeded fcntl.h 2022-04-26 10:59:48 +02:00
time.c
tools.c REORG: stconn: rename conn_stream.{c,h} to stconn.{c,h} 2022-05-27 19:33:35 +02:00
trace.c BUG/MINOR: trace: Test server existence for health-checks to get proxy 2022-06-08 15:28:38 +02:00
uri_auth.c
uri_normalizer.c
vars.c
version.c
wdt.c BUG/MEDIUM: wdt: don't trigger the watchdog when p is unitialized 2022-05-13 11:28:08 +02:00
xprt_handshake.c BUILD: xprt: use an initcall to register the transport layers 2022-04-25 19:18:24 +02:00
xprt_quic.c BUILD: quic: fix anonymous union for gcc-4.4 2022-06-08 11:24:36 +02:00