[BACK]Return to netstat.h CVS log [TXT][DIR] Up to [local] / src / usr.bin / netstat

Annotation of src/usr.bin/netstat/netstat.h, Revision 1.75

1.75    ! remi        1: /*     $OpenBSD: netstat.h,v 1.74 2019/04/28 17:59:51 mpi Exp $        */
1.2       deraadt     2: /*     $NetBSD: netstat.h,v 1.6 1996/05/07 02:55:05 thorpej Exp $      */
1.1       deraadt     3:
                      4: /*
                      5:  * Copyright (c) 1992, 1993
                      6:  *     Regents of the University of California.  All rights reserved.
                      7:  *
                      8:  * Redistribution and use in source and binary forms, with or without
                      9:  * modification, are permitted provided that the following conditions
                     10:  * are met:
                     11:  * 1. Redistributions of source code must retain the above copyright
                     12:  *    notice, this list of conditions and the following disclaimer.
                     13:  * 2. Redistributions in binary form must reproduce the above copyright
                     14:  *    notice, this list of conditions and the following disclaimer in the
                     15:  *    documentation and/or other materials provided with the distribution.
1.23      millert    16:  * 3. Neither the name of the University nor the names of its contributors
1.1       deraadt    17:  *    may be used to endorse or promote products derived from this software
                     18:  *    without specific prior written permission.
                     19:  *
                     20:  * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
                     21:  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
                     22:  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
                     23:  * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
                     24:  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
                     25:  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
                     26:  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
                     27:  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
                     28:  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
                     29:  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
                     30:  * SUCH DAMAGE.
                     31:  *
                     32:  *     from: @(#)netstat.h     8.2 (Berkeley) 1/4/94
                     33:  */
1.8       millert    34:
1.66      guenther   35: #include <kvm.h>
                     36:
1.9       millert    37: /* What is the max length of a pointer printed with %p (including 0x)? */
                     38: #define PLEN   (LONG_BIT / 4 + 2)
1.1       deraadt    39:
1.68      claudio    40: /* a bit of magic to print addresses as they should */
                     41: #define        FAKE_PTR(p)     (PLEN - ((p) ? 0 : 2)), p, ((p) ? "" : "x0")
                     42:
1.1       deraadt    43: int    Aflag;          /* show addresses of protocol control block */
                     44: int    aflag;          /* show all sockets (including servers) */
1.59      jsing      45: int    Bflag;          /* show TCP send and receive buffer sizes */
1.16      camield    46: int    bflag;          /* show bytes instead of packets */
1.1       deraadt    47: int    dflag;          /* show i/f dropped packets */
1.40      pyr        48: int    Fflag;          /* show routes whose gateways are in specified AF */
1.1       deraadt    49: int    gflag;          /* show group (multicast) routing or stats */
1.63      tedu       50: int    hflag;          /* print human numbers */
1.1       deraadt    51: int    iflag;          /* show interfaces */
1.71      benno      52: int    lflag;          /* show only listening sockets (only servers), */
                     53:                        /* with -g, show routing table with use and ref */
1.1       deraadt    54: int    mflag;          /* show memory stats */
                     55: int    nflag;          /* show addresses numerically */
                     56: int    pflag;          /* show given protocol */
1.35      markus     57: int    Pflag;          /* show given PCB */
1.19      brian      58: int    qflag;          /* only display non-zero values for output */
1.1       deraadt    59: int    rflag;          /* show routing tables (or routing stats) */
1.75    ! remi       60: int    Rflag;          /* show rdomain and rtable summary */
1.1       deraadt    61: int    sflag;          /* show protocol statistics */
                     62: int    tflag;          /* show i/f watchdog timers */
1.11      peter      63: int    vflag;          /* be verbose */
1.34      reyk       64: int    Wflag;          /* show net80211 protocol statistics */
1.1       deraadt    65:
                     66: int    interval;       /* repeat interval for i/f stats */
                     67:
                     68: char   *interface;     /* desired i/f for stats, or NULL for all i/fs */
                     69:
                     70: int    af;             /* address family */
                     71:
