diff options
author | Eric Dumazet <edumazet@google.com> | 2023-05-24 16:14:56 +0200 |
---|---|---|
committer | Jakub Kicinski <kuba@kernel.org> | 2023-05-26 06:02:29 +0200 |
commit | 31642e7089df8fd3f54ca7843f7ee2952978cad1 (patch) | |
tree | e0c1b0669ada69fc25856ac95eeec8bf29c4b4f6 /net/sched | |
parent | net: stmmac: fix call trace when stmmac_xdp_xmit() is invoked (diff) | |
download | linux-31642e7089df8fd3f54ca7843f7ee2952978cad1.tar.xz linux-31642e7089df8fd3f54ca7843f7ee2952978cad1.zip |
netrom: fix info-leak in nr_write_internal()
Simon Kapadia reported the following issue:
<quote>
The Online Amateur Radio Community (OARC) has recently been experimenting
with building a nationwide packet network in the UK.
As part of our experimentation, we have been testing out packet on 300bps HF,
and playing with net/rom. For HF packet at this baud rate you really need
to make sure that your MTU is relatively low; AX.25 suggests a PACLEN of 60,
and a net/rom PACLEN of 40 to go with that.
However the Linux net/rom support didn't work with a low PACLEN;
the mkiss module would truncate packets if you set the PACLEN below about 200 or so, e.g.:
Apr 19 14:00:51 radio kernel: [12985.747310] mkiss: ax1: truncating oversized transmit packet!
This didn't make any sense to me (if the packets are smaller why would they
be truncated?) so I started investigating.
I looked at the packets using ethereal, and found that many were just huge
compared to what I would expect.
A simple net/rom connection request packet had the request and then a bunch
of what appeared to be random data following it:
</quote>
Simon provided a patch that I slightly revised:
Not only we must not use skb_tailroom(), we also do
not want to count NR_NETWORK_LEN twice.
Fixes: 1da177e4c3f4 ("Linux-2.6.12-rc2")
Co-Developed-by: Simon Kapadia <szymon@kapadia.pl>
Signed-off-by: Simon Kapadia <szymon@kapadia.pl>
Signed-off-by: Eric Dumazet <edumazet@google.com>
Tested-by: Simon Kapadia <szymon@kapadia.pl>
Reviewed-by: Simon Horman <simon.horman@corigine.com>
Link: https://lore.kernel.org/r/20230524141456.1045467-1-edumazet@google.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'net/sched')
0 files changed, 0 insertions, 0 deletions