diff mbox series

[5/8] socket: Add time64 alias for recvmsg

Message ID af51eee9f66f99070894071ce58bb6d2a179faf8.1626708388.git.fweimer@redhat.com
State New
Headers show
Series Additional time64 system call wrappers | expand

Commit Message

Florian Weimer July 19, 2021, 3:28 p.m. UTC
---
 socket/sys/socket.h                                   | 11 +++++++++++
 sysdeps/unix/sysv/linux/Versions                      |  1 +
 sysdeps/unix/sysv/linux/arm/be/libc.abilist           |  1 +
 sysdeps/unix/sysv/linux/arm/le/libc.abilist           |  1 +
 sysdeps/unix/sysv/linux/csky/libc.abilist             |  1 +
 sysdeps/unix/sysv/linux/hppa/libc.abilist             |  1 +
 sysdeps/unix/sysv/linux/i386/libc.abilist             |  1 +
 sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist    |  1 +
 sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist      |  1 +
 sysdeps/unix/sysv/linux/microblaze/be/libc.abilist    |  1 +
 sysdeps/unix/sysv/linux/microblaze/le/libc.abilist    |  1 +
 sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist  |  1 +
 .../unix/sysv/linux/mips/mips32/nofpu/libc.abilist    |  1 +
 sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist  |  1 +
 sysdeps/unix/sysv/linux/nios2/libc.abilist            |  1 +
 .../sysv/linux/powerpc/powerpc32/fpu/libc.abilist     |  1 +
 .../sysv/linux/powerpc/powerpc32/nofpu/libc.abilist   |  1 +
 sysdeps/unix/sysv/linux/recvmsg.c                     |  3 +++
 sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist     |  1 +
 sysdeps/unix/sysv/linux/sh/be/libc.abilist            |  1 +
 sysdeps/unix/sysv/linux/sh/le/libc.abilist            |  1 +
 sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist    |  1 +
 22 files changed, 34 insertions(+)
diff mbox series

Patch

