public inbox for passt-dev@passt.top
 help / color / mirror / code / Atom feed
* [PATCH 0/4] Improve robustness of calculations related to frame size limits
@ 2025-03-13  5:40 David Gibson
  2025-03-13  5:40 ` [PATCH 1/4] vu_common: Tighten vu_packet_check_range() David Gibson
                   ` (3 more replies)
  0 siblings, 4 replies; 5+ messages in thread
From: David Gibson @ 2025-03-13  5:40 UTC (permalink / raw)
  To: passt-dev, Stefano Brivio; +Cc: David Gibson

There are a number of places where we make calculations and checks
around how large frames can be and where they sit in memory.  Several
of these are roughly correct, but can be wrong in certain edge cases.
Improve robustness by clarifying what we're doing and being more
careful about the edge cases.

David Gibson (4):
  vu_common: Tighten vu_packet_check_range()
  packet: More cautious checks to avoid pointer arithmetic UB
  tap: Make size of pool_tap[46] purely a tuning parameter
  tap: Clarify calculation of TAP_MSGS

 packet.c    | 25 +++++++++++++++++++++----
 packet.h    |  3 +++
 passt.h     |  2 --
 tap.c       | 43 ++++++++++++++++++++++++++++++++++++-------
 tap.h       |  3 ++-
 vu_common.c | 15 ++++++++++-----
 6 files changed, 72 insertions(+), 19 deletions(-)

-- 
2.48.1


^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2025-03-13  5:41 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-03-13  5:40 [PATCH 0/4] Improve robustness of calculations related to frame size limits David Gibson
2025-03-13  5:40 ` [PATCH 1/4] vu_common: Tighten vu_packet_check_range() David Gibson
2025-03-13  5:40 ` [PATCH 2/4] packet: More cautious checks to avoid pointer arithmetic UB David Gibson
2025-03-13  5:40 ` [PATCH 3/4] tap: Make size of pool_tap[46] purely a tuning parameter David Gibson
2025-03-13  5:40 ` [PATCH 4/4] tap: Clarify calculation of TAP_MSGS David Gibson

Code repositories for project(s) associated with this public inbox

	https://passt.top/passt

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for IMAP folder(s).