diff --git a/[refs] b/[refs] index 3ca577fab5d8..716e7af9d758 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: db0589f3b9443f2b57ea6daaec09c1ab0ac99cb0 +refs/heads/master: 0a0bed1d10105a9f58cd14ebe216e8479dd31fda diff --git a/trunk/drivers/net/wireless/iwlwifi/iwl-4965-commands.h b/trunk/drivers/net/wireless/iwlwifi/iwl-4965-commands.h index 7e36ecb27575..65cd8ae363b4 100644 --- a/trunk/drivers/net/wireless/iwlwifi/iwl-4965-commands.h +++ b/trunk/drivers/net/wireless/iwlwifi/iwl-4965-commands.h @@ -84,6 +84,9 @@ enum { REPLY_REMOVE_STA = 0x19, /* not used */ REPLY_REMOVE_ALL_STA = 0x1a, /* not used */ + /* Security */ + REPLY_WEPKEY = 0x20, + /* RX, TX, LEDs */ REPLY_TX = 0x1c, REPLY_RATE_SCALE = 0x47, /* 3945 only */ @@ -850,6 +853,30 @@ struct iwl4965_add_sta_resp { u8 status; /* ADD_STA_* */ } __attribute__ ((packed)); +/* + * REPLY_WEP_KEY = 0x20 + */ +struct iwl_wep_key { + u8 key_index; + u8 key_offset; + u8 reserved1[2]; + u8 key_size; + u8 reserved2[3]; + u8 key[16]; +} __attribute__ ((packed)); + +struct iwl_wep_cmd { + u8 num_keys; + u8 global_key_type; + u8 flags; + u8 reserved; + struct iwl_wep_key key[0]; +} __attribute__ ((packed)); + +#define WEP_KEY_WEP_TYPE 1 +#define WEP_KEYS_MAX 4 +#define WEP_INVALID_OFFSET 0xff +#define WEP_KEY_LEN_128 13 /****************************************************************************** * (4) diff --git a/trunk/drivers/net/wireless/iwlwifi/iwl-hcmd.c b/trunk/drivers/net/wireless/iwlwifi/iwl-hcmd.c index 1f8c2999805b..fdb27f1cdc08 100644 --- a/trunk/drivers/net/wireless/iwlwifi/iwl-hcmd.c +++ b/trunk/drivers/net/wireless/iwlwifi/iwl-hcmd.c @@ -51,6 +51,7 @@ const char *get_cmd_string(u8 cmd) IWL_CMD(REPLY_ADD_STA); IWL_CMD(REPLY_REMOVE_STA); IWL_CMD(REPLY_REMOVE_ALL_STA); + IWL_CMD(REPLY_WEPKEY); IWL_CMD(REPLY_TX); IWL_CMD(REPLY_RATE_SCALE); IWL_CMD(REPLY_LEDS_CMD);