Page MenuHomeFreeBSD

Avoid dereferencing a NULL pointer when TCP_REASS_LOGGING is enabled
ClosedPublic

Authored by tuexen on Feb 19 2019, 10:14 PM.
Tags
None
Referenced Files
Unknown Object (File)
Mon, Oct 13, 3:55 PM
Unknown Object (File)
Sat, Oct 11, 9:20 PM
Unknown Object (File)
Wed, Oct 1, 7:30 AM
Unknown Object (File)
Sep 17 2025, 2:57 PM
Unknown Object (File)
Sep 15 2025, 3:32 PM
Unknown Object (File)
Sep 14 2025, 10:35 PM
Unknown Object (File)
Sep 6 2025, 9:04 AM
Unknown Object (File)
Aug 15 2025, 11:30 PM
Subscribers

Details

Summary

This patch addresses an issue brought up by bz@ in D18968: When TCP_REASS_LOGGING is defined (which doesn't compile right now), a NULL pointer dereference would happen, if user data was received during the TCP handshake and BB logging is used.

A KASSERT is also added to detect tcp_reass() calls with illegal parameter combinations.

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

tuexen retitled this revision from Avoid dereferencing a NULL point when TCP_REASS_LOGGING is enabled to Avoid dereferencing a NULL pointer when TCP_REASS_LOGGING is enabled.Feb 20 2019, 6:05 PM
sys/netinet/tcp_reass.c
547 ↗(On Diff #54094)

Please add %p and others to the printf so people will be able to have pointers to the tp, th, ..., m for debugging in case this fires.
Will also help them to find out which illegal combination it was.

tuexen added inline comments.
sys/netinet/tcp_reass.c
547 ↗(On Diff #54094)

Good suggestion.Diff updated.

This revision is now accepted and ready to land.Feb 20 2019, 8:31 PM
This revision was automatically updated to reflect the committed changes.