summaryrefslogtreecommitdiffstats
path: root/usr.bin
diff options
context:
space:
mode:
authorglebius <glebius@FreeBSD.org>2014-03-13 03:42:24 +0000
committerglebius <glebius@FreeBSD.org>2014-03-13 03:42:24 +0000
commitb38edcd355dfe9c2ac4080b8837687b0dba7dd41 (patch)
tree23c54b335bf31cd906e8cf3bad37e838d9a80c2d /usr.bin
parent2720ac2544ae02bf5f480a96cc1f9ba096803879 (diff)
downloadFreeBSD-src-b38edcd355dfe9c2ac4080b8837687b0dba7dd41.zip
FreeBSD-src-b38edcd355dfe9c2ac4080b8837687b0dba7dd41.tar.gz
Since 32-bit if_baudrate isn't enough to describe a baud rate of a 10 Gbit
interface, in the r241616 a crutch was provided. It didn't work well, and finally we decided that it is time to break ABI and simply make if_baudrate a 64-bit value. Meanwhile, the entire struct if_data was reviewed. o Remove the if_baudrate_pf crutch. o Make all fields of struct if_data fixed machine independent size. The notion of data (packet counters, etc) are by no means MD. And it is a bug that on amd64 we've got a 64-bit counters, while on i386 32-bit, which at modern speeds overflow within a second. This also removes quite a lot of COMPAT_FREEBSD32 code. o Give 16 bit for the ifi_datalen field. This field was provided to make future changes to if_data less ABI breaking. Unfortunately the 8 bit size of it had effectively limited sizeof if_data to 256 bytes. o Give 32 bits to ifi_mtu and ifi_metric. o Give 64 bits to the rest of fields, since they are counters. __FreeBSD_version bumped. Discussed with: emax Sponsored by: Netflix Sponsored by: Nginx, Inc.
Diffstat (limited to 'usr.bin')
-rw-r--r--usr.bin/netstat/if.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/usr.bin/netstat/if.c b/usr.bin/netstat/if.c
index 46ce775..a87d68b 100644
--- a/usr.bin/netstat/if.c
+++ b/usr.bin/netstat/if.c
@@ -438,9 +438,11 @@ intpr(int interval, void (*pfunc)(char *), int af)
printf("%*s %-17.17s",
Wflag ? 27 : 25, "", fmt);
if (ifma->ifma_addr->sa_family == AF_LINK) {
- printf(" %8lu", IFA_STAT(imcasts));
+ printf(" %8ju",
+ (uintmax_t )IFA_STAT(imcasts));
printf("%*s", bflag ? 17 : 6, "");
- printf(" %8lu", IFA_STAT(omcasts));
+ printf(" %8ju",
+ (uintmax_t )IFA_STAT(omcasts));
}
putchar('\n');
}
OpenPOWER on IntegriCloud