10553b
--- lib/IO/Socket/SSL.pm
10553b
+++ lib/IO/Socket/SSL.pm
10553b
@@ -164,7 +164,7 @@ if ( defined &Net::SSLeay::CTX_set_min_p
10553b
 # global defaults
10553b
 my %DEFAULT_SSL_ARGS = (
10553b
     SSL_check_crl => 0,
10553b
-    SSL_version => 'SSLv23:!SSLv3:!SSLv2', # consider both SSL3.0 and SSL2.0 as broken
10553b
+    SSL_version => '',
10553b
     SSL_verify_callback => undef,
10553b
     SSL_verifycn_scheme => undef,  # fallback cn verification
10553b
     SSL_verifycn_publicsuffix => undef,  # fallback default list verification
10553b
@@ -2335,7 +2335,7 @@ sub new {
10553b
 
10553b
     my $ssl_op = $DEFAULT_SSL_OP;
10553b
 
10553b
-    my $ver;
10553b
+    my $ver = '';
10553b
     for (split(/\s*:\s*/,$arg_hash->{SSL_version})) {
10553b
 	m{^(!?)(?:(SSL(?:v2|v3|v23|v2/3))|(TLSv1(?:_?[123])?))$}i
10553b
 	or croak("invalid SSL_version specified");
10553b
--- lib/IO/Socket/SSL.pod
10553b
+++ lib/IO/Socket/SSL.pod
10553b
@@ -1028,11 +1028,12 @@ All values are case-insensitive.  Instea
10553b
 'TLSv1_3' one can also use 'TLSv11', 'TLSv12', and 'TLSv13'.  Support for
10553b
 'TLSv1_1', 'TLSv1_2', and 'TLSv1_3' requires recent versions of Net::SSLeay
10553b
 and openssl.
10553b
+The default SSL_version is defined by the underlying cryptographic library.
10553b
 
10553b
 Independent from the handshake format you can limit to set of accepted SSL
10553b
 versions by adding !version separated by ':'.
10553b
 
10553b
-The default SSL_version is 'SSLv23:!SSLv3:!SSLv2' which means, that the
10553b
+For example, 'SSLv23:!SSLv3:!SSLv2' means that the
10553b
 handshake format is compatible to SSL2.0 and higher, but that the successful
10553b
 handshake is limited to TLS1.0 and higher, that is no SSL2.0 or SSL3.0 because
10553b
 both of these versions have serious security issues and should not be used