Page MenuHomeFreeBSD

Properly null-terminate strings in a kernel dump header
ClosedPublic

Authored by asomers on May 15 2015, 10:30 PM.
Tags
None
Referenced Files
Unknown Object (File)
Tue, Apr 21, 2:34 AM
Unknown Object (File)
Mon, Apr 20, 3:10 AM
Unknown Object (File)
Mon, Apr 20, 3:10 AM
Unknown Object (File)
Sun, Apr 19, 3:10 AM
Unknown Object (File)
Sat, Apr 18, 10:09 PM
Unknown Object (File)
Sun, Apr 12, 5:47 AM
Unknown Object (File)
Mar 23 2026, 6:57 AM
Unknown Object (File)
Mar 20 2026, 11:48 PM
Subscribers

Details

Summary

A version string longer than 192 bytes will cause the version field of
a dump header to overflow. strncpy doesn't null terminate it, so savecore will
print a corrupted info file. Using strlcpy fixes the bug.

Test Plan

Build a kernel with a very long version string and use it to
generate a panic, then dump core. Check that the Panic String is not embedded
at the end of the Version String line.Version String line.

Diff Detail

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

Event Timeline

asomers retitled this revision from to Properly null-terminate strings in a kernel dump header.
asomers updated this object.
asomers edited the test plan for this revision. (Show Details)
asomers added a reviewer: markj.
asomers added a subscriber: peter.
markj edited edge metadata.
This revision is now accepted and ready to land.May 15 2015, 10:58 PM
This revision was automatically updated to reflect the committed changes.