Page MenuHomeFreeBSD

Properly initialize mbuf's fibnum field in nd6_ns_output()
ClosedPublic

Authored by ae on Mar 2 2015, 3:02 PM.
Tags
None
Referenced Files
Unknown Object (File)
Feb 10 2024, 3:48 PM
Unknown Object (File)
Jan 22 2024, 12:45 PM
Unknown Object (File)
Dec 20 2023, 5:12 AM
Unknown Object (File)
Dec 20 2023, 12:49 AM
Unknown Object (File)
Oct 28 2023, 12:40 PM
Unknown Object (File)
Sep 30 2023, 4:07 PM
Unknown Object (File)
Sep 20 2023, 8:50 PM
Unknown Object (File)
Sep 3 2023, 10:42 PM
Subscribers
None

Details

Summary

nd6_ns_output() creates new mbuf 'm' to send ND6 NS, but it doesn't initialize m->m_pkthdr.fibnum. In some cases it is possible, that ip6_output() will be called and M_GETFIB() will be used to determine fibnum used in in6_selectroute_fib(). M_GETFIB() can return some random number (fibnum wasn't properly initialized), this can lead to panic in the routing code.

I created nd6_ns_output_fib() function similar to nd6_na_output_fib().

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
No Lint Coverage
Unit
No Test Coverage

Event Timeline

ae retitled this revision from to Properly initialize mbuf's fibnum field in nd6_ns_output().
ae updated this object.
ae edited the test plan for this revision. (Show Details)
ae added a reviewer: network.
hrs added a reviewer: hrs.
This revision is now accepted and ready to land.Mar 2 2015, 5:08 PM
ae updated this revision to Diff 4085.

Closed by commit rS279564 (authored by @ae).