mirror of
https://github.com/vanhoefm/fragattacks.git
synced 2024-11-28 18:28:23 -05:00
Add "GET tls_library" to provide information on TLS library and version
This new wpa_supplicant and hostapd control interface command can be used to determine which TLS library is used in the build and what is the version of that library. Signed-off-by: Jouni Malinen <j@w1.fi>
This commit is contained in:
parent
c3bb84b415
commit
a16514516b
@ -23,6 +23,7 @@
|
|||||||
#include "utils/eloop.h"
|
#include "utils/eloop.h"
|
||||||
#include "common/version.h"
|
#include "common/version.h"
|
||||||
#include "common/ieee802_11_defs.h"
|
#include "common/ieee802_11_defs.h"
|
||||||
|
#include "crypto/tls.h"
|
||||||
#include "drivers/driver.h"
|
#include "drivers/driver.h"
|
||||||
#include "radius/radius_client.h"
|
#include "radius/radius_client.h"
|
||||||
#include "radius/radius_server.h"
|
#include "radius/radius_server.h"
|
||||||
@ -1326,6 +1327,11 @@ static int hostapd_ctrl_iface_get(struct hostapd_data *hapd, char *cmd,
|
|||||||
if (os_snprintf_error(buflen, res))
|
if (os_snprintf_error(buflen, res))
|
||||||
return -1;
|
return -1;
|
||||||
return res;
|
return res;
|
||||||
|
} else if (os_strcmp(cmd, "tls_library") == 0) {
|
||||||
|
res = tls_get_library_version(buf, buflen);
|
||||||
|
if (os_snprintf_error(buflen, res))
|
||||||
|
return -1;
|
||||||
|
return res;
|
||||||
}
|
}
|
||||||
|
|
||||||
return -1;
|
return -1;
|
||||||
|
@ -556,4 +556,6 @@ void tls_connection_set_log_cb(struct tls_connection *conn,
|
|||||||
|
|
||||||
void tls_connection_set_test_flags(struct tls_connection *conn, u32 flags);
|
void tls_connection_set_test_flags(struct tls_connection *conn, u32 flags);
|
||||||
|
|
||||||
|
int tls_get_library_version(char *buf, size_t buf_len);
|
||||||
|
|
||||||
#endif /* TLS_H */
|
#endif /* TLS_H */
|
||||||
|
@ -1151,3 +1151,10 @@ int tls_connection_set_session_ticket_cb(void *tls_ctx,
|
|||||||
{
|
{
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
int tls_get_library_version(char *buf, size_t buf_len)
|
||||||
|
{
|
||||||
|
return os_snprintf(buf, buf_len, "GnuTLS build=%s run=%s",
|
||||||
|
GNUTLS_VERSION, gnutls_check_version(NULL));
|
||||||
|
}
|
||||||
|
@ -672,3 +672,9 @@ int tls_connection_set_session_ticket_cb(void *tls_ctx,
|
|||||||
#endif /* CONFIG_TLS_INTERNAL_SERVER */
|
#endif /* CONFIG_TLS_INTERNAL_SERVER */
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
int tls_get_library_version(char *buf, size_t buf_len)
|
||||||
|
{
|
||||||
|
return os_snprintf(buf, buf_len, "internal");
|
||||||
|
}
|
||||||
|
@ -192,3 +192,9 @@ unsigned int tls_capabilities(void *tls_ctx)
|
|||||||
{
|
{
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
int tls_get_library_version(char *buf, size_t buf_len)
|
||||||
|
{
|
||||||
|
return os_snprintf(buf, buf_len, "none");
|
||||||
|
}
|
||||||
|
@ -3554,3 +3554,11 @@ int tls_connection_set_session_ticket_cb(void *tls_ctx,
|
|||||||
return -1;
|
return -1;
|
||||||
#endif /* EAP_FAST || EAP_FAST_DYNAMIC || EAP_SERVER_FAST */
|
#endif /* EAP_FAST || EAP_FAST_DYNAMIC || EAP_SERVER_FAST */
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
int tls_get_library_version(char *buf, size_t buf_len)
|
||||||
|
{
|
||||||
|
return os_snprintf(buf, buf_len, "OpenSSL build=%s run=%s",
|
||||||
|
OPENSSL_VERSION_TEXT,
|
||||||
|
SSLeay_version(SSLEAY_VERSION));
|
||||||
|
}
|
||||||
|
@ -750,3 +750,9 @@ unsigned int tls_capabilities(void *tls_ctx)
|
|||||||
{
|
{
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
int tls_get_library_version(char *buf, size_t buf_len)
|
||||||
|
{
|
||||||
|
return os_snprintf(buf, buf_len, "schannel");
|
||||||
|
}
|
||||||
|
@ -19,6 +19,7 @@
|
|||||||
#include "common/ieee802_11_defs.h"
|
#include "common/ieee802_11_defs.h"
|
||||||
#include "common/ieee802_11_common.h"
|
#include "common/ieee802_11_common.h"
|
||||||
#include "common/wpa_ctrl.h"
|
#include "common/wpa_ctrl.h"
|
||||||
|
#include "crypto/tls.h"
|
||||||
#include "ap/hostapd.h"
|
#include "ap/hostapd.h"
|
||||||
#include "eap_peer/eap.h"
|
#include "eap_peer/eap.h"
|
||||||
#include "eapol_supp/eapol_supp_sm.h"
|
#include "eapol_supp/eapol_supp_sm.h"
|
||||||
@ -493,6 +494,8 @@ static int wpa_supplicant_ctrl_iface_get(struct wpa_supplicant *wpa_s,
|
|||||||
wpa_s->last_gtk_len);
|
wpa_s->last_gtk_len);
|
||||||
return res;
|
return res;
|
||||||
#endif /* CONFIG_TESTING_GET_GTK */
|
#endif /* CONFIG_TESTING_GET_GTK */
|
||||||
|
} else if (os_strcmp(cmd, "tls_library") == 0) {
|
||||||
|
res = tls_get_library_version(buf, buflen);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (os_snprintf_error(buflen, res))
|
if (os_snprintf_error(buflen, res))
|
||||||
|
Loading…
Reference in New Issue
Block a user