aboutsummaryrefslogtreecommitdiffstats
path: root/src/eapol_supp
diff options
context:
space:
mode:
authorDmitry Shmidt <dimitrysh@google.com>2011-07-07 11:18:38 -0700
committerDmitry Shmidt <dimitrysh@google.com>2011-07-07 11:23:25 -0700
commitc55524ad84d13014e8019491c2b17e5dcf13545a (patch)
tree3c1a0f04ed12cadca7312b1b6f3f0c0caa6018ca /src/eapol_supp
parent13970b010f3e5b274336677311a5586410ecc8fa (diff)
downloadandroid_external_wpa_supplicant_8-c55524ad84d13014e8019491c2b17e5dcf13545a.tar.gz
android_external_wpa_supplicant_8-c55524ad84d13014e8019491c2b17e5dcf13545a.tar.bz2
android_external_wpa_supplicant_8-c55524ad84d13014e8019491c2b17e5dcf13545a.zip
Accumulative patch from commit 8fd0f0f323a922aa88ec720ee524f7105d3b0f64
Fix D-Bus build without CONFIG_P2P=y nl80211: Allow AP mode to be started without monitor interface nl80211: Process association/disassociation events in AP mode DBus/P2P: Adding decl for PersistentGroupRemoved signal DBus/P2P: Rectified type of SecondaryDeviceTypes in device property Get P2P: Only call dev_lost() for devices that have been dev_found() wpa_cli: Add missing parameter for P2P_GROUP_ADD command wpa_supplicant: Respect PKG_CONFIG variable if set in the environment TLS: Add support for tls_disable_time_checks=1 in client mode hostapd: Clear keys configured when hostapd reloads configuration Add dbus signal for information about server certification Move peer certificate wpa_msg() calls to notify.c wpa_supplicant AP: Disable AP mode on disassoc paths wpa_s AP mode: Enable HT20 if driver supports it Allow PMKSA caching to be disabled on Authenticator FT: Disable PMKSA cache for FT-IEEE8021X FT: Clear SME ft_used/ft_ies when disconnecting 8fd0f0f323a922aa88ec720ee524f7105d3b0f64 Change-Id: I6ae333196c36ffa7589662d5269fabfc3b994605 Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
Diffstat (limited to 'src/eapol_supp')
-rw-r--r--src/eapol_supp/eapol_supp_sm.c12
-rw-r--r--src/eapol_supp/eapol_supp_sm.h11
2 files changed, 22 insertions, 1 deletions
diff --git a/src/eapol_supp/eapol_supp_sm.c b/src/eapol_supp/eapol_supp_sm.c
index 18abb4e3..bb6cff60 100644
--- a/src/eapol_supp/eapol_supp_sm.c
+++ b/src/eapol_supp/eapol_supp_sm.c
@@ -1825,6 +1825,15 @@ static void eapol_sm_eap_param_needed(void *ctx, const char *field,
#define eapol_sm_eap_param_needed NULL
#endif /* CONFIG_CTRL_IFACE || !CONFIG_NO_STDOUT_DEBUG */
+static void eapol_sm_notify_cert(void *ctx, int depth, const char *subject,
+ const char *cert_hash,
+ const struct wpabuf *cert)
+{
+ struct eapol_sm *sm = ctx;
+ if (sm->ctx->cert_cb)
+ sm->ctx->cert_cb(sm->ctx->ctx, depth, subject,
+ cert_hash, cert);
+}
static struct eapol_callbacks eapol_cb =
{
@@ -1837,7 +1846,8 @@ static struct eapol_callbacks eapol_cb =
eapol_sm_set_config_blob,
eapol_sm_get_config_blob,
eapol_sm_notify_pending,
- eapol_sm_eap_param_needed
+ eapol_sm_eap_param_needed,
+ eapol_sm_notify_cert
};
diff --git a/src/eapol_supp/eapol_supp_sm.h b/src/eapol_supp/eapol_supp_sm.h
index 1bdf8cdd..3ea7e799 100644
--- a/src/eapol_supp/eapol_supp_sm.h
+++ b/src/eapol_supp/eapol_supp_sm.h
@@ -220,6 +220,17 @@ struct eapol_ctx {
* @authorized: Whether the supplicant port is now in authorized state
*/
void (*port_cb)(void *ctx, int authorized);
+
+ /**
+ * cert_cb - Notification of a peer certificate
+ * @ctx: Callback context (ctx)
+ * @depth: Depth in certificate chain (0 = server)
+ * @subject: Subject of the peer certificate
+ * @cert_hash: SHA-256 hash of the certificate
+ * @cert: Peer certificate
+ */
+ void (*cert_cb)(void *ctx, int depth, const char *subject,
+ const char *cert_hash, const struct wpabuf *cert);
};