diff options
Diffstat (limited to 'net/mac80211/key.c')
| -rw-r--r-- | net/mac80211/key.c | 9 | 
1 files changed, 4 insertions, 5 deletions
diff --git a/net/mac80211/key.c b/net/mac80211/key.c index 4700718e010f..37e372896230 100644 --- a/net/mac80211/key.c +++ b/net/mac80211/key.c @@ -167,8 +167,10 @@ static int ieee80211_key_enable_hw_accel(struct ieee80211_key *key)  		 * The driver doesn't know anything about VLAN interfaces.  		 * Hence, don't send GTKs for VLAN interfaces to the driver.  		 */ -		if (!(key->conf.flags & IEEE80211_KEY_FLAG_PAIRWISE)) +		if (!(key->conf.flags & IEEE80211_KEY_FLAG_PAIRWISE)) { +			ret = 1;  			goto out_unsupported; +		}  	}  	ret = drv_set_key(key->local, SET_KEY, sdata, @@ -213,11 +215,8 @@ static int ieee80211_key_enable_hw_accel(struct ieee80211_key *key)  		/* all of these we can do in software - if driver can */  		if (ret == 1)  			return 0; -		if (ieee80211_hw_check(&key->local->hw, SW_CRYPTO_CONTROL)) { -			if (sdata->vif.type == NL80211_IFTYPE_AP_VLAN) -				return 0; +		if (ieee80211_hw_check(&key->local->hw, SW_CRYPTO_CONTROL))  			return -EINVAL; -		}  		return 0;  	default:  		return -EINVAL;  | 
