Changeset View
Changeset View
Standalone View
Standalone View
usr.bin/systat/ifstat.c
| Show First 20 Lines • Show All 445 Lines • ▼ Show 20 Lines | |||||
| static | static | ||||
| unsigned int | unsigned int | ||||
| getifnum(void) | getifnum(void) | ||||
| { | { | ||||
| u_int data = 0; | u_int data = 0; | ||||
| size_t datalen = 0; | size_t datalen = 0; | ||||
| static int name[] = { CTL_NET, | static int name[] = { CTL_NET, | ||||
| PF_LINK, | PF_LINK, | ||||
| NETLINK_GENERIC, | NETLINK_GENERIC_MIB, | ||||
| IFMIB_SYSTEM, | IFMIB_SYSTEM, | ||||
| IFMIB_IFCOUNT }; | IFMIB_IFCOUNT }; | ||||
| datalen = sizeof(data); | datalen = sizeof(data); | ||||
| if (sysctl(name, 5, (void *)&data, (size_t *)&datalen, (void *)NULL, | if (sysctl(name, 5, (void *)&data, (size_t *)&datalen, (void *)NULL, | ||||
| (size_t)0) != 0) | (size_t)0) != 0) | ||||
| IFSTAT_ERR(1, "sysctl error"); | IFSTAT_ERR(1, "sysctl error"); | ||||
| return (data); | return (data); | ||||
| } | } | ||||
| static int | static int | ||||
| getifmibdata(int row, struct ifmibdata *data) | getifmibdata(int row, struct ifmibdata *data) | ||||
| { | { | ||||
| int ret = 0; | int ret = 0; | ||||
| size_t datalen = 0; | size_t datalen = 0; | ||||
| static int name[] = { CTL_NET, | static int name[] = { CTL_NET, | ||||
| PF_LINK, | PF_LINK, | ||||
| NETLINK_GENERIC, | NETLINK_GENERIC_MIB, | ||||
| IFMIB_IFDATA, | IFMIB_IFDATA, | ||||
| 0, | 0, | ||||
| IFDATA_GENERAL }; | IFDATA_GENERAL }; | ||||
| datalen = sizeof(*data); | datalen = sizeof(*data); | ||||
| name[4] = row; | name[4] = row; | ||||
| ret = sysctl(name, 6, (void *)data, (size_t *)&datalen, (void *)NULL, | ret = sysctl(name, 6, (void *)data, (size_t *)&datalen, (void *)NULL, | ||||
| (size_t)0); | (size_t)0); | ||||
| Show All 34 Lines | |||||