1.2       deraadt    72: extern char *__progname; /* program name, from crt0.o */
1.1       deraadt    73:
1.32      jaredy     74: int    kread(u_long addr, void *buf, int size);
1.49      claudio    75: char   *plural(u_int64_t);
                     76: char   *plurales(u_int64_t);
1.70      bluhm      77: char   *pluralys(u_int64_t);
1.1       deraadt    78:
1.68      claudio    79: void   protopr(kvm_t *, u_long, u_int, int);
                     80:
                     81: struct kinfo_file;
                     82: void   netdomainpr(struct kinfo_file *, int);
                     83: void   unixdomainpr(struct kinfo_file *);
                     84:
                     85: void   socket_dump(u_long);
                     86: void   unpcb_dump(u_long);
                     87:
1.45      deraadt    88: void   tcp_stats(char *);
                     89: void   udp_stats(char *);
                     90: void   ip_stats(char *);
1.51      michele    91: void   div_stats(char *);
1.45      deraadt    92: void   icmp_stats(char *);
                     93: void   igmp_stats(char *);
                     94: void   pim_stats(char *);
                     95: void   ah_stats(char *);
1.72      mpi        96: void   ipsec_stats(char *);
1.45      deraadt    97: void   esp_stats(char *);
                     98: void   ipip_stats(char *);
                     99: void   carp_stats (char *);
                    100: void   pfsync_stats (char *);
1.48      gollo     101: void   pflow_stats (char *);
1.45      deraadt   102: void   etherip_stats(char *);
                    103: void   ipcomp_stats(char *);
                    104:
1.42      ray       105: void   net80211_ifstats(char *);
1.35      markus    106:
1.44      deraadt   107: void   mbpr(void);
1.1       deraadt   108:
1.20      millert   109: void   hostpr(u_long, u_long);
                    110: void   impstats(u_long, u_long);
1.1       deraadt   111:
1.46      claudio   112: void   rt_stats(void);
1.36      claudio   113: void   pr_rthdr(int, int);
1.24      deraadt   114: void   pr_encaphdr(void);
1.20      millert   115: void   pr_family(int);
1.75    ! remi      116:
        !           117: void   rdomainpr(void);
1.13      itojun    118:
1.45      deraadt   119: void   ip6_stats(char *);
                    120: void   icmp6_stats(char *);
                    121: void   pim6_stats(char *);
1.52      michele   122: void   div6_stats(char *);
1.45      deraadt   123: void   rip6_stats(char *);
1.67      claudio   124: void   mroute6pr(void);
1.45      deraadt   125: void   mrt6_stats(void);
1.68      claudio   126:
                    127: struct in6_addr;
                    128: struct sockaddr_in6;
                    129: void   inet6print(struct in6_addr *, int, const char *);
1.20      millert   130: char   *routename6(struct sockaddr_in6 *);
1.36      claudio   131: char   *netname6(struct sockaddr_in6 *, struct sockaddr_in6 *);
1.1       deraadt   132:
1.67      claudio   133: size_t get_sysctl(const int *, u_int, char **);
1.62      mikeb     134: void   p_rttables(int, u_int);
1.36      claudio   135: void   p_flags(int, char *);
                    136: void   p_addr(struct sockaddr *, struct sockaddr *, int);
                    137: void   p_gwaddr(struct sockaddr *, int);
                    138: void   p_sockaddr(struct sockaddr *, struct sockaddr *, int, int);
                    139: char   *routename(struct sockaddr *);
                    140: char   *routename4(in_addr_t);
                    141: char   *netname(struct sockaddr *, struct sockaddr *);
                    142: char   *netname4(in_addr_t, in_addr_t);
1.54      claudio   143: char   *mpls_op(u_int32_t);
1.74      mpi       144: void   routepr(u_long, u_long, u_long, u_int);
1.20      millert   145:
                    146: void   nsprotopr(u_long, char *);
1.73      dlg       147:
                    148: #define        IF_SHOW_FAIL    0
                    149: #define        IF_SHOW_ERRS    1
                    150: #define        IF_SHOW_DROP    2
1.20      millert   151:
1.53      tedu      152: void   intpr(int, int);
1.20      millert   153:
1.67      claudio   154: void   mroutepr(void);
1.45      deraadt   155: void   mrt_stats(void);