linux/net/bridge
Marcel Holtmann 384912ed19 net: Add DEVTYPE support for Ethernet based devices
The Ethernet framing is used for a lot of devices these days. Most
prominent are WiFi and WiMAX based devices. However for userspace
application it is important to classify these devices correctly and
not only see them as Ethernet devices. The daemons like HAL, DeviceKit
or even NetworkManager with udev support tries to do the classification
in userspace with a lot trickery and extra system calls. This is not
good and actually reaches its limitations. Especially since the kernel
does know the type of the Ethernet device it is pretty stupid.

To solve this problem the underlying device type needs to be set and
then the value will be exported as DEVTYPE via uevents and available
within udev.

  # cat /sys/class/net/wlan0/uevent
  DEVTYPE=wlan
  INTERFACE=wlan0
  IFINDEX=5

This is similar to subsystems like USB and SCSI that distinguish
between hosts, devices, disks, partitions etc.

The new SET_NETDEV_DEVTYPE() is a convenience helper to set the actual
device type. All device types are free form, but for convenience the
same strings as used with RFKILL are choosen.

Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
2009-09-11 12:54:55 -07:00
..
netfilter netfilter: ebt_ulog: fix checkentry return value 2009-09-01 14:34:01 +02:00
Kconfig bridge: Use STP demux 2008-07-05 21:25:56 -07:00
Makefile [BRIDGE]: netlink interface for link management 2006-06-17 21:26:14 -07:00
br.c bridge: Use rcu_barrier() instead of syncronize_net() on unload. 2009-06-26 13:51:32 -07:00
br_device.c netdev: convert pseudo-devices to netdev_tx_t 2009-09-01 01:13:07 -07:00
br_fdb.c bridge: Simplify interface for ATM LANE 2009-06-11 21:03:21 -07:00
br_forward.c net/bridge: Add 'hairpin' port forwarding mode 2009-08-13 16:26:11 -07:00
br_if.c net: Add DEVTYPE support for Ethernet based devices 2009-09-11 12:54:55 -07:00
br_input.c bridge: relay bridge multicast pkgs if !STP 2009-05-17 21:12:54 -07:00
br_ioctl.c Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6 2008-09-08 16:59:05 -07:00
br_netfilter.c netfilter: bridge: refcount fix 2009-08-24 19:35:38 +02:00
br_netlink.c netlink: change nlmsg_notify() return value logic 2009-02-24 23:18:28 -08:00
br_notify.c netns bridge: allow bridges in netns! 2008-09-08 16:19:58 -07:00
br_private.h netdev: convert pseudo-devices to netdev_tx_t 2009-09-01 01:13:07 -07:00
br_private_stp.h net: remove CVS keywords 2008-06-11 21:00:38 -07:00
br_stp.c net: mark read-only arrays as const 2009-08-05 10:42:58 -07:00
br_stp_bpdu.c netns bridge: allow bridges in netns! 2008-09-08 16:19:58 -07:00
br_stp_if.c bridge: make bridge address settings sticky 2008-06-17 16:10:06 -07:00
br_stp_timer.c net: remove CVS keywords 2008-06-11 21:00:38 -07:00
br_sysfs_br.c net: Fix bridgeing sysfs handling of rtnl_lock 2009-05-18 22:15:59 -07:00
br_sysfs_if.c net/bridge: Add 'hairpin' port forwarding mode 2009-08-13 16:26:11 -07:00