Re: [PATCH 2.6.11] WE-18 (aka WPA)

2005-03-22 Thread Jeff Garzik
Jean Tourrilhes wrote:
Hi Jeff,
This is version 18 of the Wireless Extensions. The main change
is that it adds all the necessary APIs for WPA and WPA2 support. This
work was entirely done by Jouni Malinen, so let's thank him for both
his hard work and deep expertise on the subject ;-)
This APIs obviously doesn't do much by itself and works in
concert with driver support (Jouni already sent you the HostAP
changes) and userspace (Jouni is updating wpa_supplicant). This is
also orthogonal with the ongoing work on in-kernel IEEE support (but
potentially useful).
The patch is attached, tested with 2.6.11. Normally, I would
ask you to push that directly in the kernel (99% of the patch has been
on my web page for ages and it does not affect non-WPA stuff), but
Jouni convinced me that it should bake a few weeks in wireless-2.6
first, so that other driver maintainers can get up to speed with it.
So, would you mind pushing that in wireless-2.6 ?
Thanks in advance...
Applied to wireless-2.6, and will soon push upstream.
NOTE:  Please include a Signed-off-by line in ALL patches that you submit.
See http://linux.yyz.us/patch-format.html for more info.
Jeff
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH 2.6.11] WE-18 (aka WPA)

2005-03-22 Thread Jeff Garzik
Jean Tourrilhes wrote:
Hi Jeff,
This is version 18 of the Wireless Extensions. The main change
is that it adds all the necessary APIs for WPA and WPA2 support. This
work was entirely done by Jouni Malinen, so let's thank him for both
his hard work and deep expertise on the subject ;-)
This APIs obviously doesn't do much by itself and works in
concert with driver support (Jouni already sent you the HostAP
changes) and userspace (Jouni is updating wpa_supplicant). This is
also orthogonal with the ongoing work on in-kernel IEEE support (but
potentially useful).
The patch is attached, tested with 2.6.11. Normally, I would
ask you to push that directly in the kernel (99% of the patch has been
on my web page for ages and it does not affect non-WPA stuff), but
Jouni convinced me that it should bake a few weeks in wireless-2.6
first, so that other driver maintainers can get up to speed with it.
So, would you mind pushing that in wireless-2.6 ?
Thanks in advance...
Applied to wireless-2.6, and will soon push upstream.
NOTE:  Please include a Signed-off-by line in ALL patches that you submit.
See http://linux.yyz.us/patch-format.html for more info.
Jeff
-
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH 2.6.11] WE-18 (aka WPA)

2005-03-14 Thread Jean Tourrilhes
Hi Jeff,

This is version 18 of the Wireless Extensions. The main change
is that it adds all the necessary APIs for WPA and WPA2 support. This
work was entirely done by Jouni Malinen, so let's thank him for both
his hard work and deep expertise on the subject ;-)
This APIs obviously doesn't do much by itself and works in
concert with driver support (Jouni already sent you the HostAP
changes) and userspace (Jouni is updating wpa_supplicant). This is
also orthogonal with the ongoing work on in-kernel IEEE support (but
potentially useful).
The patch is attached, tested with 2.6.11. Normally, I would
ask you to push that directly in the kernel (99% of the patch has been
on my web page for ages and it does not affect non-WPA stuff), but
Jouni convinced me that it should bake a few weeks in wireless-2.6
first, so that other driver maintainers can get up to speed with it.

So, would you mind pushing that in wireless-2.6 ?
Thanks in advance...

Jean

diff -upr linux-2.6.11/include/linux/wireless.h 
linux-2.6.11-WE18/include/linux/wireless.h
--- linux-2.6.11/include/linux/wireless.h   2004-12-24 13:35:01.0 
-0800
+++ linux-2.6.11-WE18/include/linux/wireless.h  2005-03-12 09:53:02.0 
-0800
@@ -1,10 +1,10 @@
 /*
  * This file define a set of standard wireless extensions
  *
- * Version :   17  21.6.04
+ * Version :   18  12.3.05
  *
  * Authors :   Jean Tourrilhes - HPL - <[EMAIL PROTECTED]>
- * Copyright (c) 1997-2004 Jean Tourrilhes, All Rights Reserved.
+ * Copyright (c) 1997-2005 Jean Tourrilhes, All Rights Reserved.
  */
 
 #ifndef _LINUX_WIRELESS_H
@@ -82,7 +82,7 @@
  * (there is some stuff that will be added in the future...)
  * I just plan to increment with each new version.
  */
