Transport protocol abstraction layer. More...
#include "core/net.h"
#include "core/tcp_misc.h"
#include "mqtt/mqtt_client.h"
#include "mqtt/mqtt_client_packet.h"
#include "mqtt/mqtt_client_transport.h"
#include "mqtt/mqtt_client_misc.h"
#include "debug.h"
Go to the source code of this file.
Macros | |
#define | TRACE_LEVEL MQTT_TRACE_LEVEL |
Functions | |
error_t | mqttClientWebSocketTlsInitCallback (WebSocket *webSocket, TlsContext *tlsContext) |
TLS initialization callback. More... | |
error_t | mqttClientOpenConnection (MqttClientContext *context) |
Open network connection. More... | |
error_t | mqttClientEstablishConnection (MqttClientContext *context, const IpAddr *serverIpAddr, uint16_t serverPort) |
Establish network connection. More... | |
error_t | mqttClientShutdownConnection (MqttClientContext *context) |
Shutdown network connection. More... | |
void | mqttClientCloseConnection (MqttClientContext *context) |
Close network connection. More... | |
error_t | mqttClientSendData (MqttClientContext *context, const void *data, size_t length, size_t *written, uint_t flags) |
Send data using the relevant transport protocol. More... | |
error_t | mqttClientReceiveData (MqttClientContext *context, void *data, size_t size, size_t *received, uint_t flags) |
Receive data using the relevant transport protocol. More... | |
error_t | mqttClientWaitForData (MqttClientContext *context, systime_t timeout) |
Wait for incoming data. More... | |
Detailed Description
Transport protocol abstraction layer.
License
SPDX-License-Identifier: GPL-2.0-or-later
Copyright (C) 2010-2024 Oryx Embedded SARL. All rights reserved.
This file is part of CycloneTCP 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
- 2.4.4
Definition in file mqtt_client_transport.c.
Macro Definition Documentation
◆ TRACE_LEVEL
#define TRACE_LEVEL MQTT_TRACE_LEVEL |
Definition at line 32 of file mqtt_client_transport.c.
Function Documentation
◆ mqttClientCloseConnection()
void mqttClientCloseConnection | ( | MqttClientContext * | context | ) |
Close network connection.
- Parameters
-
[in] context Pointer to the MQTT client context
Definition at line 409 of file mqtt_client_transport.c.
◆ mqttClientEstablishConnection()
error_t mqttClientEstablishConnection | ( | MqttClientContext * | context, |
const IpAddr * | serverIpAddr, | ||
uint16_t | serverPort | ||
) |
Establish network connection.
- Parameters
-
[in] context Pointer to the MQTT client context [in] serverIpAddr IP address of the MQTT server to connect to [in] serverPort TCP port number that will be used to establish the connection
- Returns
- Error code
Definition at line 240 of file mqtt_client_transport.c.
◆ mqttClientOpenConnection()
error_t mqttClientOpenConnection | ( | MqttClientContext * | context | ) |
Open network connection.
- Parameters
-
[in] context Pointer to the MQTT client context
- Returns
- Error code
Definition at line 76 of file mqtt_client_transport.c.
◆ mqttClientReceiveData()
error_t mqttClientReceiveData | ( | MqttClientContext * | context, |
void * | data, | ||
size_t | size, | ||
size_t * | received, | ||
uint_t | flags | ||
) |
Receive data using the relevant transport protocol.
- Parameters
-
[in] context Pointer to the MQTT client context [out] data Buffer into which received data will be placed [in] size Maximum number of bytes that can be received [out] received Number of bytes that have been received [in] flags Set of flags that influences the behavior of this function
- Returns
- Error code
Definition at line 538 of file mqtt_client_transport.c.
◆ mqttClientSendData()
error_t mqttClientSendData | ( | MqttClientContext * | context, |
const void * | data, | ||
size_t | length, | ||
size_t * | written, | ||
uint_t | flags | ||
) |
Send data using the relevant transport protocol.
- Parameters
-
[in] context Pointer to the MQTT client context [in] data Pointer to a buffer containing the data to be transmitted [in] length Number of bytes to be transmitted [out] written Actual number of bytes written (optional parameter) [in] flags Set of flags that influences the behavior of this function
- Returns
- Error code
Definition at line 466 of file mqtt_client_transport.c.
◆ mqttClientShutdownConnection()
error_t mqttClientShutdownConnection | ( | MqttClientContext * | context | ) |
Shutdown network connection.
- Parameters
-
[in] context Pointer to the MQTT client context
- Returns
- Error code
Definition at line 337 of file mqtt_client_transport.c.
◆ mqttClientWaitForData()
error_t mqttClientWaitForData | ( | MqttClientContext * | context, |
systime_t | timeout | ||
) |
Wait for incoming data.
- Parameters
-
[in] context Pointer to the MQTT client context [in] timeout Maximum time to wait before returning
- Returns
- Error code
Definition at line 621 of file mqtt_client_transport.c.
◆ mqttClientWebSocketTlsInitCallback()
error_t mqttClientWebSocketTlsInitCallback | ( | WebSocket * | webSocket, |
TlsContext * | tlsContext | ||
) |
TLS initialization callback.
- Parameters
-
[in] webSocket Handle to a WebSocket [in] tlsContext Pointer to the TLS context
- Returns
- Error code
Definition at line 55 of file mqtt_client_transport.c.