netdevice.h 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  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@lxorguk.ukuu.org.uk>
  15. * Bjorn Ekwall. <bj0rn@blox.se>
  16. * Pekka Riikonen <priikone@poseidon.pspt.fi>
  17. *
  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.
  22. *
  23. * Moved to /usr/include/linux for NET3
  24. */
  25. #ifndef _LINUX_NETDEVICE_H
  26. #define _LINUX_NETDEVICE_H
  27. #include <linux/if.h>
  28. #include <linux/if_ether.h>
  29. #include <linux/if_packet.h>
  30. #include <linux/if_link.h>
  31. #define MAX_ADDR_LEN 32 /* Largest hardware address length */
  32. /* Initial net device group. All devices belong to group 0 by default. */
  33. #define INIT_NETDEV_GROUP 0
  34. /* interface name assignment types (sysfs name_assign_type attribute) */
  35. #define NET_NAME_UNKNOWN 0 /* unknown origin (not exposed to userspace) */
  36. #define NET_NAME_ENUM 1 /* enumerated by kernel */
  37. #define NET_NAME_PREDICTABLE 2 /* predictably named by the kernel */
  38. #define NET_NAME_USER 3 /* provided by user-space */
  39. #define NET_NAME_RENAMED 4 /* renamed by user-space */
  40. /* Media selection options. */
  41. enum {
  42. IF_PORT_UNKNOWN = 0,
  43. IF_PORT_10BASE2,
  44. IF_PORT_10BASET,
  45. IF_PORT_AUI,
  46. IF_PORT_100BASET,
  47. IF_PORT_100BASETX,
  48. IF_PORT_100BASEFX
  49. };
  50. /* hardware address assignment types */
  51. #define NET_ADDR_PERM 0 /* address is permanent (default) */
  52. #define NET_ADDR_RANDOM 1 /* address is generated randomly */
  53. #define NET_ADDR_STOLEN 2 /* address is stolen from other device */
  54. #define NET_ADDR_SET 3 /* address is set using
  55. * dev_set_mac_address() */
  56. #endif /* _LINUX_NETDEVICE_H */