diff options
| author | James Ketrenos <jketreno@linux.intel.com> | 2005-09-22 06:34:15 -0400 |
|---|---|---|
| committer | Jeff Garzik <jgarzik@pobox.com> | 2005-09-22 15:40:59 -0400 |
| commit | 6eb6edf04acd09e3cea09456913e8da59323b89e (patch) | |
| tree | 7cf648aba7823b1b7cc9419f682a2dca60cc2e82 /include/net | |
| parent | e5658d3e8a347f4393a9403b0cec8d43fa6214b1 (diff) | |
[PATCH] ieee80211: in-tree driver updates to sync with latest ieee80211 series
Changed crypto method from requiring a struct ieee80211_device reference
to the init handler. Instead we now have a get/set flags method for
each crypto component.
Setting of TKIP countermeasures can now be done via
set_flags(IEEE80211_CRYPTO_TKIP_COUNTERMEASURES)
Signed-off-by: James Ketrenos <jketreno@linux.intel.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Diffstat (limited to 'include/net')
| -rw-r--r-- | include/net/ieee80211.h | 1 | ||||
| -rw-r--r-- | include/net/ieee80211_crypt.h | 10 |
2 files changed, 9 insertions, 2 deletions
diff --git a/include/net/ieee80211.h b/include/net/ieee80211.h index 4a381a074fdd..4851756202c5 100644 --- a/include/net/ieee80211.h +++ b/include/net/ieee80211.h | |||
| @@ -876,7 +876,6 @@ struct ieee80211_device { | |||
| 876 | /* WPA data */ | 876 | /* WPA data */ |
| 877 | int wpa_enabled; | 877 | int wpa_enabled; |
| 878 | int drop_unencrypted; | 878 | int drop_unencrypted; |
| 879 | int tkip_countermeasures; | ||
| 880 | int privacy_invoked; | 879 | int privacy_invoked; |
| 881 | size_t wpa_ie_len; | 880 | size_t wpa_ie_len; |
| 882 | u8 *wpa_ie; | 881 | u8 *wpa_ie; |
diff --git a/include/net/ieee80211_crypt.h b/include/net/ieee80211_crypt.h index daf3b2c6b038..0c9d859d912e 100644 --- a/include/net/ieee80211_crypt.h +++ b/include/net/ieee80211_crypt.h | |||
| @@ -25,13 +25,17 @@ | |||
| 25 | 25 | ||
| 26 | #include <linux/skbuff.h> | 26 | #include <linux/skbuff.h> |
| 27 | 27 | ||
| 28 | enum { | ||
| 29 | IEEE80211_CRYPTO_TKIP_COUNTERMEASURES = (1<<0), | ||
| 30 | }; | ||
| 31 | |||
| 28 | struct ieee80211_crypto_ops { | 32 | struct ieee80211_crypto_ops { |
| 29 | const char *name; | 33 | const char *name; |
| 30 | 34 | ||
| 31 | /* init new crypto context (e.g., allocate private data space, | 35 | /* init new crypto context (e.g., allocate private data space, |
| 32 | * select IV, etc.); returns NULL on failure or pointer to allocated | 36 | * select IV, etc.); returns NULL on failure or pointer to allocated |
| 33 | * private data on success */ | 37 | * private data on success */ |
| 34 | void *(*init) (struct ieee80211_device * ieee, int keyidx); | 38 | void *(*init) (int keyidx); |
| 35 | 39 | ||
| 36 | /* deinitialize crypto context and free allocated private data */ | 40 | /* deinitialize crypto context and free allocated private data */ |
| 37 | void (*deinit) (void *priv); | 41 | void (*deinit) (void *priv); |
| @@ -60,6 +64,10 @@ struct ieee80211_crypto_ops { | |||
| 60 | * statistics */ | 64 | * statistics */ |
| 61 | char *(*print_stats) (char *p, void *priv); | 65 | char *(*print_stats) (char *p, void *priv); |
| 62 | 66 | ||
| 67 | /* Crypto specific flag get/set for configuration settings */ | ||
| 68 | unsigned long (*get_flags)(void *priv); | ||
| 69 | unsigned long (*set_flags)(unsigned long flags, void *priv); | ||
| 70 | |||
| 63 | /* maximum number of bytes added by encryption; encrypt buf is | 71 | /* maximum number of bytes added by encryption; encrypt buf is |
| 64 | * allocated with extra_prefix_len bytes, copy of in_buf, and | 72 | * allocated with extra_prefix_len bytes, copy of in_buf, and |
| 65 | * extra_postfix_len; encrypt need not use all this space, but | 73 | * extra_postfix_len; encrypt need not use all this space, but |
