From 76369501dab992fa4d5451c36b3cbd74896b97a1 Mon Sep 17 00:00:00 2001 From: Flavio Cruz Date: Mon, 24 Jun 2024 21:56:08 +0100 Subject: Fix issues with GCC 14. * ftpfts/ftpfs: use appropriate function signature for interrupt_check. * pfinet/Makefile: turn off warnings in Linux driver code that are now errors in GCC 14. * pfinet/glue-include/linux/socket.h: remove duplicate functions. These are implemented in linux-src/net/core/iovec.c. Message-ID: --- pfinet/Makefile | 5 +++++ pfinet/glue-include/linux/socket.h | 36 +++++------------------------------- 2 files changed, 10 insertions(+), 31 deletions(-) (limited to 'pfinet') diff --git a/pfinet/Makefile b/pfinet/Makefile index a210a113..22c3a171 100644 --- a/pfinet/Makefile +++ b/pfinet/Makefile @@ -144,6 +144,11 @@ socket-MIGSFLAGS = -imacros $(srcdir)/mig-mutate.h iioctl-MIGSFLAGS = -imacros $(srcdir)/mig-mutate.h rioctl-MIGSFLAGS = -imacros $(srcdir)/mig-mutate.h +LINUX_SRCS_WITH_ERRORS := af_inet6 tcp_ipv6 udp_ipv6 +LINUX_OBJS_WITH_ERRORS := $(addsuffix .o, $(LINUX_SRCS_WITH_ERRORS)) +# We are not fixing the current warnings in the Linux drivers. +$(LINUX_OBJS_WITH_ERRORS): CFLAGS += -Wno-error=incompatible-pointer-types + # cpp doesn't automatically make dependencies for -imacros dependencies. argh. io_S.h ioServer.c socket_S.h socketServer.c: mig-mutate.h $(OBJS): config.h diff --git a/pfinet/glue-include/linux/socket.h b/pfinet/glue-include/linux/socket.h index 87ddedc1..90861fde 100644 --- a/pfinet/glue-include/linux/socket.h +++ b/pfinet/glue-include/linux/socket.h @@ -107,38 +107,12 @@ struct ucred { gid_t gid; }; - -extern inline int /* Does not modify IOV. */ +int /* Does not modify IOV. */ memcpy_fromiovecend (unsigned char *kdata, struct iovec *iov, - int offset, int len) -{ - assert_backtrace (offset + len <= iov->iov_len); - memcpy (kdata, iov->iov_base + offset, len); - return 0; -} -extern inline int /* Modifies IOV to consume LEN bytes. */ -memcpy_fromiovec (unsigned char *kdata, struct iovec *iov, int len) -{ - assert_backtrace (len <= iov->iov_len); - memcpy (kdata, iov->iov_base, len); - iov->iov_base += len; - iov->iov_len -= len; - return 0; -} -extern inline void /* Modifies IOV to consume LEN bytes. */ -memcpy_tokerneliovec (struct iovec *iov, unsigned char *kdata, int len) -{ - assert_backtrace (len <= iov->iov_len); - memcpy (iov->iov_base, kdata, len); - iov->iov_base += len; - iov->iov_len -= len; -} -extern inline int /* Modifies IOV to consume LEN bytes. */ -memcpy_toiovec (struct iovec *iov, unsigned char *kdata, int len) -{ - memcpy_tokerneliovec (iov, kdata, len); - return 0; -} + int offset, int len); + +int /* Modifies IOV to consume LEN bytes. */ +memcpy_toiovec (struct iovec *iov, unsigned char *kdata, int len); extern int csum_partial_copy_fromiovecend(unsigned char *kdata, struct iovec *iov, -- cgit v1.2.3