Microsoft Azure IoTHub client libraries

Dependents:   sht15_remote_monitoring RobotArmDemo iothub_client_sample_amqp f767zi_mqtt ... more

This library implements the Microsoft Azure IoTHub client library. The code is replicated from https://github.com/Azure/azure-iot-sdks

Committer:
AzureIoTClient
Date:
Thu Oct 04 09:15:49 2018 -0700
Revision:
93:7c0bbb86b167
Parent:
92:97148cf9aa2a
1.2.10

Who changed what in which revision?

UserRevisionLine numberNew contents of line
AzureIoTClient 88:248736be106e 1 // Copyright (c) Microsoft. All rights reserved.
AzureIoTClient 88:248736be106e 2 // Licensed under the MIT license. See LICENSE file in the project root for full license information.
AzureIoTClient 88:248736be106e 3
AzureIoTClient 88:248736be106e 4 #ifndef IOTHUB_CLIENT_AUTHORIZATION_H
AzureIoTClient 88:248736be106e 5 #define IOTHUB_CLIENT_AUTHORIZATION_H
AzureIoTClient 88:248736be106e 6
AzureIoTClient 92:97148cf9aa2a 7 #include "azure_c_shared_utility/macro_utils.h"
AzureIoTClient 92:97148cf9aa2a 8 #include "azure_c_shared_utility/umock_c_prod.h"
AzureIoTClient 92:97148cf9aa2a 9 #include "azure_c_shared_utility/xio.h"
AzureIoTClient 92:97148cf9aa2a 10
AzureIoTClient 88:248736be106e 11 #ifdef __cplusplus
AzureIoTClient 88:248736be106e 12 extern "C" {
AzureIoTClient 88:248736be106e 13 #else
AzureIoTClient 88:248736be106e 14 #include <stdbool.h>
AzureIoTClient 88:248736be106e 15 #endif /* __cplusplus */
AzureIoTClient 88:248736be106e 16
AzureIoTClient 88:248736be106e 17 typedef struct IOTHUB_AUTHORIZATION_DATA_TAG* IOTHUB_AUTHORIZATION_HANDLE;
AzureIoTClient 88:248736be106e 18
AzureIoTClient 88:248736be106e 19 #define IOTHUB_CREDENTIAL_TYPE_VALUES \
AzureIoTClient 88:248736be106e 20 IOTHUB_CREDENTIAL_TYPE_UNKNOWN, \
AzureIoTClient 88:248736be106e 21 IOTHUB_CREDENTIAL_TYPE_DEVICE_KEY, \
AzureIoTClient 88:248736be106e 22 IOTHUB_CREDENTIAL_TYPE_X509, \
AzureIoTClient 88:248736be106e 23 IOTHUB_CREDENTIAL_TYPE_X509_ECC, \
AzureIoTClient 88:248736be106e 24 IOTHUB_CREDENTIAL_TYPE_SAS_TOKEN, \
AzureIoTClient 88:248736be106e 25 IOTHUB_CREDENTIAL_TYPE_DEVICE_AUTH
AzureIoTClient 88:248736be106e 26
AzureIoTClient 88:248736be106e 27
AzureIoTClient 88:248736be106e 28 DEFINE_ENUM(IOTHUB_CREDENTIAL_TYPE, IOTHUB_CREDENTIAL_TYPE_VALUES);
AzureIoTClient 88:248736be106e 29
AzureIoTClient 88:248736be106e 30 #define SAS_TOKEN_STATUS_VALUES \
AzureIoTClient 88:248736be106e 31 SAS_TOKEN_STATUS_FAILED, \
AzureIoTClient 88:248736be106e 32 SAS_TOKEN_STATUS_VALID, \
AzureIoTClient 88:248736be106e 33 SAS_TOKEN_STATUS_INVALID
AzureIoTClient 88:248736be106e 34
AzureIoTClient 88:248736be106e 35 DEFINE_ENUM(SAS_TOKEN_STATUS, SAS_TOKEN_STATUS_VALUES);
AzureIoTClient 88:248736be106e 36
AzureIoTClient 89:a2ed767a532e 37 MOCKABLE_FUNCTION(, IOTHUB_AUTHORIZATION_HANDLE, IoTHubClient_Auth_Create, const char*, device_key, const char*, device_id, const char*, device_sas_token, const char *, module_id);
AzureIoTClient 89:a2ed767a532e 38 MOCKABLE_FUNCTION(, IOTHUB_AUTHORIZATION_HANDLE, IoTHubClient_Auth_CreateFromDeviceAuth, const char*, device_id, const char*, module_id);
AzureIoTClient 88:248736be106e 39 MOCKABLE_FUNCTION(, void, IoTHubClient_Auth_Destroy, IOTHUB_AUTHORIZATION_HANDLE, handle);
AzureIoTClient 88:248736be106e 40 MOCKABLE_FUNCTION(, IOTHUB_CREDENTIAL_TYPE, IoTHubClient_Auth_Set_x509_Type, IOTHUB_AUTHORIZATION_HANDLE, handle, bool, enable_x509);
AzureIoTClient 88:248736be106e 41 MOCKABLE_FUNCTION(, IOTHUB_CREDENTIAL_TYPE, IoTHubClient_Auth_Get_Credential_Type, IOTHUB_AUTHORIZATION_HANDLE, handle);
AzureIoTClient 88:248736be106e 42 MOCKABLE_FUNCTION(, char*, IoTHubClient_Auth_Get_SasToken, IOTHUB_AUTHORIZATION_HANDLE, handle, const char*, scope, size_t, expiry_time_relative_seconds, const char*, key_name);
AzureIoTClient 88:248736be106e 43 MOCKABLE_FUNCTION(, int, IoTHubClient_Auth_Set_xio_Certificate, IOTHUB_AUTHORIZATION_HANDLE, handle, XIO_HANDLE, xio);
AzureIoTClient 88:248736be106e 44 MOCKABLE_FUNCTION(, const char*, IoTHubClient_Auth_Get_DeviceId, IOTHUB_AUTHORIZATION_HANDLE, handle);
AzureIoTClient 89:a2ed767a532e 45 MOCKABLE_FUNCTION(, const char*, IoTHubClient_Auth_Get_ModuleId, IOTHUB_AUTHORIZATION_HANDLE, handle);
AzureIoTClient 88:248736be106e 46 MOCKABLE_FUNCTION(, const char*, IoTHubClient_Auth_Get_DeviceKey, IOTHUB_AUTHORIZATION_HANDLE, handle);
AzureIoTClient 88:248736be106e 47 MOCKABLE_FUNCTION(, SAS_TOKEN_STATUS, IoTHubClient_Auth_Is_SasToken_Valid, IOTHUB_AUTHORIZATION_HANDLE, handle);
AzureIoTClient 88:248736be106e 48
AzureIoTClient 89:a2ed767a532e 49 #ifdef USE_EDGE_MODULES
AzureIoTClient 89:a2ed767a532e 50 MOCKABLE_FUNCTION(, char*, IoTHubClient_Auth_Get_TrustBundle, IOTHUB_AUTHORIZATION_HANDLE, handle);
AzureIoTClient 89:a2ed767a532e 51 #endif
AzureIoTClient 89:a2ed767a532e 52
AzureIoTClient 89:a2ed767a532e 53
AzureIoTClient 88:248736be106e 54 #ifdef __cplusplus
AzureIoTClient 88:248736be106e 55 }
AzureIoTClient 88:248736be106e 56 #endif
AzureIoTClient 88:248736be106e 57
AzureIoTClient 88:248736be106e 58 #endif /* IOTHUB_CLIENT_AUTHORIZATION_H */