Webserver+3d print
tls_client.h File Reference
Handshake message processing (TLS client) More...
Go to the source code of this file.
Functions | |
error_t | tlsClientHandshake (TlsContext *context) |
TLS client handshake. | |
error_t | tlsParseServerMessage (TlsContext *context) |
Parse incoming handshake message. | |
error_t | tlsSendClientHello (TlsContext *context) |
Send ClientHello message. | |
error_t | tlsSendClientKeyExchange (TlsContext *context) |
Send ClientKeyExchange message. | |
error_t | tlsSendCertificateVerify (TlsContext *context) |
Send CertificateVerify message. | |
error_t | tlsFormatClientHello (TlsContext *context, TlsClientHello *message, size_t *length) |
Format ClientHello message. | |
error_t | tlsFormatClientKeyExchange (TlsContext *context, TlsClientKeyExchange *message, size_t *length) |
Format ClientKeyExchange message. | |
error_t | tlsFormatCertificateVerify (TlsContext *context, TlsCertificateVerify *message, size_t *length) |
Format CertificateVerify message. | |
error_t | tlsParseServerHello (TlsContext *context, const TlsServerHello *message, size_t length) |
Parse ServerHello message. | |
error_t | tlsParseServerKeyExchange (TlsContext *context, const TlsServerKeyExchange *message, size_t length) |
Parse ServerKeyExchange message. | |
error_t | tlsParseCertificateRequest (TlsContext *context, const TlsCertificateRequest *message, size_t length) |
Parse CertificateRequest message. | |
error_t | tlsParseServerHelloDone (TlsContext *context, const TlsServerHelloDone *message, size_t length) |
Parse ServerHelloDone message. |
Detailed Description
Handshake message processing (TLS client)
License
Copyright (C) 2010-2017 Oryx Embedded SARL. All rights reserved.
This file is part of CycloneSSL Open.
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- Version:
- 1.7.6
Definition in file tls_client.h.
Function Documentation
error_t tlsClientHandshake | ( | TlsContext * | context ) |
TLS client handshake.
TLS handshake protocol is responsible for the authentication and key exchange necessary to establish a secure session
- Parameters:
-
[in] context Pointer to the TLS context
- Returns:
- Error code
Definition at line 65 of file tls_client.c.
error_t tlsFormatCertificateVerify | ( | TlsContext * | context, |
TlsCertificateVerify * | message, | ||
size_t * | length | ||
) |
Format CertificateVerify message.
- Parameters:
-
[in] context Pointer to the TLS context [out] message Buffer where to format the CertificateVerify message [out] length Length of the resulting CertificateVerify message
- Returns:
- Error code
Definition at line 1070 of file tls_client.c.
error_t tlsFormatClientHello | ( | TlsContext * | context, |
TlsClientHello * | message, | ||
size_t * | length | ||
) |
Format ClientHello message.
- Parameters:
-
[in] context Pointer to the TLS context [out] message Buffer where to format the ClientHello message [out] length Length of the resulting ClientHello message
- Returns:
- Error code
Definition at line 477 of file tls_client.c.
error_t tlsFormatClientKeyExchange | ( | TlsContext * | context, |
TlsClientKeyExchange * | message, | ||
size_t * | length | ||
) |
Format ClientKeyExchange message.
- Parameters:
-
[in] context Pointer to the TLS context [out] message Buffer where to format the ClientKeyExchange message [out] length Length of the resulting ClientKeyExchange message
- Returns:
- Error code
Definition at line 990 of file tls_client.c.
error_t tlsParseCertificateRequest | ( | TlsContext * | context, |
const TlsCertificateRequest * | message, | ||
size_t | length | ||
) |
Parse CertificateRequest message.
A server can optionally request a certificate from the client, if appropriate for the selected cipher suite. This message will immediately follow the ServerKeyExchange message
- Parameters:
-
[in] context Pointer to the TLS context [in] message Incoming CertificateRequest message to parse [in] length Message length
- Returns:
- Error code
Definition at line 1722 of file tls_client.c.
error_t tlsParseServerHello | ( | TlsContext * | context, |
const TlsServerHello * | message, | ||
size_t | length | ||
) |
Parse ServerHello message.
The server will send this message in response to a ClientHello message when it was able to find an acceptable set of algorithms. If it cannot find such a match, it will respond with a handshake failure alert
- Parameters:
-
[in] context Pointer to the TLS context [in] message Incoming ServerHello message to parse [in] length Message length
- Returns:
- Error code
Definition at line 1409 of file tls_client.c.
error_t tlsParseServerHelloDone | ( | TlsContext * | context, |
const TlsServerHelloDone * | message, | ||
size_t | length | ||
) |
Parse ServerHelloDone message.
The ServerHelloDone message is sent by the server to indicate the end of the ServerHello and associated messages. After sending this message, the server will wait for a client response
- Parameters:
-
[in] context Pointer to the TLS context [in] message Incoming ServerHelloDone message to parse [in] length Message length
- Returns:
- Error code
Definition at line 1892 of file tls_client.c.
error_t tlsParseServerKeyExchange | ( | TlsContext * | context, |
const TlsServerKeyExchange * | message, | ||
size_t | length | ||
) |
Parse ServerKeyExchange message.
The ServerKeyExchange message is sent by the server only when the server Certificate message does not contain enough data to allow the client to exchange a premaster secret
- Parameters:
-
[in] context Pointer to the TLS context [in] message Incoming ServerKeyExchange message to parse [in] length Message length
- Returns:
- Error code
Definition at line 1591 of file tls_client.c.
error_t tlsParseServerMessage | ( | TlsContext * | context ) |
Parse incoming handshake message.
- Parameters:
-
[in] context Pointer to the TLS context
- Returns:
- Error code
Definition at line 195 of file tls_client.c.
error_t tlsSendCertificateVerify | ( | TlsContext * | context ) |
Send CertificateVerify message.
The CertificateVerify message is used to provide explicit verification of a client certificate. This message is only sent following a client certificate that has signing capability
- Parameters:
-
[in] context Pointer to the TLS context
- Returns:
- Error code
Definition at line 420 of file tls_client.c.
error_t tlsSendClientHello | ( | TlsContext * | context ) |
Send ClientHello message.
When a client first connects to a server, it is required to send the ClientHello as its first message. The client can also send a ClientHello in response to a HelloRequest or on its own initiative in order to renegotiate the security parameters in an existing connection
- Parameters:
-
[in] context Pointer to the TLS context
- Returns:
- Error code
Definition at line 312 of file tls_client.c.
error_t tlsSendClientKeyExchange | ( | TlsContext * | context ) |
Send ClientKeyExchange message.
This message is always sent by the client. It must immediately follow the client Certificate message, if it is sent. Otherwise, it must be the first message sent by the client after it receives the ServerHelloDone message
- Parameters:
-
[in] context Pointer to the TLS context
- Returns:
- Error code
Definition at line 367 of file tls_client.c.
Generated on Tue Jul 12 2022 17:10:23 by
