diff options
author | jkim <jkim@FreeBSD.org> | 2015-01-08 23:42:41 +0000 |
---|---|---|
committer | jkim <jkim@FreeBSD.org> | 2015-01-08 23:42:41 +0000 |
commit | 4f9b1cef1a6825f03178937e0feb39a2b2d046c8 (patch) | |
tree | 6c2f3cb14d70e0247fe500835bed3d3588c3025e /crypto/openssl/apps/s_client.c | |
parent | cfd5b20c8bb6e3677ef84152d28058c0ead0de39 (diff) | |
parent | a350427e88bc6ff288594c964ca0f57464062eb0 (diff) | |
download | FreeBSD-src-4f9b1cef1a6825f03178937e0feb39a2b2d046c8.zip FreeBSD-src-4f9b1cef1a6825f03178937e0feb39a2b2d046c8.tar.gz |
Merge OpenSSL 1.0.1k.
Diffstat (limited to 'crypto/openssl/apps/s_client.c')
-rw-r--r-- | crypto/openssl/apps/s_client.c | 22 |
1 files changed, 18 insertions, 4 deletions
diff --git a/crypto/openssl/apps/s_client.c b/crypto/openssl/apps/s_client.c index c2e160c..19545e2 100644 --- a/crypto/openssl/apps/s_client.c +++ b/crypto/openssl/apps/s_client.c @@ -329,10 +329,12 @@ static void sc_usage(void) BIO_printf(bio_err," -srppass arg - password for 'user'\n"); BIO_printf(bio_err," -srp_lateuser - SRP username into second ClientHello message\n"); BIO_printf(bio_err," -srp_moregroups - Tolerate other than the known g N values.\n"); - BIO_printf(bio_err," -srp_strength int - minimal mength in bits for N (default %d).\n",SRP_MINIMAL_N); + BIO_printf(bio_err," -srp_strength int - minimal length in bits for N (default %d).\n",SRP_MINIMAL_N); #endif BIO_printf(bio_err," -ssl2 - just use SSLv2\n"); +#ifndef OPENSSL_NO_SSL3_METHOD BIO_printf(bio_err," -ssl3 - just use SSLv3\n"); +#endif BIO_printf(bio_err," -tls1_2 - just use TLSv1.2\n"); BIO_printf(bio_err," -tls1_1 - just use TLSv1.1\n"); BIO_printf(bio_err," -tls1 - just use TLSv1\n"); @@ -807,7 +809,7 @@ int MAIN(int argc, char **argv) else if (strcmp(*argv,"-ssl2") == 0) meth=SSLv2_client_method(); #endif -#ifndef OPENSSL_NO_SSL3 +#ifndef OPENSSL_NO_SSL3_METHOD else if (strcmp(*argv,"-ssl3") == 0) meth=SSLv3_client_method(); #endif @@ -1319,10 +1321,22 @@ re_start: BIO_ctrl(sbio, BIO_CTRL_DGRAM_SET_SEND_TIMEOUT, 0, &timeout); } - if (socket_mtu > 28) + if (socket_mtu) { + if(socket_mtu < DTLS_get_link_min_mtu(con)) + { + BIO_printf(bio_err,"MTU too small. Must be at least %ld\n", + DTLS_get_link_min_mtu(con)); + BIO_free(sbio); + goto shut; + } SSL_set_options(con, SSL_OP_NO_QUERY_MTU); - SSL_set_mtu(con, socket_mtu - 28); + if(!DTLS_set_link_mtu(con, socket_mtu)) + { + BIO_printf(bio_err, "Failed to set MTU\n"); + BIO_free(sbio); + goto shut; + } } else /* want to do MTU discovery */ |