y2038: Add support for 64-bit time on legacy ABIs

A new build flag, _TIME_BITS, enables the usage of the newer 64-bit
time symbols for legacy ABI (where 32-bit time_t is default).  The 64
bit time support is only enabled if LFS (_FILE_OFFSET_BITS=64) is
also used.

Different than LFS support, the y2038 symbols are added only for the
required ABIs (armhf, csky, hppa, i386, m68k, microblaze, mips32,
mips64-n32, nios2, powerpc32, sparc32, s390-32, and sh).  The ABIs with
64-bit time support are unchanged, both for symbol and types
redirection.

On Linux the full 64-bit time support requires a minimum of kernel
version v5.1.  Otherwise, the 32-bit fallbacks are used and might
results in error with overflow return code (EOVERFLOW).

The i686-gnu does not yet support 64-bit time.

This patch exports following rediretions to support 64-bit time:

  * libc:
    adjtime
    adjtimex
    clock_adjtime
    clock_getres
    clock_gettime
    clock_nanosleep
    clock_settime
    cnd_timedwait
    ctime
    ctime_r
    difftime
    fstat
    fstatat
    futimens
    futimes
    futimesat
    getitimer
    getrusage
    gettimeofday
    gmtime
    gmtime_r
    localtime
    localtime_r
    lstat_time
    lutimes
    mktime
    msgctl
    mtx_timedlock
    nanosleep
    nanosleep
    ntp_gettime
    ntp_gettimex
    ppoll
    pselec
    pselect
    pthread_clockjoin_np
    pthread_cond_clockwait
    pthread_cond_timedwait
    pthread_mutex_clocklock
    pthread_mutex_timedlock
    pthread_rwlock_clockrdlock
    pthread_rwlock_clockwrlock
    pthread_rwlock_timedrdlock
    pthread_rwlock_timedwrlock
    pthread_timedjoin_np
    recvmmsg
    sched_rr_get_interval
    select
    sem_clockwait
    semctl
    semtimedop
    sem_timedwait
    setitimer
    settimeofday
    shmctl
    sigtimedwait
    stat
    thrd_sleep
    time
    timegm
    timerfd_gettime
    timerfd_settime
    timespec_get
    utime
    utimensat
    utimes
    utimes
    wait3
    wait4

  * librt:
    aio_suspend
    mq_timedreceive
    mq_timedsend
    timer_gettime
    timer_settime

  * libanl:
    gai_suspend

Reviewed-by: Lukasz Majewski <lukma@denx.de>
Reviewed-by: Carlos O'Donell <carlos@redhat.com>
Tested-by: Carlos O'Donell <carlos@redhat.com>
This commit is contained in:
Adhemerval Zanella 2021-02-17 13:35:19 -03:00
parent 8af344feb5
commit 47f24c21ee
118 changed files with 2387 additions and 61 deletions

View File

@ -68,7 +68,7 @@ endif # $(AUTOCONF) = no
subdir_objs subdir_stubs subdir_testclean \
$(addprefix install-, no-libc.a bin lib data headers others)
headers := limits.h values.h features.h gnu-versions.h \
headers := limits.h values.h features.h features-time64.h gnu-versions.h \
bits/xopen_lim.h gnu/libc-version.h stdc-predef.h \
bits/libc-header-start.h

5
NEWS
View File

@ -34,6 +34,11 @@ Major new features:
* On powerpc64*, glibc can now be compiled without scv support using the
--disable-scv configure option.
* Add support for 64-bit time_t for ABIs with defaults to 32-bit time_t.
This is enabled with the _TIME_BITS preprocessor set to 64 and only
supported when LFS (_FILE_OFFSET_BITS=64) is also enabled. It is only
enabled for Linux and the full support requires a minimum version of 5.1.
Deprecated and removed features, and other changes affecting compatibility:
* The function pthread_mutex_consistent_np has been deprecated; programs

View File

@ -0,0 +1 @@
#include_next <features-time64.h>

View File

@ -389,6 +389,8 @@
# define __USE_FILE_OFFSET64 1
#endif
#include <features-time64.h>
#if defined _DEFAULT_SOURCE
# define __USE_MISC 1
#endif

View File

@ -66,6 +66,17 @@ extern int ppoll (struct pollfd *__fds, nfds_t __nfds,
const __sigset_t *__ss)
__attr_access ((__write_only__, 1, 2));
# ifdef __USE_TIME_BITS64
# ifdef __REDIRECT
extern int __REDIRECT (ppoll, (struct pollfd *__fds, nfds_t __nfds,
const struct timespec *__timeout,
const __sigset_t *__ss),
__ppoll64)
__attr_access ((__write_only__, 1, 2));
# else
# define ppoll __ppoll64
# endif
# endif
#endif
__END_DECLS

View File

