[Bug 270285] Network issue with very small frames (tcp, padded)

From: <bugzilla-noreply_at_freebsd.org>
Date: Fri, 17 Mar 2023 13:51:47 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=270285

--- Comment #5 from Marcus Haarmann <mhaarmann@midoco.de> ---
reproduced some minutes ago, without haproxy, direct call to fetch:
The following frame was received:

0000   a0 36 9f 5f 90 42 e2 84 72 d3 14 5c 08 00 45 00
0010   00 2d cb 45 40 00 40 06 bc 08 c0 a8 19 29 c0 a8
0020   19 03 00 50 2b d2 a6 44 37 b5 d6 94 85 ed 50 18
0030   a4 cf d8 4e 00 00 b0 b9 89 d3 de 00

(padded with a single 00 byte), content was 5 bytes (b0 b9 89 d3 de).
Next packet received:
0000   a0 36 9f 5f 90 42 e2 84 72 d3 14 5c 08 00 45 00   .6._.B..r..\..E.
0010   05 dc cb 46 40 00 40 06 b6 58 c0 a8 19 29 c0 a8   ...F@.@..X...)..
0020   19 03 00 50 2b d2 a6 44 37 ba d6 94 85 ed 50 10   ...P+..D7.....P.
0030   a4 cf 22 8b 00 00 5e 2c 5b ad de 09 e6 d0 27 59   .."...^,[.....'Y
(data starts with 0x5e 0x2c ....)

Resulting defect (hex dump of defect file vs. correct file):
000eeac0  bd ec e8 40 92 5f 88 ef  ed dd 10 7c 3e 88 a3 23  |œìè@._.ïíÝ.|>.£#|
000eead0  e8 6c 67 b0 b9 89 d3 de  00 5e 2c 5b ad de 09 e6  |èlg°¹.ÓÞ.^,[­Þ.æ|
000eeae0  d0 27 59 1e f7 57 56 42  b3 db 91 18 1b 43 d2 eb  |Ð'Y.÷WVB³Û...CÒë|

000eeac0  bd ec e8 40 92 5f 88 ef  ed dd 10 7c 3e 88 a3 23  |œìè@._.ïíÝ.|>.£#|
000eead0  e8 6c 67 b0 b9 89 d3 de  5e 2c 5b ad de 09 e6 d0  |èlg°¹.ÓÞ^,[­Þ.æÐ|
000eeae0  27 59 1e f7 57 56 42 b3  db 91 18 1b 43 d2 eb 85  |'Y.÷WVB³Û...CÒë.|

The wrong byte was inserted between 0xde and 0x5e.
This is the local file constructed by a fetch http:.... command 
executed directly on the firewall.
If you say that a package of this kind is fully ok, which is also my
understanding of the padding mechanism here, then the kernel should not forward
this padding byte to user space.

I am not aware that the pfsense people to some kind of mangling. In this
reduced setup, only the LAN adapter is touched, no forwarding occurs. Output is
directly saved in the file.

-- 
You are receiving this mail because:
You are the assignee for the bug.