From 0d5dafe9244e3f828e97d583e3a12956af90bbcd Mon Sep 17 00:00:00 2001 From: Martine Lenders Date: Mon, 5 Nov 2018 17:03:10 +0100 Subject: [PATCH 1/3] emb6_sock_udp: copy receive remote correctly The `src` member of `sock_udp_t` for `emb6` is a pointer, not a value, so it should not be referenced. This fixes the output issue encountered during the [2018.10 RC1 testing][RC1]. [RC1]: https://github.com/RIOT-OS/Release-Specs/issues/76#issuecomment-435924505 --- pkg/emb6/contrib/sock/udp/emb6_sock_udp.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkg/emb6/contrib/sock/udp/emb6_sock_udp.c b/pkg/emb6/contrib/sock/udp/emb6_sock_udp.c index 2bab9cfba1..9b8236fa09 100644 --- a/pkg/emb6/contrib/sock/udp/emb6_sock_udp.c +++ b/pkg/emb6/contrib/sock/udp/emb6_sock_udp.c @@ -187,7 +187,7 @@ int sock_udp_recv(sock_udp_t *sock, void *data, size_t max_len, if (remote != NULL) { remote->family = AF_INET6; remote->netif = SOCK_ADDR_ANY_NETIF; - memcpy(&remote->addr, &sock->recv_info.src, sizeof(ipv6_addr_t)); + memcpy(&remote->addr, sock->recv_info.src, sizeof(ipv6_addr_t)); remote->port = sock->recv_info.src_port; } res = (int)sock->recv_info.datalen; From 9e3ce7b5a79709d1fe99bf7cbb1ef96c1677475f Mon Sep 17 00:00:00 2001 From: Martine Lenders Date: Tue, 6 Nov 2018 10:00:47 +0100 Subject: [PATCH 2/3] emb6_sock_udp: fix typo in cppcheck suppression --- pkg/emb6/contrib/sock/udp/emb6_sock_udp.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkg/emb6/contrib/sock/udp/emb6_sock_udp.c b/pkg/emb6/contrib/sock/udp/emb6_sock_udp.c index 9b8236fa09..193e16010c 100644 --- a/pkg/emb6/contrib/sock/udp/emb6_sock_udp.c +++ b/pkg/emb6/contrib/sock/udp/emb6_sock_udp.c @@ -235,7 +235,7 @@ int sock_udp_send(sock_udp_t *sock, const void *data, size_t len, else if (sock->sock.udp_conn->rport == 0) { return -ENOTCONN; } - /* cppcheck-supress nullPointerRedundantCheck + /* cppcheck-suppress nullPointerRedundantCheck * remote == NULL implies that sock != NULL (see assert at start of * function) * that's why it is okay in the if-statement above to check * sock->... without checking (sock != NULL) first => this check afterwards From a077dc578270afc2c799bbc41fb4a1eef84c9c9e Mon Sep 17 00:00:00 2001 From: Martine Lenders Date: Tue, 6 Nov 2018 10:02:13 +0100 Subject: [PATCH 3/3] emb6_sock_udp: unify cppcheck-suppress reason with others --- pkg/emb6/contrib/sock/udp/emb6_sock_udp.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkg/emb6/contrib/sock/udp/emb6_sock_udp.c b/pkg/emb6/contrib/sock/udp/emb6_sock_udp.c index 193e16010c..433b1d813d 100644 --- a/pkg/emb6/contrib/sock/udp/emb6_sock_udp.c +++ b/pkg/emb6/contrib/sock/udp/emb6_sock_udp.c @@ -236,10 +236,10 @@ int sock_udp_send(sock_udp_t *sock, const void *data, size_t len, return -ENOTCONN; } /* cppcheck-suppress nullPointerRedundantCheck - * remote == NULL implies that sock != NULL (see assert at start of + * (reason: remote == NULL implies that sock != NULL (see assert at start of * function) * that's why it is okay in the if-statement above to check * sock->... without checking (sock != NULL) first => this check afterwards - * isn't redundant */ + * isn't redundant) */ if (sock == NULL) { int res; if ((res = _reg(&tmp, NULL, NULL, NULL, NULL)) < 0) {