netdevice.h 2.0 KB

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