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