tls_quic_misc.c File Reference

QUIC helper functions. More...

#include "tls.h"
#include "tls_quic_misc.h"
#include "debug.h"

Go to the source code of this file.

Macros

#define TRACE_LEVEL   TLS_TRACE_LEVEL
 

Functions

error_t tlsFormatQuicTransportParamsExtension (TlsContext *context, uint8_t *p, size_t *written)
 Format QuicTransportParameters extension. More...
 
error_t tlsParseQuicTransportParamsExtension (TlsContext *context, const TlsExtension *quicTransportParams)
 Parse QuicTransportParameters extension. More...
 
error_t tlsSetQuicEncryptionKeys (TlsContext *context, TlsEncryptionLevel level, const uint8_t *clientKey, const uint8_t *serverKey, size_t keyLen)
 Set encryption keys. More...
 
error_t tlsSendQuicHandshakeMessage (TlsContext *context, const uint8_t *message, size_t length)
 Send handshake message. More...
 
error_t tlsSendQuicAlertMessage (TlsContext *context, const TlsAlert *message, size_t length)
 Send alert message. More...
 

Detailed Description

QUIC helper functions.

License

SPDX-License-Identifier: GPL-2.0-or-later

Copyright (C) 2010-2025 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.

Description

The TLS protocol provides communications security over the Internet. The protocol allows client/server applications to communicate in a way that is designed to prevent eavesdropping, tampering, or message forgery

Author
Oryx Embedded SARL (www.oryx-embedded.com)
Version
2.5.4

Definition in file tls_quic_misc.c.

Macro Definition Documentation

◆ TRACE_LEVEL

#define TRACE_LEVEL   TLS_TRACE_LEVEL

Definition at line 38 of file tls_quic_misc.c.

Function Documentation

◆ tlsFormatQuicTransportParamsExtension()

error_t tlsFormatQuicTransportParamsExtension ( TlsContext context,
uint8_t *  p,
size_t *  written 
)

Format QuicTransportParameters extension.

Parameters
[in]contextPointer to the TLS context
[in]pOutput stream where to write the QuicTransportParameters extension
[out]writtenTotal number of bytes that have been written
Returns
Error code

Definition at line 57 of file tls_quic_misc.c.

◆ tlsParseQuicTransportParamsExtension()

error_t tlsParseQuicTransportParamsExtension ( TlsContext context,
const TlsExtension quicTransportParams 
)

Parse QuicTransportParameters extension.

Parameters
[in]contextPointer to the TLS context
[in]selectedIdentityPointer to the QuicTransportParameters extension
Returns
Error code

Definition at line 105 of file tls_quic_misc.c.

◆ tlsSendQuicAlertMessage()

error_t tlsSendQuicAlertMessage ( TlsContext context,
const TlsAlert message,
size_t  length 
)

Send alert message.

Parameters
[in]contextPointer to the TLS context
[in]messagePointer to the alert message
[in]lengthLength of the alert message, in bytes
Returns
Error code

Definition at line 251 of file tls_quic_misc.c.

◆ tlsSendQuicHandshakeMessage()

error_t tlsSendQuicHandshakeMessage ( TlsContext context,
const uint8_t *  message,
size_t  length 
)

Send handshake message.

Parameters
[in]contextPointer to the TLS context
[in]messagePointer to the handshake message
[in]lengthLength of the handshake message, in bytes
Returns
Error code

Definition at line 212 of file tls_quic_misc.c.

◆ tlsSetQuicEncryptionKeys()

error_t tlsSetQuicEncryptionKeys ( TlsContext context,
TlsEncryptionLevel  level,
const uint8_t *  clientKey,
const uint8_t *  serverKey,
size_t  keyLen 
)

Set encryption keys.

Parameters
[in]contextPointer to the TLS context
[in]levelEncryption level
[in]clientKeyClient's secret key
[in]serverKeyServer's secret key
[in]keyLenLength of the secret keys, in bytes
Returns
Error code

Definition at line 165 of file tls_quic_misc.c.