As preadv and pwritev accept off_t type the prototypes should be declared as follows
extern ssize_t preadv (int __fd, const struct iovec *__iovec, int __count, off_t __offset) __wur; extern ssize_t pwritev (int __fd, const struct iovec *__iovec, int __count, off_t __offset) __wur; to take into account _FILE_OFFSET_BITS=64 define. I am not sure but probably it is better to redeclare these prototypes by analogy with sendfile using __REDIRECT_NTH.
From 12347ece4b48c81a1db80eec660fc7ec7c542c19 Mon Sep 17 00:00:00 2001 From: Vlad Starodubtsev <v.starodubt...@ndmsystems.com> Date: Thu, 26 Oct 2017 17:22:33 +0300 Subject: [PATCH] Fix prototypes for preadv pwritev. --- include/sys/uio.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/include/sys/uio.h b/include/sys/uio.h index 78341ed40..aa766f9b1 100644 --- a/include/sys/uio.h +++ b/include/sys/uio.h @@ -59,7 +59,7 @@ extern ssize_t writev (int __fd, const struct iovec *__iovec, int __count); This function is a cancellation point and therefore not marked with __THROW. */ extern ssize_t preadv (int __fd, const struct iovec *__iovec, int __count, - __off_t __offset) __wur; + off_t __offset) __wur; /* Write data pointed by the buffers described by IOVEC, which is a vector of COUNT 'struct iovec's, to file descriptor FD at the given @@ -71,7 +71,7 @@ extern ssize_t preadv (int __fd, const struct iovec *__iovec, int __count, This function is a cancellation point and therefore not marked with __THROW. */ extern ssize_t pwritev (int __fd, const struct iovec *__iovec, int __count, - __off_t __offset) __wur; + off_t __offset) __wur; #endif /* Use misc. */ __END_DECLS -- 2.17.1
_______________________________________________ devel mailing list devel@uclibc-ng.org https://mailman.uclibc-ng.org/cgi-bin/mailman/listinfo/devel