-
T-X authored
Currently a buffer with a fixed size of 8192 bytes is used. However the result can potentially be larger, which leads to a truncated JSON output on stdout. UDP packets, without compression and with IP fragmentation, can be up to 64KiB large. Instead of using a fixed size buffer on the stack ask the kernel first about the size of the UDP data and allocate a buffer of appropriate size on the heap before receiving the UDP data. The issue was observed with a custom respondd provider. Signed-off-by:
Linus Lüssing <linus.luessing@c0d3.blue>
T-X authoredCurrently a buffer with a fixed size of 8192 bytes is used. However the result can potentially be larger, which leads to a truncated JSON output on stdout. UDP packets, without compression and with IP fragmentation, can be up to 64KiB large. Instead of using a fixed size buffer on the stack ask the kernel first about the size of the UDP data and allocate a buffer of appropriate size on the heap before receiving the UDP data. The issue was observed with a custom respondd provider. Signed-off-by:
Linus Lüssing <linus.luessing@c0d3.blue>