Getting back to this ... as I was preparing my patch.

> @@ -3687,6 +3692,9 @@ enum nl80211_key_attributes {
>       NL80211_KEY_DEFAULT_MGMT,
>       NL80211_KEY_TYPE,
>       NL80211_KEY_DEFAULT_TYPES,
> +     NL80211_KEY_REPLAY_CTR,
> +     NL80211_KEY_KCK,
> +     NL80211_KEY_KEK,

You made those key attributes, but ...
 
>            nla_put(msg, NL80211_ATTR_RESP_IE, resp_ie_len,
> resp_ie)))
>               goto nla_put_failure;
>  
> +     if (wiphy_ext_feature_isset(&rdev->wiphy,
> +                                 NL80211_EXT_FEATURE_KEY_MGMT_OFF
> LOAD) &&
> +         (nla_put_u8(msg, NL80211_ATTR_AUTHORIZED, authorized) ||
> +         (key_replay_ctr && nla_put(msg, NL80211_KEY_REPLAY_CTR,
> +          NL80211_REPLAY_CTR_LEN, key_replay_ctr)) ||
> +         (key_kck &&
> +          nla_put(msg, NL80211_KEY_KCK, NL80211_KCK_LEN,
> key_kck)) ||
> +         (key_kek &&
> +          nla_put(msg, NL80211_KEY_KEK, NL80211_KEK_LEN,
> key_kek))))
> +             goto nla_put_failure;

Used them at a top level here! That can't possibly have worked.

Anyway, I checked and we can transport these without adding new
attributes, but adding the NL80211_ATTR_REKEY_DATA attribute with its
nested KEK, KCK and REPLAY_CTR.

That leaves the authorized attribute, I guess nesting a whole bunch of
station info etc. doesn't make a lot of sense.

I also fail to see how the data is actually configured down, since you
just pass it through. I'll send our patch for configuring the PMK/PSK
via the PMKSA cache separately in a few minutes.

johannes

Reply via email to