-#define WIRELESS_EXT   17
+#define WIRELESS_EXT   18
 
 /*
  * Changes :
@@ -182,6 +182,21 @@
  * - Document (struct iw_quality *)->updated, add new flags (INVALID)
  * - Wireless Event capability in struct iw_range
  * - Add support for relative TxPower (yick !)
+ *
+ * V17 to V18 (From Jouni Malinen <[EMAIL PROTECTED]>)
+ * --
+ * - Add support for WPA/WPA2
+ * - Add extended encoding configuration (SIOCSIWENCODEEXT and
+ *   SIOCGIWENCODEEXT)
+ * - Add SIOCSIWGENIE/SIOCGIWGENIE
+ * - Add SIOCSIWMLME
+ * - Add SIOCSIWPMKSA
+ * - Add struct iw_range bit field for supported encoding capabilities
+ * - Add optional scan request parameters for SIOCSIWSCAN
+ * - Add SIOCSIWAUTH/SIOCGIWAUTH for setting authentication and WPA
+ *   related parameters (extensible up to 4096 parameter values)
+ * - Add wireless events: IWEVGENIE, IWEVMICHAELMICFAILURE,
+ *   IWEVASSOCREQIE, IWEVASSOCRESPIE, IWEVPMKIDCAND
  */
 
 / CONSTANTS /
@@ -256,6 +271,30 @@
 #define SIOCSIWPOWER   0x8B2C  /* set Power Management settings */
 #define SIOCGIWPOWER   0x8B2D  /* get Power Management settings */
 
+/* WPA : Generic IEEE 802.11 informatiom element (e.g., for WPA/RSN/WMM).
+ * This ioctl uses struct iw_point and data buffer that includes IE id and len
+ * fields. More than one IE may be included in the request. Setting the generic
+ * IE to empty buffer (len=0) removes the generic IE from the driver. Drivers
+ * are allowed to generate their own WPA/RSN IEs, but in these cases, drivers
+ * are required to report the used IE as a wireless event, e.g., when
+ * associating with an AP. */
+#define SIOCSIWGENIE   0x8B30  /* set generic IE */
+#define SIOCGIWGENIE   0x8B31  /* get generic IE */
+
+/* WPA : IEEE 802.11 MLME requests */
+#define SIOCSIWMLME0x8B16  /* request MLME operation; uses
+* struct iw_mlme */
+/* WPA : Authentication mode parameters */
+#define SIOCSIWAUTH0x8B32  /* set authentication mode params */
+#define SIOCGIWAUTH0x8B33  /* get authentication mode params */
+
+/* WPA : Extended version of encoding configuration */
+#define SIOCSIWENCODEEXT 0x8B34/* set encoding token & mode */
+#define SIOCGIWENCODEEXT 0x8B35/* get encoding token & mode */
+
+/* WPA2 : PMKSA cache management */
+#define SIOCSIWPMKSA   0x8B36  /* PMKSA cache operation */
+
 /*  DEV PRIVATE IOCTL LIST  */
 
 /* These 32 ioctl are wireless device private, for 16 commands.
@@ -297,6 +336,34 @@
 #define IWEVCUSTOM 0x8C02  /* Driver specific ascii string */
 #define IWEVREGISTERED 0x8C03  /* Discovered a new node (AP mode) */
 #define IWEVEXPIRED0x8C04  /* Expired a node (AP mode) */
+#define IWEVGENIE  0x8C05  /* Generic IE (WPA, RSN, WMM, ..)
+* (scan results); This includes id and
+* length fields. One IWEVGENIE may
+* 

[PATCH 2.6.11] WE-18 (aka WPA)

2005-03-14 Thread Jean Tourrilhes
Hi Jeff,

This is version 18 of the Wireless Extensions. The main change
is that it adds all the necessary APIs for WPA and WPA2 support. This
work was entirely done by Jouni Malinen, so let's thank him for both
his hard work and deep expertise on the subject ;-)
This APIs obviously doesn't do much by itself and works in
concert with driver support (Jouni already sent you the HostAP
changes) and userspace (Jouni is updating wpa_supplicant). This is
also orthogonal with the ongoing work on in-kernel IEEE support (but
potentially useful).
The patch is attached, tested with 2.6.11. Normally, I would
ask you to push that directly in the kernel (99% of the patch has been
on my web page for ages and it does not affect non-WPA stuff), but
Jouni convinced me that it should bake a few weeks in wireless-2.6
first, so that other driver maintainers can get up to speed with it.

So, would you mind pushing that in wireless-2.6 ?
Thanks in advance...

Jean

