From fa1a6aff223aebf8c74d34e32e1bb3e42b28aeab Mon Sep 17 00:00:00 2001 From: Alexander Wetzel Date: Wed, 4 Mar 2020 18:16:49 +0100 Subject: [PATCH] Fix unicast argument for set_wep_key() from EAPOL supplicant The unicast parameter in set_wep_key() is only expected to be set to 0 or 1. Without this patch we set unicast to 0x80 instead of 1. Since unicast is used as boolean that is working fine but violates the documented API. Signed-off-by: Alexander Wetzel --- src/eapol_supp/eapol_supp_sm.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/eapol_supp/eapol_supp_sm.c b/src/eapol_supp/eapol_supp_sm.c index 1734d6efb..7f04b0107 100644 --- a/src/eapol_supp/eapol_supp_sm.c +++ b/src/eapol_supp/eapol_supp_sm.c @@ -843,7 +843,7 @@ static void eapol_sm_processKey(struct eapol_sm *sm) if (sm->ctx->set_wep_key && sm->ctx->set_wep_key(sm->ctx->ctx, - key->key_index & IEEE8021X_KEY_INDEX_FLAG, + !!(key->key_index & IEEE8021X_KEY_INDEX_FLAG), key->key_index & IEEE8021X_KEY_INDEX_MASK, datakey, key_len) < 0) { wpa_printf(MSG_WARNING, "EAPOL: Failed to set WEP key to the "