* fix for safemath header conflict when cross compiling
* update amqp submodule for safe math
---------
Co-authored-by: Ewerton Scaboro da Silva <ewertons@microsoft.com>
* Disable upload to blob tests in C gates
This is a temporary measure until we set up the gates to workaround the guidance to disable azure storage SAS token authorization.
To reverse these changes:
In azure-iot-sdk-c/build:
sed -i "s/--no_uploadtoblob //g" .vsts-ci.yml
In azure-iot-sdk-c/jenkins:
grep -l run-e2e-tests *.sh | xargs sed -i "s/--no_uploadtoblob //g"
grep -l run-e2e-tests *.cmd | xargs sed -i "s/--no-uploadtoblob //g"
* Add guard in iothubclientcore_ut for DONT_USE_UPLOADTOBLOB
* Disable u2b tests in linux_openssl_engine.sh
* Fix arg-uploadtoblob label in build.cmd
* Disable upload to blob in remaining builds
* Fix more unit tests disabling u2b
* Fix iothubclientcore_ut.c
* Add new openssl valgrind exceptions
There are instances where a message will be destroyed at the iothubtransport amqp messeger layer,
but be still in flight at the messagesender (uamqp) layer, running at the risk of messagesender
invoking the send complete callback and resulting in a memory read error over an address previously
freed. Using the async operation feature of uamqp adds an extra layer of safety to cancel the
existing send operation, preventing the callback to be fired improperly.
* Update LTS release example in readme to reflect current release process
* Update readme.md
Co-authored-by: Raul Leclair <raulleclair@microsoft.com>
* Moot commit to trigger build
---------
Co-authored-by: Raul Leclair <raulleclair@microsoft.com>
IOTHUB_CLIENT_CONFIRMATION_RESULT is not defined in the iothubclient_http_e2e.c,
causing MU_ENUM_TO_STRING to return NULL and strlen (stack below) to SEGFAULT,
since as per spec NULL arg to strlen has undefined behavior (thus assume the worst).
2024-02-21T22:23:23.0396823Z 240: ==9665== Process terminating with default action of signal 11 (SIGSEGV)
2024-02-21T22:23:23.0397379Z 240: ==9665== Access not within mapped region at address 0x3
2024-02-21T22:23:23.0398384Z 240: ==9665== at 0x48507D6: strlen (in /usr/lib/x86_64-linux-gnu/valgrind/vgpreload_drd-amd64-linux.so)
2024-02-21T22:23:23.0399076Z 240: ==9665== by 0x4E5DD14: __vfprintf_internal (vfprintf-internal.c:1688)
2024-02-21T22:23:23.0399629Z 240: ==9665== by 0x4E70F99: __vsnprintf_internal (vsnprintf.c:114)
2024-02-21T22:23:23.0400154Z 240: ==9665== by 0x119C0F: ctest_vsprintf_char (ctest.c:502)
2024-02-21T22:23:23.0400660Z 240: ==9665== by 0x119CEF: ctest_sprintf_char (ctest.c:520)
2024-02-21T22:23:23.0401182Z 240: ==9665== by 0x116634: IoTHub_HTTP_SendEvent_Shared_e2e (iothubclient_http_e2e.c:707)
2024-02-21T22:23:23.0401907Z 240: ==9665== by 0x1191D0: RunTests (ctest.c:158)
2024-02-21T22:23:23.0402546Z 240: ==9665== by 0x1189F8: main (main.c:9)
* Partial changes to add a queue to iothub_messaging (only for longhaul, deprecated for publish use)
* Final changes to add a queue to iothub_messaging (only for longhaul, deprecated for publish use)
* Remove references to umock_c_negative_tests_get_call_description
* Address code review comments
* Fix build break
* Fix another build break
* Fix valgrind issue in iothub_messaging_ll.c
* Fix build break
The following callstack
amqpvalue_get_list_item_count (value=0x0, size=0x7fffffffda68) at uamqp/src/amqpvalue.c:1345
internal_on_event_send_complete_callback (context=0x55555627dd90, send_result=MESSAGE_SEND_ERROR, delivery_state=0x0)
at iothub_client/src/iothubtransport_amqp_telemetry_messenger.c:986
indicate_all_messages_as_error (message_sender=0x555555b60860) at uamqp/src/message_sender.c:701
messagesender_close (message_sender=0x555555b60860) at uamqp/src/message_sender.c:846
messagesender_destroy (message_sender=0x555555b60860) at uamqp/src/message_sender.c:795
destroy_event_sender (instance=0x5555556c74f0) at iothub_client/src/iothubtransport_amqp_telemetry_messenger.c:362
telemetry_messenger_stop (messenger_handle=0x5555556c74f0)
at iothub_client/src/iothubtransport_amqp_telemetry_messenger.c:1666
causes this error message:
Error: Time:Wed Jan 10 20:37:31 2024 File:/home/ewertons/code/s1/azure-iot-sdk-c/uamqp/src/amqpvalue.c Func:amqpvalue_get_list_item_count Line:1345 Bad arguments: value = (nil), size = 0x1ffefff968
Because indicate_all_messages_as_error passes NULL for `delivery_state`.
* Document that azure-iot-sdk-c does not currently support HTTPS proxy, only HTTP
* Update doc/Iothub_sdk_options.md
Co-authored-by: Eric Wolz <ericwol@microsoft.com>
* Update doc/Iothub_sdk_options.md
Co-authored-by: Eric Wolz <ericwol@microsoft.com>
---------
Co-authored-by: Eric Wolz <ericwol@microsoft.com>