== Owner ==
* Name: [[User:pbrobinson| Peter Robinson]]
https://fedoraproject.org/wiki/Changes/RemoveWirelessExtensions
== Summary ==
The legacy wireless extensions interface was replaced by the new
mac80211/cfg80211 interface in 2007. The legacy Wireless Extensions
support has been long deprecated and only supports long EOL WiFi
encryption like WEP so it's time to disable it and remove it.
I do not believe that the assertion around encryption is true, unless
wpa_supplicant has dropped support for the legacy interface over the years.
I remember having used some legacy wext drivers with wpa_supplicant and WPA
(maybe even WPA2) before everything was ported to mac80211 (the "DeviceScape
stack" as it was called at the time). And
https://w1.fi/wpa_supplicant/
lists not only "Linux drivers that support nl80211/cfg80211 (most new
drivers)", but also "Linux drivers that support Linux Wireless Extensions
v19 or newer with WPA/WPA2 extensions" as supported.
(For the record, I also remember my old Pentium II "notebook" (more like a
thick laptop) taking a day or two to build a custom kernel with the
DeviceScape/mac80211 stack that was not easily buildable out of tree, in
order to build and use the Free-as-in-speech driver for a Broadcom PCMCIA
WiFi card, but that is off topic. ;-) )
There were also some drivers implementing WPA on their own, or letting the
hardware or firmware do it, in particular, Ralink's GPLed vendor driver. Of
course, those nonstandard wext commands were not supported by
NetworkManager, so I had to use a custom shell script. The driver was
eventually replaced by the rt2x00 community rewrite that relies on
wpa_supplicant and that was soon ported to mac80211. But I am pretty sure I
also used a wext version of rt2x00 with wpa_supplicant at some point.
The Wireless Extensions support in the kernel has been long replaced
by the mac80211/cfg80211 support. Disable the kernel options and
retire the wireless-tools userspace utilities. Wireless Extensions
only supports a minor subset of the wireless interfaces, predominently
the WEP interface and userspace has been replaced by iw/libnl/ip
interfaces which offer a lot more advanced features as well as modern
802.11 functionality like WPA.
Users are going to miss the iwconfig tool. Not only is it still being used
out of habit (just like ifconfig from net-tools), but (also just like
ifconfig) it is also much more user-friendly. E.g., running "iwconfig"
without arguments prints a nice summary of the wireless devices and their
properties, such as access point ESSID and BSSID, bit rate, signal level,
etc., whereas running "iw" without arguments prints a 132-line help output
with around a hundred different commands (with no explanation as to what
they do, as that would require even more than 132 lines: the --help output
is 445 lines long). "iw" also exposes implementation details in the most
unfriendly way, by requiring the user to use "dev <devname>", "phy
<phyname>", "wdev <idx>", or "reg" prefixes depending
on the individual
command (and it is entirely unclear to the user why something is a dev
property, a phy property, or both), whereas "iwconfig" takes the same
interface name for all commands.
The new ip, iw, and route tools have clearly been designed by kernel
developers for kernel developers, not for end users or even system
administrators. The old ifconfig and iwconfig are much easier to use.
Kevin Kofler