From 23f80f46a43badabadb3f14487b8cd9af3336ef2 Mon Sep 17 00:00:00 2001 From: Richard Levitte Date: Thu, 30 Nov 2000 11:57:31 +0000 Subject: Make it possible to test SSL compression --- ssl/ssltest.c | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) (limited to 'ssl') diff --git a/ssl/ssltest.c b/ssl/ssltest.c index 4763f2a6d7..4e4ce7d096 100644 --- a/ssl/ssltest.c +++ b/ssl/ssltest.c @@ -85,6 +85,11 @@ # define TEST_CLIENT_CERT "../apps/client.pem" #endif +/* There is really no standard for this, so let's assign some tentative + numbers. In any case, these numbers are only for this test */ +#define COMP_RLE 1 +#define COMP_ZLIB 2 + static int MS_CALLBACK verify_callback(int ok, X509_STORE_CTX *ctx); #ifndef NO_RSA static RSA MS_CALLBACK *tmp_rsa_cb(SSL *s, int is_export,int keylength); @@ -148,6 +153,8 @@ static void sv_usage(void) fprintf(stderr," -bio_pair - Use BIO pairs\n"); fprintf(stderr," -f - Test even cases that can't work\n"); fprintf(stderr," -time - measure processor time used by client and server\n"); + fprintf(stderr," -zlib - use zlib compression\n"); + fprintf(stderr," -time - use rle compression\n"); } static void print_details(SSL *c_ssl, const char *prefix) @@ -220,6 +227,7 @@ int main(int argc, char *argv[]) int no_dhe = 0; int print_time = 0; clock_t s_time = 0, c_time = 0; + int comp = 0; verbose = 0; debug = 0; @@ -333,6 +341,14 @@ int main(int argc, char *argv[]) { print_time = 1; } + else if (strcmp(*argv,"-zlib") == 0) + { + comp = COMP_ZLIB; + } + else if (strcmp(*argv,"-rle") == 0) + { + comp = COMP_RLE; + } else { fprintf(stderr,"unknown option %s\n",*argv); @@ -374,6 +390,23 @@ bad: SSL_library_init(); SSL_load_error_strings(); + if (comp == COMP_ZLIB) + { + COMP_METHOD *cm = COMP_zlib(); + if (cm->type != NID_undef) + SSL_COMP_add_compression_method(COMP_ZLIB, cm); + else + fprintf(stderr, "Warning: zlib compression not supported\n"); + } + if (comp == COMP_RLE) + { + COMP_METHOD *cm = COMP_rle(); + if (cm->type != NID_undef) + SSL_COMP_add_compression_method(COMP_RLE, cm); + else + fprintf(stderr, "Warning: rle compression not supported\n"); + } + #if !defined(NO_SSL2) && !defined(NO_SSL3) if (ssl2) meth=SSLv2_method(); -- cgit v1.2.3