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
F154375054: D19254.id54094.diff
Tue, Apr 28, 5:05 AM
Unknown Object (File)
Mon, Apr 27, 4:19 PM
Unknown Object (File)
Mon, Apr 27, 11:30 AM
Unknown Object (File)
Mon, Apr 27, 5:17 AM
Unknown Object (File)
Sun, Apr 26, 2:43 PM
Unknown Object (File)
Fri, Apr 24, 7:11 AM
Unknown Object (File)
Sat, Apr 18, 5:45 AM
Unknown Object (File)
Tue, Apr 14, 6:39 AM
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 Skipped
Unit
Tests Skipped
Build Status
Buildable 22585

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

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

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.