1*c85d70efSVitaly Kuzmichev /* 2*c85d70efSVitaly Kuzmichev * INET An implementation of the TCP/IP protocol suite for the LINUX 3*c85d70efSVitaly Kuzmichev * operating system. INET is implemented using the BSD Socket 4*c85d70efSVitaly Kuzmichev * interface as the means of communication with the user level. 5*c85d70efSVitaly Kuzmichev * 6*c85d70efSVitaly Kuzmichev * Definitions for the Interfaces handler. 7*c85d70efSVitaly Kuzmichev * 8*c85d70efSVitaly Kuzmichev * Version: @(#)dev.h 1.0.10 08/12/93 9*c85d70efSVitaly Kuzmichev * 10*c85d70efSVitaly Kuzmichev * Authors: Ross Biro 11*c85d70efSVitaly Kuzmichev * Fred N. van Kempen, <waltje@uWalt.NL.Mugnet.ORG> 12*c85d70efSVitaly Kuzmichev * Corey Minyard <wf-rch!minyard@relay.EU.net> 13*c85d70efSVitaly Kuzmichev * Donald J. Becker, <becker@cesdis.gsfc.nasa.gov> 14*c85d70efSVitaly Kuzmichev * Alan Cox, <Alan.Cox@linux.org> 15*c85d70efSVitaly Kuzmichev * Bjorn Ekwall. <bj0rn@blox.se> 16*c85d70efSVitaly Kuzmichev * Pekka Riikonen <priikone@poseidon.pspt.fi> 17*c85d70efSVitaly Kuzmichev * 18*c85d70efSVitaly Kuzmichev * This program is free software; you can redistribute it and/or 19*c85d70efSVitaly Kuzmichev * modify it under the terms of the GNU General Public License 20*c85d70efSVitaly Kuzmichev * as published by the Free Software Foundation; either version 21*c85d70efSVitaly Kuzmichev * 2 of the License, or (at your option) any later version. 22*c85d70efSVitaly Kuzmichev * 23*c85d70efSVitaly Kuzmichev * Moved to /usr/include/linux for NET3 24*c85d70efSVitaly Kuzmichev */ 25*c85d70efSVitaly Kuzmichev #ifndef _LINUX_NETDEVICE_H 26*c85d70efSVitaly Kuzmichev #define _LINUX_NETDEVICE_H 27*c85d70efSVitaly Kuzmichev 28*c85d70efSVitaly Kuzmichev /* 29*c85d70efSVitaly Kuzmichev * Network device statistics. Akin to the 2.0 ether stats but 30*c85d70efSVitaly Kuzmichev * with byte counters. 31*c85d70efSVitaly Kuzmichev */ 32*c85d70efSVitaly Kuzmichev 33*c85d70efSVitaly Kuzmichev struct net_device_stats { 34*c85d70efSVitaly Kuzmichev unsigned long rx_packets; /* total packets received */ 35*c85d70efSVitaly Kuzmichev unsigned long tx_packets; /* total packets transmitted */ 36*c85d70efSVitaly Kuzmichev unsigned long rx_bytes; /* total bytes received */ 37*c85d70efSVitaly Kuzmichev unsigned long tx_bytes; /* total bytes transmitted */ 38*c85d70efSVitaly Kuzmichev unsigned long rx_errors; /* bad packets received */ 39*c85d70efSVitaly Kuzmichev unsigned long tx_errors; /* packet transmit problems */ 40*c85d70efSVitaly Kuzmichev unsigned long rx_dropped; /* no space in linux buffers */ 41*c85d70efSVitaly Kuzmichev unsigned long tx_dropped; /* no space available in linux */ 42*c85d70efSVitaly Kuzmichev unsigned long multicast; /* multicast packets received */ 43*c85d70efSVitaly Kuzmichev unsigned long collisions; 44*c85d70efSVitaly Kuzmichev 45*c85d70efSVitaly Kuzmichev /* detailed rx_errors: */ 46*c85d70efSVitaly Kuzmichev unsigned long rx_length_errors; 47*c85d70efSVitaly Kuzmichev unsigned long rx_over_errors; /* receiver ring buff overflow */ 48*c85d70efSVitaly Kuzmichev unsigned long rx_crc_errors; /* recved pkt with crc error */ 49*c85d70efSVitaly Kuzmichev unsigned long rx_frame_errors; /* recv'd frame alignment error */ 50*c85d70efSVitaly Kuzmichev unsigned long rx_fifo_errors; /* recv'r fifo overrun */ 51*c85d70efSVitaly Kuzmichev unsigned long rx_missed_errors; /* receiver missed packet */ 52*c85d70efSVitaly Kuzmichev 53*c85d70efSVitaly Kuzmichev /* detailed tx_errors */ 54*c85d70efSVitaly Kuzmichev unsigned long tx_aborted_errors; 55*c85d70efSVitaly Kuzmichev unsigned long tx_carrier_errors; 56*c85d70efSVitaly Kuzmichev unsigned long tx_fifo_errors; 57*c85d70efSVitaly Kuzmichev unsigned long tx_heartbeat_errors; 58*c85d70efSVitaly Kuzmichev unsigned long tx_window_errors; 59*c85d70efSVitaly Kuzmichev 60*c85d70efSVitaly Kuzmichev /* for cslip etc */ 61*c85d70efSVitaly Kuzmichev unsigned long rx_compressed; 62*c85d70efSVitaly Kuzmichev unsigned long tx_compressed; 63*c85d70efSVitaly Kuzmichev }; 64*c85d70efSVitaly Kuzmichev 65*c85d70efSVitaly Kuzmichev #endif /* _LINUX_NETDEVICE_H */ 66