Changeset View
Changeset View
Standalone View
Standalone View
head/usr.bin/netstat/route.c
Show First 20 Lines • Show All 354 Lines • ▼ Show 20 Lines | p_rtentry_sysctl(const char *name, struct rt_msghdr *rtm) | ||||
struct sockaddr *sa, *addr[RTAX_MAX]; | struct sockaddr *sa, *addr[RTAX_MAX]; | ||||
char buffer[128]; | char buffer[128]; | ||||
char prettyname[128]; | char prettyname[128]; | ||||
int i, protrusion; | int i, protrusion; | ||||
xo_open_instance(name); | xo_open_instance(name); | ||||
sa = (struct sockaddr *)(rtm + 1); | sa = (struct sockaddr *)(rtm + 1); | ||||
for (i = 0; i < RTAX_MAX; i++) { | for (i = 0; i < RTAX_MAX; i++) { | ||||
if (rtm->rtm_addrs & (1 << i)) | if (rtm->rtm_addrs & (1 << i)) { | ||||
addr[i] = sa; | addr[i] = sa; | ||||
sa = (struct sockaddr *)((char *)sa + SA_SIZE(sa)); | sa = (struct sockaddr *)((char *)sa + SA_SIZE(sa)); | ||||
} | |||||
} | } | ||||
protrusion = p_sockaddr("destination", addr[RTAX_DST], | protrusion = p_sockaddr("destination", addr[RTAX_DST], | ||||
addr[RTAX_NETMASK], | addr[RTAX_NETMASK], | ||||
rtm->rtm_flags, wid_dst); | rtm->rtm_flags, wid_dst); | ||||
protrusion = p_sockaddr("gateway", addr[RTAX_GATEWAY], NULL, RTF_HOST, | protrusion = p_sockaddr("gateway", addr[RTAX_GATEWAY], NULL, RTF_HOST, | ||||
wid_gw - protrusion); | wid_gw - protrusion); | ||||
snprintf(buffer, sizeof(buffer), "{[:-%d}{:flags/%%s}{]:} ", | snprintf(buffer, sizeof(buffer), "{[:-%d}{:flags/%%s}{]:} ", | ||||
▲ Show 20 Lines • Show All 426 Lines • Show Last 20 Lines |