-Added the baremetal.json on Tests directory to enable bare-metal
-Conditional enable of greentea metrics
Note:
Run green tea with bare metal
mbed test -m target -t GCC_ARM -n tests-mbed_platform-transaction --app-config TESTS/baremetal.json
This is related to https://github.com/ARMmbed/mbed-os/issues/11256
When TARGET_PSA is enabled on Cortex-A boards, the SECURE
is redeclared. So to minimize the impact we can redeclare this in
val.h which is used only by Mbed. And `security_t` itself is used in
mbed-os\components\TARGET_PSA\TESTS, but the SECURE string is not used.
Renamed to `caller_security_t` which aligns with
https://github.com/ARM-software/psa-arch-tests
Random initialization sequence is causing start up issues in multiple platform
when done at construction phase.
The right thing is to delay the random initialization to later stage when the
message id is actually required. This provides system to do all necessary allocation
upfront without causing any random race condition at startup phase.
By default CoAP will create a copy of the whole data to be passed to application and it keeps the backward compatibility.
If enabled, application must NOT free the payload when it gets the COAP_STATUS_PARSER_BLOCKWISE_MSG_RECEIVED status.
And application must call sn_coap_protocol_block_remove() instead.
- Reduce heap footprint by storing only single block when receiving a blockwise message.
* User is now responsible of freeing the data by calling sn_coap_protocol_block_remove() and must not free the payload separately.
- Bug fix: Request blockwise transfer if incoming payload length is too large and when it comes without block indication.
We'll use the new ARM-software/psa-arch-tests directly instead for PSA
Crypto API 1.0b3. This commit removes the crypto compliance tests only
for now, leaving attestation and storage tests.
- Store ACK's also into duplicate info list.
- ROM size optimization. Flash size has gone down ~1100 bytes.
**Closed issues:**
- IOTCLT-3592 - Client does not handle Duplicate ACK messages during blockwise registration correctly
- Add the no confidentiality & no replay protection flags
- Add actual size parameter in PS/ITS get APIs
- Change a few size parameters from uint32_t to size_t
Prevent compilation issues when someone has included <stdint.h> before
a header file that needs to include <ns_list.h>.
Some toolchains like ARM C 5 will not provide UINT_FAST8_MAX in C++
unless __STDC_LIMIT_MACROS is defined, and if this was not defined the
first time <stdint.h> was included, it's too late.
We can get the maximum value for our unsigned list offset by casting -1
to it, thanks to modulo arithmetic.
Make sn_coap_protocol_linked_list_duplication_info_remove API to public. User might want to delete some messages from the duplicate list.
Enable support for unified client configuration.
- Remove dependency to yotta tool
- Do not remove stored (GET) blockwise message when EMPTY ACK received. When non piggybacked response mode is used original GET request must not be removed from the stored message list.Message is needed for building the next (GET) blockwise message.
- Move definitions to sn_config.h
EMPTY response should not be stored to blockwise list.
An Empty message only contains the 4-byte header so it does not require any blockwise operations.
This will fix unneseccary message sending timeouts which leads mbed cloud client to do unnecessary
reconnections which increases the network traffic.
Currently there are two issues which prevent building Mbed OS with
-std=gnu++11 when using Arm Compiler 6:
* NanostackRfPhys2lp.cpp contains a narrowing conversion in a braced
initializer list
* ns_types.h includes <stdalign.h> which Arm Compiler 6 currently
does not provide
This patch fixes both issues. The first one is fixed by changing the
underlying type of the corresponding enumeration when the code is
compiled as C++11. The second issue is worked around by avoiding the
use of <stdalign.h> header for Arm Compiler versions prior to 6.12.
- Fix handling of duplicate blockwise ACK's
CoAP data buffer was not added into duplication info store when creating response for blockwise request.
This leads to case where whole bootstrap flow just timeouts if received any duplicate messages during blockwise operation.
Fixes error: IOTCLT-3188 - UDP connection fails for lost ACK sending
- Remove error trace when building reset message without options
This makes it possible to build the reset message without allocating option or getting error message.
mbed.h was added in test, via greentea and utest header files. 'mbed.h' is removed
from header files and required header file and namespace is added to CPP/C files
1. RTOS is needed only for Stack stats
Move+Add all required header files for RTOS into MBED_STACK_STATS_ENABLED
define. Also added 'using namespace'
2. Add heap stats only when MBED_HEAP_STATS_ENABLED
Add re-scan routine goto if message is caused user callback
This will fix hard fault when blockwise message sending timeouts. This happens cause same list is manipulated through rx callback.
Static Thread methods and signal methods have been deprecated. Remove
all references in the main code, and most of the tests. Some tests of
the deprecated APIs themselves remain.
- Add function that can be used to clear the received blockwise payloads for example in the case of a connection error.
- Silence compiler warning when CoAP duplicate detection is enabled.
- Bug fix: Remove timed out blockwise message from resend queue. If blockwise message was timed out message was still kept in the resend queue which causes unnecessary reconnections on client side.
- Documentation: Document all the available macros.
Do not clear block2 in subsequent block request.
When sending a request with block2 option, eg. indicating need
for response to be blockwised, copy the block2 option from the
sent_blockwise list item so that the block2 option will be added
to all requests. This fixes an issue where previously the block2
was only sent for the first blockwise request and not for the
subsequent ones, including the last request. This made the response
not follow the request block2 option.
Fixes error: IOTCLT-2900 - Blockwise handling leaking memory in some error cases
* Fix memory leak when clearing blockwise payload list
* Token was not freed from the list when closing down the library
Fix unused parameter - warning when blockwise is not used