Skip to content

Releases: Azure/azure-iot-sdk-c

LTS_01_2021_Ref01

22 Jan 21:59
Compare
Choose a tag to compare

Package versions:

Apt/Debian:
azure-iot-sdk-c - 0.2.0.0-31xenial
azure-iot-sdk-c - 0.2.0.0-24bionic

VcPkg:
Port: azure-iot-sdk-c
Version: unreleased

Long-term support (LTS) release of Azure IoT C SDK, published on 01/2021.
For details about LTS branches, please see our documentation.

C Device SDK

  • Code version: 1.6.0
  • Updated string buffer size in unit test (PR #1825)
  • Addressed Y2K38 issue for SAS tokens (PR #1807)
  • Added OpenSSL engine support (PR #1798)
  • Added fix for device multiplexing in AMQP transport (#1797)
  • Added retry to device when SAS refreshes (#1794)
  • Fixed Return value ignored: 'snprintf' (#1780)

C Shared Utility

  • Fixed setDeviceId retry bug in wolfSSL (PR #500)
  • Updated unused parameter (PR #481)
  • Suppressed SIGPIPE error during debugging (PR #479)
  • Addressed Y2K38 issue for SAS tokens (PR #494)
  • Fixed errno.h inclusion (PR #485)
  • Added OpenSSL engine support (PR #492)

LTS_07_2020_Ref02

11 Dec 00:41
0528d52
Compare
Choose a tag to compare

Package versions:
Apt/Debian:
azure-iot-sdk-c - 0.2.0.0-29xenial
azure-iot-sdk-c - 0.2.0.0-22bionic

This release contains a security fix affecting applications using c-utility in conjunction with OpenSSL or WolfSSL.

Additional fixes:

C Device SDK

  • Code version: 1.4.1
  • Fix for memory leak in _GetTwinAsync (gh issue #1478)
  • Fix for memory leak if destroying device client right after sending Twin reported property update
  • Fix sending get twin requests only after the response topic suback is received (#1585)
  • Fix Heap Buffer Overflow when sending message with Property (#1618)
  • Fix for lack of throttling on registration request of DPS client
  • Fix mqtt disconnect bug (#1696)

C Shared Utility

  • [mbedtls] Adding support to send larger payload (#421)
  • [tlsio_mbedtls] Fix memory leak (#422, #475)
  • Fixing socket state when DNS resolution failed. (#437)
  • Fix potential buffer overflow in crypto library
  • Fix retry bug in tlsio_wolfssl
  • Add check for overflow for BUFFER_prepend (#467)
  • Sdl bug fix (#465)
  • Fix for using correct wolfssl api in httpapi (#471)
  • Add ecc support in httpapi_compact
  • Fix for #1624 iOS 14 send temeletry fix (#477)

LTS_02_2020_Ref02

11 Dec 00:13
900fd78
Compare
Choose a tag to compare

Package versions:
Apt/Debian:
azure-iot-sdk-c - 0.2.0.0-28xenial
azure-iot-sdk-c - 0.2.0.0-21bionic

This release contains a security fix affecting applications using c-utility in conjunction with OpenSSL or WolfSSL.

Additional fixes:

C Device SDK

  • Code version: 1.3.10
  • Fix for memory leak in _GetTwinAsync (gh issue #1478)
  • Fix for memory leak if destroying device client right after sending Twin reported property update
  • Fix sending get twin requests only after the response topic suback is received (#1585)
  • Fix Heap Buffer Overflow when sending message with Property (#1618)
  • Fix for lack of throttling on registration request of DPS client
  • Fix mqtt disconnect bug (#1696)

C Shared Utility

  • [mbedtls] Adding support to send larger payload (#421)
  • [tlsio_mbedtls] Fix memory leak (#422, #475)
  • Fixing socket state when DNS resolution failed. (#437)
  • Fix potential buffer overflow in crypto library
  • Fix retry bug in tlsio_wolfssl
  • Add check for overflow for BUFFER_prepend (#467)
  • Sdl bug fix (#465)
  • Fix for using correct wolfssl api in httpapi (#471)
  • Add ecc support in httpapi_compact
  • Fix for #1624 iOS 14 send temeletry fix (#477)

2020-12-09

11 Dec 00:02
f5da5a4
Compare
Choose a tag to compare

This release contains a security fix affecting applications using c-utility in conjunction with OpenSSL or WolfSSL.

Package versions:

Apt/Debian:
azure-iot-sdk-c - 0.2.0.0-23bionic
azure-iot-sdk-c - 0.2.0.0-30xenial

VcPkg:
Port: azure-iot-sdk-c
Version: 2020-12-09

Arduino:

IN PROGRESS

C Device SDK

  • Code version: 1.5.0
  • Removed ESP8266 sample
  • Added references for Embedded C SDK
  • Fixed lack of throttling on registration request of DPS client.
  • Turn on mqtt encode/decode option by default
  • Updated cross-compilation docs for Raspberry Pi 4 (gh #1093)
  • Added support for intermediate cert chains DPS X.509 flow
  • Exposed CreationTimeUtc for D2C message (#1568)
  • Included module E2E tests, both for x509 and also basic telemetry
  • Refactored and fixed bugs in MQTT common code
  • Fixed issue #1255: Disconnect without connection status callback called
  • Small fixes in code for stricter compiler options
  • Fixed samples vcproj files to load from correct vcpkg path
  • Updated cert gen script to exit on failure
  • Fixed mqtt transport disconnect bug
  • Fix issue #1698 and refactor multiblock blob upload code
  • Expanded sendHttpRequestMethod in iothub_client_edge.c to succeed on any 2xx response (#1231)
  • Fixed IoTHubMessage_SetProperty to discern out of memory issues (#1290)
  • Fixed Heap Buffer Overflow when sending message with Property (#1618)
  • Updated PnP preview string to 2020-09-30
  • Fixed min/max reporting for PnP samples
  • Added additional e2e tests for modules
  • Removed support for gcc 4.4 and gcc 4.6
  • Added general updates and fixes to documentation

C Shared Utility

  • Fixed OpenSSL and WolfSSL hostname validation. Removing ESP adapters. (PR #488)
  • Added check for kCFStreamStatusError on macos tlsio (PR #486)
  • Fixed for github issue #1624 iOS 14 send temeletry fix (PR #477)
  • Added ecc support in httpapi_compact
  • Fixed memory leak in tlsio mbedtls (PR #475)
  • Use correct wolfssl api in httpapi
  • Fixed wolfssl re-connection issue
  • Fixed retry bug in tlsio_wolfssl
  • Added check for overflow for BUFFER_prepend
  • Fixed bug in FormatMessage usage in tls layer
  • Removed support for gcc 4.4 and gcc 4.6
  • SDL bug fixes

C AMQP Library

  • Fixed potential double free of link endpoint by link.c
  • Removed support for gcc 4.4 and gcc 4.6

C MQTT Library

  • Added function for cleaning xio handle (for upper layer reconnection control)
  • Removed support for gcc 4.4 and gcc 4.6

LTS_07_2020_Ref01

21 Jul 21:45
Compare
Choose a tag to compare

Apt/Debian:
azure-iot-sdk-c - 0.2.0.0-27xenial
azure-iot-sdk-c - 0.2.0.0-20bionic
azure-iot-sdk-c - 0.2.0-27trusty

VcPkg:
Port: azure-iot-sdk-c
Version: 2020-07-19

C SDK code version: 1.3.9

Long-term support (LTS) release of Azure IoT C SDK, published on 07/2020.
For details about LTS branches, please see our documentation.

2020-07-19

20 Jul 18:53
Compare
Choose a tag to compare

Package versions:

Apt/Debian:
azure-iot-sdk-c - 0.2.0.0-27xenial
azure-iot-sdk-c - 0.2.0.0-20bionic
azure-iot-sdk-c - 0.2.0-27trusty

VcPkg:
Port: azure-iot-sdk-c
Version: 2020-07-19

Arduino:
azure-iot-arduino v1.3.9
azure-iot-arduino-protocol-mqtt v1.3.9
azure-iot-arduino-protocol-http v1.3.9
azure-iot-arduino-utility v1.3.9

C Device SDK

  • Code version: 1.3.9
  • Fixed potential NULL pointer dereferences
  • Updated MXChip build scripts
  • Update build scripts for new ESP sample
  • Fixed provisioning client retry after DNS failure
  • Added a maximum delay cap between re-connection attempts for iothub_client (retry policy)
  • Fixed possible buffer & arithmetic overflows
  • Fixed wrong include in prov_dev_client_sample & prov_dev_client_ll_sample
  • Fixed memory leak in iothub_ll_get_device_twin_async_callback not properly freeing queue_context
  • Fixed leaf cert extension when generating with openSSL
  • Reordered enum in iothub_client_core_common.h for backwards compatibility
  • Minor documentation updates
  • Add ModelID parameter to IoTHub Client (MQTT only)
  • Added/improved PnP Samples
  • Fixed for memory leak if destroying device client right after sending Twin reported property update
  • Fixed MQTT transport to send pending Get Twin requests only after the SUBACK is received (#1585)

C Shared Utility

  • Updated tickcounter_get_current_ms to return correct time ticks
  • Updated HTTPAPI_SetOption return value to enum
  • Updated tlsio options from BIT_NONE to BIT_TRUSTED_CERTS in tlsio_appleios.c
  • Fixed socket state when DNS resolution failed
  • Fixed various security bugs
  • Updated Raspberry Pi build scripts for new docker containers
  • Added proper handling of options retrieval in Http Proxy IO
  • Updated tlsio_openssl to send SNI on client hello

C AMQP Library

  • Fixed FLOW propagation for when endpoint links are detaching
  • Fixed security issue where allocated bytes were not zeroed out

LTS_02_2020_Ref01

07 Feb 17:37
Compare
Choose a tag to compare

Package versions:

Apt/Debian:
azure-iot-sdk-c - 0.2.0.0-26xenial
azure-iot-sdk-c - 0.2.0.0-19bionic
azure-iot-sdk-c - 0.2.0-26trusty

VcPkg:
Port: azure-iot-sdk-c
Version: 2020-02-04.1

C SDK code version: 1.3.8

Long-term support (LTS) release of Azure IoT C SDK, published on 02/2020.
For details about LTS branches, please see our documentation.

2020-01-22

03 Feb 18:50
Compare
Choose a tag to compare

Package versions:

Apt/Debian:
azure-iot-sdk-c - 0.2.0.0-25xenial
azure-iot-sdk-c - 0.2.0.0-18bionic
azure-iot-sdk-c - 0.2.0-25trusty

VcPkg:
Port: azure-iot-sdk-c
Version: 2020-01-22

C Device SDK

  • Code version: 1.3.8
  • Add missing include in azure_prov_client/prov_transport.h
  • Added documentation on how to use the SDK with the latest version of TLS only and specific cyphers
  • Added documentation explaining usage of low-layer (LL) vs convenience layers (threading_notes.md)
  • Marked iothub_client.h as deprecated (please use iothub_device_client.h instead)
  • Improved coverage of Arduino on gated builds
  • Updated setup_arduino_libraries.sh to clone azure-iot-pal-arduino from correct branch
  • Fixed sample dockerfile in cross-compilation documentation (Docker_SDK_Cross_Compile.md)
  • Fixed documentation issues.

2019-12-11

12 Dec 17:36
Compare
Choose a tag to compare

Package versions:

Apt/Debian:
azure-iot-sdk-c - 0.2.0.0-24xenial
azure-iot-sdk-c - 0.2.0.0-17bionic
azure-iot-sdk-c - 0.2.0-24trusty

VcPkg:
Port: azure-iot-sdk-c
Version: 2019-12-11 (pending merge)

C Device SDK

  • Code version: 1.3.7
  • Added fixes needed to support releasing new cocoapods packages
  • Fixed *_GetSendStatus in AMQP transport (github issue #1039)
  • Fixed correlation id in body for upload to blob (github issue #1310)
  • Added fix to include corresponding provisioning tools according to build options.
  • Added documentation for how to configure XIO read buffer size.
  • Updated references in documentation from Device Explorer (deprecated) to Azure IoT Explorer.

C Shared Utility

  • Added support for sending larger payload when using mbedtls
  • Added control to force-close when tlsio_mbed is in Error state
  • Fixed SEGFAULT errors introduced by dns_resolver in socketio
  • Added capability to print executable file name with ETW logging
  • Added socket_async_os.h to ios pal layer
  • Fixed OptionHandler_AddOption result check in tlsio_wolfssl.c, use MU_DEFINE_ENUM_WITHOUT_INVALID in OptionHandler

LTS_07_2019_Ref01

21 Oct 21:10
356b45a
Compare
Choose a tag to compare

This release is a refresh of the latest LTS branch (lts_07_2019) with select security fixes.

Package versions:

Apt/Debian:
Not released

VcPkg:
Port: azure-iot-sdk-c
Version: 2019-07-01-LTS-1

C Device SDK

  • Always delete xio in MQTT cleanup (Port of 4ac2326)
  • Fix segfault in the function message_queue_move_all_back_to_pending at message_sender.c and add UT for it. (port of 4ac2326)
  • Mqtt twin timeout cleanup (#1234) (port of eec5e3a)

C Shared Utility