X-Git-Url: https://git.exim.org/users/heiko/exim.git/blobdiff_plain/eca4debb8fa74d67fbeb4aefdcc3d67ef51386e0..8c5d388a6e12d1a8bd4aa565920238f8a921414a:/test/src/client.c diff --git a/test/src/client.c b/test/src/client.c index 5b52916ee..ac9a965e0 100644 --- a/test/src/client.c +++ b/test/src/client.c @@ -66,7 +66,8 @@ latter needs a whole pile of tables. */ # include # include # include -# if !defined(EXIM_HAVE_OPENSSL_TLSEXT) && !defined(DISABLE_OCSP) + +# if OPENSSL_VERSION_NUMBER < 0x0090806fL && !defined(DISABLE_OCSP) && !defined(OPENSSL_NO_TLSEXT) # warning "OpenSSL library version too old; define DISABLE_OCSP in Makefile" # define DISABLE_OCSP # endif @@ -84,6 +85,9 @@ latter needs a whole pile of tables. */ # define HAVE_OCSP # include # endif +# ifndef GNUTLS_NO_EXTENSIONS +# define GNUTLS_NO_EXTENSIONS 0 +# endif # define DH_BITS 768 @@ -255,12 +259,12 @@ int tls_start(int sock, SSL **ssl, SSL_CTX *ctx) { int rc; -static const unsigned char *sid_ctx = "exim"; +static const unsigned char *sid_ctx = US"exim"; RAND_load_file("client.c", -1); /* Not *very* random! */ *ssl = SSL_new (ctx); -SSL_set_session_id_context(*ssl, sid_ctx, strlen(sid_ctx)); +SSL_set_session_id_context(*ssl, sid_ctx, strlen(CS sid_ctx)); SSL_set_fd (*ssl, sock); SSL_set_connect_state(*ssl); @@ -450,7 +454,7 @@ tls_session_init(void) { gnutls_session session; -gnutls_init(&session, GNUTLS_CLIENT); +gnutls_init(&session, GNUTLS_CLIENT | GNUTLS_NO_EXTENSIONS); gnutls_cipher_set_priority(session, default_cipher_priority); gnutls_compression_set_priority(session, comp_priority); @@ -479,7 +483,14 @@ return session; *************************************************/ const char * const HELP_MESSAGE = "\n\ -Usage: client\n\ +Usage: client\n" +#ifdef HAVE_TLS +"\ + [-tls-on-connect]\n\ + [-ocsp]\n" +#endif +"\ + [-tn] n seconds timeout\n\ \n\ \n\ []\n\ @@ -830,8 +841,9 @@ if (tls_on_connect) while (fgets(CS outbuffer, sizeof(outbuffer), stdin) != NULL) { int n = (int)strlen(CS outbuffer); - while (n > 0 && isspace(outbuffer[n-1])) n--; - outbuffer[n] = 0; + + /* Strip trailing newline */ + if (outbuffer[n-1] == '\n') outbuffer[--n] = 0; /* Expect incoming */