Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0+ WITH Linux-syscall-note */
0002 /*
0003  * INET     An implementation of the TCP/IP protocol suite for the LINUX
0004  *      operating system.  INET is implemented using the  BSD Socket
0005  *      interface as the means of communication with the user level.
0006  *
0007  *      Definitions for the Interfaces handler.
0008  *
0009  * Version: @(#)dev.h   1.0.10  08/12/93
0010  *
0011  * Authors: Ross Biro
0012  *      Fred N. van Kempen, <waltje@uWalt.NL.Mugnet.ORG>
0013  *      Corey Minyard <wf-rch!minyard@relay.EU.net>
0014  *      Donald J. Becker, <becker@cesdis.gsfc.nasa.gov>
0015  *      Alan Cox, <alan@lxorguk.ukuu.org.uk>
0016  *      Bjorn Ekwall. <bj0rn@blox.se>
0017  *              Pekka Riikonen <priikone@poseidon.pspt.fi>
0018  *
0019  *      This program is free software; you can redistribute it and/or
0020  *      modify it under the terms of the GNU General Public License
0021  *      as published by the Free Software Foundation; either version
0022  *      2 of the License, or (at your option) any later version.
0023  *
0024  *      Moved to /usr/include/linux for NET3
0025  */
0026 #ifndef _UAPI_LINUX_NETDEVICE_H
0027 #define _UAPI_LINUX_NETDEVICE_H
0028 
0029 #include <linux/if.h>
0030 #include <linux/if_ether.h>
0031 #include <linux/if_packet.h>
0032 #include <linux/if_link.h>
0033 
0034 
0035 #define MAX_ADDR_LEN    32      /* Largest hardware address length */
0036 
0037 /* Initial net device group. All devices belong to group 0 by default. */
0038 #define INIT_NETDEV_GROUP   0
0039 
0040 
0041 /* interface name assignment types (sysfs name_assign_type attribute) */
0042 #define NET_NAME_UNKNOWN    0   /* unknown origin (not exposed to userspace) */
0043 #define NET_NAME_ENUM       1   /* enumerated by kernel */
0044 #define NET_NAME_PREDICTABLE    2   /* predictably named by the kernel */
0045 #define NET_NAME_USER       3   /* provided by user-space */
0046 #define NET_NAME_RENAMED    4   /* renamed by user-space */
0047 
0048 /* Media selection options. */
0049 enum {
0050         IF_PORT_UNKNOWN = 0,
0051         IF_PORT_10BASE2,
0052         IF_PORT_10BASET,
0053         IF_PORT_AUI,
0054         IF_PORT_100BASET,
0055         IF_PORT_100BASETX,
0056         IF_PORT_100BASEFX
0057 };
0058 
0059 /* hardware address assignment types */
0060 #define NET_ADDR_PERM       0   /* address is permanent (default) */
0061 #define NET_ADDR_RANDOM     1   /* address is generated randomly */
0062 #define NET_ADDR_STOLEN     2   /* address is stolen from other device */
0063 #define NET_ADDR_SET        3   /* address is set using
0064                      * dev_set_mac_address() */
0065 
0066 #endif /* _UAPI_LINUX_NETDEVICE_H */