EXT PW: Fix hash return in password fetching
authorJouni Malinen <j@w1.fi>
Tue, 7 Jan 2014 20:30:25 +0000 (22:30 +0200)
committerJouni Malinen <j@w1.fi>
Tue, 7 Jan 2014 20:32:12 +0000 (22:32 +0200)
The hash return buffer was previously left uninitialized in case
externally stored password ("password=ext:...") was used. This could
result in MSCHAPv2 failure if that uninitialized memory happened to be
something else than zero.

Signed-hostap: Jouni Malinen <j@w1.fi>

src/eap_peer/eap.c

index 98abd4e..3068b69 100644 (file)
@@ -2046,6 +2046,8 @@ const u8 * eap_get_config_password2(struct eap_sm *sm, size_t *len, int *hash)
        if (config->flags & EAP_CONFIG_FLAGS_EXT_PASSWORD) {
                if (eap_get_ext_password(sm, config) < 0)
                        return NULL;
+               if (hash)
+                       *hash = 0;
                *len = wpabuf_len(sm->ext_pw_buf);
                return wpabuf_head(sm->ext_pw_buf);
        }