]> git.ipfire.org Git - thirdparty/hostap.git/commitdiff
WPS: Moved mac_addr and uuid configuration into wps_context
authorJouni Malinen <j@w1.fi>
Fri, 28 Nov 2008 18:44:47 +0000 (20:44 +0200)
committerJouni Malinen <j@w1.fi>
Fri, 28 Nov 2008 18:44:47 +0000 (20:44 +0200)
There is no need to complicate EAPOL and EAP interfaces with WPS
specific parameters now that wps_context is passed through.

src/eap_peer/eap.c
src/eap_peer/eap.h
src/eap_peer/eap_i.h
src/eap_peer/eap_wsc.c
src/eapol_supp/eapol_supp_sm.c
src/eapol_supp/eapol_supp_sm.h
src/rsn_supp/preauth.c
wpa_supplicant/wpas_glue.c
wpa_supplicant/wps_supplicant.c

index 8f844347f3a1f0f5596ee17715b3cd4f9b4744e2..88377b9ed76f7724ed9eedc80e5bf6f668c0a73f 100644 (file)
@@ -1178,10 +1178,6 @@ struct eap_sm * eap_peer_sm_init(void *eapol_ctx,
        sm->eapol_cb = eapol_cb;
        sm->msg_ctx = msg_ctx;
        sm->ClientTimeout = 60;
-       if (conf->mac_addr)
-               os_memcpy(sm->mac_addr, conf->mac_addr, ETH_ALEN);
-       if (conf->uuid)
-               os_memcpy(sm->uuid, conf->uuid, 16);
        sm->wps = conf->wps;
 
        os_memset(&tlsconf, 0, sizeof(tlsconf));
index c434498aa9d164d8abfd98b02841953b4dde5169..d7a562812bb36cc177fa7a2b58c1ff696e07ddc4 100644 (file)
@@ -245,18 +245,6 @@ struct eap_config {
         * Usually, path to opensc-pkcs11.so.
         */
        const char *pkcs11_module_path;
-       /**
-        * mac_addr - MAC address of the peer
-        *
-        * This is only used by EAP-WSC and can be left %NULL if not available.
-        */
-       const u8 *mac_addr;
-       /**
-        * uuid - Device UUID
-        *
-        * This is only used by EAP-WSC and can be left %NULL if not available.
-        */
-       const u8 *uuid;
        /**
         * wps - WPS context data
         *
index 9947276538f51603efa8abca610dd9e238cd196b..73f3f838bb5507c31dee88c4328af68dab1552da 100644 (file)
@@ -333,8 +333,6 @@ struct eap_sm {
        int num_rounds;
        int force_disabled;
 
-       u8 mac_addr[ETH_ALEN];
-       u8 uuid[16];
        struct wps_context *wps;
 };
 
index d4b0dc3262a3db9ed7f991bc9e8ce515e15fe74e..2cf52f827aad7ba06534cf111a87def571ba2ee8 100644 (file)
@@ -162,7 +162,7 @@ static void * eap_wsc_init(struct eap_sm *sm)
        cfg.authenticator = 0;
        cfg.wps = wps;
        cfg.registrar = registrar ? data->wps_ctx->registrar : NULL;
-       cfg.enrollee_mac_addr = sm->mac_addr;
+       cfg.enrollee_mac_addr = registrar ? NULL : wps->dev.mac_addr;
 
        phase1 = eap_get_config_phase1(sm);
        if (phase1 == NULL) {
@@ -192,10 +192,7 @@ static void * eap_wsc_init(struct eap_sm *sm)
                return NULL;
        }
 
-       if (registrar && wps)
-               os_memcpy(wps->uuid, sm->uuid, UUID_LEN);
-       else
-               cfg.uuid = sm->uuid;
+       cfg.uuid = registrar ? NULL : wps->uuid;
        data->wps = wps_init(&cfg);
        if (data->wps == NULL) {
                os_free(data);
index 4d6207186ba668e1a8e39a1616846d2f34885094..f382ee655f8f5315a20ac10f3d663d6307733dc0 100644 (file)
@@ -1804,8 +1804,6 @@ struct eapol_sm *eapol_sm_init(struct eapol_ctx *ctx)
        conf.pkcs11_engine_path = ctx->pkcs11_engine_path;
        conf.pkcs11_module_path = ctx->pkcs11_module_path;
 #endif /* EAP_TLS_OPENSSL */
-       conf.mac_addr = ctx->mac_addr;
-       conf.uuid = ctx->uuid;
        conf.wps = ctx->wps;
 
        sm->eap = eap_peer_sm_init(sm, &eapol_cb, sm->ctx->msg_ctx, &conf);
index 38975fcb58a33954cd2105250447b3f1f5ad2b2f..57d7bc1ab12e1ff1d2ebb30c24d105198434a504 100644 (file)
@@ -199,19 +199,6 @@ struct eapol_ctx {
         */
        const char *pkcs11_module_path;
 #endif /* EAP_TLS_OPENSSL */
-       /**
-        * mac_addr - MAC address of the peer
-        *
-        * This is only used by EAP-WSC and can be left %NULL if not available.
-        */
-       const u8 *mac_addr;
-
-       /**
-        * uuid - Device UUID
-        *
-        * This is only used by EAP-WSC and can be left %NULL if not available.
-        */
-       const u8 *uuid;
 
        /**
         * wps - WPS context data
index e2cf2a86af175ca2073dc313903518f81656d87d..b00c004cf62c8648a82a41eaf84d5a3cbb9dd986 100644 (file)
@@ -223,7 +223,6 @@ int rsn_preauth_init(struct wpa_sm *sm, const u8 *dst,
        ctx->eapol_send_ctx = sm;
        ctx->set_config_blob = sm->ctx->set_config_blob;
        ctx->get_config_blob = sm->ctx->get_config_blob;
-       ctx->mac_addr = sm->own_addr;
 
        sm->preauth_eapol = eapol_sm_init(ctx);
        if (sm->preauth_eapol == NULL) {
index 70b4416f3d5f69c8682cd93ff6fb9eee38ecd107..2b96aa7071ea8a472bbeb2d0970f8cf1f22cca7c 100644 (file)
@@ -558,8 +558,6 @@ int wpa_supplicant_init_eapol(struct wpa_supplicant *wpa_s)
        ctx->pkcs11_engine_path = wpa_s->conf->pkcs11_engine_path;
        ctx->pkcs11_module_path = wpa_s->conf->pkcs11_module_path;
 #endif /* EAP_TLS_OPENSSL */
-       ctx->mac_addr = wpa_s->own_addr;
-       ctx->uuid = wpa_s->conf->uuid;
        ctx->wps = wpa_s->wps;
        ctx->eap_param_needed = wpa_supplicant_eap_param_needed;
        ctx->cb = wpa_supplicant_eapol_cb;
index 4d1c07880554671808f103c57ce9c2f9ae432953..7789b0668cc96dbe030b9794f76bd5307e379c92 100644 (file)
@@ -197,6 +197,8 @@ int wpas_wps_init(struct wpa_supplicant *wpa_s)
        wps->dev.categ = WPS_DEV_COMPUTER;
        wps->dev.oui = WPS_DEV_OUI_WFA;
        wps->dev.sub_categ = WPS_DEV_COMPUTER_PC;
+       os_memcpy(wps->dev.mac_addr, wpa_s->own_addr, ETH_ALEN);
+       os_memcpy(wps->uuid, wpa_s->conf->uuid, 16);
 
        wpa_s->wps = wps;