summaryrefslogtreecommitdiffstats
path: root/usr.bin/systat/netstat.c
Commit message (Collapse)AuthorAgeFilesLines
* Use NULL instead of 0 for pointers.araujo2016-04-201-1/+1
| | | | | | gethostbyname(3) will return NULL for error status. MFC after: 2 weeks.
* Augment struct tcpstat with tcps_states[], which is used for book-keepingglebius2016-01-271-1/+1
| | | | | | | the amount of TCP connections by state. Provides a cheap way to get connection count without traversing the whole pcb list. Sponsored by: Netflix
* - Avoid accessing window properties directly, instead, use accessors.delphij2015-09-101-1/+1
| | | | | | | | This should be no-op for now, but allows the code to work if we move to NCURSES_OPAQUE. - Use calloc() instead of malloc+bzero. MFC after: 2 weeks
* Merge from projects/sendfile:glebius2014-11-301-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | o Introduce a notion of "not ready" mbufs in socket buffers. These mbufs are now being populated by some I/O in background and are referenced outside. This forces following implications: - An mbuf which is "not ready" can't be taken out of the buffer. - An mbuf that is behind a "not ready" in the queue neither. - If sockbet buffer is flushed, then "not ready" mbufs shouln't be freed. o In struct sockbuf the sb_cc field is split into sb_ccc and sb_acc. The sb_ccc stands for ""claimed character count", or "committed character count". And the sb_acc is "available character count". Consumers of socket buffer API shouldn't already access them directly, but use sbused() and sbavail() respectively. o Not ready mbufs are marked with M_NOTREADY, and ready but blocked ones with M_BLOCKED. o New field sb_fnrdy points to the first not ready mbuf, to avoid linear search. o New function sbready() is provided to activate certain amount of mbufs in a socket buffer. A special note on SCTP: SCTP has its own sockbufs. Unfortunately, FreeBSD stack doesn't yet allow protocol specific sockbufs. Thus, SCTP does some hacks to make itself compatible with FreeBSD: it manages sockbufs on its own, but keeps sb_cc updated to inform the stack of amount of data in them. The new notion of "not ready" data isn't supported by SCTP. Instead, only a mechanical substitute is done: s/sb_cc/sb_ccc/. A proper solution would be to take away struct sockbuf from struct socket and allow protocols to implement their own socket buffers, like SCTP already does. This was discussed with rrs@. Sponsored by: Netflix Sponsored by: Nginx, Inc.
* Whitespace fixes.ed2012-02-051-2/+0
| | | | | | - Remove redundant empty lines. - Replace ^L by \014. This allows you to safely cat/grep/etc this file without causing confusion.
* Replace index() and rindex() calls with strchr() and strrchr().ed2012-01-031-2/+2
| | | | | | | | | | The index() and rindex() functions were marked LEGACY in the 2001 revision of POSIX and were subsequently removed from the 2008 revision. The strchr() and strrchr() functions are part of the C standard. This makes the source code a lot more consistent, as most of these C files also call into other str*() routines. In fact, about a dozen already perform strchr() calls.
* Fix whitespace inconsistencies in systat(1).ed2011-10-151-1/+1
| | | | According to md5(1), the resulting binary is the same.
* Remove duplicated header fileskevlo2011-06-241-1/+0
|
* Remove the advertising clause from UCB copyrighted files in usr.bin. Thisjoel2010-12-111-4/+0
| | | | | | | | | is in accordance with the information provided at ftp://ftp.cs.berkeley.edu/pub/4bsd/README.Impt.License.Change Also add $FreeBSD$ to a few files to keep svn happy. Discussed with: imp, rwatson
* Revert most part of 200420 as requested, as more review and polish isdelphij2009-12-131-0/+1
| | | | needed.
* Remove unneeded header includes from usr.bin/ except contributed code.delphij2009-12-111-1/+0
| | | | Tested with: make universe
* Correct a number of evolved problems with inp_vflag and inp_flags:rwatson2009-03-151-1/+1
| | | | | | | | | | | | | | | | | | | | | certain flags that should have been in inp_flags ended up in inp_vflag, meaning that they were inconsistently locked, and in one case, interpreted. Move the following flags from inp_vflag to gaps in the inp_flags space (and clean up the inp_flags constants to make gaps more obvious to future takers): INP_TIMEWAIT INP_SOCKREF INP_ONESBCAST INP_DROPPED Some aspects of this change have no effect on kernel ABI at all, as these are UDP/TCP/IP-internal uses; however, netstat and sockstat detect INP_TIMEWAIT when listing TCP sockets, so any MFC will need to take this into account. MFC after: 1 week (or after dependencies are MFC'd) Reviewed by: bz
* ANSIfy and remove register.delphij2008-01-161-30/+14
| | | | Resulting binary verified with strip(1)+md5(1).
* The logic of fetchnetstat_sysctl() isn't too complex: if idx is 0,yar2006-11-271-2/+2
| | | | | | | | we set and use xtp; if idx is 1, we set and use xip; the other cases are impossible. However, GCC cannot see that xip and xtp are always initialized before use because they are initialized and used in different if/else blocks. So setting them to NULL at the very beginning won't hurt.
* + WARNS=4 reminds that nlist.n_name isn't const.yar2006-11-271-3/+5
| | | | | | + Use C99 initializers to be WARNS-clean. + The last element in a namelist should have its n_name set to NULL, not to an empty string.
* Don't discard a const qualifier from constant strings.yar2006-11-271-1/+2
|
* Remove trailing whitespace.bde2006-04-301-6/+6
| | | | | Submitted by: Se=E1n Farley <sean-freebsd at farley dot org> PR: bin/81874
* Show the load average in the tcp display (it was already shown, perhapsbde2006-04-301-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | not very usefully, in all other displays). This was the original point of the PR. Move the load average up by 2 so that it starts in row 0 for all windows (2 lines above it were wasted for all other windows except vmstat). Move everything below it up by 2 or 3 (3 for icmp and icmp6 which had an extra blank line due from not compensating for the foot-shooting in note (3); only ip and ip6 compensated). Reduce the magic numbers related to this. Notes by the submitter: %%% 1. All the subwin() calls are identical using #define MAINWIN_ROW 3 (systat.h). 2. The load average is at the top of the window. 3. Each display starts on the fourth line. I made changes to those displays that shifted the start line (i.e., icmp). This entailed a lot of changes within the comments at the top of those displays. 4. For ip6, I shifted the "Input next-header histogram" column down one row to separate it from "IPv6 Output". I raised "bad scope packets" and "address selection failed" up one row to stay with "IPv6 Input" (valid?). They were down one row to probably line up at the bottom, but I think they should stick with their fellow items in a column. 5. I condensed ifstat a bit. It had a lot of empty rows. %%% Submitted by: Se=E1n Farley <sean-freebsd at farley dot org> PR: bin/81874
* simply ignore unknown address family.ume2005-02-191-3/+1
| | | | MFC after: 1 week
* teach IPv6 to `systat -netstat'.ume2005-02-191-29/+122
| | | | | Tested by: kuriyama MFC after: 1 week
* Make systat -net aware of compressed time_wait sockets.silby2003-12-241-3/+11
|
* Add ip6 and icmp6 displays to systat.dwmalone2003-08-011-0/+3
| | | | MFC after: 2 weeks
* Widen struct sockbuf's sb_timeo member to int from short. Withjdp2002-07-241-4/+4
| | | | | | | | | | | | | non-default but reasonable values of hz this member overflowed, breaking NFS over UDP. Also, as long as I'm plowing up struct sockbuf ... Change certain members from u_long/long to u_int/int in order to reduce wasted space on 64-bit machines. This change was requested by Andrew Gallatin. Netstat and systat need to be rebuilt. I am incrementing __FreeBSD_version in case any ports need to change.
* remove __Pimp2002-03-221-7/+7
|
* WARNS=2 fixes with NO_WERROR set, as there are some header issuesmarkm2001-12-121-38/+39
| | | | with namelists. use __FBSDID().
* Get rid of setgid kmem for systat, and while being there, fix some bugstmm2001-03-231-23/+142
| | | | | | | | | | | and compiler warnings. The data for network statistics are still obtained via the kvm interface if systat was started with the needed privileges, otherwise sysctls are used. The reason for this is that with really many open sockets, the sysctl method is probably slower, but it systat -netstat is probably not really usable in either mode under these conditions. Approved by: rwatson
* My bad, committed the submitted patch rather than the fixed patch.phk2000-12-301-2/+3
|
* Use macro API to <sys/queue.h>phk2000-12-301-31/+16
| | | | | Submitted by: "Jason" <jsmethers@pdq.net> Reviewed by: phk
* systat is way too comfortable with curses internals...peter1999-08-301-1/+1
|
* $Id$ -> $FreeBSD$peter1999-08-281-1/+1
|
* Quiet many compiler warnings.obrien1998-10-081-2/+2
|
* #include <arpa/inet.h>peter1998-06-121-1/+2
|
* o Use snprintf rather than sprintfimp1998-06-091-6/+8
| | | | | | | | | | | o Add more checks for buffer overflows o Use snprintf rather than strcat/cpy and have better checks for max length exceeded. Most of these changes are not exploitable buffer overruns, but it never hurts to be safe. Inspired by and obtained from: OpenBSD
* Revert $FreeBSD$ to $Id$peter1997-02-221-1/+1
|
* Make the long-awaited change from $Id$ to $FreeBSD$jkh1997-01-141-1/+1
| | | | | | | | This will make a number of things easier in the future, as well as (finally!) avoiding the Id-smashing problem which has plagued developers for so long. Boy, I'm glad we're not using sup anymore. This update would have been insane otherwise.
* bin/1942 curses problem in systatphk1996-11-021-2/+2
| | | | | truncate if too long for field. 2.2 candidate.
* Eliminate unnecessary include of <sys/mbuf.h>.wollman1996-10-281-1/+4
|
* Move #include of queue.h before #include of socketvar.h in preparation fordg1996-03-111-1/+1
| | | | struct socket changes.
* Remove trailing whitespace.rgrimes1995-05-301-4/+4
|
* Updated for 4.4BSD queue macros. (Oops, I forgot to commit this last night;dg1995-04-091-11/+4
| | | | sorry Jordan).
* BSD 4.4 Lite Usr.bin Sourcesrgrimes1994-05-271-0/+470
OpenPOWER on IntegriCloud