aboutsummaryrefslogtreecommitdiffstats
path: root/meta-oe/recipes-connectivity/libndp/libndp/0001-libndp-Fix-signature-of-sendto-API.patch
diff options
context:
space:
mode:
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.patch40
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
+