diff options
author | Francois-Xavier Le Bail <devel.fx.lebail@orange.fr> | 2021-09-27 15:43:32 +0200 |
---|---|---|
committer | Francois-Xavier Le Bail <devel.fx.lebail@orange.fr> | 2021-09-27 16:10:31 +0200 |
commit | fd409921d94a0aff7804df31515fa42b675118b5 (patch) | |
tree | 9b7d9fd56d89017b94e934f62ded9f64584c4a9b /print-lwres.c | |
parent | 7c6a734dff3d95d0ed761be5634e65d25bd9b317 (diff) | |
download | tcpdump-fd409921d94a0aff7804df31515fa42b675118b5.tar.gz |
lwres: Fix a length check
This fix some inconsistent outputs clang versus gcc in 32 bits mode.
Add a test file.
Diffstat (limited to 'print-lwres.c')
-rw-r--r-- | print-lwres.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/print-lwres.c b/print-lwres.c index 9a2adf97..f28eab97 100644 --- a/print-lwres.c +++ b/print-lwres.c @@ -546,7 +546,7 @@ lwres_print(netdissect_options *ndo, ND_PRINT(" [len: %u != %u]", GET_BE_U_4(np->length), length); } - if (!unsupported && s < bp + GET_BE_U_4(np->length)) + if (!unsupported && ND_BYTES_BETWEEN(s, bp) < GET_BE_U_4(np->length)) ND_PRINT("[extra]"); return; |