X-Git-Url: https://git.openssl.org/gitweb/?p=openssl.git;a=blobdiff_plain;f=doc%2Fman7%2Fssl.pod;h=6cc1c4bcffb9c555fd6e353908d1d1b1904e76ad;hp=b15ae7c3b6889f8216ffaeae346e1f5440c0b4d3;hb=dc703d6b469f1b186483a55b59013fbaca2228fd;hpb=398206375688f053774ab0622a59db69fb2e2b99 diff --git a/doc/man7/ssl.pod b/doc/man7/ssl.pod index b15ae7c3b6..6cc1c4bcff 100644 --- a/doc/man7/ssl.pod +++ b/doc/man7/ssl.pod @@ -14,7 +14,7 @@ The OpenSSL B library implements the Secure Sockets Layer (SSL v2/v3) and Transport Layer Security (TLS v1) protocols. It provides a rich API which is documented here. -Then an B object is created as a framework to establish +An B object is created as a framework to establish TLS/SSL enabled connections (see L). Various options regarding certificates, algorithms etc. can be set in this object. @@ -25,7 +25,7 @@ L, L or L can be used to associate the network connection with the object. -Then the TLS/SSL handshake is performed using +When the TLS/SSL handshake is performed using L or L respectively. L, L, L and L are @@ -42,7 +42,7 @@ structures: =item B (SSL Method) -That's a dispatch structure describing the internal B library +This is a dispatch structure describing the internal B library methods/functions which implement the various protocol versions (SSLv3 TLSv1, ...). It's needed to create an B. @@ -50,12 +50,12 @@ TLSv1, ...). It's needed to create an B. This structure holds the algorithm information for a particular cipher which are a core part of the SSL/TLS protocol. The available ciphers are configured -on a B basis and the actually used ones are then part of the +on a B basis and the actual ones used are then part of the B. =item B (SSL Context) -That's the global context structure which is created by a server or client +This is the global context structure which is created by a server or client once per program life-time and which holds mainly default values for the B structures which are later created for the connections. @@ -66,9 +66,9 @@ connection: Bs, client and server certificates, keys, etc. =item B (SSL Connection) -That's the main SSL/TLS structure which is created by a server or client per +This is the main SSL/TLS structure which is created by a server or client per established connection. This actually is the core structure in the SSL API. -Under run-time the application usually deals with this structure which has +At run-time the application usually deals with this structure which has links to mostly all other structures. =back @@ -83,7 +83,7 @@ containing the prototypes for the data structures and functions: =item B -That's the common header file for the SSL/TLS API. Include it into your +This is the common header file for the SSL/TLS API. Include it into your program to make the API of the B library available. It internally includes both more private SSL headers and headers from the B library. Whenever you need hard-core details on the internals of the SSL API, look @@ -95,13 +95,13 @@ Unused. Present for backwards compatibility only. =item B -That's the sub header file dealing with the SSLv3 protocol only. +This is the sub header file dealing with the SSLv3 protocol only. I. =item B -That's the sub header file dealing with the TLSv1 protocol only. +This is the sub header file dealing with the TLSv1 protocol only. I. @@ -128,10 +128,12 @@ See L for details. =item const SSL_METHOD *B(void); Constructor for the I SSL_METHOD structure for clients. +Must be used to support the TLSv1.3 protocol. =item const SSL_METHOD *B(void); Constructor for the I SSL_METHOD structure for servers. +Must be used to support the TLSv1.3 protocol. =item const SSL_METHOD *B(void); @@ -252,6 +254,10 @@ protocol context defined in the B structure. =item int B(long argl, char *argp, int (*new_func);(void), int (*dup_func)(void), void (*free_func)(void)) +=item long B(SSL_CTX *ctx, STACK_OF(X509) **sk); + +=item long B(SSL_CTX *ctx, STACK_OF(X509) **sk); + =item void (*B(SSL_CTX *ctx))(SSL *ssl, int cb, int ret); =item int B(const SSL_CTX *ctx); @@ -397,6 +403,8 @@ Use the file path to locate trusted CA certificates. =item int B(SSL_CTX *ctx, const char *file, int type); +=item int B(SSL_CTX *ctx, X509 *x, EVP_PKEY *pkey, STACK_OF(X509) *chain, int override); + =item X509 *B(const SSL_CTX *ctx); =item EVP_PKEY *B(const SSL_CTX *ctx); @@ -496,8 +504,6 @@ in multiple SSL connections, and then duplicate it prior to initiating each connection with the duplicated handle. Use of SSL_dup() avoids the need to repeat the configuration of the handles for each connection. -This is used internally by L to construct -per-connection SSL handles after L. For SSL_dup() to work, the connection MUST be in its initial state and MUST NOT have not yet have started the SSL handshake. @@ -552,7 +558,7 @@ fresh handle for each connection. =item void (*B(const SSL *ssl);)() -=item SSL_KEY_UPDATE B(SSL *s); +=item int B(SSL *s); =item STACK *B(const SSL *ssl); @@ -570,7 +576,7 @@ fresh handle for each connection. =item SSL_SESSION *B(const SSL *ssl); -=item char *B(const SSL *ssl, char *buf, int len); +=item char *B(const SSL *ssl, char *buf, int size); =item int B(const SSL *ssl); @@ -602,7 +608,7 @@ fresh handle for each connection. =item int B(SSL *ssl); -=item int B(SSL *s, SSL_KEY_UPDATE updatetype); +=item int B(SSL *s, int updatetype); =item STACK *B(const char *file); @@ -708,6 +714,8 @@ Returns the current handshake state. =item int B(SSL *ssl, const char *file, int type); +=item int B(SSL *ssl, X509 *x, EVP_PKEY *pkey, STACK_OF(X509) *chain, int override); + =item int B(const SSL *ssl); =item int B(const SSL *ssl); @@ -821,7 +829,7 @@ L =head1 HISTORY -B, B and B where removed +B, B and B were removed in OpenSSL 1.1.0. The return type of B was changed from void to int in @@ -829,7 +837,7 @@ OpenSSL 1.1.0. =head1 COPYRIGHT -Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2000-2018 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy