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.
6 * Definitions for the Interfaces handler.
8 * Version: @(#)dev.h 1.0.10 08/12/93
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@lxorguk.ukuu.org.uk>
15 * Bjorn Ekwall. <bj0rn@blox.se>
16 * Pekka Riikonen <priikone@poseidon.pspt.fi>
18 * This program is free software; you can redistribute it and/or
19 * modify it under the terms of the GNU General Public License
20 * as published by the Free Software Foundation; either version
21 * 2 of the License, or (at your option) any later version.
23 * Moved to /usr/include/linux for NET3
25 #ifndef _UAPI_LINUX_NETDEVICE_H
26 #define _UAPI_LINUX_NETDEVICE_H
29 #include <linux/if_ether.h>
30 #include <linux/if_packet.h>
31 #include <linux/if_link.h>
34 #define MAX_ADDR_LEN 32 /* Largest hardware address length */
36 /* Initial net device group. All devices belong to group 0 by default. */
37 #define INIT_NETDEV_GROUP 0
40 /* interface name assignment types (sysfs name_assign_type attribute) */
41 #define NET_NAME_UNKNOWN 0 /* unknown origin (not exposed to userspace) */
42 #define NET_NAME_ENUM 1 /* enumerated by kernel */
43 #define NET_NAME_PREDICTABLE 2 /* predictably named by the kernel */
44 #define NET_NAME_USER 3 /* provided by user-space */
45 #define NET_NAME_RENAMED 4 /* renamed by user-space */
47 /* Media selection options. */
58 /* hardware address assignment types */
59 #define NET_ADDR_PERM 0 /* address is permanent (default) */
60 #define NET_ADDR_RANDOM 1 /* address is generated randomly */
61 #define NET_ADDR_STOLEN 2 /* address is stolen from other device */
62 #define NET_ADDR_SET 3 /* address is set using
63 * dev_set_mac_address() */
65 #endif /* _UAPI_LINUX_NETDEVICE_H */