Index: hostapd-0.6.10/src/eap_server/eap_tls_common.c
===================================================================
--- hostapd-0.6.10.orig/src/eap_server/eap_tls_common.c	2012-09-24 09:42:22.000000000 +0000
+++ hostapd-0.6.10/src/eap_server/eap_tls_common.c	2012-09-24 09:46:30.000000000 +0000
@@ -221,6 +221,14 @@
 			return -1;
 		}
 
+		if (len > message_length) {
+			wpa_printf(MSG_INFO, "SSL: Too much data (%d bytes) in "
+				   "first fragment of frame (TLS Message "
+				   "Length %d bytes)",
+				   (int) len, (int) message_length);
+			return -1;
+		}
+
 		data->in_buf = wpabuf_alloc(message_length);
 		if (data->in_buf == NULL) {
 			wpa_printf(MSG_DEBUG, "SSL: No memory for message");
