struct AzureIoTHubClient{
struct{
AzureIoTMQTT_t xMQTTContext;
uint8_t * pucWorkingBuffer;
uint32_t ulWorkingBufferLength;
az_iot_hub_client xAzureIoTHubClientCore;
const uint8_t * pucHostname;
uint16_t ulHostnameLength;
const uint8_t * pucDeviceID;
uint16_t ulDeviceIDLength;
const uint8_t * pucSymmetricKey;
uint32_t ulSymmetricKeyLength;
uint32_t ( * pxTokenRefresh )( AzureIoTHubClient_t * pxAzureIoTHubClient,
uint64_t ullExpiryTimeSecs,
const uint8_t * ucKey,
uint32_t ulKeyLen,
uint8_t * pucSASBuffer,
uint32_t ulSasBufferLen,
uint32_t * pulSaSLength );
AzureIoTGetHMACFunc_t xHMACFunction;
AzureIoTGetCurrentTimeFunc_t xTimeFunction;
AzureIoTTelemetryAckCallback_t xTelemetryCallback;
uint32_t ulCurrentPropertyRequestID;
AzureIoTHubClientReceiveContext_t xReceiveContext[ azureiothubSUBSCRIBE_FEATURE_COUNT ];
}
_internal; /**< @brief Internal to the SDK */};
This is the structure defined in Azure's Middleware for FreeRTOS. Since, the SAS token expires every 60 minutes, I want to enable refreshing of the token, but I have no clue on what the variable pxTokenRefresh is. It would be great if you can help me understand the what this format of variable declaration means and how do I initialize it.