Skip to content

Releases: Azure/azure-iot-sdk-c

2018-12-13

13 Dec 22:38
Compare
Choose a tag to compare

C Device SDK

  • Vcpkg cleanup (#767)
    • Add vcpkg setup instructions
    • Update docs
    • windowsce project removal and add vcpkg message in build failure warning
  • Initial upload to blob support for provisioning
  • Update certificate script to remove the password (#752)
  • Fix samples to link libraries in proper order
  • Fix issue when using e2e test with edge modules and not using provisioning client; there was an compiler failure
  • Fix for SLNativeRules defects
  • Adding DPS Symmetric Key ability to Iothub Provisioning client

Shared Utility

  • Add verification of trusted certs in memory to Windows
  • Support UNIX domain sockets in Windows RS5
  • Update token_string to fixed possible memory leak in failure case

2018-11-20

26 Nov 19:25
Compare
Choose a tag to compare

C Device SDK

  • Update SDK sample to prepare for vcpkg use
  • Remove WoSign certificate from the trusted cert
  • Update edge client unittests
  • Fixing github issue #688 dealing with ack msg timeout
  • Fixing bugs with having internal as a included directory
  • github issue #394
  • Update Azure Sphere patches changes for sdk
  • github issue #663 Remove CRLF from unittest file
  • Enable WolfSSL to send trusted certificate when running E2E tests
  • Fix custom hsm bug that caused invalid header
  • Update MQTT transport to be more efficient
  • github issue fix for http_proxy struct
  • Fix mqtt disconnect so it's triggered in DoWork
  • Fix handle passed to unsub device method function in client core LL

Shared Utility

  • Addressed CR comments for constbuffer_array
  • Reordered waiting_thread_count++ and unlock so that ++ happen under the lock, removed interlocked functions as all touches are now under the lock. Also fixed error checking in Condition_Init as it related to CreateEvent, which should be compared against NULL to detect a failure.
  • Update rules to decay to C99 if C11 is not there
  • Fix candidate for MBED size_t build failure
  • Add support for flexible arrays in refcount
  • Use stub for HTTP proxy when SocketIO isnt enabled

uMQTT

  • ACR Add _getTopicLevels to mqttmessage
  • Add extra error checking on incoming PUBLISH
  • Update mqtt_message to enable code sharing
  • Adding enhancements to the repo for size and memory concerns

2018-10-03

05 Oct 04:58
Compare
Choose a tag to compare

Versions

Nuget: 1.2.10
apt-get Xenial: 0.2.0.0-12xenial
apt-get Trusty: 0.2.0.0-12trusty
apt-get Bionic: 0.2.0.0-5bionic

C Device SDK

  • Implemented dps symmetric key feature
  • Bug fix for HTTP Error Status
  • #628 Fixed integer overflow with message timeouts
  • #639 Fixed incorrect comment
  • Updated parson
  • Fixed DPS includes issue

uMQTT

  • Fix %zu format identifier

uAMQP

  • Moved message cleanup to sender close

Shared Utility

  • Added new, simplified string tokenizer
  • Added tests for mbedtls
  • Added head method for http compact client
  • Added handling of custom headers on uws_client UPGRADE request
  • Added Websocket URL parser
  • (Azure/azure-c-shared-utility#187) support for building with VC++ 9.0
  • Fixed http compact cert no copy
  • Optimized Url Encoding
  • Updated mbed file to handle the failure from mbed
  • Added singlylinkedlist_add_head functionality
  • Fixed return value error found on iOS
  • Test improvements
  • Fixed const correctness in UUID_to_string
  • Fixed bug in cmake usePermissiveRulesForSamplesAndTests function to make more permissive

2018-09-11

11 Sep 22:54
Compare
Choose a tag to compare

Versions

Nuget: 1.2.9
apt-get Xenial: 0.2.0.0-11xenial
apt-get Trusty: 0.2.0.0-11trusty
apt-get Bionic: 0.2.0.0-4bionic

C Device SDK

  • Update security issue detailed in CVE-2018-8479
  • Fix twin subscription timing issue
  • Allow empty message to IoTHub in MQTT
  • Remove strcpy_s from code for different compilers
  • Enabled trusted certificates for service client messages
  • Issue github issue #607 Sending MQTT DISCONNECT Packet
  • Fixed Undefined allocation warnings
  • Fixing multiple issues discovered with clang static analyzer
  • Only enable curl_verbose if caller indicated
  • Fix Transient error bug in provisioning
  • Fix github issue #587: avoid new GCC 8.2 warning (s/strncpy/memcpy/)
  • Fix for DPS client throttling mechanism
  • Revert "Include header files outside the extern "C""
  • Handle error mapping for all cases
  • #564 DPS status not reflecting correct behavior
  • Removed IoTHubModuleClient_ModuleMethodResponse and assoc. LL function
  • Remove vestigal cmake options
  • Export protocol functions in dynamic build

uMQTT

  • Fix possible failure in PING
  • Issue #21 Compilation problem for mqtt_client.h in cpp

uAMQP

  • Add cast for %zu->%lu format conversion
  • Move indication of error'd messages in message_sender to work around bad consumers that would pull the rug from under message_sender
  • Include header files outside the extern "C" (fix for GitHub issue #577 in azure-iot-sdk-c)
  • Fix github issue #507 Unchecked values causing potentially uninitialized variables

Shared Utility

  • Fixed a potential bug with copying memory
  • Update dynamic build to have the correct name
  • New enum must come after existing
  • Add PRI_UUID print format specifier
  • Fixes for tls io modules
  • Save error code lest it be overwritten prior to log
  • Suppress warning C4244 for narrowing a wchar_t into a char
  • Rename UUID type to UUID_T to avoid collisions with Windows types
  • Add missing logging macro for non-Microsoft compilers

2018-07-11

13 Jul 02:57
Compare
Choose a tag to compare

Versions

Nuget: 1.2.8
Apt-get Xenial: 0.2.0.0-8xenial
Apt-get Trusty: 0.2.0-8trusty

C Device SDK

  • Added MethodInvoke to Modules
  • Added Modules support
  • Added Device Capabilities for Provisioning Service Client
  • Fixed warning suppressions for Ubuntu 18.04
  • Update Samples to use new Device Client module (renamed from iothub_client)
  • Added Connection and Messaging Reliability documentation
  • Fix to resend on http & mqtt DPS transient error
  • Added cleaner error messages and other minor fixes when using OpenSSL using VCPKG
  • Made explicit cast on agenttypesystem.c (Serializer) (github issue #556)
  • Moved OPTION_EVENT_SEND_TIMEOUT_SECS from amqp_common.h to client_options.h (github issue 552)
  • Fix powershell scripts for generation of Edge device certificates

uAMQP

  • Fixed AV when using multiple links and sessions with link redirect
  • Fixed Log chunk memory leak in message sender

Shared Utility

  • Updated wolfssl to not have an unprotected loop
  • Added Fix for Wolfssl updates

2018-06-15

20 Jun 17:56
Compare
Choose a tag to compare

Versions

Nuget: 1.2.5
Apt-get Xenial: 0.2.0.0-5xenial
Apt-get Trusty: 0.2.0-5trusty

C Device SDK

  • Added IoTHub_Init/DeInit to replace platform_init/deinit
  • Added Set/Get Property on Iothub Message
  • Reorganized iothub client headers into public and internal
  • Added iothub_client_device_twin_and_methods_sample to parse Twin without Serializer
  • Replaced Twin and Methods samples with iothub_client_device_twin_and_methods_sample
  • Allow externally defined heap functions (cmake flag GB_USE_CUSTOM_HEAP)
  • Moved IothubClient handle to IothubDeviceClient in e2e tests
  • Fix for Python GitHub issue #83: support Python 3.6 when building SDK
  • Fix E2E diagnostics to use portable string format (for 32/64 bit processors)
  • Update CACertificateOverview.md documentation to clarify proof of possession step
  • Update cmake to include installing parson when using installed components

uAMQP

  • Allow NULL source and target on link ATTACH frames that are received
  • Add missed set of DETACHING when a detach performative is received
  • Fix place for reading closed flag of detach frame
  • Add support for redirection
  • Allow externally defined custom heap functions

uMQTT

  • Allow externally defined custom heap functions

uHTTP

  • Add set_options() function
  • Allow externally defined custom heap functions
  • Made http headers case insensitive

uTPM

  • Added endpoint for tpm emulator
  • Allow externally defined custom heap functions

Shared Utility

  • Added unix domain sockets to socketio_berkeley (sys/un.h)
  • Added another flag to enable the clang build
  • Checking for NULL before closing CFReadStreamClose
  • Added detection of host closure on socket read
  • Allow use of externally defined custom heap functions

2018-05-04

07 May 18:07
Compare
Choose a tag to compare

Versions

Nuget: 1.2.4
Apt-get Xenial: 0.2.0.0-4xenial
Apt-get Trusty: 0.2.0-4trusty

C Device SDK

  • Update CMakeList.txt files to use multiple def files
  • Fixed Provisioning log trace
  • Add constrained device document detailing SDK
  • Adding Updated Third Party notice
  • cmake: Install parson library for upload to blob feature
  • If client is not connected (connecting times out) mqtt_client_dowork should not be called
  • Fixed CMakeLists to enforce C99

uAMQP

  • Fix amqp_definitions header not building properly in C++

uMQTT

  • Fixed segfault with variable that was not set to NULL

Shared Utility

  • Clear out variable structure
  • Move tlsio items to adapters
  • Openssl errors logged as errors, not info level

2018-04-13

16 Apr 23:14
Compare
Choose a tag to compare

Versions

Nuget: 1.2.3
Apt-get Xenial: 0.2.0.0-3xenial
Apt-get Trusty: 0.2.0-3trusty

C Device SDK

  • Added automatic URL Encode/Decode option for MQTT
  • Set telemetry as the default iOS sample
  • Fixed shared objects
  • Fixed build failures for samples on Windows with OpenSSL
  • Added Custom HSM example along with docs
  • Fixed mbed build

C Service SDK

  • Added support for iOS

Shared Utility

  • Added URLDecode and URLDecodeString functions
  • Fixed a memory leak in urlencode.h unittests

Documentation

  • Fixed broken links in Provisioning Service Client sample documentation

2018-04-02

03 Apr 20:45
Compare
Choose a tag to compare

Versions

Nuget: 1.2.2
Apt-get Xenial: 0.2.0.0-2xenial
Apt-get Trusty: 0.2.0-2trusty

C Device SDK

  • MQTT_WS http over proxy reconnection fix (GitHub #264)
  • Fix return value that was not being set in provisioning client
  • Turn the native e2e test on for osx
  • Fix the apt-get sample to work with new package
  • Improve/clean IoTHub Client samples
  • Add new iothub client sample for c2d (iothub_ll_c2d_sample)
  • Added OpenSSL compatibility for provisioning client samples
  • Fix upload to blob Visual Studio projects

Shared Utility

  • Set default WinHttp timeout to 60s
  • Remove unused httpap_wininet.c
  • Update apple fix for openssl
  • Fixed error handling issue in the xio wsio and the x509 layers
  • Fixed curl use of x509 function
  • Add missing functions to dlls .def file

Documentation

  • Update devbox setup doc with instructions for curl on MacOS
  • Fix codeblock in iothubtransport_amqp_common_requirements.md

2018-03-16

23 Mar 22:10
Compare
Choose a tag to compare

Versions

Nuget: 1.2.1
Apt-get Xenial: 0.2.0.0-1xenial
Apt-get Trusty: 0.2.0-1trusty

C Device SDK

  • Updating provisioning regex for cmake
  • Wrap definitions in extern "C" where it was missed (#410)
  • Define enum strings to save everyone else from needing to do so (#411)
  • Use strict XCode build rules
  • Update dps e2e tests
  • Add DPS service bulk operation & query

Shared Utility

  • Update wolfssl with device id
  • Ensure device Id doesn't run on mbed
  • Remove device for mbed builds
  • Make XCode warnings with CMake match iOS builds
  • fix xcode warning
  • Fix a double free in tlsio_appleios
  • Copy hostname and port from socketio to tlsio config

Documentation

  • Rewrite large parts of C SDK readme.md and fix broken links
  • Use lower case naming in certificate sample (#405)
  • Update support links with newest contact info

uMQTT

  • Add will message fix for conn messages
  • Use strict XCode build rules

uAQMP

  • Add LogError in link.c
  • Use strict XCode warnings
  • Add AMQP_MANAGEMENT_STATE_CLOSING; do not raise error on on_message_sender_state_changed for CLOSING/IDLE states", 2018-03-15)