Demo using MBED TLS
Dependencies: EthernetInterface NTPClient iothub_amqp_transport iothub_client mbed-rtos mbed
Fork of iothub_client_sample_amqp by
azure_c_shared_utility/hmacsha256.c
- Committer:
- markrad
- Date:
- 2017-01-05
- Revision:
- 58:f50b97b08851
File content as of revision 58:f50b97b08851:
// Copyright (c) Microsoft. All rights reserved. // Licensed under the MIT license. See LICENSE file in the project root for full license information. #include <stdlib.h> #ifdef _CRTDBG_MAP_ALLOC #include <crtdbg.h> #endif #include "azure_c_shared_utility/gballoc.h" #include "azure_c_shared_utility/hmacsha256.h" #include "azure_c_shared_utility/hmac.h" #include "azure_c_shared_utility/strings.h" HMACSHA256_RESULT HMACSHA256_ComputeHash(const unsigned char* key, size_t keyLen, const unsigned char* payload, size_t payloadLen, BUFFER_HANDLE hash) { HMACSHA256_RESULT result; if (key == NULL || keyLen == 0 || payload == NULL || payloadLen == 0 || hash == NULL) { result = HMACSHA256_INVALID_ARG; } else { if ((BUFFER_enlarge(hash, 32) != 0) || (hmac(SHA256, payload, (int)payloadLen, key, (int)keyLen, BUFFER_u_char(hash) ) != 0)) { result = HMACSHA256_ERROR; } else { result = HMACSHA256_OK; } } return result; }