X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=test%2Fsslcorrupttest.c;h=8ccad16f28f492d12b46c76cbe0381d652f12344;hb=38a322a5f29ae0b4a9bd42233310835487d875ac;hp=f07cfceda7dc4038cdea939a024de44b9ee96d34;hpb=b4eee58a5f9dfa493d6cc34b4af871415c67beda;p=oweals%2Fopenssl.git diff --git a/test/sslcorrupttest.c b/test/sslcorrupttest.c index f07cfceda7..8ccad16f28 100644 --- a/test/sslcorrupttest.c +++ b/test/sslcorrupttest.c @@ -11,6 +11,8 @@ #include "ssltestlib.h" #include "testutil.h" +static int docorrupt = 0; + static void copy_flags(BIO *bio) { int flags; @@ -38,7 +40,7 @@ static int tls_corrupt_write(BIO *bio, const char *in, int inl) BIO *next = BIO_next(bio); char *copy; - if (in[0] == SSL3_RT_APPLICATION_DATA) { + if (docorrupt) { copy = BUF_memdup(in, inl); TEST_check(copy != NULL); /* corrupt last bit of application data */ @@ -186,6 +188,8 @@ static int test_ssl_corrupt(int testidx) STACK_OF(SSL_CIPHER) *ciphers; const SSL_CIPHER *currcipher; + docorrupt = 0; + printf("Starting Test %d, %s\n", testidx, cipher_list[testidx]); if (!create_ssl_ctx_pair(TLS_server_method(), TLS_client_method(), &sctx, @@ -236,12 +240,14 @@ static int test_ssl_corrupt(int testidx) goto end; } - if (!create_ssl_connection(server, client)) { + if (!create_ssl_connection(server, client, SSL_ERROR_NONE)) { printf("Unable to create SSL connection\n"); ERR_print_errors_fp(stdout); goto end; } + docorrupt = 1; + if (SSL_write(client, junk, sizeof(junk)) < 0) { printf("Unable to SSL_write\n"); ERR_print_errors_fp(stdout);