History log of /freebsd-current/usr.bin/netstat/route_netlink.c
Revision Date Author Comments
# 5e3934b1 24-Nov-2023 Warner Losh <imp@FreeBSD.org>

usr.bin: Automated cleanup of cdefs and other formatting

Apply the following automated changes to try to eliminate
no-longer-needed sys/cdefs.h includes as well as now-empty
blank lines in a row.

Remove /^#if.*\n#endif.*\n#include\s+<sys/cdefs.h>.*\n/
Remove /\n+#include\s+<sys/cdefs.h>.*\n+#if.*\n#endif.*\n+/
Remove /\n+#if.*\n#endif.*\n+/
Remove /^#if.*\n#endif.*\n/
Remove /\n+#include\s+<sys/cdefs.h>\n#include\s+<sys/types.h>/
Remove /\n+#include\s+<sys/cdefs.h>\n#include\s+<sys/param.h>/
Remove /\n+#include\s+<sys/cdefs.h>\n#include\s+<sys/capsicum.h>/

Sponsored by: Netflix


# 1d386b48 16-Aug-2023 Warner Losh <imp@FreeBSD.org>

Remove $FreeBSD$: one-line .c pattern

Remove /^[\s*]*__FBSDID\("\$FreeBSD\$"\);?\s*\n/


# 656a39c1 27-May-2023 Alexander V. Chernikov <melifaro@FreeBSD.org>

netlink: use newly-added snl(3) array parsing for handling multipath
routes.

MFC after: 2 weeks


# 9ee6278b 18-Mar-2023 Alexander V. Chernikov <melifaro@FreeBSD.org>

netstat: fix double-free in netlink error code path.

CID: 1504382


# aee2f11b 18-Mar-2023 Alexander V. Chernikov <melifaro@FreeBSD.org>

netstat: simplify netlink route printing code.

A number of improvements has commited to snl(3) recently.
A notable one is snl(3) build-in parsers for all of the objects
exported by the kernel.

This change updates netlink handling code to the latest available snl(3)
API.


# 6a6f2b0c 06-Mar-2023 Alexander V. Chernikov <melifaro@FreeBSD.org>

netstat: fix IPv6 link-locals & custom multipath printing.


# 15dbf5a2 29-Jan-2023 Alexander V. Chernikov <melifaro@FreeBSD.org>

netstat: export weight for single-path routes.

* Parse and export newly-added NL_RTA_WEIGHT attribute, providing path
weight for a non-multipath route. This fixes a number of tests in
sys/net/routing which rely on this data.
* Remove handling of NL_RTA_KNH_ID in multipath routes, as it is
not provided.
* Improve kernel/user nexthop index export. As a result,
for multipath routes:
* nhg-kidx attribute represents kernel nhg index (always provided)
* nhg-uidx attribute represents user-provided nhg index (if set)
for non-multipath routes:
* nhop-kidx attribute represents kernel nhop index (always provided)
* nhop-udx attribute represents user-provided nexthop index (if set)


# 79111aa2 27-Jan-2023 Alexander V. Chernikov <melifaro@FreeBSD.org>

netstat: fix format string on 32-bit archs


# 68636dcb 27-Jan-2023 Alexander V. Chernikov <melifaro@FreeBSD.org>

netstat: make netstat -rn use netlink instead of rtsock

This change switches route listing in netstat to netlink, with fallback to rtsock.
The outputs are mostly identical, with an exception of not showing kernel
nexthop indexes for multipath routes.

Differential Revision: https://reviews.freebsd.org/D36529