netdevice.h revision ab322673298bd0b8927cdd9d11f3d36af5941b93
10e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org/* 20e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org * INET An implementation of the TCP/IP protocol suite for the LINUX 30e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org * operating system. INET is implemented using the BSD Socket 40e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org * interface as the means of communication with the user level. 50e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org * 60e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org * Definitions for the Interfaces handler. 70e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org * 80e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org * Version: @(#)dev.h 1.0.10 08/12/93 90e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org * 100e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org * Authors: Ross Biro 110e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org * Fred N. van Kempen, <waltje@uWalt.NL.Mugnet.ORG> 120e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org * Corey Minyard <wf-rch!minyard@relay.EU.net> 130e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org * Donald J. Becker, <becker@cesdis.gsfc.nasa.gov> 140e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org * Alan Cox, <alan@lxorguk.ukuu.org.uk> 150e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org * Bjorn Ekwall. <bj0rn@blox.se> 160e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org * Pekka Riikonen <priikone@poseidon.pspt.fi> 170e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org * 180e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org * This program is free software; you can redistribute it and/or 190e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org * modify it under the terms of the GNU General Public License 200e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org * as published by the Free Software Foundation; either version 210e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org * 2 of the License, or (at your option) any later version. 220e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org * 230e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org * Moved to /usr/include/linux for NET3 240e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org */ 250e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org#ifndef _LINUX_NETDEVICE_H 260e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org#define _LINUX_NETDEVICE_H 270e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org 280e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org#include <linux/if.h> 290e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org#include <linux/if_ether.h> 300e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org#include <linux/if_packet.h> 310e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org 320e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org 330e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org#define MAX_ADDR_LEN 32 /* Largest hardware address length */ 340e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org 350e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org 360e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org/* 370e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org * Network device statistics. Akin to the 2.0 ether stats but 380e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org * with byte counters. 390e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org */ 400e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org 410e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.orgstruct net_device_stats { 420e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org unsigned long rx_packets; /* total packets received */ 430e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org unsigned long tx_packets; /* total packets transmitted */ 440e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org unsigned long rx_bytes; /* total bytes received */ 450e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org unsigned long tx_bytes; /* total bytes transmitted */ 460e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org unsigned long rx_errors; /* bad packets received */ 470e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org unsigned long tx_errors; /* packet transmit problems */ 482007187dab65bb5d6f602355216534d6dd4ceaf2mallinath@webrtc.org unsigned long rx_dropped; /* no space in linux buffers */ 490e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org unsigned long tx_dropped; /* no space available in linux */ 500e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org unsigned long multicast; /* multicast packets received */ 510e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org unsigned long collisions; 520e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org 530e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org /* detailed rx_errors: */ 540e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org unsigned long rx_length_errors; 550e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org unsigned long rx_over_errors; /* receiver ring buff overflow */ 560e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org unsigned long rx_crc_errors; /* recved pkt with crc error */ 570e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org unsigned long rx_frame_errors; /* recv'd frame alignment error */ 580e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org unsigned long rx_fifo_errors; /* recv'r fifo overrun */ 590e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org unsigned long rx_missed_errors; /* receiver missed packet */ 600e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org 610e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org /* detailed tx_errors */ 620e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org unsigned long tx_aborted_errors; 630e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org unsigned long tx_carrier_errors; 640e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org unsigned long tx_fifo_errors; 65b881d27f23e9a8f52dc6a60fc66ebd75f9c2f15cmallinath@webrtc.org unsigned long tx_heartbeat_errors; 660e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org unsigned long tx_window_errors; 67952740e2dafeb2599d21778eb2e1b8f1c8f2bb07wu@webrtc.org 68952740e2dafeb2599d21778eb2e1b8f1c8f2bb07wu@webrtc.org /* for cslip etc */ 69952740e2dafeb2599d21778eb2e1b8f1c8f2bb07wu@webrtc.org unsigned long rx_compressed; 70952740e2dafeb2599d21778eb2e1b8f1c8f2bb07wu@webrtc.org unsigned long tx_compressed; 71952740e2dafeb2599d21778eb2e1b8f1c8f2bb07wu@webrtc.org}; 72952740e2dafeb2599d21778eb2e1b8f1c8f2bb07wu@webrtc.org 73952740e2dafeb2599d21778eb2e1b8f1c8f2bb07wu@webrtc.org 740e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org/* Media selection options. */ 750e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.orgenum { 76952740e2dafeb2599d21778eb2e1b8f1c8f2bb07wu@webrtc.org IF_PORT_UNKNOWN = 0, 770e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org IF_PORT_10BASE2, 780e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org IF_PORT_10BASET, 790e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org IF_PORT_AUI, 80952740e2dafeb2599d21778eb2e1b8f1c8f2bb07wu@webrtc.org IF_PORT_100BASET, 81952740e2dafeb2599d21778eb2e1b8f1c8f2bb07wu@webrtc.org IF_PORT_100BASETX, 82952740e2dafeb2599d21778eb2e1b8f1c8f2bb07wu@webrtc.org IF_PORT_100BASEFX 83952740e2dafeb2599d21778eb2e1b8f1c8f2bb07wu@webrtc.org}; 840e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org 850e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org 860e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org#endif /* _LINUX_NETDEVICE_H */ 870e118e7129884fbea117e78d6f2068139a414dbhenrike@webrtc.org