about summary refs log tree commit diff
path: root/sysdeps/unix/sysv/linux/cnd_timedwait.c
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/unix/sysv/linux/cnd_timedwait.c')
-rw-r--r--sysdeps/unix/sysv/linux/cnd_timedwait.c21
1 files changed, 14 insertions, 7 deletions
diff --git a/sysdeps/unix/sysv/linux/cnd_timedwait.c b/sysdeps/unix/sysv/linux/cnd_timedwait.c
index 1bd0e70f7d..0415c683f9 100644
--- a/sysdeps/unix/sysv/linux/cnd_timedwait.c
+++ b/sysdeps/unix/sysv/linux/cnd_timedwait.c
@@ -17,11 +17,12 @@
    <https://www.gnu.org/licenses/>.  */
 
 #include <time.h>
+#include <shlib-compat.h>
 #include "thrd_priv.h"
 
 int
-__cnd_timedwait64 (cnd_t *restrict cond, mtx_t *restrict mutex,
-                   const struct __timespec64 *restrict time_point)
+___cnd_timedwait64 (cnd_t *restrict cond, mtx_t *restrict mutex,
+                    const struct __timespec64 *restrict time_point)
 {
   int err_code = __pthread_cond_timedwait64 ((pthread_cond_t *) cond,
                                              (pthread_mutex_t *) mutex,
@@ -29,16 +30,22 @@ __cnd_timedwait64 (cnd_t *restrict cond, mtx_t *restrict mutex,
   return thrd_err_map (err_code);
 }
 
-#if __TIMESIZE != 64
-libpthread_hidden_def (__cnd_timedwait64)
+#if __TIMESIZE == 64
+strong_alias (___cnd_timedwait64, ___cnd_timedwait)
+#else
+libc_hidden_ver (___cnd_timedwait64, __cnd_timedwait64)
 
 int
-__cnd_timedwait (cnd_t *restrict cond, mtx_t *restrict mutex,
-                 const struct timespec *restrict time_point)
+___cnd_timedwait (cnd_t *restrict cond, mtx_t *restrict mutex,
+                  const struct timespec *restrict time_point)
 {
   struct __timespec64 ts64 = valid_timespec_to_timespec64 (*time_point);
 
   return __cnd_timedwait64(cond, mutex, &ts64);
 }
+#endif /* __TIMESIZE == 64 */
+versioned_symbol (libc, ___cnd_timedwait, cnd_timedwait, GLIBC_2_34);
+
+#if OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_28, GLIBC_2_34)
+compat_symbol (libpthread, ___cnd_timedwait, cnd_timedwait, GLIBC_2_28);
 #endif
-weak_alias (__cnd_timedwait, cnd_timedwait)