diff -upr linux-2.6.11/include/linux/wireless.h 
linux-2.6.11-WE18/include/linux/wireless.h
--- linux-2.6.11/include/linux/wireless.h   2004-12-24 13:35:01.0 
-0800
+++ linux-2.6.11-WE18/include/linux/wireless.h  2005-03-12 09:53:02.0 
-0800
@@ -1,10 +1,10 @@
 /*
  * This file define a set of standard wireless extensions
  *
- * Version :   17  21.6.04
+ * Version :   18  12.3.05
  *
  * Authors :   Jean Tourrilhes - HPL - [EMAIL PROTECTED]
- * Copyright (c) 1997-2004 Jean Tourrilhes, All Rights Reserved.
+ * Copyright (c) 1997-2005 Jean Tourrilhes, All Rights Reserved.
  */
 
 #ifndef _LINUX_WIRELESS_H
@@ -82,7 +82,7 @@
  * (there is some stuff that will be added in the future...)
  * I just plan to increment with each new version.
  */
-#define WIRELESS_EXT   17
+#define WIRELESS_EXT   18
 
 /*
  * Changes :
@@ -182,6 +182,21 @@
  * - Document (struct iw_quality *)-updated, add new flags (INVALID)
  * - Wireless Event capability in struct iw_range
  * - Add support for relative TxPower (yick !)
+ *
+ * V17 to V18 (From Jouni Malinen [EMAIL PROTECTED])
+ * --
+ * - Add support for WPA/WPA2
+ * - Add extended encoding configuration (SIOCSIWENCODEEXT and
+ *   SIOCGIWENCODEEXT)
+ * - Add SIOCSIWGENIE/SIOCGIWGENIE
+ * - Add SIOCSIWMLME
+ * - Add SIOCSIWPMKSA
+ * - Add struct iw_range bit field for supported encoding capabilities
+ * - Add optional scan request parameters for SIOCSIWSCAN
+ * - Add SIOCSIWAUTH/SIOCGIWAUTH for setting authentication and WPA
+ *   related parameters (extensible up to 4096 parameter values)
+ * - Add wireless events: IWEVGENIE, IWEVMICHAELMICFAILURE,
+ *   IWEVASSOCREQIE, IWEVASSOCRESPIE, IWEVPMKIDCAND
  */
 
 / CONSTANTS /
@@ -256,6 +271,30 @@
 #define SIOCSIWPOWER   0x8B2C  /* set Power Management settings */
 #define SIOCGIWPOWER   0x8B2D  /* get Power Management settings */
 
+/* WPA : Generic IEEE 802.11 informatiom element (e.g., for WPA/RSN/WMM).
+ * This ioctl uses struct iw_point and data buffer that includes IE id and len
+ * fields. More than one IE may be included in the request. Setting the generic
+ * IE to empty buffer (len=0) removes the generic IE from the driver. Drivers
+ * are allowed to generate their own WPA/RSN IEs, but in these cases, drivers
+ * are required to report the used IE as a wireless event, e.g., when
+ * associating with an AP. */
+#define SIOCSIWGENIE   0x8B30  /* set generic IE */
+#define SIOCGIWGENIE   0x8B31  /* get generic IE */
+
+/* WPA : IEEE 802.11 MLME requests */
+#define SIOCSIWMLME0x8B16  /* request MLME operation; uses
+* struct iw_mlme */
+/* WPA : Authentication mode parameters */
+#define SIOCSIWAUTH0x8B32  /* set authentication mode params */
+#define SIOCGIWAUTH0x8B33  /* get authentication mode params */
+
+/* WPA : Extended version of encoding configuration */
+#define SIOCSIWENCODEEXT 0x8B34/* set encoding token  mode */
+#define SIOCGIWENCODEEXT 0x8B35/* get encoding token  mode */
+
+/* WPA2 : PMKSA cache management */
+#define SIOCSIWPMKSA   0x8B36  /* PMKSA cache operation */
+
 /*  DEV PRIVATE IOCTL LIST  */
 
 /* These 32 ioctl are wireless device private, for 16 commands.
@@ -297,6 +336,34 @@
 #define IWEVCUSTOM 0x8C02  /* Driver specific ascii string */
 #define IWEVREGISTERED 0x8C03  /* Discovered a new node (AP mode) */
 #define IWEVEXPIRED0x8C04  /* Expired a node (AP mode) */
+#define IWEVGENIE  0x8C05  /* Generic IE (WPA, RSN, WMM, ..)
+* (scan results); This includes id and
+* length fields. One IWEVGENIE may
+* contain