UTF-8 validation is stopped by a NUL byte in g_data_input_stream_read_line_*utf8()
@mzabaluev
Submitted by Mikhail Zabaluev Link to original bug (#738020)
Description
The implementation of g_data_input_stream_read_line_utf8() and g_data_input_stream_read_finish_utf8() calls g_utf8_validate() to validate the data read. Unfortunately, it is called with -1 for length, which makes it only go as far as the first NUL byte. If this NUL byte is embedded in the input, the NUL and the rest of the line buffer is passed unvalidated to the client.
Version: 2.42.x