@ -209,6 +209,20 @@ extern int stat (const char *__restrict __file,
that file descriptor FD is open on and put them in BUF. */
extern int fstat (int __fd, struct stat *__buf) __THROW __nonnull ((2));
#else
# ifdef __USE_TIME_BITS64
# ifdef __REDIRECT_NTH
extern int __REDIRECT_NTH (stat, (const char *__restrict __file,
struct stat *__restrict __buf),
__stat64_time64)
__nonnull ((1, 2));
extern int __REDIRECT_NTH (fstat, (int __fd, struct stat *__buf),
__fstat64_time64)
__nonnull ((2));
# else
# define stat __stat64_time64
# define fstat __fstat64_time64
# endif
# else
# ifdef __REDIRECT_NTH
extern int __REDIRECT_NTH (stat, (const char *__restrict __file,
struct stat *__restrict __buf), stat64)
@ -220,10 +234,26 @@ extern int __REDIRECT_NTH (fstat, (int __fd, struct stat *__buf), fstat64)
# define fstat fstat64
# endif
# endif
#endif
#ifdef __USE_LARGEFILE64
# ifndef __USE_TIME_BITS64
extern int stat64 (const char *__restrict __file,
struct stat64 *__restrict __buf) __THROW __nonnull ((1, 2));
extern int fstat64 (int __fd, struct stat64 *__buf) __THROW __nonnull ((2));
# else
# ifdef __REDIRECT_NTH
extern int __REDIRECT_NTH (stat64, (const char *__restrict __file,
struct stat64 *__restrict __buf),
__stat64_time64)
__nonnull ((1, 2));
extern int __REDIRECT_NTH (fstat64, (int __fd, struct stat64 *__buf),
__fstat64_time64)
__nonnull ((2));
# else
# define stat64 __stat64_time64
# define fstat64 __fstat64_time
# endif
# endif
#endif
#ifdef __USE_ATFILE
@ -235,6 +265,16 @@ extern int fstatat (int __fd, const char *__restrict __file,
struct stat *__restrict __buf, int __flag)
__THROW __nonnull ((2, 3));
# else
# ifdef __USE_TIME_BITS64
# ifdef __REDIRECT_NTH
extern int __REDIRECT_NTH (fstatat, (int __fd, const char *__restrict __file,
struct stat *__restrict __buf,
int __flag),
__fstatat64_time64) __nonnull ((2, 3));
# else
# define fstatat __fstatat64_time64
# endif
# else
# ifdef __REDIRECT_NTH
extern int __REDIRECT_NTH (fstatat, (int __fd, const char *__restrict __file,
struct stat *__restrict __buf,
@ -244,11 +284,25 @@ extern int __REDIRECT_NTH (fstatat, (int __fd, const char *__restrict __file,
# define fstatat fstatat64
# endif
# endif
# endif
# ifdef __USE_LARGEFILE64
# ifndef __USE_TIME_BITS64
extern int fstatat64 (int __fd, const char *__restrict __file,
struct stat64 *__restrict __buf, int __flag)
__THROW __nonnull ((2, 3));
# else
# ifdef __REDIRECT_NTH
extern int __REDIRECT_NTH (fstatat64, (int __fd,
const char *__restrict __file,
struct stat64 *__restrict __buf,
int __flag),
__fstatat64_time64)
__nonnull ((2, 3));
# else
# define fstatat64 __fstatat64_time64
# endif
# endif
# endif
#endif
@ -259,6 +313,16 @@ extern int fstatat64 (int __fd, const char *__restrict __file,
extern int lstat (const char *__restrict __file,
struct stat *__restrict __buf) __THROW __nonnull ((1, 2));
# else
# ifdef __USE_TIME_BITS64
# ifdef __REDIRECT_NTH
extern int __REDIRECT_NTH (lstat,
(const char *__restrict __file,
struct stat *__restrict __buf), __lstat64_time64)
__nonnull ((1, 2));
# else
# define lstat __lstat64_time64
# endif
# else
# ifdef __REDIRECT_NTH
extern int __REDIRECT_NTH (lstat,
(const char *__restrict __file,
@ -268,10 +332,18 @@ extern int __REDIRECT_NTH (lstat,
# define lstat lstat64
# endif
# endif
# endif
# ifdef __USE_LARGEFILE64
# ifndef __USE_TIME_BITS64
extern int lstat64 (const char *__restrict __file,
struct stat64 *__restrict __buf)
__THROW __nonnull ((1, 2));
# else
extern int __REDIRECT_NTH (lstat64, (const char *__restrict __file,
struct stat64 *__restrict __buf),
__lstat64_time64)
__nonnull ((1, 2));
# endif
# endif
#endif
@ -355,17 +427,38 @@ extern int mkfifoat (int __fd, const char *__path, __mode_t __mode)
#endif
#ifdef __USE_ATFILE
# ifndef __USE_TIME_BITS64
/* Set file access and modification times relative to directory file
descriptor. */
extern int utimensat (int __fd, const char *__path,
const struct timespec __times[2],
int __flags)
__THROW __nonnull ((2));
# else
# ifdef __REDIRECT_NTH
extern int __REDIRECT_NTH (utimensat, (int fd, const char *__path,
const struct timespec __times[2],
int flags),
__utimensat64) __nonnull ((2));
# else
# define utimensat __utimensat64
# endif
# endif
#endif
#ifdef __USE_XOPEN2K8
# ifndef __USE_TIME_BITS64
/* Set file access and modification times of the file associated with FD. */
extern int futimens (int __fd, const struct timespec __times[2]) __THROW;
# else
# ifdef __REDIRECT_NTH
extern int __REDIRECT_NTH (futimens, (int fd, const struct timespec __times[2]),
__futimens64);
# else
# define futimens __futimens64
# endif
# endif
#endif
#ifdef __USE_GNU

View File

@ -46,10 +46,21 @@ struct utimbuf
/* Set the access and modification times of FILE to those given in
*FILE_TIMES. If FILE_TIMES is NULL, set them to the current time. */
#ifndef __USE_TIME_BITS64
extern int utime (const char *__file,
const struct utimbuf *__file_times)
__THROW __nonnull ((1));
#else
# ifdef __REDIRECT_NTH
extern int __REDIRECT_NTH (utime, (const char *__file,
const struct utimbuf *__file_times),
__utime64);
# else
# define utime __utime64
# endif
#endif
__END_DECLS
#endif /* utime.h */

View File

@ -165,6 +165,50 @@ This macro was introduced as part of the Large File Support extension
(LFS).
@end defvr
@defvr Macro _TIME_BITS
This macro determines the bit size of @code{time_t} (and therefore the
bit size of all @code{time_t} derived types and the prototypes of all
related functions). If @code{_TIME_BITS} is undefined, the bit size of
@code{time_t} is architecture dependent.
Possible values of @code{_TIME_BITS}:
@enumerate
@item
@code{_TIME_BITS=64} and port from the outset uses 64-bit
@code{time_t} and word size equals to @w{64 bits} (e.g. x86_64) - no
action
@item
@code{_TIME_BITS=32} and port from the outset uses 32-bit
@code{time_t} and word size equals to @w{64 bits} (e.g. ARM) - no
action
@item
@code{_TIME_BITS=64} and port from the outset uses 64-bit
@code{time_t} and word size equals to @w{32 bits} (e.g. ARC, RV32)
- no action
@item
@code{_TIME_BITS=64} and port from the outset uses 32-bit
@code{time_t} and word size equals to @w{32 bits} (e.g. ARM)
- the @code{time_t} is modified to be able to hold 64-bit time.
@item
For any other use case the compile-time error is emitted.
@end enumerate
The @code{_TIME_BITS} can be only used when @code{_FILE_OFFSET_BITS=64}
is also defined.
For the point @b{4} above, calls to proper syscalls depend on the
Linux kernel version on which the system is running. For Linux kernel
version above @b{5.1} syscalls supporting 64-bit time are used. Otherwise,
a fallback code is used with legacy (i.e. 32-bit) syscalls.
By using this macro certain ports gain support for 64-bit time and as
a result become immune to Y2038 problem.
@end defvr
@defvr Macro _ISOC99_SOURCE
@standards{GNU, (none)}
If this macro is defined, features from ISO C99 are included. Since

View File

@ -98,10 +98,23 @@ __BEGIN_DECLS
This function is a cancellation point and therefore not marked with
__THROW. */
#ifndef __USE_TIME_BITS64
extern int select (int __nfds, fd_set *__restrict __readfds,
fd_set *__restrict __writefds,
fd_set *__restrict __exceptfds,
struct timeval *__restrict __timeout);
#else
# ifdef __REDIRECT
extern int __REDIRECT (select,
(int __nfds, fd_set *__restrict __readfds,
fd_set *__restrict __writefds,
fd_set *__restrict __exceptfds,
struct timeval *__restrict __timeout),
__select64);
# else
# define select __select64
# endif
#endif
#ifdef __USE_XOPEN2K
/* Same as above only that the TIMEOUT value is given with higher
@ -110,11 +123,25 @@ extern int select (int __nfds, fd_set *__restrict __readfds,
This function is a cancellation point and therefore not marked with
__THROW. */
# ifndef __USE_TIME_BITS64
extern int pselect (int __nfds, fd_set *__restrict __readfds,
fd_set *__restrict __writefds,
fd_set *__restrict __exceptfds,
const struct timespec *__restrict __timeout,
const __sigset_t *__restrict __sigmask);
# else
# ifdef __REDIRECT
extern int __REDIRECT (pselect,
(int __nfds, fd_set *__restrict __readfds,
fd_set *__restrict __writefds,
fd_set *__restrict __exceptfds,
const struct timespec *__restrict __timeout,
const __sigset_t *__restrict __sigmask),
__pselect64);
# else
# define pselect __pselect64
# endif
# endif
#endif

View File

@ -36,7 +36,8 @@ ___pthread_clockjoin_np64 (pthread_t threadid, void **thread_return,
#if __TIMESIZE == 64
strong_alias (___pthread_clockjoin_np64, ___pthread_clockjoin_np)
#else /* __TIMESPEC64 != 64 */
libc_hidden_ver (___pthread_clockjoin_np64, __pthread_clockjoin_np64)
strong_alias (___pthread_clockjoin_np64, __pthread_clockjoin_np64)
libc_hidden_def (__pthread_clockjoin_np64)
int
___pthread_clockjoin_np (pthread_t threadid, void **thread_return,

View File

@ -647,10 +647,8 @@ ___pthread_cond_timedwait64 (pthread_cond_t *cond, pthread_mutex_t *mutex,
#if __TIMESIZE == 64
strong_alias (___pthread_cond_timedwait64, ___pthread_cond_timedwait)
#else
libc_hidden_ver (___pthread_cond_timedwait64, __pthread_cond_timedwait64)
#ifndef SHARED
strong_alias (___pthread_cond_timedwait64, __pthread_cond_timedwait64)
#endif
libc_hidden_def (__pthread_cond_timedwait64)
int
___pthread_cond_timedwait (pthread_cond_t *cond, pthread_mutex_t *mutex,
@ -688,9 +686,8 @@ ___pthread_cond_clockwait64 (pthread_cond_t *cond, pthread_mutex_t *mutex,
#if __TIMESIZE == 64
strong_alias (___pthread_cond_clockwait64, ___pthread_cond_clockwait)
#else
versioned_symbol (libc, ___pthread_cond_clockwait64,
__pthread_cond_clockwait64, GLIBC_PRIVATE);
libc_hidden_ver (___pthread_cond_clockwait64, __pthread_cond_clockwait64)
strong_alias (___pthread_cond_clockwait64, __pthread_cond_clockwait64);
libc_hidden_def (__pthread_cond_clockwait64)
int
___pthread_cond_clockwait (pthread_cond_t *cond, pthread_mutex_t *mutex,

View File

@ -585,7 +585,8 @@ ___pthread_mutex_clocklock64 (pthread_mutex_t *mutex,
#if __TIMESIZE == 64
strong_alias (___pthread_mutex_clocklock64, ___pthread_mutex_clocklock)
#else /* __TIMESPEC64 != 64 */
libc_hidden_ver (___pthread_mutex_clocklock64, __pthread_mutex_clocklock64)
strong_alias (___pthread_mutex_clocklock64, __pthread_mutex_clocklock64)
libc_hidden_def (__pthread_mutex_clocklock64)
int
___pthread_mutex_clocklock (pthread_mutex_t *mutex,
@ -618,9 +619,8 @@ ___pthread_mutex_timedlock64 (pthread_mutex_t *mutex,
#if __TIMESIZE == 64
strong_alias (___pthread_mutex_timedlock64, ___pthread_mutex_timedlock)
#else /* __TIMESPEC64 != 64 */
versioned_symbol (libc, ___pthread_mutex_timedlock64,
__pthread_mutex_timedlock64, GLIBC_PRIVATE);
libc_hidden_ver (___pthread_mutex_timedlock64, __pthread_mutex_timedlock64)
strong_alias (___pthread_mutex_timedlock64, __pthread_mutex_timedlock64);
libc_hidden_def (__pthread_mutex_timedlock64)
int
___pthread_mutex_timedlock (pthread_mutex_t *mutex,

View File

@ -31,8 +31,8 @@ ___pthread_rwlock_clockrdlock64 (pthread_rwlock_t *rwlock, clockid_t clockid,
#if __TIMESIZE == 64
strong_alias (___pthread_rwlock_clockrdlock64, ___pthread_rwlock_clockrdlock)
#else /* __TIMESPEC64 != 64 */
libc_hidden_ver (___pthread_rwlock_clockrdlock64,
__pthread_rwlock_clockrdlock64)
strong_alias (___pthread_rwlock_clockrdlock64, __pthread_rwlock_clockrdlock64)
libc_hidden_def (__pthread_rwlock_clockrdlock64)
int
___pthread_rwlock_clockrdlock (pthread_rwlock_t *rwlock, clockid_t clockid,

View File

@ -31,8 +31,8 @@ ___pthread_rwlock_clockwrlock64 (pthread_rwlock_t *rwlock, clockid_t clockid,
#if __TIMESIZE == 64
strong_alias (___pthread_rwlock_clockwrlock64, ___pthread_rwlock_clockwrlock)
#else /* __TIMESPEC64 != 64 */
libc_hidden_ver (___pthread_rwlock_clockwrlock64,
__pthread_rwlock_clockwrlock64)
strong_alias (___pthread_rwlock_clockwrlock64, __pthread_rwlock_clockwrlock64)
libc_hidden_def (__pthread_rwlock_clockwrlock64)
int
___pthread_rwlock_clockwrlock (pthread_rwlock_t *rwlock, clockid_t clockid,

View File

@ -30,8 +30,8 @@ ___pthread_rwlock_timedrdlock64 (pthread_rwlock_t *rwlock,
#if __TIMESIZE == 64
strong_alias (___pthread_rwlock_timedrdlock64, ___pthread_rwlock_timedrdlock)
#else /* __TIMESPEC64 != 64 */
libc_hidden_ver (___pthread_rwlock_timedrdlock64,
__pthread_rwlock_timedrdlock64)
strong_alias (___pthread_rwlock_timedrdlock64, __pthread_rwlock_timedrdlock64)
libc_hidden_def (__pthread_rwlock_timedrdlock64)
int
___pthread_rwlock_timedrdlock (pthread_rwlock_t *rwlock,

View File

@ -30,8 +30,8 @@ ___pthread_rwlock_timedwrlock64 (pthread_rwlock_t *rwlock,
#if __TIMESIZE == 64
strong_alias (___pthread_rwlock_timedwrlock64, ___pthread_rwlock_timedwrlock)
#else /* __TIMESPEC64 != 64 */
libc_hidden_ver (___pthread_rwlock_timedwrlock64,
__pthread_rwlock_timedwrlock64)
strong_alias (___pthread_rwlock_timedwrlock64, __pthread_rwlock_timedwrlock64)
libc_hidden_def (__pthread_rwlock_timedwrlock64)
int
___pthread_rwlock_timedwrlock (pthread_rwlock_t *rwlock,

View File

@ -31,7 +31,8 @@ ___pthread_timedjoin_np64 (pthread_t threadid, void **thread_return,
#if __TIMESIZE == 64
strong_alias (___pthread_timedjoin_np64, ___pthread_timedjoin_np)
#else /* __TIMESPEC64 != 64 */
libc_hidden_ver (___pthread_timedjoin_np64, __pthread_timedjoin_np64)
strong_alias (___pthread_timedjoin_np64, __pthread_timedjoin_np64)
libc_hidden_def (__pthread_timedjoin_np64)
int
___pthread_timedjoin_np (pthread_t threadid, void **thread_return,

View File

@ -49,7 +49,8 @@ ___sem_clockwait64 (sem_t *sem, clockid_t clockid,
#if __TIMESIZE == 64
strong_alias (___sem_clockwait64, ___sem_clockwait)
#else /* __TIMESPEC64 != 64 */
libc_hidden_ver (___sem_clockwait64, __sem_clockwait64)
strong_alias (___sem_clockwait64, __sem_clockwait64)
libc_hidden_def (__sem_clockwait64)
int
___sem_clockwait (sem_t *sem, clockid_t clockid, const struct timespec *abstime)

View File

@ -45,10 +45,8 @@ ___sem_timedwait64 (sem_t *sem, const struct __timespec64 *abstime)
#if __TIMESIZE == 64
strong_alias (___sem_timedwait64, ___sem_timedwait)
#else /* __TIMESPEC64 != 64 */
libc_hidden_ver (___sem_timedwait64, __sem_timedwait64)
#ifndef SHARED
strong_alias (___sem_timedwait64, __sem_timedwait64)
#endif
libc_hidden_def (__sem_timedwait64)
int
___sem_timedwait (sem_t *sem, const struct timespec *abstime)

View File

@ -74,8 +74,17 @@ extern int sched_get_priority_max (int __algorithm) __THROW;
extern int sched_get_priority_min (int __algorithm) __THROW;
/* Get the SCHED_RR interval for the named process. */
#ifndef __USE_TIME_BITS64
extern int sched_rr_get_interval (__pid_t __pid, struct timespec *__t) __THROW;
#else
# ifdef __REDIRECT_NTH
extern int __REDIRECT_NTH (sched_rr_get_interval,
(__pid_t __pid, struct timespec *__t),
__sched_rr_get_interval64);
# else
# define sched_rr_get_interval __sched_rr_get_interval64
# endif
#endif
#ifdef __USE_GNU
/* Access macros for `cpu_set'. */

View File

@ -144,14 +144,34 @@ struct rusage;
nil, store information about the child's resource usage there. If the
WUNTRACED bit is set in OPTIONS, return status for stopped children;
otherwise don't. */
# ifndef __USE_TIME_BITS64
extern __pid_t wait3 (int *__stat_loc, int __options,
struct rusage * __usage) __THROWNL;
# else
# ifdef __REDIRECT_NTHNL
extern __pid_t __REDIRECT_NTHNL (wait3, (int *__stat_loc, int __options,
struct rusage * __usage),
__wait3_time64);
# else
# define wait3 __wait3_time64
# endif
# endif
#endif
#ifdef __USE_MISC
# ifndef __USE_TIME_BITS64
/* PID is like waitpid. Other args are like wait3. */
extern __pid_t wait4 (__pid_t __pid, int *__stat_loc, int __options,
struct rusage *__usage) __THROWNL;
# else
# ifdef __REDIRECT_NTHNL
extern __pid_t __REDIRECT_NTHNL (wait4, (__pid_t __pid, int *__stat_loc,
int __options, struct rusage *__usage),
__wait4_time64);
# else
# define wait4 __wait4_time64
# endif
# endif
#endif /* Use misc. */

View File

@ -701,6 +701,17 @@ extern int getaddrinfo_a (int __mode, struct gaicb *__list[__restrict_arr],
extern int gai_suspend (const struct gaicb *const __list[], int __ent,
const struct timespec *__timeout);
# ifdef __USE_TIME_BITS64
# if defined(__REDIRECT)
extern int __REDIRECT (gai_suspend, (const struct gaicb *const __list[],
int __ent,
const struct timespec *__timeout),
__gai_suspend_time64);
# else
# define gai_suspend __gai_suspend_time64
# endif
# endif
/* Get the error status of the request REQ. */
extern int gai_error (struct gaicb *__req) __THROW;

View File

@ -88,6 +88,16 @@ extern int setrlimit64 (__rlimit_resource_t __resource,
and put it in *USAGE. Returns 0 for success, -1 for failure. */
extern int getrusage (__rusage_who_t __who, struct rusage *__usage) __THROW;
#ifdef __USE_TIME_BITS64
# if defined(__REDIRECT_NTH)
extern int __REDIRECT_NTH (getrusage, (__rusage_who_t __who,
struct rusage *__usage),
__getrusage64);
# else
# define getrusage __getrusage64
# endif
#endif
/* Return the highest priority of any process specified by WHICH and WHO
(see above); if WHO is zero, the current process, process group, or user
(as specified by WHO) is used. A lower priority number means higher

View File

@ -193,12 +193,17 @@ extern __ssize_t __REDIRECT_NTH (aio_return, (struct aiocb *__aiocbp),
extern int __REDIRECT_NTH (aio_cancel,
(int __fildes, struct aiocb *__aiocbp),
aio_cancel64);
# ifdef __USE_TIME_BITS64
extern int __REDIRECT_NTH (aio_suspend,
(const struct aiocb *const __list[], int __nent,
const struct timespec *__restrict __timeout),
__aio_suspend_time64) __nonnull ((1));
# else
extern int __REDIRECT_NTH (aio_suspend,
(const struct aiocb *const __list[], int __nent,
const struct timespec *__restrict __timeout),
aio_suspend64) __nonnull ((1));
# endif
extern int __REDIRECT_NTH (aio_fsync,
(int __operation, struct aiocb *__aiocbp),
aio_fsync64) __nonnull ((2));
@ -210,7 +215,11 @@ extern int __REDIRECT_NTH (aio_fsync,
# define aio_error aio_error64
# define aio_return aio_return64
# define aio_cancel aio_cancel64
# ifdef __USE_TIME_BITS64
# define aio_suspend __aio_suspend_time64
# else
# define aio_suspend aio_suspend64
# endif
# define aio_fsync aio_fsync64
# endif
#endif

View File

@ -71,6 +71,7 @@ extern int mq_send (mqd_t __mqdes, const char *__msg_ptr, size_t __msg_len,
unsigned int __msg_prio) __nonnull ((2));
#ifdef __USE_XOPEN2K
# ifndef __USE_TIME_BITS64
/* Receive the oldest from highest priority messages in message queue
MQDES, stop waiting if ABS_TIMEOUT expires. */
extern ssize_t mq_timedreceive (mqd_t __mqdes, char *__restrict __msg_ptr,
@ -85,6 +86,27 @@ extern int mq_timedsend (mqd_t __mqdes, const char *__msg_ptr,
size_t __msg_len, unsigned int __msg_prio,
const struct timespec *__abs_timeout)
__nonnull ((2, 5));
# else
# ifdef __REDIRECT
extern int __REDIRECT (mq_timedreceive, (mqd_t __mqdes,
char *__restrict __msg_ptr,
size_t __msg_len,
unsigned int *__restrict __msg_prio,
const struct timespec *__restrict __abs_timeout),
__mq_timedreceive_time64)
__nonnull ((2, 5));
extern int __REDIRECT (mq_timedsend, (mqd_t __mqdes,
const char *__msg_ptr, size_t __msg_len,
unsigned int __msg_prio,
const struct timespec *__abs_timeout),
__mq_timedsend_time64)
__nonnull ((2, 5));
# else
# define mq_timedreceive __mq_timedreceive_time64
# define mq_timedsend __mq_timedsend_time64
# endif
# endif
#endif
/* Define some inlines helping to catch common problems. */

View File

@ -269,10 +269,23 @@ extern int sigwaitinfo (const sigset_t *__restrict __set,
This function is a cancellation point and therefore not marked with
__THROW. */
# ifndef __USE_TIME_BITS64
extern int sigtimedwait (const sigset_t *__restrict __set,
siginfo_t *__restrict __info,
const struct timespec *__restrict __timeout)
__nonnull ((1));
# else
# ifdef __REDIRECT
extern int __REDIRECT (sigtimedwait,
(const sigset_t *__restrict __set,
siginfo_t *__restrict __info,
const struct timespec *__restrict __timeout),
__sigtimedwait64)
__nonnull ((1));
# else
# define sigtimedwait __sigtimedwait64
# endif
# endif
/* Send signal SIG to the process PID. Associate data in VAL with the
signal. */

View File

@ -196,9 +196,20 @@ extern ssize_t recvmsg (int __fd, struct msghdr *__message, int __flags);
This function is a cancellation point and therefore not marked with
__THROW. */
# ifndef __USE_TIME_BITS64
extern int recvmmsg (int __fd, struct mmsghdr *__vmessages,
unsigned int __vlen, int __flags,
struct timespec *__tmo);
# else
# ifdef __REDIRECT
extern int __REDIRECT (recvmmsg, (int __fd, struct mmsghdr *__vmessages,
unsigned int __vlen, int __flags,
struct timespec *__tmo),
__recvmmsg64);
# else
# define recvmmsg __recvmmsg64
# endif
# endif
#endif

View File

@ -0,0 +1,19 @@
/* Features part to handle 64-bit time_t support. Generic version.
Copyright (C) 2021 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
The GNU C Library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with the GNU C Library; if not, see
<https://www.gnu.org/licenses/>. */
/* The generic configuration only support _TIME_BITS=32. */

View File

@ -0,0 +1,3 @@
/* Header included by Versions to generate the 64-bit time_t compat symbols.
Legacy ABIs with default 32-bit time support define TIME64_NON_DEFAULT to
generate the 64-bit symbols. */

View File

@ -221,6 +221,7 @@ extern int pthread_join (pthread_t __th, void **__thread_return);
the thread in *THREAD_RETURN, if THREAD_RETURN is not NULL. */
extern int pthread_tryjoin_np (pthread_t __th, void **__thread_return) __THROW;
# ifndef __USE_TIME_BITS64
/* Make calling thread wait for termination of the thread TH, but only
until TIMEOUT. The exit status of the thread is stored in
*THREAD_RETURN, if THREAD_RETURN is not NULL.
@ -240,6 +241,23 @@ extern int pthread_timedjoin_np (pthread_t __th, void **__thread_return,
extern int pthread_clockjoin_np (pthread_t __th, void **__thread_return,
clockid_t __clockid,
const struct timespec *__abstime);
# else
# ifdef __REDIRECT
extern int __REDIRECT (pthread_timedjoin_np,
(pthread_t __th, void **__thread_return,
const struct timespec *__abstime),
__pthread_timedjoin_np64);
extern int __REDIRECT (pthread_clockjoin_np,
(pthread_t __th, void **__thread_return,
clockid_t __clockid,
const struct timespec *__abstime),
__pthread_clockjoin_np64);
# else
# define pthread_timedjoin_np __pthread_timedjoin_np64
# define pthread_clockjoin_np __pthread_clockjoin_np64
# endif
# endif
#endif
/* Indicate that the thread TH is never to be joined with PTHREAD_JOIN.
@ -776,16 +794,39 @@ extern int pthread_mutex_lock (pthread_mutex_t *__mutex)
#ifdef __USE_XOPEN2K
/* Wait until lock becomes available, or specified time passes. */
# ifndef __USE_TIME_BITS64
extern int pthread_mutex_timedlock (pthread_mutex_t *__restrict __mutex,
const struct timespec *__restrict
__abstime) __THROWNL __nonnull ((1, 2));
# else
# ifdef __REDIRECT_NTHNL
extern int __REDIRECT_NTHNL (pthread_mutex_timedlock,
(pthread_mutex_t *__restrict __mutex,
const struct timespec *__restrict __abstime),
__pthread_mutex_timedlock64) __nonnull ((1, 2));
# else
# define pthread_mutex_timedlock __pthread_mutex_timedlock64
# endif
# endif
#endif
#ifdef __USE_GNU
# ifndef __USE_TIME_BITS64
extern int pthread_mutex_clocklock (pthread_mutex_t *__restrict __mutex,
clockid_t __clockid,
const struct timespec *__restrict
__abstime) __THROWNL __nonnull ((1, 3));
# else
# ifdef __REDIRECT_NTHNL
extern int __REDIRECT_NTHNL (pthread_mutex_clocklock,
(pthread_mutex_t *__restrict __mutex,
clockid_t __clockid,
const struct timespec *__restrict __abstime),
__pthread_mutex_clocklock64) __nonnull ((1, 3));
# else
# define pthread_mutex_clocklock __pthread_mutex_clocklock64
# endif
# endif
#endif
/* Unlock a mutex. */
@ -939,16 +980,41 @@ extern int pthread_rwlock_tryrdlock (pthread_rwlock_t *__rwlock)
# ifdef __USE_XOPEN2K
/* Try to acquire read lock for RWLOCK or return after specfied time. */
# ifndef __USE_TIME_BITS64
extern int pthread_rwlock_timedrdlock (pthread_rwlock_t *__restrict __rwlock,
const struct timespec *__restrict
__abstime) __THROWNL __nonnull ((1, 2));
# else
# ifdef __REDIRECT_NTHNL
extern int __REDIRECT_NTHNL (pthread_rwlock_timedrdlock,
(pthread_rwlock_t *__restrict __rwlock,
const struct timespec *__restrict __abstime),
__pthread_rwlock_timedrdlock64)
__nonnull ((1, 2));
# else
# define pthread_rwlock_timedrdlock __pthread_rwlock_timedrdlock64
# endif
# endif
# endif
# ifdef __USE_GNU
# ifndef __USE_TIME_BITS64
extern int pthread_rwlock_clockrdlock (pthread_rwlock_t *__restrict __rwlock,
clockid_t __clockid,
const struct timespec *__restrict
__abstime) __THROWNL __nonnull ((1, 3));
# else
# ifdef __REDIRECT_NTHNL
extern int __REDIRECT_NTHNL (pthread_rwlock_clockrdlock,
(pthread_rwlock_t *__restrict __rwlock,
clockid_t __clockid,
const struct timespec *__restrict __abstime),
__pthread_rwlock_clockrdlock64)
__nonnull ((1, 3));
# else
# define pthread_rwlock_clockrdlock __pthread_rwlock_clockrdlock64
# endif
# endif
# endif
/* Acquire write lock for RWLOCK. */
@ -961,16 +1027,42 @@ extern int pthread_rwlock_trywrlock (pthread_rwlock_t *__rwlock)
# ifdef __USE_XOPEN2K
/* Try to acquire write lock for RWLOCK or return after specfied time. */
# ifndef __USE_TIME_BITS64
extern int pthread_rwlock_timedwrlock (pthread_rwlock_t *__restrict __rwlock,
const struct timespec *__restrict
__abstime) __THROWNL __nonnull ((1, 2));
# else
# ifdef __REDIRECT_NTHNL
extern int __REDIRECT_NTHNL (pthread_rwlock_timedwrlock,
(pthread_rwlock_t *__restrict __rwlock,
const struct timespec *__restrict __abstime),
__pthread_rwlock_timedwrlock64)
__nonnull ((1, 2));
# else
# define pthread_rwlock_timedwrlock __pthread_rwlock_timedwrlock64
# endif
# endif
# endif
# ifdef __USE_GNU
# ifndef __USE_TIME_BITS64
extern int pthread_rwlock_clockwrlock (pthread_rwlock_t *__restrict __rwlock,
clockid_t __clockid,
const struct timespec *__restrict
__abstime) __THROWNL __nonnull ((1, 3));
# else
# ifdef __REDIRECT_NTHNL
extern int __REDIRECT_NTHNL (pthread_rwlock_clockwrlock,
(pthread_rwlock_t *__restrict __rwlock,
clockid_t __clockid,
const struct timespec *__restrict __abstime),
__pthread_rwlock_clockwrlock64)
__nonnull ((1, 3));
# else
# define pthread_rwlock_clockwrlock __pthread_rwlock_clockwrlock64
# endif
# endif
# endif
/* Unlock RWLOCK. */
@ -1047,10 +1139,23 @@ extern int pthread_cond_wait (pthread_cond_t *__restrict __cond,
This function is a cancellation point and therefore not marked with
__THROW. */
# ifndef __USE_TIME_BITS64
extern int pthread_cond_timedwait (pthread_cond_t *__restrict __cond,
pthread_mutex_t *__restrict __mutex,
const struct timespec *__restrict __abstime)
__nonnull ((1, 2, 3));
# else
# ifdef __REDIRECT
extern int __REDIRECT (pthread_cond_timedwait,
(pthread_cond_t *__restrict __cond,
pthread_mutex_t *__restrict __mutex,
const struct timespec *__restrict __abstime),
__pthread_cond_timedwait64)
__nonnull ((1, 2, 3));
# else
# define pthread_cond_timedwait __pthread_cond_timedwait64
# endif
# endif
# ifdef __USE_GNU
/* Wait for condition variable COND to be signaled or broadcast until
@ -1060,11 +1165,25 @@ extern int pthread_cond_timedwait (pthread_cond_t *__restrict __cond,
This function is a cancellation point and therefore not marked with
__THROW. */
# ifndef __USE_TIME_BITS64
extern int pthread_cond_clockwait (pthread_cond_t *__restrict __cond,
pthread_mutex_t *__restrict __mutex,
__clockid_t __clock_id,
const struct timespec *__restrict __abstime)
__nonnull ((1, 2, 4));
# else
# ifdef __REDIRECT
extern int __REDIRECT (pthread_cond_clockwait,
(pthread_cond_t *__restrict __cond,
pthread_mutex_t *__restrict __mutex,
__clockid_t __clock_id,
const struct timespec *__restrict __abstime),
__pthread_cond_clockwait64)
__nonnull ((1, 2, 4));
# else
# define pthread_cond_clockwait __pthread_cond_clockwait64
# endif
# endif
# endif
/* Functions for handling condition variable attributes. */

View File

@ -59,16 +59,41 @@ extern int sem_wait (sem_t *__sem) __nonnull ((1));
This function is a cancellation point and therefore not marked with
__THROW. */
# ifndef __USE_TIME_BITS64
extern int sem_timedwait (sem_t *__restrict __sem,
const struct timespec *__restrict __abstime)
__nonnull ((1, 2));
# else
# ifdef __REDIRECT
extern int __REDIRECT (sem_timedwait,
(sem_t *__restrict __sem,
const struct timespec *__restrict __abstime),
__sem_timedwait64)
__nonnull ((1, 2));
# else
# define sem_timedwait __sem_timedwait64
# endif
# endif
#endif
#ifdef __USE_GNU
# ifndef __USE_TIME_BITS64
extern int sem_clockwait (sem_t *__restrict __sem,
clockid_t clock,
const struct timespec *__restrict __abstime)
__nonnull ((1, 3));
# else
# ifdef __REDIRECT
extern int __REDIRECT (sem_clockwait,
(sem_t *__restrict __sem,
clockid_t clock,
const struct timespec *__restrict __abstime),
__sem_clockwait64)
__nonnull ((1, 3));
# else
# define sem_clockwait __sem_clockwait64
# endif
# endif
#endif
/* Test whether SEM is posted. */

View File

@ -88,8 +88,18 @@ extern thrd_t thrd_current (void);
__TIME_POINT. The current thread may resume if receives a signal. In
that case, if __REMAINING is not NULL, the remaining time is stored in
the object pointed by it. */
#ifndef __USE_TIME_BITS64
extern int thrd_sleep (const struct timespec *__time_point,
struct timespec *__remaining);
#else
# ifdef __REDIRECT
extern int __REDIRECT (thrd_sleep, (const struct timespec *__time_point,
struct timespec *__remaining),
__thrd_sleep64);
# else
# define thrd_sleep __thrd_sleep64
# endif
#endif
/* Terminate current thread execution, cleaning up any thread local
storage and freeing resources. Returns the value specified in __RES. */
@ -131,8 +141,19 @@ extern int mtx_lock (mtx_t *__mutex);
/* Block the current thread until the mutex pointed by __MUTEX is unlocked
or time pointed by __TIME_POINT is reached. In case the mutex is unlock,
the current thread will not be blocked. */
#ifndef __USE_TIME_BITS64
extern int mtx_timedlock (mtx_t *__restrict __mutex,
const struct timespec *__restrict __time_point);
#else
# ifdef __REDIRECT
extern int __REDIRECT (mtx_timedlock, (mtx_t *__restrict __mutex,
const struct timespec *__restrict
__time_point),
__mtx_timedlock64);
# else
# define mtx_timedlock __mtx_timedlock64
# endif
#endif
/* Try to lock the mutex pointed by __MUTEX without blocking. If the mutex
is free the current threads takes control of it, otherwise it returns
@ -171,9 +192,21 @@ extern int cnd_wait (cnd_t *__cond, mtx_t *__mutex);
/* Block current thread on the condition variable until condition variable
pointed by __COND is signaled or time pointed by __TIME_POINT is
reached. */
#ifndef __USE_TIME_BITS64
extern int cnd_timedwait (cnd_t *__restrict __cond,
mtx_t *__restrict __mutex,
const struct timespec *__restrict __time_point);
#else
# ifdef __REDIRECT
extern int __REDIRECT (cnd_timedwait, (cnd_t *__restrict __cond,
mtx_t *__restrict __mutex,
const struct timespec *__restrict
__time_point),
__cnd_timedwait64);
# else
# define cnd_timedwait __cnd_timedwait64
# endif
#endif
/* Destroy condition variable pointed by __cond and free all of its
resources. */

View File

@ -102,8 +102,11 @@ sysdep_headers += sys/mount.h sys/acct.h \
bits/ipc-perm.h \
bits/struct_stat.h \
bits/struct_stat_time64_helper.h \
bits/types/struct_msqid64_ds.h \
bits/types/struct_msqid64_ds_helper.h \
bits/types/struct_semid64_ds.h \
bits/types/struct_semid64_ds_helper.h \
bits/types/struct_shmid64_ds.h \
bits/types/struct_shmid64_ds_helper.h
tests += tst-clone tst-clone2 tst-clone3 tst-fanotify tst-personality \

View File

@ -1,3 +1,4 @@
%include <time64-compat.h>
libc {
GLIBC_2.0 {
# functions used in inline functions or macros
@ -185,6 +186,81 @@ libc {
getdents64; gettid; tgkill;
}
GLIBC_2.32 {
}
GLIBC_2.34 {
%ifdef TIME64_NON_DEFAULT
# 64-bit time_t support
__adjtime64;
___adjtimex64;
__clock_adjtime64;
__clock_getres64;
__clock_gettime64;
__clock_nanosleep_time64;
__clock_settime64;
__cnd_timedwait64;
__ctime64;
__ctime64_r;
__difftime64;
__fstat64_time64;
__fstatat64_time64;
__futimens64;
__futimes64;
__futimesat64;
__getitimer64;
__getrusage64;
__gettimeofday64;
__gmtime64;
__gmtime64_r;
__localtime64;
__localtime64_r;
__lstat64_time64;
__lutimes64;
__mktime64;
__msgctl64;
__mtx_timedlock64;
__nanosleep64;
__nanosleep64;
__ntp_gettime64;
__ntp_gettimex64;
__ppoll64;
__pselec64;
__pselect64;
__pthread_clockjoin_np64;
__pthread_cond_clockwait64;
__pthread_cond_timedwait64;
__pthread_mutex_clocklock64;
__pthread_mutex_timedlock64;
__pthread_rwlock_clockrdlock64;
__pthread_rwlock_clockwrlock64;
__pthread_rwlock_timedrdlock64;
__pthread_rwlock_timedwrlock64;
__pthread_timedjoin_np64;
__recvmmsg64;
__sched_rr_get_interval64;
__select64;
__sem_clockwait64;
__semctl64;
__semtimedop64;
__sem_timedwait64;
__setitimer64;
__settimeofday64;
__shmctl64;
__sigtimedwait64;
__stat64_time64;
__thrd_sleep64;
__time64;
__timegm64;
__timerfd_gettime64;
__timerfd_settime64;
__timespec_get64;
__timespec_getres64;
__utime64;
__utimensat64;
__utimes64;
__utimes64;
__wait3_time64;
__wait4_time64;
%endif
}
GLIBC_PRIVATE {
# functions used in other libraries
@ -204,3 +280,24 @@ ld {
__nptl_change_stack_perm;
}
}
librt {
GLIBC_2.34 {
%ifdef TIME64_NON_DEFAULT
# 64-bit time_t support
__aio_suspend_time64;
__mq_timedsend_time64;
__mq_timedreceive_time64;
__timer_gettime64;
__timer_settime64;
%endif
}
}
libanl {
%ifdef TIME64_NON_DEFAULT
GLIBC_2.34 {
__gai_suspend_time64;
}
%endif
}

View File

@ -1,3 +1,4 @@
GLIBC_2.34 __gai_suspend_time64 F
GLIBC_2.4 gai_cancel F
GLIBC_2.4 gai_error F
GLIBC_2.4 gai_suspend F

View File

@ -190,16 +190,83 @@ GLIBC_2.33 mknod F
GLIBC_2.33 mknodat F
GLIBC_2.33 stat F
GLIBC_2.33 stat64 F
GLIBC_2.34 ___adjtimex64 F
GLIBC_2.34 __adjtime64 F
GLIBC_2.34 __clock_adjtime64 F
GLIBC_2.34 __clock_getres64 F
GLIBC_2.34 __clock_gettime64 F
GLIBC_2.34 __clock_nanosleep_time64 F
GLIBC_2.34 __clock_settime64 F
GLIBC_2.34 __cnd_timedwait64 F
GLIBC_2.34 __ctime64 F
GLIBC_2.34 __ctime64_r F
GLIBC_2.34 __difftime64 F
GLIBC_2.34 __fstat64_time64 F
GLIBC_2.34 __fstatat64_time64 F
GLIBC_2.34 __futimens64 F
GLIBC_2.34 __futimes64 F
GLIBC_2.34 __futimesat64 F
GLIBC_2.34 __getitimer64 F
GLIBC_2.34 __getrusage64 F
GLIBC_2.34 __gettimeofday64 F
GLIBC_2.34 __gmtime64 F
GLIBC_2.34 __gmtime64_r F
GLIBC_2.34 __libc_start_main F
GLIBC_2.34 __localtime64 F
GLIBC_2.34 __localtime64_r F
GLIBC_2.34 __lstat64_time64 F
GLIBC_2.34 __lutimes64 F
GLIBC_2.34 __mktime64 F
GLIBC_2.34 __msgctl64 F
GLIBC_2.34 __mtx_timedlock64 F
GLIBC_2.34 __nanosleep64 F
GLIBC_2.34 __ntp_gettime64 F
GLIBC_2.34 __ntp_gettimex64 F
GLIBC_2.34 __ppoll64 F
GLIBC_2.34 __pselect64 F
GLIBC_2.34 __pthread_cleanup_routine F
GLIBC_2.34 __pthread_clockjoin_np64 F
GLIBC_2.34 __pthread_cond_clockwait64 F
GLIBC_2.34 __pthread_cond_timedwait64 F
GLIBC_2.34 __pthread_key_create F
GLIBC_2.34 __pthread_mutex_clocklock64 F
GLIBC_2.34 __pthread_mutex_lock F
GLIBC_2.34 __pthread_mutex_timedlock64 F
GLIBC_2.34 __pthread_mutex_unlock F
GLIBC_2.34 __pthread_register_cancel F
GLIBC_2.34 __pthread_register_cancel_defer F
GLIBC_2.34 __pthread_rwlock_clockrdlock64 F
GLIBC_2.34 __pthread_rwlock_clockwrlock64 F
GLIBC_2.34 __pthread_rwlock_timedrdlock64 F
GLIBC_2.34 __pthread_rwlock_timedwrlock64 F
GLIBC_2.34 __pthread_timedjoin_np64 F
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 __sched_rr_get_interval64 F
GLIBC_2.34 __select64 F
GLIBC_2.34 __sem_clockwait64 F
GLIBC_2.34 __sem_timedwait64 F
GLIBC_2.34 __semctl64 F
GLIBC_2.34 __semtimedop64 F
GLIBC_2.34 __setitimer64 F
GLIBC_2.34 __settimeofday64 F
GLIBC_2.34 __shmctl64 F
GLIBC_2.34 __sigtimedwait64 F
GLIBC_2.34 __stat64_time64 F
GLIBC_2.34 __thrd_sleep64 F
GLIBC_2.34 __time64 F
GLIBC_2.34 __timegm64 F
GLIBC_2.34 __timerfd_gettime64 F
GLIBC_2.34 __timerfd_settime64 F
GLIBC_2.34 __timespec_get64 F
GLIBC_2.34 __timespec_getres64 F
GLIBC_2.34 __utime64 F
GLIBC_2.34 __utimensat64 F
GLIBC_2.34 __utimes64 F
GLIBC_2.34 __wait3_time64 F
GLIBC_2.34 __wait4_time64 F
GLIBC_2.34 call_once F
GLIBC_2.34 cnd_broadcast F
GLIBC_2.34 cnd_destroy F

View File

@ -1,3 +1,8 @@
GLIBC_2.34 __aio_suspend_time64 F
GLIBC_2.34 __mq_timedreceive_time64 F
GLIBC_2.34 __mq_timedsend_time64 F
GLIBC_2.34 __timer_gettime64 F
GLIBC_2.34 __timer_settime64 F
GLIBC_2.4 aio_cancel F
GLIBC_2.4 aio_cancel64 F
GLIBC_2.4 aio_error F

View File

@ -1,3 +1,4 @@
GLIBC_2.34 __gai_suspend_time64 F
GLIBC_2.4 gai_cancel F
GLIBC_2.4 gai_error F
GLIBC_2.4 gai_suspend F

View File

@ -187,16 +187,83 @@ GLIBC_2.33 mknod F
GLIBC_2.33 mknodat F
GLIBC_2.33 stat F
GLIBC_2.33 stat64 F
GLIBC_2.34 ___adjtimex64 F
GLIBC_2.34 __adjtime64 F
GLIBC_2.34 __clock_adjtime64 F
GLIBC_2.34 __clock_getres64 F
GLIBC_2.34 __clock_gettime64 F
GLIBC_2.34 __clock_nanosleep_time64 F
GLIBC_2.34 __clock_settime64 F
GLIBC_2.34 __cnd_timedwait64 F
GLIBC_2.34 __ctime64 F
GLIBC_2.34 __ctime64_r F
GLIBC_2.34 __difftime64 F
GLIBC_2.34 __fstat64_time64 F
GLIBC_2.34 __fstatat64_time64 F
GLIBC_2.34 __futimens64 F
GLIBC_2.34 __futimes64 F
GLIBC_2.34 __futimesat64 F
GLIBC_2.34 __getitimer64 F
GLIBC_2.34 __getrusage64 F
GLIBC_2.34 __gettimeofday64 F
GLIBC_2.34 __gmtime64 F
GLIBC_2.34 __gmtime64_r F
GLIBC_2.34 __libc_start_main F
GLIBC_2.34 __localtime64 F
GLIBC_2.34 __localtime64_r F
GLIBC_2.34 __lstat64_time64 F
GLIBC_2.34 __lutimes64 F
GLIBC_2.34 __mktime64 F
GLIBC_2.34 __msgctl64 F
GLIBC_2.34 __mtx_timedlock64 F
GLIBC_2.34 __nanosleep64 F
GLIBC_2.34 __ntp_gettime64 F
GLIBC_2.34 __ntp_gettimex64 F
GLIBC_2.34 __ppoll64 F
GLIBC_2.34 __pselect64 F
GLIBC_2.34 __pthread_cleanup_routine F
GLIBC_2.34 __pthread_clockjoin_np64 F
GLIBC_2.34 __pthread_cond_clockwait64 F
GLIBC_2.34 __pthread_cond_timedwait64 F
GLIBC_2.34 __pthread_key_create F
GLIBC_2.34 __pthread_mutex_clocklock64 F
GLIBC_2.34 __pthread_mutex_lock F
GLIBC_2.34 __pthread_mutex_timedlock64 F
GLIBC_2.34 __pthread_mutex_unlock F
GLIBC_2.34 __pthread_register_cancel F
GLIBC_2.34 __pthread_register_cancel_defer F
GLIBC_2.34 __pthread_rwlock_clockrdlock64 F
GLIBC_2.34 __pthread_rwlock_clockwrlock64 F
GLIBC_2.34 __pthread_rwlock_timedrdlock64 F
GLIBC_2.34 __pthread_rwlock_timedwrlock64 F
GLIBC_2.34 __pthread_timedjoin_np64 F
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 __sched_rr_get_interval64 F
GLIBC_2.34 __select64 F
GLIBC_2.34 __sem_clockwait64 F
GLIBC_2.34 __sem_timedwait64 F
GLIBC_2.34 __semctl64 F
GLIBC_2.34 __semtimedop64 F
GLIBC_2.34 __setitimer64 F
GLIBC_2.34 __settimeofday64 F
GLIBC_2.34 __shmctl64 F
GLIBC_2.34 __sigtimedwait64 F
GLIBC_2.34 __stat64_time64 F
GLIBC_2.34 __thrd_sleep64 F
GLIBC_2.34 __time64 F
GLIBC_2.34 __timegm64 F
GLIBC_2.34 __timerfd_gettime64 F
GLIBC_2.34 __timerfd_settime64 F
GLIBC_2.34 __timespec_get64 F
GLIBC_2.34 __timespec_getres64 F
GLIBC_2.34 __utime64 F
GLIBC_2.34 __utimensat64 F
GLIBC_2.34 __utimes64 F
GLIBC_2.34 __wait3_time64 F
GLIBC_2.34 __wait4_time64 F
GLIBC_2.34 call_once F
GLIBC_2.34 cnd_broadcast F
GLIBC_2.34 cnd_destroy F

View File

@ -1,3 +1,8 @@
GLIBC_2.34 __aio_suspend_time64 F
GLIBC_2.34 __mq_timedreceive_time64 F
GLIBC_2.34 __mq_timedsend_time64 F
GLIBC_2.34 __timer_gettime64 F
GLIBC_2.34 __timer_settime64 F
GLIBC_2.4 aio_cancel F
GLIBC_2.4 aio_cancel64 F
GLIBC_2.4 aio_error F

View File

@ -0,0 +1,2 @@
/* ABI support 64-bit in non-default mode. */
#define TIME64_NON_DEFAULT

View File

@ -26,6 +26,7 @@ typedef __syscall_ulong_t msgqnum_t;
typedef __syscall_ulong_t msglen_t;
#include <bits/types/struct_msqid_ds.h>
#include <bits/types/struct_msqid64_ds.h>
/* Define options for message queue functions. */
#define MSG_NOERROR 010000 /* no error if message is too big */

View File

@ -22,6 +22,7 @@
#include <sys/types.h>
#include <bits/timesize.h>
#include <bits/types/struct_semid_ds.h>
#include <bits/types/struct_semid64_ds.h>
/* Flags for `semop'. */
#define SEM_UNDO 0x1000 /* undo the operation on exit */

View File

@ -43,6 +43,7 @@ __BEGIN_DECLS
typedef __syscall_ulong_t shmatt_t;
#include <bits/types/struct_shmid_ds.h>
#include <bits/types/struct_shmid64_ds.h>
#ifdef __USE_MISC

View File

@ -77,6 +77,16 @@ __BEGIN_DECLS
/* Tune a POSIX clock. */
extern int clock_adjtime (__clockid_t __clock_id, struct timex *__utx) __THROW;
#ifdef __USE_TIME_BITS64
# if defined(__REDIRECT_NTH)
extern int __REDIRECT_NTH (clock_adjtime, (__clockid_t __clock_id,
struct timex *__utx),
__clock_adjtime64);
# else
# define clock_adjtime __clock_adjtime64
# endif
#endif
__END_DECLS
#endif /* use GNU */

View File

@ -21,7 +21,7 @@
#include "thrd_priv.h"
int
___cnd_timedwait64 (cnd_t *restrict cond, mtx_t *restrict mutex,
__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,
@ -31,9 +31,9 @@ ___cnd_timedwait64 (cnd_t *restrict cond, mtx_t *restrict mutex,
}
#if __TIMESIZE == 64
strong_alias (___cnd_timedwait64, ___cnd_timedwait)
strong_alias (__cnd_timedwait64, ___cnd_timedwait)
#else
libc_hidden_ver (___cnd_timedwait64, __cnd_timedwait64)
libc_hidden_def (__cnd_timedwait64)
int
___cnd_timedwait (cnd_t *restrict cond, mtx_t *restrict mutex,

View File

@ -2,3 +2,4 @@ GLIBC_2.29 gai_cancel F
GLIBC_2.29 gai_error F
GLIBC_2.29 gai_suspend F
GLIBC_2.29 getaddrinfo_a F
GLIBC_2.34 __gai_suspend_time64 F

View File

@ -2277,16 +2277,83 @@ GLIBC_2.33 mknod F
GLIBC_2.33 mknodat F
GLIBC_2.33 stat F
GLIBC_2.33 stat64 F
GLIBC_2.34 ___adjtimex64 F
GLIBC_2.34 __adjtime64 F
GLIBC_2.34 __clock_adjtime64 F
GLIBC_2.34 __clock_getres64 F
GLIBC_2.34 __clock_gettime64 F
GLIBC_2.34 __clock_nanosleep_time64 F
GLIBC_2.34 __clock_settime64 F
GLIBC_2.34 __cnd_timedwait64 F
GLIBC_2.34 __ctime64 F
GLIBC_2.34 __ctime64_r F
GLIBC_2.34 __difftime64 F
GLIBC_2.34 __fstat64_time64 F
GLIBC_2.34 __fstatat64_time64 F
GLIBC_2.34 __futimens64 F
GLIBC_2.34 __futimes64 F
GLIBC_2.34 __futimesat64 F
GLIBC_2.34 __getitimer64 F
GLIBC_2.34 __getrusage64 F
GLIBC_2.34 __gettimeofday64 F
GLIBC_2.34 __gmtime64 F
GLIBC_2.34 __gmtime64_r F
GLIBC_2.34 __libc_start_main F
GLIBC_2.34 __localtime64 F
GLIBC_2.34 __localtime64_r F
GLIBC_2.34 __lstat64_time64 F
GLIBC_2.34 __lutimes64 F
GLIBC_2.34 __mktime64 F
GLIBC_2.34 __msgctl64 F
GLIBC_2.34 __mtx_timedlock64 F
GLIBC_2.34 __nanosleep64 F
GLIBC_2.34 __ntp_gettime64 F
GLIBC_2.34 __ntp_gettimex64 F
GLIBC_2.34 __ppoll64 F
GLIBC_2.34 __pselect64 F
GLIBC_2.34 __pthread_cleanup_routine F
GLIBC_2.34 __pthread_clockjoin_np64 F
GLIBC_2.34 __pthread_cond_clockwait64 F
GLIBC_2.34 __pthread_cond_timedwait64 F
GLIBC_2.34 __pthread_key_create F
GLIBC_2.34 __pthread_mutex_clocklock64 F
GLIBC_2.34 __pthread_mutex_lock F
GLIBC_2.34 __pthread_mutex_timedlock64 F
GLIBC_2.34 __pthread_mutex_unlock F
GLIBC_2.34 __pthread_register_cancel F
GLIBC_2.34 __pthread_register_cancel_defer F
GLIBC_2.34 __pthread_rwlock_clockrdlock64 F
GLIBC_2.34 __pthread_rwlock_clockwrlock64 F
GLIBC_2.34 __pthread_rwlock_timedrdlock64 F
GLIBC_2.34 __pthread_rwlock_timedwrlock64 F
GLIBC_2.34 __pthread_timedjoin_np64 F
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 __sched_rr_get_interval64 F
GLIBC_2.34 __select64 F
GLIBC_2.34 __sem_clockwait64 F
GLIBC_2.34 __sem_timedwait64 F
GLIBC_2.34 __semctl64 F
GLIBC_2.34 __semtimedop64 F
GLIBC_2.34 __setitimer64 F
GLIBC_2.34 __settimeofday64 F
GLIBC_2.34 __shmctl64 F
GLIBC_2.34 __sigtimedwait64 F
GLIBC_2.34 __stat64_time64 F
GLIBC_2.34 __thrd_sleep64 F
GLIBC_2.34 __time64 F
GLIBC_2.34 __timegm64 F
GLIBC_2.34 __timerfd_gettime64 F
GLIBC_2.34 __timerfd_settime64 F
GLIBC_2.34 __timespec_get64 F
GLIBC_2.34 __timespec_getres64 F
GLIBC_2.34 __utime64 F
GLIBC_2.34 __utimensat64 F
GLIBC_2.34 __utimes64 F
GLIBC_2.34 __wait3_time64 F
GLIBC_2.34 __wait4_time64 F
GLIBC_2.34 call_once F
GLIBC_2.34 cnd_broadcast F
GLIBC_2.34 cnd_destroy F

View File

@ -33,3 +33,8 @@ GLIBC_2.29 timer_delete F
GLIBC_2.29 timer_getoverrun F
GLIBC_2.29 timer_gettime F
GLIBC_2.29 timer_settime F
GLIBC_2.34 __aio_suspend_time64 F
GLIBC_2.34 __mq_timedreceive_time64 F
GLIBC_2.34 __mq_timedsend_time64 F
GLIBC_2.34 __timer_gettime64 F
GLIBC_2.34 __timer_settime64 F

View File

@ -0,0 +1,2 @@
/* ABI support 64-bit in non-default mode. */
#define TIME64_NON_DEFAULT

View File

@ -0,0 +1,37 @@
/* Features part to handle 64-bit time_t support.
Copyright (C) 2021 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
The GNU C Library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with the GNU C Library; if not, see
<https://www.gnu.org/licenses/>. */
/* We need to know the word size in order to check the time size. */
#include <bits/wordsize.h>
#include <bits/timesize.h>
#if defined _TIME_BITS
# if _TIME_BITS == 64
# if ! defined (_FILE_OFFSET_BITS) || _FILE_OFFSET_BITS != 64
# error "_TIME_BITS=64 is allowed only with _FILE_OFFSET_BITS=64"
# elif __TIMESIZE == 32
# define __USE_TIME_BITS64 1
# endif
# elif _TIME_BITS == 32
# if __TIMESIZE > 32
# error "_TIME_BITS=32 is not compatible with __TIMESIZE > 32"
# endif
# else
# error Invalid _TIME_BITS value (can only be 32 or 64-bit)
# endif
#endif

View File

@ -2,3 +2,4 @@ GLIBC_2.2.3 gai_cancel F
GLIBC_2.2.3 gai_error F
GLIBC_2.2.3 gai_suspend F
GLIBC_2.2.3 getaddrinfo_a F
GLIBC_2.34 __gai_suspend_time64 F

View File

@ -2231,16 +2231,83 @@ GLIBC_2.33 mknod F
GLIBC_2.33 mknodat F
GLIBC_2.33 stat F
GLIBC_2.33 stat64 F
GLIBC_2.34 ___adjtimex64 F
GLIBC_2.34 __adjtime64 F
GLIBC_2.34 __clock_adjtime64 F
GLIBC_2.34 __clock_getres64 F
GLIBC_2.34 __clock_gettime64 F
GLIBC_2.34 __clock_nanosleep_time64 F
GLIBC_2.34 __clock_settime64 F
GLIBC_2.34 __cnd_timedwait64 F
GLIBC_2.34 __ctime64 F
GLIBC_2.34 __ctime64_r F
GLIBC_2.34 __difftime64 F
GLIBC_2.34 __fstat64_time64 F
GLIBC_2.34 __fstatat64_time64 F
GLIBC_2.34 __futimens64 F
GLIBC_2.34 __futimes64 F
GLIBC_2.34 __futimesat64 F
GLIBC_2.34 __getitimer64 F
GLIBC_2.34 __getrusage64 F
GLIBC_2.34 __gettimeofday64 F
GLIBC_2.34 __gmtime64 F
GLIBC_2.34 __gmtime64_r F
GLIBC_2.34 __libc_start_main F
GLIBC_2.34 __localtime64 F
GLIBC_2.34 __localtime64_r F
GLIBC_2.34 __lstat64_time64 F
GLIBC_2.34 __lutimes64 F
GLIBC_2.34 __mktime64 F
GLIBC_2.34 __msgctl64 F
GLIBC_2.34 __mtx_timedlock64 F
GLIBC_2.34 __nanosleep64 F
GLIBC_2.34 __ntp_gettime64 F
GLIBC_2.34 __ntp_gettimex64 F
GLIBC_2.34 __ppoll64 F
GLIBC_2.34 __pselect64 F
GLIBC_2.34 __pthread_cleanup_routine F
GLIBC_2.34 __pthread_clockjoin_np64 F
GLIBC_2.34 __pthread_cond_clockwait64 F
GLIBC_2.34 __pthread_cond_timedwait64 F
GLIBC_2.34 __pthread_key_create F
GLIBC_2.34 __pthread_mutex_clocklock64 F
GLIBC_2.34 __pthread_mutex_lock F
GLIBC_2.34 __pthread_mutex_timedlock64 F
GLIBC_2.34 __pthread_mutex_unlock F
GLIBC_2.34 __pthread_register_cancel F
GLIBC_2.34 __pthread_register_cancel_defer F
GLIBC_2.34 __pthread_rwlock_clockrdlock64 F
GLIBC_2.34 __pthread_rwlock_clockwrlock64 F
GLIBC_2.34 __pthread_rwlock_timedrdlock64 F
GLIBC_2.34 __pthread_rwlock_timedwrlock64 F
GLIBC_2.34 __pthread_timedjoin_np64 F
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 __sched_rr_get_interval64 F
GLIBC_2.34 __select64 F
GLIBC_2.34 __sem_clockwait64 F
GLIBC_2.34 __sem_timedwait64 F
GLIBC_2.34 __semctl64 F
GLIBC_2.34 __semtimedop64 F
GLIBC_2.34 __setitimer64 F
GLIBC_2.34 __settimeofday64 F
GLIBC_2.34 __shmctl64 F
GLIBC_2.34 __sigtimedwait64 F
GLIBC_2.34 __stat64_time64 F
GLIBC_2.34 __thrd_sleep64 F
GLIBC_2.34 __time64 F
GLIBC_2.34 __timegm64 F
GLIBC_2.34 __timerfd_gettime64 F
GLIBC_2.34 __timerfd_settime64 F
GLIBC_2.34 __timespec_get64 F
GLIBC_2.34 __timespec_getres64 F
GLIBC_2.34 __utime64 F
GLIBC_2.34 __utimensat64 F
GLIBC_2.34 __utimes64 F
GLIBC_2.34 __wait3_time64 F
GLIBC_2.34 __wait4_time64 F
GLIBC_2.34 call_once F
GLIBC_2.34 cnd_broadcast F
GLIBC_2.34 cnd_destroy F

View File

@ -32,6 +32,11 @@ GLIBC_2.3.4 mq_setattr F
GLIBC_2.3.4 mq_timedreceive F
GLIBC_2.3.4 mq_timedsend F
GLIBC_2.3.4 mq_unlink F
GLIBC_2.34 __aio_suspend_time64 F
GLIBC_2.34 __mq_timedreceive_time64 F
GLIBC_2.34 __mq_timedsend_time64 F
GLIBC_2.34 __timer_gettime64 F
GLIBC_2.34 __timer_settime64 F
GLIBC_2.4 lio_listio F
GLIBC_2.4 lio_listio64 F
GLIBC_2.7 __mq_open_2 F

View File

@ -0,0 +1,2 @@
/* ABI support 64-bit in non-default mode. */
#define TIME64_NON_DEFAULT

View File

@ -2,3 +2,4 @@ GLIBC_2.2.3 gai_cancel F
GLIBC_2.2.3 gai_error F
GLIBC_2.2.3 gai_suspend F
GLIBC_2.2.3 getaddrinfo_a F
GLIBC_2.34 __gai_suspend_time64 F

View File

@ -2414,17 +2414,84 @@ GLIBC_2.33 mknod F
GLIBC_2.33 mknodat F
GLIBC_2.33 stat F
GLIBC_2.33 stat64 F
GLIBC_2.34 ___adjtimex64 F
GLIBC_2.34 __adjtime64 F
GLIBC_2.34 __clock_adjtime64 F
GLIBC_2.34 __clock_getres64 F
GLIBC_2.34 __clock_gettime64 F
GLIBC_2.34 __clock_nanosleep_time64 F
GLIBC_2.34 __clock_settime64 F
GLIBC_2.34 __cnd_timedwait64 F
GLIBC_2.34 __ctime64 F
GLIBC_2.34 __ctime64_r F
GLIBC_2.34 __difftime64 F
GLIBC_2.34 __fstat64_time64 F
GLIBC_2.34 __fstatat64_time64 F
GLIBC_2.34 __futimens64 F
GLIBC_2.34 __futimes64 F
GLIBC_2.34 __futimesat64 F
GLIBC_2.34 __getitimer64 F
GLIBC_2.34 __getrusage64 F
GLIBC_2.34 __gettimeofday64 F
GLIBC_2.34 __gmtime64 F
GLIBC_2.34 __gmtime64_r F
GLIBC_2.34 __isnanf128 F
GLIBC_2.34 __libc_start_main F
GLIBC_2.34 __localtime64 F
GLIBC_2.34 __localtime64_r F
GLIBC_2.34 __lstat64_time64 F
GLIBC_2.34 __lutimes64 F
GLIBC_2.34 __mktime64 F
GLIBC_2.34 __msgctl64 F
GLIBC_2.34 __mtx_timedlock64 F
GLIBC_2.34 __nanosleep64 F
GLIBC_2.34 __ntp_gettime64 F
GLIBC_2.34 __ntp_gettimex64 F
GLIBC_2.34 __ppoll64 F
GLIBC_2.34 __pselect64 F
GLIBC_2.34 __pthread_cleanup_routine F
GLIBC_2.34 __pthread_clockjoin_np64 F
GLIBC_2.34 __pthread_cond_clockwait64 F
GLIBC_2.34 __pthread_cond_timedwait64 F
GLIBC_2.34 __pthread_key_create F
GLIBC_2.34 __pthread_mutex_clocklock64 F
GLIBC_2.34 __pthread_mutex_lock F
GLIBC_2.34 __pthread_mutex_timedlock64 F
GLIBC_2.34 __pthread_mutex_unlock F
GLIBC_2.34 __pthread_register_cancel F
GLIBC_2.34 __pthread_register_cancel_defer F
GLIBC_2.34 __pthread_rwlock_clockrdlock64 F
GLIBC_2.34 __pthread_rwlock_clockwrlock64 F
GLIBC_2.34 __pthread_rwlock_timedrdlock64 F
GLIBC_2.34 __pthread_rwlock_timedwrlock64 F
GLIBC_2.34 __pthread_timedjoin_np64 F
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 __sched_rr_get_interval64 F
GLIBC_2.34 __select64 F
GLIBC_2.34 __sem_clockwait64 F
GLIBC_2.34 __sem_timedwait64 F
GLIBC_2.34 __semctl64 F
GLIBC_2.34 __semtimedop64 F
GLIBC_2.34 __setitimer64 F
GLIBC_2.34 __settimeofday64 F
GLIBC_2.34 __shmctl64 F
GLIBC_2.34 __sigtimedwait64 F
GLIBC_2.34 __stat64_time64 F
GLIBC_2.34 __thrd_sleep64 F
GLIBC_2.34 __time64 F
GLIBC_2.34 __timegm64 F
GLIBC_2.34 __timerfd_gettime64 F
GLIBC_2.34 __timerfd_settime64 F
GLIBC_2.34 __timespec_get64 F
GLIBC_2.34 __timespec_getres64 F
GLIBC_2.34 __utime64 F
GLIBC_2.34 __utimensat64 F
GLIBC_2.34 __utimes64 F
GLIBC_2.34 __wait3_time64 F
GLIBC_2.34 __wait4_time64 F
GLIBC_2.34 call_once F
GLIBC_2.34 cnd_broadcast F
GLIBC_2.34 cnd_destroy F

View File

@ -32,6 +32,11 @@ GLIBC_2.3.4 mq_setattr F
GLIBC_2.3.4 mq_timedreceive F
GLIBC_2.3.4 mq_timedsend F
GLIBC_2.3.4 mq_unlink F
GLIBC_2.34 __aio_suspend_time64 F
GLIBC_2.34 __mq_timedreceive_time64 F
GLIBC_2.34 __mq_timedsend_time64 F
GLIBC_2.34 __timer_gettime64 F
GLIBC_2.34 __timer_settime64 F
GLIBC_2.4 lio_listio F
GLIBC_2.4 lio_listio64 F
GLIBC_2.7 __mq_open_2 F

View File

@ -0,0 +1,2 @@
/* ABI support 64-bit in non-default mode. */
#define TIME64_NON_DEFAULT

View File

@ -7,8 +7,6 @@ extern ssize_t __libc_msgrcv (int msqid, void *msgp, size_t msgsz,
extern int __libc_msgsnd (int msqid, const void *msgp, size_t msgsz,
int msgflg);
# include <bits/types/struct_msqid64_ds.h>
# if __TIMESIZE == 64
# define __msgctl64 __msgctl
# else

View File

@ -3,8 +3,6 @@
#ifndef _ISOMAC
# include <bits/types/struct_shmid64_ds.h>
# if __TIMESIZE == 64
# define __shmctl64 __shmctl
# else

View File

@ -23,6 +23,7 @@
# ifndef _ISOMAC
extern int __adjtimex (struct timex *__ntx);
libc_hidden_proto (__adjtimex)
# include <time.h>

View File

@ -1,3 +1,4 @@
GLIBC_2.34 __gai_suspend_time64 F
GLIBC_2.4 gai_cancel F
GLIBC_2.4 gai_error F
GLIBC_2.4 gai_suspend F

View File

@ -191,16 +191,83 @@ GLIBC_2.33 mknod F
GLIBC_2.33 mknodat F
GLIBC_2.33 stat F
GLIBC_2.33 stat64 F
GLIBC_2.34 ___adjtimex64 F
GLIBC_2.34 __adjtime64 F
GLIBC_2.34 __clock_adjtime64 F
GLIBC_2.34 __clock_getres64 F
GLIBC_2.34 __clock_gettime64 F
GLIBC_2.34 __clock_nanosleep_time64 F
GLIBC_2.34 __clock_settime64 F
GLIBC_2.34 __cnd_timedwait64 F
GLIBC_2.34 __ctime64 F
GLIBC_2.34 __ctime64_r F
GLIBC_2.34 __difftime64 F
GLIBC_2.34 __fstat64_time64 F
GLIBC_2.34 __fstatat64_time64 F
GLIBC_2.34 __futimens64 F
GLIBC_2.34 __futimes64 F
GLIBC_2.34 __futimesat64 F
GLIBC_2.34 __getitimer64 F
GLIBC_2.34 __getrusage64 F
GLIBC_2.34 __gettimeofday64 F
GLIBC_2.34 __gmtime64 F
GLIBC_2.34 __gmtime64_r F
GLIBC_2.34 __libc_start_main F
GLIBC_2.34 __localtime64 F
GLIBC_2.34 __localtime64_r F
GLIBC_2.34 __lstat64_time64 F
GLIBC_2.34 __lutimes64 F
GLIBC_2.34 __mktime64 F
GLIBC_2.34 __msgctl64 F
GLIBC_2.34 __mtx_timedlock64 F
GLIBC_2.34 __nanosleep64 F
GLIBC_2.34 __ntp_gettime64 F
GLIBC_2.34 __ntp_gettimex64 F
GLIBC_2.34 __ppoll64 F
GLIBC_2.34 __pselect64 F
GLIBC_2.34 __pthread_cleanup_routine F
GLIBC_2.34 __pthread_clockjoin_np64 F
GLIBC_2.34 __pthread_cond_clockwait64 F
GLIBC_2.34 __pthread_cond_timedwait64 F
GLIBC_2.34 __pthread_key_create F
GLIBC_2.34 __pthread_mutex_clocklock64 F
GLIBC_2.34 __pthread_mutex_lock F
GLIBC_2.34 __pthread_mutex_timedlock64 F
GLIBC_2.34 __pthread_mutex_unlock F
GLIBC_2.34 __pthread_register_cancel F
GLIBC_2.34 __pthread_register_cancel_defer F
GLIBC_2.34 __pthread_rwlock_clockrdlock64 F
GLIBC_2.34 __pthread_rwlock_clockwrlock64 F
GLIBC_2.34 __pthread_rwlock_timedrdlock64 F
GLIBC_2.34 __pthread_rwlock_timedwrlock64 F
GLIBC_2.34 __pthread_timedjoin_np64 F
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 __sched_rr_get_interval64 F
GLIBC_2.34 __select64 F
GLIBC_2.34 __sem_clockwait64 F
GLIBC_2.34 __sem_timedwait64 F
GLIBC_2.34 __semctl64 F
GLIBC_2.34 __semtimedop64 F
GLIBC_2.34 __setitimer64 F
GLIBC_2.34 __settimeofday64 F
GLIBC_2.34 __shmctl64 F
GLIBC_2.34 __sigtimedwait64 F
GLIBC_2.34 __stat64_time64 F
GLIBC_2.34 __thrd_sleep64 F
GLIBC_2.34 __time64 F
GLIBC_2.34 __timegm64 F
GLIBC_2.34 __timerfd_gettime64 F
GLIBC_2.34 __timerfd_settime64 F
GLIBC_2.34 __timespec_get64 F
GLIBC_2.34 __timespec_getres64 F
GLIBC_2.34 __utime64 F
GLIBC_2.34 __utimensat64 F
GLIBC_2.34 __utimes64 F
GLIBC_2.34 __wait3_time64 F
GLIBC_2.34 __wait4_time64 F
GLIBC_2.34 call_once F
GLIBC_2.34 cnd_broadcast F
GLIBC_2.34 cnd_destroy F

View File

@ -1,3 +1,8 @@
GLIBC_2.34 __aio_suspend_time64 F
GLIBC_2.34 __mq_timedreceive_time64 F
GLIBC_2.34 __mq_timedsend_time64 F
GLIBC_2.34 __timer_gettime64 F
GLIBC_2.34 __timer_settime64 F
GLIBC_2.4 aio_cancel F
GLIBC_2.4 aio_cancel64 F
GLIBC_2.4 aio_error F

View File

@ -2,3 +2,4 @@ GLIBC_2.2.3 gai_cancel F
GLIBC_2.2.3 gai_error F
GLIBC_2.2.3 gai_suspend F
GLIBC_2.2.3 getaddrinfo_a F
GLIBC_2.34 __gai_suspend_time64 F

View File

@ -2358,16 +2358,83 @@ GLIBC_2.33 mknod F
GLIBC_2.33 mknodat F
GLIBC_2.33 stat F
GLIBC_2.33 stat64 F
GLIBC_2.34 ___adjtimex64 F
GLIBC_2.34 __adjtime64 F
GLIBC_2.34 __clock_adjtime64 F
GLIBC_2.34 __clock_getres64 F
GLIBC_2.34 __clock_gettime64 F
GLIBC_2.34 __clock_nanosleep_time64 F
GLIBC_2.34 __clock_settime64 F
GLIBC_2.34 __cnd_timedwait64 F
GLIBC_2.34 __ctime64 F
GLIBC_2.34 __ctime64_r F
GLIBC_2.34 __difftime64 F
GLIBC_2.34 __fstat64_time64 F
GLIBC_2.34 __fstatat64_time64 F
GLIBC_2.34 __futimens64 F
GLIBC_2.34 __futimes64 F
GLIBC_2.34 __futimesat64 F
GLIBC_2.34 __getitimer64 F
GLIBC_2.34 __getrusage64 F
GLIBC_2.34 __gettimeofday64 F
GLIBC_2.34 __gmtime64 F
GLIBC_2.34 __gmtime64_r F
GLIBC_2.34 __libc_start_main F
GLIBC_2.34 __localtime64 F
GLIBC_2.34 __localtime64_r F
GLIBC_2.34 __lstat64_time64 F
GLIBC_2.34 __lutimes64 F
GLIBC_2.34 __mktime64 F
GLIBC_2.34 __msgctl64 F
GLIBC_2.34 __mtx_timedlock64 F
GLIBC_2.34 __nanosleep64 F
GLIBC_2.34 __ntp_gettime64 F
GLIBC_2.34 __ntp_gettimex64 F
GLIBC_2.34 __ppoll64 F
GLIBC_2.34 __pselect64 F
GLIBC_2.34 __pthread_cleanup_routine F
GLIBC_2.34 __pthread_clockjoin_np64 F
GLIBC_2.34 __pthread_cond_clockwait64 F
GLIBC_2.34 __pthread_cond_timedwait64 F
GLIBC_2.34 __pthread_key_create F
GLIBC_2.34 __pthread_mutex_clocklock64 F
GLIBC_2.34 __pthread_mutex_lock F
GLIBC_2.34 __pthread_mutex_timedlock64 F
GLIBC_2.34 __pthread_mutex_unlock F
GLIBC_2.34 __pthread_register_cancel F
GLIBC_2.34 __pthread_register_cancel_defer F
GLIBC_2.34 __pthread_rwlock_clockrdlock64 F
GLIBC_2.34 __pthread_rwlock_clockwrlock64 F
GLIBC_2.34 __pthread_rwlock_timedrdlock64 F
GLIBC_2.34 __pthread_rwlock_timedwrlock64 F
GLIBC_2.34 __pthread_timedjoin_np64 F
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 __sched_rr_get_interval64 F
GLIBC_2.34 __select64 F
GLIBC_2.34 __sem_clockwait64 F
GLIBC_2.34 __sem_timedwait64 F
GLIBC_2.34 __semctl64 F
GLIBC_2.34 __semtimedop64 F
GLIBC_2.34 __setitimer64 F
GLIBC_2.34 __settimeofday64 F
GLIBC_2.34 __shmctl64 F
GLIBC_2.34 __sigtimedwait64 F
GLIBC_2.34 __stat64_time64 F
GLIBC_2.34 __thrd_sleep64 F
GLIBC_2.34 __time64 F
GLIBC_2.34 __timegm64 F
GLIBC_2.34 __timerfd_gettime64 F
GLIBC_2.34 __timerfd_settime64 F
GLIBC_2.34 __timespec_get64 F
GLIBC_2.34 __timespec_getres64 F
GLIBC_2.34 __utime64 F
GLIBC_2.34 __utimensat64 F
GLIBC_2.34 __utimes64 F
GLIBC_2.34 __wait3_time64 F
GLIBC_2.34 __wait4_time64 F
GLIBC_2.34 call_once F
GLIBC_2.34 cnd_broadcast F
GLIBC_2.34 cnd_destroy F

View File

@ -32,6 +32,11 @@ GLIBC_2.3.4 mq_setattr F
GLIBC_2.3.4 mq_timedreceive F
GLIBC_2.3.4 mq_timedsend F
GLIBC_2.3.4 mq_unlink F
GLIBC_2.34 __aio_suspend_time64 F
GLIBC_2.34 __mq_timedreceive_time64 F
GLIBC_2.34 __mq_timedsend_time64 F
GLIBC_2.34 __timer_gettime64 F
GLIBC_2.34 __timer_settime64 F
GLIBC_2.4 lio_listio F
GLIBC_2.4 lio_listio64 F
GLIBC_2.7 __mq_open_2 F

View File

@ -0,0 +1,2 @@
/* ABI support 64-bit in non-default mode. */
#define TIME64_NON_DEFAULT

View File

@ -2,3 +2,4 @@ GLIBC_2.18 gai_cancel F
GLIBC_2.18 gai_error F
GLIBC_2.18 gai_suspend F
GLIBC_2.18 getaddrinfo_a F
GLIBC_2.34 __gai_suspend_time64 F

View File

@ -2328,16 +2328,83 @@ GLIBC_2.33 mknod F
GLIBC_2.33 mknodat F
GLIBC_2.33 stat F
GLIBC_2.33 stat64 F
GLIBC_2.34 ___adjtimex64 F
GLIBC_2.34 __adjtime64 F
GLIBC_2.34 __clock_adjtime64 F
GLIBC_2.34 __clock_getres64 F
GLIBC_2.34 __clock_gettime64 F
GLIBC_2.34 __clock_nanosleep_time64 F
GLIBC_2.34 __clock_settime64 F
GLIBC_2.34 __cnd_timedwait64 F
GLIBC_2.34 __ctime64 F
GLIBC_2.34 __ctime64_r F
GLIBC_2.34 __difftime64 F
GLIBC_2.34 __fstat64_time64 F
GLIBC_2.34 __fstatat64_time64 F
GLIBC_2.34 __futimens64 F
GLIBC_2.34 __futimes64 F
GLIBC_2.34 __futimesat64 F
GLIBC_2.34 __getitimer64 F
GLIBC_2.34 __getrusage64 F
GLIBC_2.34 __gettimeofday64 F
GLIBC_2.34 __gmtime64 F
GLIBC_2.34 __gmtime64_r F
GLIBC_2.34 __libc_start_main F
GLIBC_2.34 __localtime64 F
GLIBC_2.34 __localtime64_r F
GLIBC_2.34 __lstat64_time64 F
GLIBC_2.34 __lutimes64 F
GLIBC_2.34 __mktime64 F
GLIBC_2.34 __msgctl64 F
GLIBC_2.34 __mtx_timedlock64 F
GLIBC_2.34 __nanosleep64 F
GLIBC_2.34 __ntp_gettime64 F
GLIBC_2.34 __ntp_gettimex64 F
GLIBC_2.34 __ppoll64 F
GLIBC_2.34 __pselect64 F
GLIBC_2.34 __pthread_cleanup_routine F
GLIBC_2.34 __pthread_clockjoin_np64 F
GLIBC_2.34 __pthread_cond_clockwait64 F
GLIBC_2.34 __pthread_cond_timedwait64 F
GLIBC_2.34 __pthread_key_create F
GLIBC_2.34 __pthread_mutex_clocklock64 F
GLIBC_2.34 __pthread_mutex_lock F
GLIBC_2.34 __pthread_mutex_timedlock64 F
GLIBC_2.34 __pthread_mutex_unlock F
GLIBC_2.34 __pthread_register_cancel F
GLIBC_2.34 __pthread_register_cancel_defer F
GLIBC_2.34 __pthread_rwlock_clockrdlock64 F
GLIBC_2.34 __pthread_rwlock_clockwrlock64 F
GLIBC_2.34 __pthread_rwlock_timedrdlock64 F
GLIBC_2.34 __pthread_rwlock_timedwrlock64 F
GLIBC_2.34 __pthread_timedjoin_np64 F
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 __sched_rr_get_interval64 F
GLIBC_2.34 __select64 F
GLIBC_2.34 __sem_clockwait64 F
GLIBC_2.34 __sem_timedwait64 F
GLIBC_2.34 __semctl64 F
GLIBC_2.34 __semtimedop64 F
GLIBC_2.34 __setitimer64 F
GLIBC_2.34 __settimeofday64 F
GLIBC_2.34 __shmctl64 F
GLIBC_2.34 __sigtimedwait64 F
GLIBC_2.34 __stat64_time64 F
GLIBC_2.34 __thrd_sleep64 F
GLIBC_2.34 __time64 F
GLIBC_2.34 __timegm64 F
GLIBC_2.34 __timerfd_gettime64 F
GLIBC_2.34 __timerfd_settime64 F
GLIBC_2.34 __timespec_get64 F
GLIBC_2.34 __timespec_getres64 F
GLIBC_2.34 __utime64 F
GLIBC_2.34 __utimensat64 F
GLIBC_2.34 __utimes64 F
GLIBC_2.34 __wait3_time64 F
GLIBC_2.34 __wait4_time64 F
GLIBC_2.34 call_once F
GLIBC_2.34 cnd_broadcast F
GLIBC_2.34 cnd_destroy F

View File

@ -33,3 +33,8 @@ GLIBC_2.18 timer_delete F
GLIBC_2.18 timer_getoverrun F
GLIBC_2.18 timer_gettime F
GLIBC_2.18 timer_settime F
GLIBC_2.34 __aio_suspend_time64 F
GLIBC_2.34 __mq_timedreceive_time64 F
GLIBC_2.34 __mq_timedsend_time64 F
GLIBC_2.34 __timer_gettime64 F
GLIBC_2.34 __timer_settime64 F

View File

@ -2,3 +2,4 @@ GLIBC_2.18 gai_cancel F
GLIBC_2.18 gai_error F
GLIBC_2.18 gai_suspend F
GLIBC_2.18 getaddrinfo_a F
GLIBC_2.34 __gai_suspend_time64 F

View File

@ -2325,16 +2325,83 @@ GLIBC_2.33 mknod F
GLIBC_2.33 mknodat F
GLIBC_2.33 stat F
GLIBC_2.33 stat64 F
GLIBC_2.34 ___adjtimex64 F
GLIBC_2.34 __adjtime64 F
GLIBC_2.34 __clock_adjtime64 F
GLIBC_2.34 __clock_getres64 F
GLIBC_2.34 __clock_gettime64 F
GLIBC_2.34 __clock_nanosleep_time64 F
GLIBC_2.34 __clock_settime64 F
GLIBC_2.34 __cnd_timedwait64 F
GLIBC_2.34 __ctime64 F
GLIBC_2.34 __ctime64_r F
GLIBC_2.34 __difftime64 F
GLIBC_2.34 __fstat64_time64 F
GLIBC_2.34 __fstatat64_time64 F
GLIBC_2.34 __futimens64 F
GLIBC_2.34 __futimes64 F
GLIBC_2.34 __futimesat64 F
GLIBC_2.34 __getitimer64 F
GLIBC_2.34 __getrusage64 F
GLIBC_2.34 __gettimeofday64 F
GLIBC_2.34 __gmtime64 F
GLIBC_2.34 __gmtime64_r F
GLIBC_2.34 __libc_start_main F
GLIBC_2.34 __localtime64 F
GLIBC_2.34 __localtime64_r F
GLIBC_2.34 __lstat64_time64 F
GLIBC_2.34 __lutimes64 F
GLIBC_2.34 __mktime64 F
GLIBC_2.34 __msgctl64 F
GLIBC_2.34 __mtx_timedlock64 F
GLIBC_2.34 __nanosleep64 F
GLIBC_2.34 __ntp_gettime64 F
GLIBC_2.34 __ntp_gettimex64 F
GLIBC_2.34 __ppoll64 F
GLIBC_2.34 __pselect64 F
GLIBC_2.34 __pthread_cleanup_routine F
GLIBC_2.34 __pthread_clockjoin_np64 F
GLIBC_2.34 __pthread_cond_clockwait64 F
GLIBC_2.34 __pthread_cond_timedwait64 F
GLIBC_2.34 __pthread_key_create F
GLIBC_2.34 __pthread_mutex_clocklock64 F
GLIBC_2.34 __pthread_mutex_lock F
GLIBC_2.34 __pthread_mutex_timedlock64 F
GLIBC_2.34 __pthread_mutex_unlock F
GLIBC_2.34 __pthread_register_cancel F
GLIBC_2.34 __pthread_register_cancel_defer F
GLIBC_2.34 __pthread_rwlock_clockrdlock64 F
GLIBC_2.34 __pthread_rwlock_clockwrlock64 F
GLIBC_2.34 __pthread_rwlock_timedrdlock64 F
GLIBC_2.34 __pthread_rwlock_timedwrlock64 F
GLIBC_2.34 __pthread_timedjoin_np64 F
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 __sched_rr_get_interval64 F
GLIBC_2.34 __select64 F
GLIBC_2.34 __sem_clockwait64 F
GLIBC_2.34 __sem_timedwait64 F
GLIBC_2.34 __semctl64 F
GLIBC_2.34 __semtimedop64 F
GLIBC_2.34 __setitimer64 F
GLIBC_2.34 __settimeofday64 F
GLIBC_2.34 __shmctl64 F
GLIBC_2.34 __sigtimedwait64 F
GLIBC_2.34 __stat64_time64 F
GLIBC_2.34 __thrd_sleep64 F
GLIBC_2.34 __time64 F
GLIBC_2.34 __timegm64 F
GLIBC_2.34 __timerfd_gettime64 F
GLIBC_2.34 __timerfd_settime64 F
GLIBC_2.34 __timespec_get64 F
GLIBC_2.34 __timespec_getres64 F
GLIBC_2.34 __utime64 F
GLIBC_2.34 __utimensat64 F
GLIBC_2.34 __utimes64 F
GLIBC_2.34 __wait3_time64 F
GLIBC_2.34 __wait4_time64 F
GLIBC_2.34 call_once F
GLIBC_2.34 cnd_broadcast F
GLIBC_2.34 cnd_destroy F

View File

@ -33,3 +33,8 @@ GLIBC_2.18 timer_delete F
GLIBC_2.18 timer_getoverrun F
GLIBC_2.18 timer_gettime F
GLIBC_2.18 timer_settime F
GLIBC_2.34 __aio_suspend_time64 F
GLIBC_2.34 __mq_timedreceive_time64 F
GLIBC_2.34 __mq_timedsend_time64 F
GLIBC_2.34 __timer_gettime64 F
GLIBC_2.34 __timer_settime64 F

View File

@ -0,0 +1,2 @@
/* ABI support 64-bit in non-default mode. */
#define TIME64_NON_DEFAULT

View File

@ -2323,16 +2323,83 @@ GLIBC_2.33 mknod F
GLIBC_2.33 mknodat F
GLIBC_2.33 stat F
GLIBC_2.33 stat64 F
GLIBC_2.34 ___adjtimex64 F
GLIBC_2.34 __adjtime64 F
GLIBC_2.34 __clock_adjtime64 F
GLIBC_2.34 __clock_getres64 F
GLIBC_2.34 __clock_gettime64 F
GLIBC_2.34 __clock_nanosleep_time64 F
GLIBC_2.34 __clock_settime64 F
GLIBC_2.34 __cnd_timedwait64 F
GLIBC_2.34 __ctime64 F
GLIBC_2.34 __ctime64_r F
GLIBC_2.34 __difftime64 F
GLIBC_2.34 __fstat64_time64 F
GLIBC_2.34 __fstatat64_time64 F
GLIBC_2.34 __futimens64 F
GLIBC_2.34 __futimes64 F
GLIBC_2.34 __futimesat64 F
GLIBC_2.34 __getitimer64 F
GLIBC_2.34 __getrusage64 F
GLIBC_2.34 __gettimeofday64 F
GLIBC_2.34 __gmtime64 F
GLIBC_2.34 __gmtime64_r F
GLIBC_2.34 __libc_start_main F
GLIBC_2.34 __localtime64 F
GLIBC_2.34 __localtime64_r F
GLIBC_2.34 __lstat64_time64 F
GLIBC_2.34 __lutimes64 F
GLIBC_2.34 __mktime64 F
GLIBC_2.34 __msgctl64 F
GLIBC_2.34 __mtx_timedlock64 F
GLIBC_2.34 __nanosleep64 F
GLIBC_2.34 __ntp_gettime64 F
GLIBC_2.34 __ntp_gettimex64 F
GLIBC_2.34 __ppoll64 F
GLIBC_2.34 __pselect64 F
GLIBC_2.34 __pthread_cleanup_routine F
GLIBC_2.34 __pthread_clockjoin_np64 F
GLIBC_2.34 __pthread_cond_clockwait64 F
GLIBC_2.34 __pthread_cond_timedwait64 F
GLIBC_2.34 __pthread_key_create F
GLIBC_2.34 __pthread_mutex_clocklock64 F
GLIBC_2.34 __pthread_mutex_lock F
GLIBC_2.34 __pthread_mutex_timedlock64 F
GLIBC_2.34 __pthread_mutex_unlock F
GLIBC_2.34 __pthread_register_cancel F
GLIBC_2.34 __pthread_register_cancel_defer F
GLIBC_2.34 __pthread_rwlock_clockrdlock64 F
GLIBC_2.34 __pthread_rwlock_clockwrlock64 F
GLIBC_2.34 __pthread_rwlock_timedrdlock64 F
GLIBC_2.34 __pthread_rwlock_timedwrlock64 F
GLIBC_2.34 __pthread_timedjoin_np64 F
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 __sched_rr_get_interval64 F
GLIBC_2.34 __select64 F
GLIBC_2.34 __sem_clockwait64 F
GLIBC_2.34 __sem_timedwait64 F
GLIBC_2.34 __semctl64 F
GLIBC_2.34 __semtimedop64 F
GLIBC_2.34 __setitimer64 F
GLIBC_2.34 __settimeofday64 F
GLIBC_2.34 __shmctl64 F
GLIBC_2.34 __sigtimedwait64 F
GLIBC_2.34 __stat64_time64 F
GLIBC_2.34 __thrd_sleep64 F
GLIBC_2.34 __time64 F
GLIBC_2.34 __timegm64 F
GLIBC_2.34 __timerfd_gettime64 F
GLIBC_2.34 __timerfd_settime64 F
GLIBC_2.34 __timespec_get64 F
GLIBC_2.34 __timespec_getres64 F
GLIBC_2.34 __utime64 F
GLIBC_2.34 __utimensat64 F
GLIBC_2.34 __utimes64 F
GLIBC_2.34 __wait3_time64 F
GLIBC_2.34 __wait4_time64 F
GLIBC_2.34 call_once F
GLIBC_2.34 cnd_broadcast F
GLIBC_2.34 cnd_destroy F

View File

@ -2,3 +2,4 @@ GLIBC_2.2.3 gai_cancel F
GLIBC_2.2.3 gai_error F
GLIBC_2.2.3 gai_suspend F
GLIBC_2.2.3 getaddrinfo_a F
GLIBC_2.34 __gai_suspend_time64 F

View File

@ -32,6 +32,11 @@ GLIBC_2.3.4 mq_setattr F
GLIBC_2.3.4 mq_timedreceive F
GLIBC_2.3.4 mq_timedsend F
GLIBC_2.3.4 mq_unlink F
GLIBC_2.34 __aio_suspend_time64 F
GLIBC_2.34 __mq_timedreceive_time64 F
GLIBC_2.34 __mq_timedsend_time64 F
GLIBC_2.34 __timer_gettime64 F
GLIBC_2.34 __timer_settime64 F
GLIBC_2.4 lio_listio F
GLIBC_2.4 lio_listio64 F
GLIBC_2.7 __mq_open_2 F

View File

@ -2321,16 +2321,83 @@ GLIBC_2.33 mknod F
GLIBC_2.33 mknodat F
GLIBC_2.33 stat F
GLIBC_2.33 stat64 F
GLIBC_2.34 ___adjtimex64 F
GLIBC_2.34 __adjtime64 F
GLIBC_2.34 __clock_adjtime64 F
GLIBC_2.34 __clock_getres64 F
GLIBC_2.34 __clock_gettime64 F
GLIBC_2.34 __clock_nanosleep_time64 F
GLIBC_2.34 __clock_settime64 F
GLIBC_2.34 __cnd_timedwait64 F
GLIBC_2.34 __ctime64 F
GLIBC_2.34 __ctime64_r F
GLIBC_2.34 __difftime64 F
GLIBC_2.34 __fstat64_time64 F
GLIBC_2.34 __fstatat64_time64 F
GLIBC_2.34 __futimens64 F
GLIBC_2.34 __futimes64 F
GLIBC_2.34 __futimesat64 F
GLIBC_2.34 __getitimer64 F
GLIBC_2.34 __getrusage64 F
GLIBC_2.34 __gettimeofday64 F
GLIBC_2.34 __gmtime64 F
GLIBC_2.34 __gmtime64_r F
GLIBC_2.34 __libc_start_main F
GLIBC_2.34 __localtime64 F
GLIBC_2.34 __localtime64_r F
GLIBC_2.34 __lstat64_time64 F
GLIBC_2.34 __lutimes64 F
GLIBC_2.34 __mktime64 F
GLIBC_2.34 __msgctl64 F
GLIBC_2.34 __mtx_timedlock64 F
GLIBC_2.34 __nanosleep64 F
GLIBC_2.34 __ntp_gettime64 F
GLIBC_2.34 __ntp_gettimex64 F
GLIBC_2.34 __ppoll64 F
GLIBC_2.34 __pselect64 F
GLIBC_2.34 __pthread_cleanup_routine F
GLIBC_2.34 __pthread_clockjoin_np64 F
GLIBC_2.34 __pthread_cond_clockwait64 F
GLIBC_2.34 __pthread_cond_timedwait64 F
GLIBC_2.34 __pthread_key_create F
GLIBC_2.34 __pthread_mutex_clocklock64 F
GLIBC_2.34 __pthread_mutex_lock F
GLIBC_2.34 __pthread_mutex_timedlock64 F
GLIBC_2.34 __pthread_mutex_unlock F
GLIBC_2.34 __pthread_register_cancel F
GLIBC_2.34 __pthread_register_cancel_defer F
GLIBC_2.34 __pthread_rwlock_clockrdlock64 F
GLIBC_2.34 __pthread_rwlock_clockwrlock64 F
GLIBC_2.34 __pthread_rwlock_timedrdlock64 F
GLIBC_2.34 __pthread_rwlock_timedwrlock64 F
GLIBC_2.34 __pthread_timedjoin_np64 F
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 __sched_rr_get_interval64 F
GLIBC_2.34 __select64 F
GLIBC_2.34 __sem_clockwait64 F
GLIBC_2.34 __sem_timedwait64 F
GLIBC_2.34 __semctl64 F
GLIBC_2.34 __semtimedop64 F
GLIBC_2.34 __setitimer64 F
GLIBC_2.34 __settimeofday64 F
GLIBC_2.34 __shmctl64 F
GLIBC_2.34 __sigtimedwait64 F
GLIBC_2.34 __stat64_time64 F
GLIBC_2.34 __thrd_sleep64 F
GLIBC_2.34 __time64 F
GLIBC_2.34 __timegm64 F
GLIBC_2.34 __timerfd_gettime64 F
GLIBC_2.34 __timerfd_settime64 F
GLIBC_2.34 __timespec_get64 F
GLIBC_2.34 __timespec_getres64 F
GLIBC_2.34 __utime64 F
GLIBC_2.34 __utimensat64 F
GLIBC_2.34 __utimes64 F
GLIBC_2.34 __wait3_time64 F
GLIBC_2.34 __wait4_time64 F
GLIBC_2.34 call_once F
GLIBC_2.34 cnd_broadcast F
GLIBC_2.34 cnd_destroy F

View File

@ -0,0 +1,2 @@
/* ABI support 64-bit in non-default mode. */
#define TIME64_NON_DEFAULT

View File

@ -2,3 +2,4 @@ GLIBC_2.2.3 gai_cancel F
GLIBC_2.2.3 gai_error F
GLIBC_2.2.3 gai_suspend F
GLIBC_2.2.3 getaddrinfo_a F
GLIBC_2.34 __gai_suspend_time64 F

View File

@ -2329,16 +2329,83 @@ GLIBC_2.33 mknod F
GLIBC_2.33 mknodat F
GLIBC_2.33 stat F
GLIBC_2.33 stat64 F
GLIBC_2.34 ___adjtimex64 F
GLIBC_2.34 __adjtime64 F
GLIBC_2.34 __clock_adjtime64 F
GLIBC_2.34 __clock_getres64 F
GLIBC_2.34 __clock_gettime64 F
GLIBC_2.34 __clock_nanosleep_time64 F
GLIBC_2.34 __clock_settime64 F
GLIBC_2.34 __cnd_timedwait64 F
GLIBC_2.34 __ctime64 F
GLIBC_2.34 __ctime64_r F
GLIBC_2.34 __difftime64 F
GLIBC_2.34 __fstat64_time64 F
GLIBC_2.34 __fstatat64_time64 F
GLIBC_2.34 __futimens64 F
GLIBC_2.34 __futimes64 F
GLIBC_2.34 __futimesat64 F
GLIBC_2.34 __getitimer64 F
GLIBC_2.34 __getrusage64 F
GLIBC_2.34 __gettimeofday64 F
GLIBC_2.34 __gmtime64 F
GLIBC_2.34 __gmtime64_r F
GLIBC_2.34 __libc_start_main F
GLIBC_2.34 __localtime64 F
GLIBC_2.34 __localtime64_r F
GLIBC_2.34 __lstat64_time64 F
GLIBC_2.34 __lutimes64 F
GLIBC_2.34 __mktime64 F
GLIBC_2.34 __msgctl64 F
GLIBC_2.34 __mtx_timedlock64 F
GLIBC_2.34 __nanosleep64 F
GLIBC_2.34 __ntp_gettime64 F
GLIBC_2.34 __ntp_gettimex64 F
GLIBC_2.34 __ppoll64 F
GLIBC_2.34 __pselect64 F
GLIBC_2.34 __pthread_cleanup_routine F
GLIBC_2.34 __pthread_clockjoin_np64 F
GLIBC_2.34 __pthread_cond_clockwait64 F
GLIBC_2.34 __pthread_cond_timedwait64 F
GLIBC_2.34 __pthread_key_create F
GLIBC_2.34 __pthread_mutex_clocklock64 F
GLIBC_2.34 __pthread_mutex_lock F
GLIBC_2.34 __pthread_mutex_timedlock64 F
GLIBC_2.34 __pthread_mutex_unlock F
GLIBC_2.34 __pthread_register_cancel F
GLIBC_2.34 __pthread_register_cancel_defer F
GLIBC_2.34 __pthread_rwlock_clockrdlock64 F
GLIBC_2.34 __pthread_rwlock_clockwrlock64 F
GLIBC_2.34 __pthread_rwlock_timedrdlock64 F
GLIBC_2.34 __pthread_rwlock_timedwrlock64 F
GLIBC_2.34 __pthread_timedjoin_np64 F
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 __sched_rr_get_interval64 F
GLIBC_2.34 __select64 F
GLIBC_2.34 __sem_clockwait64 F
GLIBC_2.34 __sem_timedwait64 F
GLIBC_2.34 __semctl64 F
GLIBC_2.34 __semtimedop64 F
GLIBC_2.34 __setitimer64 F
GLIBC_2.34 __settimeofday64 F
GLIBC_2.34 __shmctl64 F
GLIBC_2.34 __sigtimedwait64 F
GLIBC_2.34 __stat64_time64 F
GLIBC_2.34 __thrd_sleep64 F
GLIBC_2.34 __time64 F
GLIBC_2.34 __timegm64 F
GLIBC_2.34 __timerfd_gettime64 F
GLIBC_2.34 __timerfd_settime64 F
GLIBC_2.34 __timespec_get64 F
GLIBC_2.34 __timespec_getres64 F
GLIBC_2.34 __utime64 F
GLIBC_2.34 __utimensat64 F
GLIBC_2.34 __utimes64 F
GLIBC_2.34 __wait3_time64 F
GLIBC_2.34 __wait4_time64 F
GLIBC_2.34 call_once F
GLIBC_2.34 cnd_broadcast F
GLIBC_2.34 cnd_destroy F

View File

@ -32,6 +32,11 @@ GLIBC_2.3.4 mq_setattr F
GLIBC_2.3.4 mq_timedreceive F
GLIBC_2.3.4 mq_timedsend F
GLIBC_2.3.4 mq_unlink F
GLIBC_2.34 __aio_suspend_time64 F
GLIBC_2.34 __mq_timedreceive_time64 F
GLIBC_2.34 __mq_timedsend_time64 F
GLIBC_2.34 __timer_gettime64 F
GLIBC_2.34 __timer_settime64 F
GLIBC_2.4 lio_listio F
GLIBC_2.4 lio_listio64 F
GLIBC_2.7 __mq_open_2 F

View File

@ -0,0 +1,2 @@
/* ABI support 64-bit in non-default mode. */
#define TIME64_NON_DEFAULT

View File

@ -21,7 +21,7 @@
#include "thrd_priv.h"
int
___mtx_timedlock64 (mtx_t *restrict mutex,
__mtx_timedlock64 (mtx_t *restrict mutex,
const struct __timespec64 *restrict time_point)
{
int err_code = __pthread_mutex_timedlock64 ((pthread_mutex_t *)mutex,
@ -30,9 +30,9 @@ ___mtx_timedlock64 (mtx_t *restrict mutex,
}
#if __TIMESIZE == 64
strong_alias (___mtx_timedlock64, ___mtx_timedlock)
strong_alias (__mtx_timedlock64, ___mtx_timedlock)
#else
libc_hidden_ver (___mtx_timedlock64, __mtx_timedlock64)
libc_hidden_def (__mtx_timedlock64)
int
___mtx_timedlock (mtx_t *restrict mutex,

View File

@ -2,3 +2,4 @@ GLIBC_2.21 gai_cancel F
GLIBC_2.21 gai_error F
GLIBC_2.21 gai_suspend F
GLIBC_2.21 getaddrinfo_a F
GLIBC_2.34 __gai_suspend_time64 F

View File

@ -2367,16 +2367,83 @@ GLIBC_2.33 mknod F
GLIBC_2.33 mknodat F
GLIBC_2.33 stat F
GLIBC_2.33 stat64 F
GLIBC_2.34 ___adjtimex64 F
GLIBC_2.34 __adjtime64 F
GLIBC_2.34 __clock_adjtime64 F
GLIBC_2.34 __clock_getres64 F
GLIBC_2.34 __clock_gettime64 F
GLIBC_2.34 __clock_nanosleep_time64 F
GLIBC_2.34 __clock_settime64 F
GLIBC_2.34 __cnd_timedwait64 F
GLIBC_2.34 __ctime64 F
GLIBC_2.34 __ctime64_r F
GLIBC_2.34 __difftime64 F
GLIBC_2.34 __fstat64_time64 F
GLIBC_2.34 __fstatat64_time64 F
GLIBC_2.34 __futimens64 F
GLIBC_2.34 __futimes64 F
GLIBC_2.34 __futimesat64 F
GLIBC_2.34 __getitimer64 F
GLIBC_2.34 __getrusage64 F
GLIBC_2.34 __gettimeofday64 F
GLIBC_2.34 __gmtime64 F
GLIBC_2.34 __gmtime64_r F
GLIBC_2.34 __libc_start_main F
GLIBC_2.34 __localtime64 F
GLIBC_2.34 __localtime64_r F
GLIBC_2.34 __lstat64_time64 F
GLIBC_2.34 __lutimes64 F
GLIBC_2.34 __mktime64 F
GLIBC_2.34 __msgctl64 F
GLIBC_2.34 __mtx_timedlock64 F
GLIBC_2.34 __nanosleep64 F
GLIBC_2.34 __ntp_gettime64 F
GLIBC_2.34 __ntp_gettimex64 F
GLIBC_2.34 __ppoll64 F
GLIBC_2.34 __pselect64 F
GLIBC_2.34 __pthread_cleanup_routine F
GLIBC_2.34 __pthread_clockjoin_np64 F
GLIBC_2.34 __pthread_cond_clockwait64 F
GLIBC_2.34 __pthread_cond_timedwait64 F
GLIBC_2.34 __pthread_key_create F
GLIBC_2.34 __pthread_mutex_clocklock64 F
GLIBC_2.34 __pthread_mutex_lock F
GLIBC_2.34 __pthread_mutex_timedlock64 F
GLIBC_2.34 __pthread_mutex_unlock F
GLIBC_2.34 __pthread_register_cancel F
GLIBC_2.34 __pthread_register_cancel_defer F
GLIBC_2.34 __pthread_rwlock_clockrdlock64 F
GLIBC_2.34 __pthread_rwlock_clockwrlock64 F
GLIBC_2.34 __pthread_rwlock_timedrdlock64 F
GLIBC_2.34 __pthread_rwlock_timedwrlock64 F
GLIBC_2.34 __pthread_timedjoin_np64 F
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 __sched_rr_get_interval64 F
GLIBC_2.34 __select64 F
GLIBC_2.34 __sem_clockwait64 F
GLIBC_2.34 __sem_timedwait64 F
GLIBC_2.34 __semctl64 F
GLIBC_2.34 __semtimedop64 F
GLIBC_2.34 __setitimer64 F
GLIBC_2.34 __settimeofday64 F
GLIBC_2.34 __shmctl64 F
GLIBC_2.34 __sigtimedwait64 F
GLIBC_2.34 __stat64_time64 F
GLIBC_2.34 __thrd_sleep64 F
GLIBC_2.34 __time64 F
GLIBC_2.34 __timegm64 F
GLIBC_2.34 __timerfd_gettime64 F
GLIBC_2.34 __timerfd_settime64 F
GLIBC_2.34 __timespec_get64 F
GLIBC_2.34 __timespec_getres64 F
GLIBC_2.34 __utime64 F
GLIBC_2.34 __utimensat64 F
GLIBC_2.34 __utimes64 F
GLIBC_2.34 __wait3_time64 F
GLIBC_2.34 __wait4_time64 F
GLIBC_2.34 call_once F
GLIBC_2.34 cnd_broadcast F
GLIBC_2.34 cnd_destroy F

View File

@ -33,3 +33,8 @@ GLIBC_2.21 timer_delete F
GLIBC_2.21 timer_getoverrun F
GLIBC_2.21 timer_gettime F
GLIBC_2.21 timer_settime F
GLIBC_2.34 __aio_suspend_time64 F
GLIBC_2.34 __mq_timedreceive_time64 F
GLIBC_2.34 __mq_timedsend_time64 F
GLIBC_2.34 __timer_gettime64 F
GLIBC_2.34 __timer_settime64 F

View File

@ -0,0 +1,2 @@
/* ABI support 64-bit in non-default mode. */
#define TIME64_NON_DEFAULT

View File

@ -2385,16 +2385,83 @@ GLIBC_2.33 mknod F
GLIBC_2.33 mknodat F
GLIBC_2.33 stat F
GLIBC_2.33 stat64 F
GLIBC_2.34 ___adjtimex64 F
GLIBC_2.34 __adjtime64 F
GLIBC_2.34 __clock_adjtime64 F
GLIBC_2.34 __clock_getres64 F
GLIBC_2.34 __clock_gettime64 F
GLIBC_2.34 __clock_nanosleep_time64 F
GLIBC_2.34 __clock_settime64 F
GLIBC_2.34 __cnd_timedwait64 F
GLIBC_2.34 __ctime64 F
GLIBC_2.34 __ctime64_r F
GLIBC_2.34 __difftime64 F
GLIBC_2.34 __fstat64_time64 F
GLIBC_2.34 __fstatat64_time64 F
GLIBC_2.34 __futimens64 F
GLIBC_2.34 __futimes64 F
GLIBC_2.34 __futimesat64 F
GLIBC_2.34 __getitimer64 F
GLIBC_2.34 __getrusage64 F
GLIBC_2.34 __gettimeofday64 F
GLIBC_2.34 __gmtime64 F
GLIBC_2.34 __gmtime64_r F
GLIBC_2.34 __libc_start_main F
GLIBC_2.34 __localtime64 F
GLIBC_2.34 __localtime64_r F
GLIBC_2.34 __lstat64_time64 F
GLIBC_2.34 __lutimes64 F
GLIBC_2.34 __mktime64 F
GLIBC_2.34 __msgctl64 F
GLIBC_2.34 __mtx_timedlock64 F
GLIBC_2.34 __nanosleep64 F
GLIBC_2.34 __ntp_gettime64 F
GLIBC_2.34 __ntp_gettimex64 F
GLIBC_2.34 __ppoll64 F
GLIBC_2.34 __pselect64 F
GLIBC_2.34 __pthread_cleanup_routine F
GLIBC_2.34 __pthread_clockjoin_np64 F
GLIBC_2.34 __pthread_cond_clockwait64 F
GLIBC_2.34 __pthread_cond_timedwait64 F
GLIBC_2.34 __pthread_key_create F
GLIBC_2.34 __pthread_mutex_clocklock64 F
GLIBC_2.34 __pthread_mutex_lock F
GLIBC_2.34 __pthread_mutex_timedlock64 F
GLIBC_2.34 __pthread_mutex_unlock F
GLIBC_2.34 __pthread_register_cancel F
GLIBC_2.34 __pthread_register_cancel_defer F
GLIBC_2.34 __pthread_rwlock_clockrdlock64 F
GLIBC_2.34 __pthread_rwlock_clockwrlock64 F
GLIBC_2.34 __pthread_rwlock_timedrdlock64 F
GLIBC_2.34 __pthread_rwlock_timedwrlock64 F
GLIBC_2.34 __pthread_timedjoin_np64 F
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 __sched_rr_get_interval64 F
GLIBC_2.34 __select64 F
GLIBC_2.34 __sem_clockwait64 F
GLIBC_2.34 __sem_timedwait64 F
GLIBC_2.34 __semctl64 F
GLIBC_2.34 __semtimedop64 F
GLIBC_2.34 __setitimer64 F
GLIBC_2.34 __settimeofday64 F
GLIBC_2.34 __shmctl64 F
GLIBC_2.34 __sigtimedwait64 F
GLIBC_2.34 __stat64_time64 F
GLIBC_2.34 __thrd_sleep64 F
GLIBC_2.34 __time64 F
GLIBC_2.34 __timegm64 F
GLIBC_2.34 __timerfd_gettime64 F
GLIBC_2.34 __timerfd_settime64 F
GLIBC_2.34 __timespec_get64 F
GLIBC_2.34 __timespec_getres64 F
GLIBC_2.34 __utime64 F
GLIBC_2.34 __utimensat64 F
GLIBC_2.34 __utimes64 F
GLIBC_2.34 __wait3_time64 F
GLIBC_2.34 __wait4_time64 F
GLIBC_2.34 call_once F
GLIBC_2.34 cnd_broadcast F
GLIBC_2.34 cnd_destroy F

View File

@ -2,3 +2,4 @@ GLIBC_2.2.3 gai_cancel F
GLIBC_2.2.3 gai_error F
GLIBC_2.2.3 gai_suspend F
GLIBC_2.2.3 getaddrinfo_a F
GLIBC_2.34 __gai_suspend_time64 F

View File

@ -32,6 +32,11 @@ GLIBC_2.3.4 mq_setattr F
GLIBC_2.3.4 mq_timedreceive F
GLIBC_2.3.4 mq_timedsend F
GLIBC_2.3.4 mq_unlink F
GLIBC_2.34 __aio_suspend_time64 F
GLIBC_2.34 __mq_timedreceive_time64 F
GLIBC_2.34 __mq_timedsend_time64 F
GLIBC_2.34 __timer_gettime64 F
GLIBC_2.34 __timer_settime64 F
GLIBC_2.4 lio_listio F
GLIBC_2.4 lio_listio64 F
GLIBC_2.7 __mq_open_2 F

View File

@ -2418,16 +2418,83 @@ GLIBC_2.33 mknod F
GLIBC_2.33 mknodat F
GLIBC_2.33 stat F
GLIBC_2.33 stat64 F
GLIBC_2.34 ___adjtimex64 F
GLIBC_2.34 __adjtime64 F
GLIBC_2.34 __clock_adjtime64 F
GLIBC_2.34 __clock_getres64 F
GLIBC_2.34 __clock_gettime64 F
GLIBC_2.34 __clock_nanosleep_time64 F
GLIBC_2.34 __clock_settime64 F
GLIBC_2.34 __cnd_timedwait64 F
GLIBC_2.34 __ctime64 F
GLIBC_2.34 __ctime64_r F
GLIBC_2.34 __difftime64 F
GLIBC_2.34 __fstat64_time64 F
GLIBC_2.34 __fstatat64_time64 F
GLIBC_2.34 __futimens64 F
GLIBC_2.34 __futimes64 F
GLIBC_2.34 __futimesat64 F
GLIBC_2.34 __getitimer64 F
GLIBC_2.34 __getrusage64 F
GLIBC_2.34 __gettimeofday64 F
GLIBC_2.34 __gmtime64 F
GLIBC_2.34 __gmtime64_r F
GLIBC_2.34 __libc_start_main F
GLIBC_2.34 __localtime64 F
GLIBC_2.34 __localtime64_r F
GLIBC_2.34 __lstat64_time64 F
GLIBC_2.34 __lutimes64 F
GLIBC_2.34 __mktime64 F
GLIBC_2.34 __msgctl64 F
GLIBC_2.34 __mtx_timedlock64 F
GLIBC_2.34 __nanosleep64 F
GLIBC_2.34 __ntp_gettime64 F
GLIBC_2.34 __ntp_gettimex64 F
GLIBC_2.34 __ppoll64 F
GLIBC_2.34 __pselect64 F
GLIBC_2.34 __pthread_cleanup_routine F
GLIBC_2.34 __pthread_clockjoin_np64 F
GLIBC_2.34 __pthread_cond_clockwait64 F
GLIBC_2.34 __pthread_cond_timedwait64 F
GLIBC_2.34 __pthread_key_create F
GLIBC_2.34 __pthread_mutex_clocklock64 F
GLIBC_2.34 __pthread_mutex_lock F
GLIBC_2.34 __pthread_mutex_timedlock64 F
GLIBC_2.34 __pthread_mutex_unlock F
GLIBC_2.34 __pthread_register_cancel F
GLIBC_2.34 __pthread_register_cancel_defer F
GLIBC_2.34 __pthread_rwlock_clockrdlock64 F
GLIBC_2.34 __pthread_rwlock_clockwrlock64 F
GLIBC_2.34 __pthread_rwlock_timedrdlock64 F
GLIBC_2.34 __pthread_rwlock_timedwrlock64 F
GLIBC_2.34 __pthread_timedjoin_np64 F
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 __sched_rr_get_interval64 F
GLIBC_2.34 __select64 F
GLIBC_2.34 __sem_clockwait64 F
GLIBC_2.34 __sem_timedwait64 F
GLIBC_2.34 __semctl64 F
GLIBC_2.34 __semtimedop64 F
GLIBC_2.34 __setitimer64 F
GLIBC_2.34 __settimeofday64 F
GLIBC_2.34 __shmctl64 F
GLIBC_2.34 __sigtimedwait64 F
GLIBC_2.34 __stat64_time64 F
GLIBC_2.34 __thrd_sleep64 F
GLIBC_2.34 __time64 F
GLIBC_2.34 __timegm64 F
GLIBC_2.34 __timerfd_gettime64 F
GLIBC_2.34 __timerfd_settime64 F
GLIBC_2.34 __timespec_get64 F
GLIBC_2.34 __timespec_getres64 F
GLIBC_2.34 __utime64 F
GLIBC_2.34 __utimensat64 F
GLIBC_2.34 __utimes64 F
GLIBC_2.34 __wait3_time64 F
GLIBC_2.34 __wait4_time64 F
GLIBC_2.34 call_once F
GLIBC_2.34 cnd_broadcast F
GLIBC_2.34 cnd_destroy F

View File

@ -0,0 +1,2 @@
/* ABI support 64-bit in non-default mode. */
#define TIME64_NON_DEFAULT

View File

@ -2,3 +2,4 @@ GLIBC_2.2.3 gai_cancel F
GLIBC_2.2.3 gai_error F
GLIBC_2.2.3 gai_suspend F
GLIBC_2.2.3 getaddrinfo_a F
GLIBC_2.34 __gai_suspend_time64 F

View File

@ -2383,16 +2383,83 @@ GLIBC_2.33 mknod F
GLIBC_2.33 mknodat F
GLIBC_2.33 stat F
GLIBC_2.33 stat64 F
GLIBC_2.34 ___adjtimex64 F
GLIBC_2.34 __adjtime64 F
GLIBC_2.34 __clock_adjtime64 F
GLIBC_2.34 __clock_getres64 F
GLIBC_2.34 __clock_gettime64 F
GLIBC_2.34 __clock_nanosleep_time64 F
GLIBC_2.34 __clock_settime64 F
GLIBC_2.34 __cnd_timedwait64 F
GLIBC_2.34 __ctime64 F
GLIBC_2.34 __ctime64_r F
GLIBC_2.34 __difftime64 F
GLIBC_2.34 __fstat64_time64 F
GLIBC_2.34 __fstatat64_time64 F
GLIBC_2.34 __futimens64 F
GLIBC_2.34 __futimes64 F
GLIBC_2.34 __futimesat64 F
GLIBC_2.34 __getitimer64 F
GLIBC_2.34 __getrusage64 F
GLIBC_2.34 __gettimeofday64 F
GLIBC_2.34 __gmtime64 F
GLIBC_2.34 __gmtime64_r F
GLIBC_2.34 __libc_start_main F
GLIBC_2.34 __localtime64 F
GLIBC_2.34 __localtime64_r F
GLIBC_2.34 __lstat64_time64 F
GLIBC_2.34 __lutimes64 F
GLIBC_2.34 __mktime64 F
GLIBC_2.34 __msgctl64 F
GLIBC_2.34 __mtx_timedlock64 F
GLIBC_2.34 __nanosleep64 F
GLIBC_2.34 __ntp_gettime64 F
GLIBC_2.34 __ntp_gettimex64 F
GLIBC_2.34 __ppoll64 F
GLIBC_2.34 __pselect64 F
GLIBC_2.34 __pthread_cleanup_routine F
GLIBC_2.34 __pthread_clockjoin_np64 F
GLIBC_2.34 __pthread_cond_clockwait64 F
GLIBC_2.34 __pthread_cond_timedwait64 F
GLIBC_2.34 __pthread_key_create F
GLIBC_2.34 __pthread_mutex_clocklock64 F
GLIBC_2.34 __pthread_mutex_lock F
GLIBC_2.34 __pthread_mutex_timedlock64 F
GLIBC_2.34 __pthread_mutex_unlock F
GLIBC_2.34 __pthread_register_cancel F
GLIBC_2.34 __pthread_register_cancel_defer F
GLIBC_2.34 __pthread_rwlock_clockrdlock64 F
GLIBC_2.34 __pthread_rwlock_clockwrlock64 F
GLIBC_2.34 __pthread_rwlock_timedrdlock64 F
GLIBC_2.34 __pthread_rwlock_timedwrlock64 F
GLIBC_2.34 __pthread_timedjoin_np64 F
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 __sched_rr_get_interval64 F
GLIBC_2.34 __select64 F
GLIBC_2.34 __sem_clockwait64 F
GLIBC_2.34 __sem_timedwait64 F
GLIBC_2.34 __semctl64 F
GLIBC_2.34 __semtimedop64 F
GLIBC_2.34 __setitimer64 F
GLIBC_2.34 __settimeofday64 F
GLIBC_2.34 __shmctl64 F
GLIBC_2.34 __sigtimedwait64 F
GLIBC_2.34 __stat64_time64 F
GLIBC_2.34 __thrd_sleep64 F
GLIBC_2.34 __time64 F
GLIBC_2.34 __timegm64 F
GLIBC_2.34 __timerfd_gettime64 F
GLIBC_2.34 __timerfd_settime64 F
GLIBC_2.34 __timespec_get64 F
GLIBC_2.34 __timespec_getres64 F
GLIBC_2.34 __utime64 F
GLIBC_2.34 __utimensat64 F
GLIBC_2.34 __utimes64 F
GLIBC_2.34 __wait3_time64 F
GLIBC_2.34 __wait4_time64 F
GLIBC_2.34 call_once F
GLIBC_2.34 cnd_broadcast F
GLIBC_2.34 cnd_destroy F

View File

@ -32,6 +32,11 @@ GLIBC_2.3.4 mq_setattr F
GLIBC_2.3.4 mq_timedreceive F
GLIBC_2.3.4 mq_timedsend F
GLIBC_2.3.4 mq_unlink F
GLIBC_2.34 __aio_suspend_time64 F
GLIBC_2.34 __mq_timedreceive_time64 F
GLIBC_2.34 __mq_timedsend_time64 F
GLIBC_2.34 __timer_gettime64 F
GLIBC_2.34 __timer_settime64 F
GLIBC_2.4 lio_listio F
GLIBC_2.4 lio_listio64 F
GLIBC_2.7 __mq_open_2 F

View File

@ -0,0 +1,2 @@
/* ABI support 64-bit in non-default mode. */
#define TIME64_NON_DEFAULT

View File

@ -21,7 +21,6 @@
#include <ipc_priv.h>
#include <sysdep.h>
#include <shlib-compat.h>
#include <bits/types/struct_semid64_ds.h> /* For __semid64_ds. */
#include <linux/posix_types.h> /* For __kernel_mode_t. */
/* The struct used to issue the syscall. For architectures that assume

Some files were not shown because too many files have changed in this diff Show More