diff options
Diffstat (limited to 'meta-oe/recipes-connectivity/libndp/libndp/0001-libndp-Fix-signature-of-sendto-API.patch')
-rw-r--r-- | meta-oe/recipes-connectivity/libndp/libndp/0001-libndp-Fix-signature-of-sendto-API.patch | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/meta-oe/recipes-connectivity/libndp/libndp/0001-libndp-Fix-signature-of-sendto-API.patch b/meta-oe/recipes-connectivity/libndp/libndp/0001-libndp-Fix-signature-of-sendto-API.patch new file mode 100644 index 0000000000..f625416acf --- /dev/null +++ b/meta-oe/recipes-connectivity/libndp/libndp/0001-libndp-Fix-signature-of-sendto-API.patch @@ -0,0 +1,40 @@ +From 14e036b5daf6b72483a1a21054b5133acabceabe Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Fri, 17 May 2024 18:14:04 -0700 +Subject: [PATCH] libndp: Fix signature of sendto API + +This fixes build with musl/gcc-14 + +| ../../git/libndp/libndp.c: In function 'mysendto6': +| ../../git/libndp/libndp.c:212:50: error: passing argument 5 of 'sendto' from incompatible pointer type [-Wincompatible-pointer-types] +| 212 | ret = sendto(sockfd, buf, buflen, flags, &sin6, sizeof(sin6)); +| | ^~~~~ +| | | +| | struct sockaddr_in6 * +| In file included from ../../git/libndp/libndp.c:27: +| /mnt/b/yoe/master/build/tmp/work/core2-64-yoe-linux-musl/libndp/1.8/recipe-sysroot/usr/include/sys/socket.h:396:49: note: expected 'const struct sockaddr *' but argument is of type 'struct sockaddr_in6 *' +| 396 | ssize_t sendto (int, const void *, size_t, int, const struct sockaddr *, socklen_t); +| | ^~~~~~~~~~~~~~~~~~~~~~~ + +Upstream-Status: Submitted [Sent to maintainer] +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + libndp/libndp.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/libndp/libndp.c b/libndp/libndp.c +index 6314717..056df0f 100644 +--- a/libndp/libndp.c ++++ b/libndp/libndp.c +@@ -209,7 +209,7 @@ static int mysendto6(int sockfd, void *buf, size_t buflen, int flags, + memcpy(&sin6.sin6_addr, addr, sizeof(sin6.sin6_addr)); + sin6.sin6_scope_id = ifindex; + resend: +- ret = sendto(sockfd, buf, buflen, flags, &sin6, sizeof(sin6)); ++ ret = sendto(sockfd, buf, buflen, flags, (struct sockaddr*)&sin6, sizeof(sin6)); + if (ret == -1) { + switch(errno) { + case EINTR: +-- +2.45.1 + |