Azure IoT middleware for FreeRTOS
azure_iot.h
Go to the documentation of this file.
1 /* Copyright (c) Microsoft Corporation.
2  * Licensed under the MIT License. */
3 
16 #ifndef AZURE_IOT_H
17 #define AZURE_IOT_H
18 
19 /* AZURE_IOT_NO_CUSTOM_CONFIG allows building the azure iot library
20  * without a custom config. If a custom config is provided, the
21  * AZURE_IOT_NO_CUSTOM_CONFIG macro should not be defined. */
22 #ifndef AZURE_IOT_NO_CUSTOM_CONFIG
23  /* Include custom config file before other headers. */
24  #include "azure_iot_config.h"
25 #endif
26 
27 /* Include config defaults header to get default values of configs not
28  * defined in azure_iot_mqtt_config.h file. */
29 #include "azure_iot_config_defaults.h"
30 
31 #include "FreeRTOS.h"
32 
33 #include "azure_iot_result.h"
34 
35 /* Azure SDK for Embedded C includes */
36 #include "azure/core/_az_cfg_prefix.h"
37 
41 #define azureiotMILLISECONDS_PER_TICK ( 1000 / configTICK_RATE_HZ )
42 
48 typedef uint64_t ( * AzureIoTGetCurrentTimeFunc_t )( void );
49 
62 typedef uint32_t ( * AzureIoTGetHMACFunc_t )( const uint8_t * pucKey,
63  uint32_t ulKeyLength,
64  const uint8_t * pucData,
65  uint32_t ulDataLength,
66  uint8_t * pucOutput,
67  uint32_t ulOutputLength,
68  uint32_t * pulBytesCopied );
69 
77 
85 
86 #include "azure/core/_az_cfg_suffix.h"
87 
88 #endif /* AZURE_IOT_H */
uint32_t(* AzureIoTGetHMACFunc_t)(const uint8_t *pucKey, uint32_t ulKeyLength, const uint8_t *pucData, uint32_t ulDataLength, uint8_t *pucOutput, uint32_t ulOutputLength, uint32_t *pulBytesCopied)
The HMAC256 function used by the SDK to generate SAS keys.
Definition: azure_iot.h:62
void AzureIoT_Deinit()
Deinitialize Azure IoT middleware.
AzureIoTResult_t AzureIoT_Init()
Initialize Azure IoT middleware.
uint64_t(* AzureIoTGetCurrentTimeFunc_t)(void)
The platform get time function to be used by the SDK for MQTT connections.
Definition: azure_iot.h:48
Azure IoT FreeRTOS middleware result values.
enum AzureIoTResult AzureIoTResult_t
The results used by the middleware.