diff --git a/socket/sys/socket.h b/socket/sys/socket.h
index d02d976bb5..b70ba58ba6 100644
--- a/socket/sys/socket.h
+++ b/socket/sys/socket.h
@@ -200,7 +200,18 @@  extern int __sendmmsg64 (int __fd, struct mmsghdr *__vmessages,
 
    This function is a cancellation point and therefore not marked with
    __THROW.  */
+#ifndef __USE_TIME_BITS64
 extern ssize_t recvmsg (int __fd, struct msghdr *__message, int __flags);
+#else
+# ifdef __REDIRECT
+extern ssize_t __REDIRECT (recvmsg,
+			   (int __fd, struct msghdr *__message, int __flags),
+			   __recvmsg64);
+# else
+extern ssize_t __recvmsg64 (int __fd, struct msghdr *__message, int __flags);
+#  define recvmsg __recvmsg64
+# endif
+#endif
 
 #ifdef __USE_GNU
 /* Receive up to VLEN messages as described by VMESSAGES from socket FD.
diff --git a/sysdeps/unix/sysv/linux/Versions b/sysdeps/unix/sysv/linux/Versions
index a8ec041371..8cc7d6ea15 100644
--- a/sysdeps/unix/sysv/linux/Versions
+++ b/sysdeps/unix/sysv/linux/Versions
@@ -259,6 +259,7 @@  libc {
     __pthread_rwlock_timedwrlock64;
     __pthread_timedjoin_np64;
     __recvmmsg64;
+    __recvmsg64;
     __sched_rr_get_interval64;
     __select64;
     __sem_clockwait64;
diff --git a/sysdeps/unix/sysv/linux/arm/be/libc.abilist b/sysdeps/unix/sysv/linux/arm/be/libc.abilist
index 740081f235..5966d4b869 100644
--- a/sysdeps/unix/sysv/linux/arm/be/libc.abilist
+++ b/sysdeps/unix/sysv/linux/arm/be/libc.abilist
@@ -260,6 +260,7 @@  GLIBC_2.34 __pthread_unregister_cancel F
 GLIBC_2.34 __pthread_unregister_cancel_restore F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 __recvmmsg64 F
+GLIBC_2.34 __recvmsg64 F
 GLIBC_2.34 __sched_rr_get_interval64 F
 GLIBC_2.34 __select64 F
 GLIBC_2.34 __sem_clockwait64 F
diff --git a/sysdeps/unix/sysv/linux/arm/le/libc.abilist b/sysdeps/unix/sysv/linux/arm/le/libc.abilist
index 55f17e1ee3..0ba0a7f031 100644
--- a/sysdeps/unix/sysv/linux/arm/le/libc.abilist
+++ b/sysdeps/unix/sysv/linux/arm/le/libc.abilist
@@ -257,6 +257,7 @@  GLIBC_2.34 __pthread_unregister_cancel F
 GLIBC_2.34 __pthread_unregister_cancel_restore F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 __recvmmsg64 F
+GLIBC_2.34 __recvmsg64 F
 GLIBC_2.34 __sched_rr_get_interval64 F
 GLIBC_2.34 __select64 F
 GLIBC_2.34 __sem_clockwait64 F
diff --git a/sysdeps/unix/sysv/linux/csky/libc.abilist b/sysdeps/unix/sysv/linux/csky/libc.abilist
index 610f59aad7..59b6af995f 100644
--- a/sysdeps/unix/sysv/linux/csky/libc.abilist
+++ b/sysdeps/unix/sysv/linux/csky/libc.abilist
@@ -2416,6 +2416,7 @@  GLIBC_2.34 __pthread_unregister_cancel F
 GLIBC_2.34 __pthread_unregister_cancel_restore F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 __recvmmsg64 F
+GLIBC_2.34 __recvmsg64 F
 GLIBC_2.34 __sched_rr_get_interval64 F
 GLIBC_2.34 __select64 F
 GLIBC_2.34 __sem_clockwait64 F
diff --git a/sysdeps/unix/sysv/linux/hppa/libc.abilist b/sysdeps/unix/sysv/linux/hppa/libc.abilist
index 3c6ce135e2..cf9f0372d0 100644
--- a/sysdeps/unix/sysv/linux/hppa/libc.abilist
+++ b/sysdeps/unix/sysv/linux/hppa/libc.abilist
@@ -2367,6 +2367,7 @@  GLIBC_2.34 __pthread_unregister_cancel F
 GLIBC_2.34 __pthread_unregister_cancel_restore F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 __recvmmsg64 F
+GLIBC_2.34 __recvmsg64 F
 GLIBC_2.34 __sched_rr_get_interval64 F
 GLIBC_2.34 __select64 F
 GLIBC_2.34 __sem_clockwait64 F
diff --git a/sysdeps/unix/sysv/linux/i386/libc.abilist b/sysdeps/unix/sysv/linux/i386/libc.abilist
index 2fae97c00c..e1b9ad8229 100644
--- a/sysdeps/unix/sysv/linux/i386/libc.abilist
+++ b/sysdeps/unix/sysv/linux/i386/libc.abilist
@@ -2551,6 +2551,7 @@  GLIBC_2.34 __pthread_unregister_cancel F
 GLIBC_2.34 __pthread_unregister_cancel_restore F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 __recvmmsg64 F
+GLIBC_2.34 __recvmsg64 F
 GLIBC_2.34 __sched_rr_get_interval64 F
 GLIBC_2.34 __select64 F
 GLIBC_2.34 __sem_clockwait64 F
diff --git a/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist
index c146c01b62..6c6e132c12 100644
--- a/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist
+++ b/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist
@@ -261,6 +261,7 @@  GLIBC_2.34 __pthread_unregister_cancel F
 GLIBC_2.34 __pthread_unregister_cancel_restore F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 __recvmmsg64 F
+GLIBC_2.34 __recvmsg64 F
 GLIBC_2.34 __sched_rr_get_interval64 F
 GLIBC_2.34 __select64 F
 GLIBC_2.34 __sem_clockwait64 F
diff --git a/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist b/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist
index dc23970913..4a5a31a54b 100644
--- a/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist
+++ b/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist
@@ -2494,6 +2494,7 @@  GLIBC_2.34 __pthread_unregister_cancel F
 GLIBC_2.34 __pthread_unregister_cancel_restore F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 __recvmmsg64 F
+GLIBC_2.34 __recvmsg64 F
 GLIBC_2.34 __sched_rr_get_interval64 F
 GLIBC_2.34 __select64 F
 GLIBC_2.34 __sem_clockwait64 F
diff --git a/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist b/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist
index 63b86f4613..638ee4d1d8 100644
--- a/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist
+++ b/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist
@@ -2467,6 +2467,7 @@  GLIBC_2.34 __pthread_unregister_cancel F
 GLIBC_2.34 __pthread_unregister_cancel_restore F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 __recvmmsg64 F
+GLIBC_2.34 __recvmsg64 F
 GLIBC_2.34 __sched_rr_get_interval64 F
 GLIBC_2.34 __select64 F
 GLIBC_2.34 __sem_clockwait64 F
diff --git a/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist b/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist
index 4f2811c869..d6b6c85f74 100644
--- a/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist
+++ b/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist
@@ -2464,6 +2464,7 @@  GLIBC_2.34 __pthread_unregister_cancel F
 GLIBC_2.34 __pthread_unregister_cancel_restore F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 __recvmmsg64 F
+GLIBC_2.34 __recvmsg64 F
 GLIBC_2.34 __sched_rr_get_interval64 F
 GLIBC_2.34 __select64 F
 GLIBC_2.34 __sem_clockwait64 F
diff --git a/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist
index b3491fd1db..8bab590546 100644
--- a/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist
+++ b/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist
@@ -2459,6 +2459,7 @@  GLIBC_2.34 __pthread_unregister_cancel F
 GLIBC_2.34 __pthread_unregister_cancel_restore F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 __recvmmsg64 F
+GLIBC_2.34 __recvmsg64 F
 GLIBC_2.34 __sched_rr_get_interval64 F
 GLIBC_2.34 __select64 F
 GLIBC_2.34 __sem_clockwait64 F
diff --git a/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist
index 7d56039df5..33cc242f26 100644
--- a/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist
+++ b/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist
@@ -2457,6 +2457,7 @@  GLIBC_2.34 __pthread_unregister_cancel F
 GLIBC_2.34 __pthread_unregister_cancel_restore F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 __recvmmsg64 F
+GLIBC_2.34 __recvmsg64 F
 GLIBC_2.34 __sched_rr_get_interval64 F
 GLIBC_2.34 __select64 F
 GLIBC_2.34 __sem_clockwait64 F
diff --git a/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist
index 0898b26a90..b8d2cceade 100644
--- a/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist
+++ b/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist
@@ -2465,6 +2465,7 @@  GLIBC_2.34 __pthread_unregister_cancel F
 GLIBC_2.34 __pthread_unregister_cancel_restore F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 __recvmmsg64 F
+GLIBC_2.34 __recvmsg64 F
 GLIBC_2.34 __sched_rr_get_interval64 F
 GLIBC_2.34 __select64 F
 GLIBC_2.34 __sem_clockwait64 F
diff --git a/sysdeps/unix/sysv/linux/nios2/libc.abilist b/sysdeps/unix/sysv/linux/nios2/libc.abilist
index 19b42df933..f99820e4ff 100644
--- a/sysdeps/unix/sysv/linux/nios2/libc.abilist
+++ b/sysdeps/unix/sysv/linux/nios2/libc.abilist
@@ -2506,6 +2506,7 @@  GLIBC_2.34 __pthread_unregister_cancel F
 GLIBC_2.34 __pthread_unregister_cancel_restore F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 __recvmmsg64 F
+GLIBC_2.34 __recvmsg64 F
 GLIBC_2.34 __sched_rr_get_interval64 F
 GLIBC_2.34 __select64 F
 GLIBC_2.34 __sem_clockwait64 F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist
index 09179d2a48..1e7837c971 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist
@@ -2521,6 +2521,7 @@  GLIBC_2.34 __pthread_unregister_cancel F
 GLIBC_2.34 __pthread_unregister_cancel_restore F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 __recvmmsg64 F
+GLIBC_2.34 __recvmsg64 F
 GLIBC_2.34 __sched_rr_get_interval64 F
 GLIBC_2.34 __select64 F
 GLIBC_2.34 __sem_clockwait64 F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist
index d45be8ab9e..de62b347b0 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist
@@ -2554,6 +2554,7 @@  GLIBC_2.34 __pthread_unregister_cancel F
 GLIBC_2.34 __pthread_unregister_cancel_restore F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 __recvmmsg64 F
+GLIBC_2.34 __recvmsg64 F
 GLIBC_2.34 __sched_rr_get_interval64 F
 GLIBC_2.34 __select64 F
 GLIBC_2.34 __sem_clockwait64 F
diff --git a/sysdeps/unix/sysv/linux/recvmsg.c b/sysdeps/unix/sysv/linux/recvmsg.c
index 57c3cf7e36..07212f7c86 100644
--- a/sysdeps/unix/sysv/linux/recvmsg.c
+++ b/sysdeps/unix/sysv/linux/recvmsg.c
@@ -43,3 +43,6 @@  __libc_recvmsg (int fd, struct msghdr *msg, int flags)
 }
 weak_alias (__libc_recvmsg, recvmsg)
 weak_alias (__libc_recvmsg, __recvmsg)
+#if __TIMESIZE != 64
+weak_alias (__recvmsg, __recvmsg64)
+#endif
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist b/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist
index c290ae4948..2f4b06e27c 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist
@@ -2519,6 +2519,7 @@  GLIBC_2.34 __pthread_unregister_cancel F
 GLIBC_2.34 __pthread_unregister_cancel_restore F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 __recvmmsg64 F
+GLIBC_2.34 __recvmsg64 F
 GLIBC_2.34 __sched_rr_get_interval64 F
 GLIBC_2.34 __select64 F
 GLIBC_2.34 __sem_clockwait64 F
diff --git a/sysdeps/unix/sysv/linux/sh/be/libc.abilist b/sysdeps/unix/sysv/linux/sh/be/libc.abilist
index 714f7d4f55..c01917dca8 100644
--- a/sysdeps/unix/sysv/linux/sh/be/libc.abilist
+++ b/sysdeps/unix/sysv/linux/sh/be/libc.abilist
@@ -2374,6 +2374,7 @@  GLIBC_2.34 __pthread_unregister_cancel F
 GLIBC_2.34 __pthread_unregister_cancel_restore F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 __recvmmsg64 F
+GLIBC_2.34 __recvmsg64 F
 GLIBC_2.34 __sched_rr_get_interval64 F
 GLIBC_2.34 __select64 F
 GLIBC_2.34 __sem_clockwait64 F
diff --git a/sysdeps/unix/sysv/linux/sh/le/libc.abilist b/sysdeps/unix/sysv/linux/sh/le/libc.abilist
index 9f858a4f68..d0449dc285 100644
--- a/sysdeps/unix/sysv/linux/sh/le/libc.abilist
+++ b/sysdeps/unix/sysv/linux/sh/le/libc.abilist
@@ -2371,6 +2371,7 @@  GLIBC_2.34 __pthread_unregister_cancel F
 GLIBC_2.34 __pthread_unregister_cancel_restore F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 __recvmmsg64 F
+GLIBC_2.34 __recvmsg64 F
 GLIBC_2.34 __sched_rr_get_interval64 F
 GLIBC_2.34 __select64 F
 GLIBC_2.34 __sem_clockwait64 F
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist b/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist
index 2420775e21..309ce62d75 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist
+++ b/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist
@@ -2514,6 +2514,7 @@  GLIBC_2.34 __pthread_unregister_cancel F
 GLIBC_2.34 __pthread_unregister_cancel_restore F
 GLIBC_2.34 __pthread_unwind_next F
 GLIBC_2.34 __recvmmsg64 F
+GLIBC_2.34 __recvmsg64 F
 GLIBC_2.34 __sched_rr_get_interval64 F
 GLIBC_2.34 __select64 F
 GLIBC_2.34 __sem_clockwait64 F