aboutsummaryrefslogtreecommitdiff
path: root/contrib/wpa_supplicant/openssl-tls-extensions.patch
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/wpa_supplicant/openssl-tls-extensions.patch')
-rw-r--r--contrib/wpa_supplicant/openssl-tls-extensions.patch166
1 files changed, 0 insertions, 166 deletions
diff --git a/contrib/wpa_supplicant/openssl-tls-extensions.patch b/contrib/wpa_supplicant/openssl-tls-extensions.patch
deleted file mode 100644
index 77e9a4132ef0..000000000000
--- a/contrib/wpa_supplicant/openssl-tls-extensions.patch
+++ /dev/null
@@ -1,166 +0,0 @@
-This is a quick hack for testing EAP-FAST with openssl.
-
-Addition of TLS extensions to ClientHello/ServerHello is more or less
-ok, though not very clean in the way that the caller needs to take
-care of constructing set of all extensions. In addition there is not
-mechanism for reading the TLS extensions, i.e., this would not be
-enough for EAP-FAST authenticator.
-
-Rest of the changes are obviously ugly and/or incorrect for most
-parts, but it demonstrates the minimum set of changes to skip some of
-the error cases that prevented completion of TLS handshake without
-certificates. In other words, this is just a proof-of-concept type of
-example to make it possible to experiment with EAP-FAST. Cleaner patch
-for the needed functionality would be welcome..
-
-
-diff -upr openssl-0.9.7e.orig/include/openssl/ssl.h openssl-0.9.7e/include/openssl/ssl.h
---- openssl-0.9.7e.orig/include/openssl/ssl.h 2004-07-27 11:28:49.000000000 -0700
-+++ openssl-0.9.7e/include/openssl/ssl.h 2004-12-24 20:29:01.000000000 -0800
-@@ -929,6 +929,11 @@ struct ssl_st
- int first_packet;
- int client_version; /* what was passed, used for
- * SSLv3/TLS rollback check */
-+
-+ /* Optional ClientHello/ServerHello extension to be added to the end
-+ * of the SSLv3/TLS hello message. */
-+ char *hello_extension;
-+ int hello_extension_len;
- };
-
- #ifdef __cplusplus
-diff -upr openssl-0.9.7e.orig/ssl/s3_both.c openssl-0.9.7e/ssl/s3_both.c
---- openssl-0.9.7e.orig/ssl/s3_both.c 2003-02-12 09:05:17.000000000 -0800
-+++ openssl-0.9.7e/ssl/s3_both.c 2004-12-31 21:18:15.556846272 -0800
-@@ -199,6 +199,12 @@ int ssl3_get_finished(SSL *s, int a, int
- 64, /* should actually be 36+4 :-) */
- &ok);
-
-+ if (!ok && s->hello_extension)
-+ {
-+ /* Quick hack to test EAP-FAST. */
-+ return(1);
-+ }
-+
- if (!ok) return((int)n);
-
- /* If this occurs, we have missed a message */
-diff -upr openssl-0.9.7e.orig/ssl/s3_clnt.c openssl-0.9.7e/ssl/s3_clnt.c
---- openssl-0.9.7e.orig/ssl/s3_clnt.c 2004-05-15 09:39:22.000000000 -0700
-+++ openssl-0.9.7e/ssl/s3_clnt.c 2004-12-31 21:16:38.617583280 -0800
-@@ -588,6 +588,12 @@ static int ssl3_client_hello(SSL *s)
- *(p++)=comp->id;
- }
- *(p++)=0; /* Add the NULL method */
-+
-+ if (s->hello_extension)
-+ {
-+ memcpy(p,s->hello_extension,s->hello_extension_len);
-+ p+=s->hello_extension_len;
-+ }
-
- l=(p-d);
- d=buf;
-@@ -779,6 +785,11 @@ static int ssl3_get_server_certificate(S
-
- if (s->s3->tmp.message_type != SSL3_MT_CERTIFICATE)
- {
-+ if (s->hello_extension)
-+ {
-+ /* Quick hack to test EAP-FAST. */
-+ return(1);
-+ }
- al=SSL_AD_UNEXPECTED_MESSAGE;
- SSLerr(SSL_F_SSL3_GET_SERVER_CERTIFICATE,SSL_R_BAD_MESSAGE_TYPE);
- goto f_err;
-@@ -951,6 +962,12 @@ static int ssl3_get_key_exchange(SSL *s)
- DH *dh=NULL;
- #endif
-
-+ if (s->hello_extension)
-+ {
-+ /* Quick hack to test EAP-FAST. */
-+ return(1);
-+ }
-+
- /* use same message size as in ssl3_get_certificate_request()
- * as ServerKeyExchange message may be skipped */
- n=ssl3_get_message(s,
-@@ -1264,6 +1281,12 @@ static int ssl3_get_certificate_request(
- unsigned char *p,*d,*q;
- STACK_OF(X509_NAME) *ca_sk=NULL;
-
-+ if (s->hello_extension)
-+ {
-+ /* Quick hack to test EAP-FAST. */
-+ return(1);
-+ }
-+
- n=ssl3_get_message(s,
- SSL3_ST_CR_CERT_REQ_A,
- SSL3_ST_CR_CERT_REQ_B,
-@@ -1407,6 +1430,12 @@ static int ssl3_get_server_done(SSL *s)
- int ok,ret=0;
- long n;
-
-+ if (s->hello_extension)
-+ {
-+ /* Quick hack to test EAP-FAST. */
-+ return(1);
-+ }
-+
- n=ssl3_get_message(s,
- SSL3_ST_CR_SRVR_DONE_A,
- SSL3_ST_CR_SRVR_DONE_B,
-@@ -1439,6 +1468,12 @@ static int ssl3_send_client_key_exchange
- KSSL_ERR kssl_err;
- #endif /* OPENSSL_NO_KRB5 */
-
-+ if (s->hello_extension)
-+ {
-+ /* Quick hack to test EAP-FAST. */
-+ return(1);
-+ }
-+
- if (s->state == SSL3_ST_CW_KEY_EXCH_A)
- {
- d=(unsigned char *)s->init_buf->data;
-@@ -1880,6 +1915,12 @@ static int ssl3_check_cert_and_algorithm
- DH *dh;
- #endif
-
-+ if (s->hello_extension)
-+ {
-+ /* Quick hack to test EAP-FAST. */
-+ return(1);
-+ }
-+
- sc=s->session->sess_cert;
-
- if (sc == NULL)
-diff -upr openssl-0.9.7e.orig/ssl/ssl.h openssl-0.9.7e/ssl/ssl.h
---- openssl-0.9.7e.orig/ssl/ssl.h 2004-07-27 11:28:49.000000000 -0700
-+++ openssl-0.9.7e/ssl/ssl.h 2004-12-24 20:29:01.000000000 -0800
-@@ -929,6 +929,11 @@ struct ssl_st
- int first_packet;
- int client_version; /* what was passed, used for
- * SSLv3/TLS rollback check */
-+
-+ /* Optional ClientHello/ServerHello extension to be added to the end
-+ * of the SSLv3/TLS hello message. */
-+ char *hello_extension;
-+ int hello_extension_len;
- };
-
- #ifdef __cplusplus
-diff -upr openssl-0.9.7e.orig/ssl/ssl_lib.c openssl-0.9.7e/ssl/ssl_lib.c
---- openssl-0.9.7e.orig/ssl/ssl_lib.c 2004-05-11 05:46:12.000000000 -0700
-+++ openssl-0.9.7e/ssl/ssl_lib.c 2004-12-24 20:35:22.000000000 -0800
-@@ -478,6 +478,7 @@ void SSL_free(SSL *s)
- kssl_ctx_free(s->kssl_ctx);
- #endif /* OPENSSL_NO_KRB5 */
-
-+ OPENSSL_free(s->hello_extension);
- OPENSSL_free(s);
- }
-