2023-02-27 16:08 UTC+0100 ~ Luis Gerhorst <gerhorst@xxxxxxxxx> > RFC8259 ("The JavaScript Object Notation (JSON) Data Interchange > Format") only specifies \", \\, \/, \b, \f, \n, \r, and \r as valid > two-character escape sequences. This does not include \', which is not > required in JSON because it exclusively uses double quotes as string > separators. > > Solidus (/) may be escaped, but does not have to. Only reverse > solidus (\), double quotes ("), and the control characters have to be > escaped. Therefore, with this fix, bpftool correctly supports all valid > two-character escape sequences (but still does not support characters > that require multi-character escape sequences). > > Witout this fix, attempting to load a JSON file generated by bpftool > using Python 3.10.6's default json.load() may fail with the error > "Invalid \escape" if the file contains the invalid escaped single > quote (\'). > > Signed-off-by: Luis Gerhorst <gerhorst@xxxxxxxxx> Fixes: b66e907cfee2 ("tools: bpftool: copy JSON writer from iproute2 repository") I see this escape was similarly removed from iproute2's version of the file [0]. Thanks! Reviewed-by: Quentin Monnet <quentin@xxxxxxxxxxxxx> [0] https://git.kernel.org/pub/scm/network/iproute2/iproute2.git/commit/lib/json_writer.c?id=49c63bc775d610c3dfd3db0d6501ac29c519967f