1
0
mirror of http://git.haproxy.org/git/haproxy.git/ synced 2025-03-31 23:58:16 +00:00

MINOR: log: add no_escape_map to bypass escape with _lf_encode_bytes()

Providing no_escape_map as <map> argument to _lf_encode_bytes() function
will make the function skip escaping since the map is empty.

This is for convenience, as it might be useful to call lf_encode_chunk()
to encoding binary data without escaping it.
This commit is contained in:
Aurelien DARRAGON 2024-04-26 14:23:43 +02:00
parent 2caa921abf
commit 162e311a0e

View File

@ -95,6 +95,7 @@ static const struct log_fmt_st log_formats[LOG_FORMATS] = {
* that the byte should be escaped. Be careful to always pass bytes from 0 to
* 255 exclusively to the macros.
*/
long no_escape_map[(256/8) / sizeof(long)];
long rfc5424_escape_map[(256/8) / sizeof(long)];
long hdr_encode_map[(256/8) / sizeof(long)];
long url_encode_map[(256/8) / sizeof(long)];
@ -2847,6 +2848,9 @@ static void init_log()
char *tmp;
int i;
/* Initialize the no escape map, which may be used to bypass escaping */
memset(no_escape_map, 0, sizeof(no_escape_map));
/* Initialize the escape map for the RFC5424 structured-data : '"\]'
* inside PARAM-VALUE should be escaped with '\' as prefix.
* See https://tools.ietf.org/html/rfc5424#section-6.3.3 for more