musl/arch/powerpc/bits
Rich Felker 5a105f19b5 remove legacy clock_gettime and gettimeofday from public syscall.h
some nontrivial number of applications have historically performed
direct syscalls for these operations rather than using the public
functions. such usage is invalid now that time_t is 64-bit and these
syscalls no longer match the types they are used with, and it was
already harmful before (by suppressing use of vdso).

since syscall() has no type safety, incorrect usage of these syscalls
can't be caught at compile-time. so, without manually inspecting or
running additional tools to check sources, the risk of such errors
slipping through is high.

this patch renames the syscalls on 32-bit archs to clock_gettime32 and
gettimeofday_time32, so that applications using the original names
will fail to build without being fixed.

note that there are a number of other syscalls that may also be unsafe
to use directly after the time64 switchover, but (1) these are the
main two that seem to be in widespread use, and (2) most of the others
continue to have valid usage with a null timeval/timespec argument, as
the argument is an optional timeout or similar.
2020-01-30 11:25:07 -05:00
..
alltypes.h.in move time_t and suseconds_t definitions to common alltypes.h.in 2019-11-02 18:30:56 -04:00
errno.h fix spurious trailing whitespace in powerpc & powerpc64 bits/errno.h 2016-05-08 23:16:14 -04:00
fcntl.h move O_PATH definition back to arch bits 2015-04-01 19:31:06 -04:00
fenv.h add powerpc soft-float support 2016-03-06 17:03:01 -05:00
float.h fix FLT_ROUNDS to reflect the current rounding mode 2015-03-07 12:05:28 -05:00
hwcap.h powerpc: update hwcap.h for linux v4.15 2018-02-22 18:49:16 -05:00
ioctl.h switch all existing 32-bit archs to 64-bit time_t 2019-11-02 18:30:56 -04:00
ipc.h move IPC_64 from public bits/ipc.h to syscall_arch.h 2019-07-30 14:23:56 -04:00
ipcstat.h switch all existing 32-bit archs to 64-bit time_t 2019-11-02 18:30:56 -04:00
mman.h add MAP_SYNC and MAP_SHARED_VALIDATE from linux v4.15 2018-02-22 18:48:58 -05:00
msg.h switch all existing 32-bit archs to 64-bit time_t 2019-11-02 18:30:56 -04:00
posix.h PPC port cleaned up, static linking works well now. 2012-11-13 19:12:25 +01:00
ptrace.h powerpc: add PTRACE_SYSEMU from linux v4.20 2019-03-13 12:33:41 -04:00
reg.h PPC port cleaned up, static linking works well now. 2012-11-13 19:12:25 +01:00
sem.h switch all existing 32-bit archs to 64-bit time_t 2019-11-02 18:30:56 -04:00
setjmp.h change jmp_buf to share an underlying type and struct tag with sigjmp_buf 2013-07-24 02:17:02 -04:00
shm.h switch all existing 32-bit archs to 64-bit time_t 2019-11-02 18:30:56 -04:00
signal.h use struct pt_regs * rather than void * for powerpc[64] sigcontext regs 2019-10-19 15:53:43 -04:00
socket.h move time64 socket options from arch bits to top-level sys/socket.h 2019-11-02 18:30:56 -04:00
stat.h switch all existing 32-bit archs to 64-bit time_t 2019-11-02 18:30:56 -04:00
stdint.h remove SIG_ATOMIC_MIN/MAX from stdint bits headers 2013-07-22 17:02:03 -04:00
syscall.h.in remove legacy clock_gettime and gettimeofday from public syscall.h 2020-01-30 11:25:07 -05:00
termios.h fix conflicting mips and powerpc definitions for TIOCSER_TEMT macro 2019-07-10 17:09:49 -04:00
user.h fix clash between sys/user.h and kernel ptrace.h on powerpc[64], sh 2019-08-19 00:32:11 -04:00