Merged duplicated logic into the SocketAddress class. Based
on parallel work by @mkaleppanen and @kjbracey-arm.
Also added small ipv6 parsing fix by @mikaleppanen
For performing DNS resolution explicitly through the network-socket
user API.
This interface does not require implementation changes and can rely
entirely on the dns query library in the network-socket API.
**mbed-client-c**
[Full Changelog](https://github.com/ARMmbed/mbed-client-c/compare/v3.0.1...v3.0.2)
**New feature**
- Make resending flags configurable through Yotta and mbed-cli build systems
- Introducing Configuration management through Config file
**Closed issues:**
- IOTCLT-882 - Confirmable messages sending
**sal-stack-nanostack-eventloop**
[Full Changelog](https://github.com/ARMmbed/sal-stack-nanostack-eventloop/compare/mbed-os-5.0-rc1...mbed-os.5.2-rc1)
**New features**
- Move configuration parameter resolution to separate header and allow user definable configuration header to be used.
- Port eventloop system timer to use new tick timer functions platform_tick_timer_register, platform_tick_timer_start and platform_tick_timer_stop.
Provided through the config options added to the network interface:
- EthernetInterface::set_network(ip_address, netmask, gateway)
- EthernetInterface::set_dhcp(dhcp)
This accomplishes two things:
1. Provides a simple route for adding static IP address support to the
base NetworkInterface
2. Provides a simple route for adding configurability to network
interfaces and unifies the network interface to consistent connect
call, allowing network interfaces to be passed around abstractly
NetworkInterface
- set_network
- set_dhcp
WiFiInterface
- set_credentials
CellularInterface
- set_credentials
- Enhanced Debug Box
- Allow hw-specific ACL extensions per region
- Reduce background region rights to debugger and core
- Added Beetle SoC uVisor support
- MPU code restructured
**FEATURE_CLIENT**
Removing FEATURE_CLIENT from mbed-os source tree.
This commit removes FEATURE_CLIENT from mbed-os source tree
Applications using mbed-client now have to explicitly add
mbed-client.lib in addition to mbed-os.lib.
**mbed-client-c**
- [v3.0.1](https://github.com/ARMmbed/mbed-client-c/releases/tag/v3.0.1) (15-Sep-2016)
[Full Changelog](ARMmbed/mbed-client-c@mbed-os-5.0-rc1...v3.0.1)
**New features**
- Creates a new sn_nsdl_put_resource function, which takes ownership of sn_nsdl_resource_info_s resource object (not members) instead of creationg copy of it
- Rearranged struct member variable to pack better into memory
- Refactored coap_options_list to treat number members as numbers instead of strings
- Add option to pass incoming blocks to application instead storing them internally
- Added API for deleting one message from resending
**Closed issues:**
- IOTCLT-1001 - mDS does not sent RST anymore for Client after DELETE /subscriptions
**coap-service**
- [v4.0.3](https://github.com/ARMmbed/coap-service/releases/tag/v4.0.3) (15-Sep-2016)
[Full Changelog](ARMmbed/coap-service@mbed-os-5.0-rc1...v4.0.3)
**New features**
- Updated coap-service to use new structure from mbed-client-c
- Set link layer security when opening socket.
Update greentea to report thread information when a thread exits or
is terminated and when testing completes. Also move metrics into
a dedicated greentea file.
- flash-journal basicAPI fix for ARM toolchain
- Updated storage-abstraction with version 0.4.7
(commit c7c4a8c52298bbc006a6f53a059fb2599cad73cc).
- https://github.com/ARMmbed/storage-volume-manager at version v0.2.10.
- https://github.com/ARMmbed/mtd-k64f v0.4.2 version of flash.c (imported as storage_driver.c).
- update to CFSTORE to use the storage-volume-manager API to initialize volume manager and
add a volume for CFSTORE to use.
- https://github.com/ARMmbed/flash-journal at version v0.5.3
(commit 4c58165e2fa02c6ed2b9d166a9c96967e81f458f) including readFrom() support.
- Taking flash-journal-strategy-sequential v0.6.7 strategy.c
(commit b11a718761aa9f33679956968a21aaef9179bde1).
- GCC_ARM, ARM and IAR compiler warning fixes for new versions of flash-journal code.
- Fix storage-volume-manager test cases for concurrent access from 2 volumes to use
addresses within the 512-1024kB address range, which is within the cfstore added volume.
- Fix cfstore/storage-volume-manager IAR warnings when building with verbose flag.
PM will be used for SoftDevices s13x, otherwise DM will be used.
Fix - security key distribution settings - Signing is not supported.
declare usage of encryption LTK and IRK if boonding enabled
deleted unused local reference to nRF5xGap class in bleGattcEventHandler.
fix PM internal bug (For gcc with -0s optimization an application fail to save a boonding data)
fuse redeclaration of PACKED macro in nRF5 SDK sources
Build jobs are failing due build error "arm_hal_timer.cpp:50:5:
error: reference to 'callback' is ambiguous".
Fix the build error by renaming callback to arm_hal_callback to
avoid collision with callback defined in ./mbed-os/hal/api/Callback.h
- issue 17: Heap corruption.
- issue 23: Handles invalidated when realloc called.
- issue 24: cfstore_find returns error when "previous" parameter is NULL.
- issue 25: Memory leak when out of memory.
With respect to issues 17 and 23:
- A code defect existed for correctly updating cfstore_file_t data structures
under the following conditions:
-- the KV memory area contained some KV's.
-- cfstore calls realloc() to increase the size of the KV area in
memory because:
* A new KV was being added to the KV area, or
* the size of a pre-existing KV was being increased.
-- The returned address from realloc() has changed from before the
call (i.e. the location in memory of the KV area has changed)
e.g. the presence of heap memory objects directly above the KV memory
area in the memory address space causes realloc() to move the KV area
so the newly increased area can be accommodated at contiguous addresses.
-- In this scenario, the cfstore_file_t (structures for open files) head pointers
do not get correctly updated.
-- The defect was fixed by correctly updating the cfstore_file_t:: head pointer.
-- A new add_del test case was added to the scenario where a new KV is being added
to the KV area.
-- A new create test case was added to the scenario where the size of a
pre-existing KV is being increased in size.
- A code defect for suppling a NULL handle as the previous argument to the Find() method
(issue 24).
-- Supply a null handle is valid, but it was being used to check for a valid hkey,
which was incorrect.
-- A new test case was added to check the case of supplying a NULL previous argument
works correctly.
- A code defect for a memory leak under the following conditions (issue 25):
-- When realloc() fails to perform a requested change to the size of the KV area, the
error handling sometimes incorrectly sets cfstore_context_t::area_0_head to NULL.
Cfstore returns a suitable error to the client. If memory had previously been held
at area_0_head, realloc(area_0_head, size) returning NULL means the memory
at area_0_head is still retained.
-- On receiving the error code, the client cleans up including a call to Uninitialize().
This should free the retained but as area_0_head == NULL this is not possible. Hence
a memory leak occurred.
-- This was fixed by not setting area_0_head = NULL on the realloc() failure.
-- A create test case was modified to detect the leaking of memory in this way.
- Avoid a call to the protected method `get_stack()` which cause a build fail.
- Remove the constructor definition `TCPServer(NetworkStack *stack)`
because it has no implementation.
* provide missing member functions from control_t in base_control_t
* construction of control_t from reference of base_control_t instead of
value.
* overload operator+ for all permutations between control_t and
base_control_t.