Page MenuHomeFreeBSD

sockstat: change check for wildcard sockets to avoid historical classes
ClosedPublic

Authored by karels on Oct 28 2021, 4:55 PM.
Tags
None
Referenced Files
F140660447: D32715.id98252.diff
Fri, Dec 26, 1:35 PM
Unknown Object (File)
Mon, Dec 22, 2:26 PM
Unknown Object (File)
Nov 27 2025, 3:32 AM
Unknown Object (File)
Nov 19 2025, 3:16 AM
Unknown Object (File)
Nov 16 2025, 4:42 PM
Unknown Object (File)
Nov 16 2025, 4:42 PM
Unknown Object (File)
Nov 16 2025, 4:42 PM
Unknown Object (File)
Nov 16 2025, 2:43 PM
Subscribers

Details

Summary

sockstat was checking whether a bound address was "host 0", the lowest
host on a network, using inet_lnaof(). This only works for class A/B/C.
However, it isn't useful to bind such an address unless it is really
the unspecified address INADDR_ANY. Change the check to to use that.

Test Plan

tested on system with numerous servers

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 42420
Build 39308: arc lint + arc unit

Event Timeline

This revision is now accepted and ready to land.Oct 28 2021, 9:54 PM
usr.bin/sockstat/sockstat.c
877

Don't you need here (conceptually) htonl(INADDR_ANY)?

usr.bin/sockstat/sockstat.c
877

Conceptually, yes. I see several other instances of comparisons of in_addr's to INADDR_ANY in netstat and others; I had probably just looked at that. I could change it if you prefer; it's not a performance issue.