Update docs to mention "BEGIN SERVERINFO FOR ".
[oweals/openssl.git] / doc / ssl / SSL_CTX_new.pod
index 1dae8b0bdd02e2a1c048bd410bf126cc8734a24b..23e13e134e61e2681c5ff93bf130a622d1a9dd24 100644 (file)
@@ -2,13 +2,13 @@
 
 =head1 NAME
 
-SSL_CTX_new - create a new SSL_CTX object as framework for TLS/SSL enabled functions
+SSL_CTX_new, SSLv2_method, SSLv2_server_method, SSLv2_client_method, SSLv3_method, SSLv3_server_method, SSLv3_client_method, TLSv1_method(void), TLSv1_server_method(void), TLSv1_client_method, TLSv1_1_method, TLSv1_1_server_method, TLSv1_1_client_method, SSLv23_method, SSLv23_server_method, SSLv23_client_method - create a new SSL_CTX object as framework for TLS/SSL enabled functions
 
 =head1 SYNOPSIS
 
  #include <openssl/ssl.h>
 
- SSL_CTX *SSL_CTX_new(SSL_METHOD *method);
+ SSL_CTX *SSL_CTX_new(const SSL_METHOD *method);
 
 =head1 DESCRIPTION
 
@@ -28,7 +28,8 @@ client only type. B<method> can be of the following types:
 A TLS/SSL connection established with these methods will only understand
 the SSLv2 protocol. A client will send out SSLv2 client hello messages
 and will also indicate that it only understand SSLv2. A server will only
-understand SSLv2 client hello messages.
+understand SSLv2 client hello messages. The SSLv2 protocol is deprecated 
+and very broken: its use is B<strongly> discouraged.
 
 =item SSLv3_method(void), SSLv3_server_method(void), SSLv3_client_method(void)
 
@@ -49,6 +50,16 @@ not understand SSLv2 client hello messages which are widely used for
 compatibility reasons, see SSLv23_*_method(). It will also not understand
 SSLv3 client hello messages.
 
+=item TLSv1_1_method(void), TLSv1_1_server_method(void), TLSv1_1_client_method(void)
+
+A TLS/SSL connection established with these methods will only understand the
+TLSv1.1 protocol. A client will send out TLSv1.1 client hello messages
+and will indicate that it only understands TLSv1.1. A server will only
+understand TLSv1.1 client hello messages. This especially means, that it will
+not understand SSLv2 client hello messages which are widely used for
+compatibility reasons, see SSLv23_*_method(). It will also not understand
+SSLv3 client hello messages.
+
 =item SSLv23_method(void), SSLv23_server_method(void), SSLv23_client_method(void)
 
 A TLS/SSL connection established with these methods will understand the SSLv2,
@@ -59,10 +70,6 @@ choice when compatibility is a concern.
 
 =back
 
-If a generic method is used, it is necessary to explicitly set client or
-server mode with L<SSL_set_connect_state(3)|SSL_set_connect_state(3)>
-or SSL_set_accept_state().
-
 The list of protocols available can later be limited using the SSL_OP_NO_SSLv2,
 SSL_OP_NO_SSLv3, SSL_OP_NO_TLSv1 options of the B<SSL_CTX_set_options()> or
 B<SSL_set_options()> functions. Using these options it is possible to choose