Re: [PATCH 09/15] handshake: Add pmksa setter & stealer

James Prestwood
2024-11-25T19:49:17Z

Hi Bryce,

On 11/25/24 11:25 AM, Bryce Johnson wrote:
> Hi James,
> Thanks! We will running another product through wifi certification in
> the next 3-6 months with a new chipset from TI (cc3301). I'll check
> with TI to see if there is a pretest so we aren't running into issues
> at the lab. We got our last product certified reverting back to
> wpa_supplicant just before the wifi alliance pushed out the latest
> changes/requirements.
Great, eager to hear how it goes.
>
> Also annoying the cheaper automatic testing uses wpa_suppliant pretty
> integrated, hopefully wifi alliance will create a way to do that with
> IWD in the same way if enough people are using it.
I'd be interested to see what they are doing with this. If they are
letting wpa_supplicant act autonomously and triggering things on the AP
side, or if they are using the CLI to interact with wpa_supplicant
directly for "force" it to exercise some of the features they're testing.
>
> If anyone got a product through certification I would be interested in
> any experiences with IWD!
>
>
> Bryce
>
> On Mon, Nov 25, 2024 at 8:01 AM James Prestwood <prestwoj@gmail.com> wrote:
>> Hi Denis,
>>
>> On 11/25/24 6:56 AM, Denis Kenzior wrote:
>>> Hi James,
>>>
>>> On 11/22/24 9:15 AM, James Prestwood wrote:
>>>> From: Denis Kenzior <denkenz@gmail.com>
>>>>
>>>> The majority of this patch was authored by Denis Kenzior, but
>>>> I have appended setting the PMK inside handshake_state_set_pmksa
>>>> as well as checking if the pmkid exists in
>>>> handshake_state_steal_pmkid.
>>>>
>>>> Authored-by: Denis Kenzior <denkenz@gmail.com>
>>>> Authored-by: James Prestwood <prestwoj@gmail.com>
>>>> ---
>>>> Makefile.am | 4 +++
>>>> src/handshake.c | 77 +++++++++++++++++++++++++++++++++++++++++++++++++
>>>> src/handshake.h | 11 ++++++-
>>>> 3 files changed, 91 insertions(+), 1 deletion(-)
>>>>
>>> <snip>
>>>
>>>> @@ -141,7 +142,12 @@ struct handshake_state {
>>>> bool supplicant_ocvc : 1;
>>>> bool ext_key_id_capable : 1;
>>>> bool force_default_ecc_group : 1;
>>>> - uint8_t ssid[SSID_MAX_SIZE];
>>>> + bool have_pmksa : 1;
>>>> + union {
>>>> + struct pmksa *pmksa;
>>>> + uint64_t expiration;
>>>> + };
>>>> + uint8_t ssid[32];
>>> I changed this back to using SSID_MAX_SIZE instead of the magic number.
>>>
>>>> size_t ssid_len;
>>>> char *passphrase;
>>>> char *password_identifier;
>>> All 15 patches applied, thanks.
>> Thanks!
>>
>> Bryce, I know you were interested in this. It would be good to see if
>> this allows IWD to pass certification with the wifi alliance. Let us
>> know if you run into any more problems on that front.
>>
>> Thanks,
>>
>> James
>>
>>