This commit changes the contribution guidelines to refer the user to the
contribution guidelines in the Mbed TLS repo. It also removes the outdated references to the
CLA, and CLA not being required for trivial changes.
Signed-off-by: Simon Butcher <simon.butcher@arm.com>
Both Mbed TLS and Mbed Crypto libraries doesn't contain
`apache-2.0.txt` anymore. Do not access those files in the importer
script.
Signed-off-by: Devaraj Ranganna <devaraj.ranganna@arm.com>
Use tag dispatch to better handle both NetworkInterface and NetworkStack
pointers.
The previous design was intended to avoid ambiguities when presented
with a scenario like
class MyDevice : public NetworkInterface, public NetworkStack {
};
TCPSocket(&MyDevice);
// Need NetworkStack *: use NetworkInterface::get_stack or
// cast to NetworkStack?
But the previous solution didn't actually work as intended. The overload
pair
nsapi_create_stack(NetworkStack *);
// versus
template <class IF>
nsapi_create_stack(IF *);
would only select the first form if passed an exact match -
`NetworkStack *`. If passed a derived class pointer, like `MyDevice *`,
it would select the template.
This meant that an ambiguity for MyDevice was at least avoided, but
in the wrong direction, potentially increasing code size.
But in other cases, the system just didn't work at all - you couldn't
pass a `MyStack *` pointer, unless you cast it to `NetworkStack *`.
Quite a few bits of test code do this.
Add a small bit of tag dispatch to prioritise the cast whenever the
supplied pointer is convertible to `NetworkStack *`.
Define copy operators public and deleted rather declaring them private
and undefined. Will give immediate compilation errors rather than
delayed linking errors.
* Avoid undefined behaviour when copying/clearing `mbed_stats_socket_t`.
As it contains a `SocketAddress`, memset and memcpy should not be used.
* Avoid array overrun when `mbed_stats_socket_get_each` is passed a
count greater than `nsapi.socket-stats-max-count`.
* Remove `const` from internal `stats_new_socket_entry` method to avoid
const-losing cast.