diff mbox series

[meta-oe] libndp: Fix build with gcc-14/musl

Message ID 20240518174859.2644879-1-raj.khem@gmail.com
State New
Headers show
Series [meta-oe] libndp: Fix build with gcc-14/musl | expand

Commit Message

Khem Raj May 18, 2024, 5:48 p.m. UTC
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 ...1-libndp-Fix-signature-of-sendto-API.patch | 40 +++++++++++++++++++
 .../recipes-connectivity/libndp/libndp_1.8.bb |  1 +
 2 files changed, 41 insertions(+)
 create mode 100644 meta-oe/recipes-connectivity/libndp/libndp/0001-libndp-Fix-signature-of-sendto-API.patch
diff mbox series

Patch

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
+
diff --git a/meta-oe/recipes-connectivity/libndp/libndp_1.8.bb b/meta-oe/recipes-connectivity/libndp/libndp_1.8.bb
index 4d4d3e51cd..80946317e4 100644
--- a/meta-oe/recipes-connectivity/libndp/libndp_1.8.bb
+++ b/meta-oe/recipes-connectivity/libndp/libndp_1.8.bb
@@ -4,6 +4,7 @@  LICENSE = "LGPL-2.1-only"
 LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
 
 SRC_URI = "git://github.com/jpirko/libndp;branch=master;protocol=https \
+           file://0001-libndp-Fix-signature-of-sendto-API.patch \
            "
 # tag for v1.8
 SRCREV = "009ce9cd9b950ffa1f4f94c9436027b936850d0c"