diff options
author | Philip Guenther <guenther@cvs.openbsd.org> | 2013-08-13 05:52:28 +0000 |
---|---|---|
committer | Philip Guenther <guenther@cvs.openbsd.org> | 2013-08-13 05:52:28 +0000 |
commit | f2b95a621a9fd41d222844eda237f607eb14d49c (patch) | |
tree | 38d62981cd1caedc3a6a01713c2e4266107b7220 /libexec/ld.so | |
parent | bee789b12305f3c5e594fe03c965e0786969eeb7 (diff) |
Switch time_t, ino_t, clock_t, and struct kevent's ident and data
members to 64bit types. Assign new syscall numbers for (almost
all) the syscalls that involve the affected types, including anything
with time_t, timeval, itimerval, timespec, rusage, dirent, stat,
or kevent arguments. Add a d_off member to struct dirent and replace
getdirentries() with getdents(), thus immensely simplifying and
accelerating telldir/seekdir. Build perl with -DBIG_TIME.
Bump the major on every single base library: the compat bits included
here are only good enough to make the transition; the T32 compat
option will be burned as soon as we've reached the new world are
are happy with the snapshots for all architectures.
DANGER: ABI incompatibility. Updating to this kernel requires extra
work or you won't be able to login: install a snapshot instead.
Much assistance in fixing userland issues from deraadt@ and tedu@
and build assistance from todd@ and otto@
Diffstat (limited to 'libexec/ld.so')
-rw-r--r-- | libexec/ld.so/alpha/ldasm.S | 8 | ||||
-rw-r--r-- | libexec/ld.so/alpha/syscall.h | 4 | ||||
-rw-r--r-- | libexec/ld.so/amd64/ldasm.S | 4 | ||||
-rw-r--r-- | libexec/ld.so/amd64/syscall.h | 4 | ||||
-rw-r--r-- | libexec/ld.so/arm/ldasm.S | 4 | ||||
-rw-r--r-- | libexec/ld.so/arm/syscall.h | 4 | ||||
-rw-r--r-- | libexec/ld.so/dir.c | 10 | ||||
-rw-r--r-- | libexec/ld.so/hppa/ldasm.S | 8 | ||||
-rw-r--r-- | libexec/ld.so/hppa/syscall.h | 4 | ||||
-rw-r--r-- | libexec/ld.so/i386/ldasm.S | 4 | ||||
-rw-r--r-- | libexec/ld.so/i386/syscall.h | 4 | ||||
-rw-r--r-- | libexec/ld.so/m68k/ldasm.S | 4 | ||||
-rw-r--r-- | libexec/ld.so/m68k/syscall.h | 4 | ||||
-rw-r--r-- | libexec/ld.so/m88k/ldasm.S | 4 | ||||
-rw-r--r-- | libexec/ld.so/m88k/syscall.h | 4 | ||||
-rw-r--r-- | libexec/ld.so/mips64/syscall.h | 7 | ||||
-rw-r--r-- | libexec/ld.so/powerpc/syscall.h | 10 | ||||
-rw-r--r-- | libexec/ld.so/sh/ldasm.S | 4 | ||||
-rw-r--r-- | libexec/ld.so/sh/syscall.h | 4 | ||||
-rw-r--r-- | libexec/ld.so/sparc/ldasm.S | 10 | ||||
-rw-r--r-- | libexec/ld.so/sparc/syscall.h | 4 | ||||
-rw-r--r-- | libexec/ld.so/sparc64/ldasm.S | 6 | ||||
-rw-r--r-- | libexec/ld.so/sparc64/syscall.h | 4 |
23 files changed, 59 insertions, 64 deletions
diff --git a/libexec/ld.so/alpha/ldasm.S b/libexec/ld.so/alpha/ldasm.S index 5fb82ed6d0c..dc6fc431150 100644 --- a/libexec/ld.so/alpha/ldasm.S +++ b/libexec/ld.so/alpha/ldasm.S @@ -1,4 +1,4 @@ -/* $OpenBSD: ldasm.S,v 1.20 2013/06/01 09:57:57 miod Exp $ */ +/* $OpenBSD: ldasm.S,v 1.21 2013/08/13 05:52:18 guenther Exp $ */ /* * Copyright (c) 2001 Niklas Hallqvist @@ -276,11 +276,11 @@ LEAF_NOPROFILE(_dl_fcntl, 3) RET END(_dl_fcntl) -LEAF_NOPROFILE(_dl_getdirentries, 4) - ldiq v0, SYS_getdirentries +LEAF_NOPROFILE(_dl_getdents, 3) + ldiq v0, SYS_getdents call_pal PAL_OSF1_callsys RET -END(_dl_getdirentries) +END(_dl_getdents) /* _dl_sigprocmask does not support NULL new mask */ LEAF_NOPROFILE(_dl_sigprocmask, 4) diff --git a/libexec/ld.so/alpha/syscall.h b/libexec/ld.so/alpha/syscall.h index a510899e777..0475addb604 100644 --- a/libexec/ld.so/alpha/syscall.h +++ b/libexec/ld.so/alpha/syscall.h @@ -1,4 +1,4 @@ -/* $OpenBSD: syscall.h,v 1.22 2013/06/09 13:10:19 miod Exp $ */ +/* $OpenBSD: syscall.h,v 1.23 2013/08/13 05:52:18 guenther Exp $ */ /* * Copyright (c) 2001 Niklas Hallqvist @@ -48,7 +48,7 @@ int _dl_open(const char *, int); ssize_t _dl_read(int, const char *, size_t); int _dl_fstat(int, struct stat *); int _dl_fcntl(int, int, ...); -int _dl_getdirentries(int, char *, int, off_t *); +ssize_t _dl_getdents(int, char *, size_t); long _dl__syscall(quad_t, ...); int _dl_sigprocmask(int, const sigset_t *, sigset_t *); int _dl_sysctl(const int *, u_int, void *, size_t *, void *, size_t); diff --git a/libexec/ld.so/amd64/ldasm.S b/libexec/ld.so/amd64/ldasm.S index b2985fddc53..da470d97c33 100644 --- a/libexec/ld.so/amd64/ldasm.S +++ b/libexec/ld.so/amd64/ldasm.S @@ -1,4 +1,4 @@ -/* $OpenBSD: ldasm.S,v 1.12 2013/06/01 09:57:58 miod Exp $ */ +/* $OpenBSD: ldasm.S,v 1.13 2013/08/13 05:52:18 guenther Exp $ */ /* * Copyright (c) 2002,2004 Dale Rahn @@ -90,7 +90,7 @@ DL_SYSCALL(read) DL_SYSCALL(write) DL_SYSCALL(close) DL_SYSCALL(issetugid) -DL_SYSCALL(getdirentries) +DL_SYSCALL(getdents) DL_SYSCALL(mprotect) DL_SYSCALL(munmap) DL_SYSCALL(gettimeofday) diff --git a/libexec/ld.so/amd64/syscall.h b/libexec/ld.so/amd64/syscall.h index b5996124b7f..4191429a571 100644 --- a/libexec/ld.so/amd64/syscall.h +++ b/libexec/ld.so/amd64/syscall.h @@ -1,4 +1,4 @@ -/* $OpenBSD: syscall.h,v 1.10 2013/06/09 13:10:19 miod Exp $ */ +/* $OpenBSD: syscall.h,v 1.11 2013/08/13 05:52:18 guenther Exp $ */ /* * Copyright (c) 2001 Niklas Hallqvist @@ -49,7 +49,7 @@ int _dl_open(const char *, int); ssize_t _dl_read(int, const char *, size_t); int _dl_fstat(int, struct stat *); int _dl_fcntl(int, int, ...); -int _dl_getdirentries(int, char *, int, off_t *); +ssize_t _dl_getdents(int, char *, size_t); int _dl_sigprocmask(int, const sigset_t *, sigset_t *); int _dl_sysctl(const int *, u_int, void *, size_t *, void *, size_t); int _dl_gettimeofday(struct timeval *, struct timezone *); diff --git a/libexec/ld.so/arm/ldasm.S b/libexec/ld.so/arm/ldasm.S index 413ba7b6093..36eb0f17031 100644 --- a/libexec/ld.so/arm/ldasm.S +++ b/libexec/ld.so/arm/ldasm.S @@ -1,4 +1,4 @@ -/* $OpenBSD: ldasm.S,v 1.10 2013/06/01 09:57:58 miod Exp $ */ +/* $OpenBSD: ldasm.S,v 1.11 2013/08/13 05:52:18 guenther Exp $ */ /* * Copyright (c) 2004 Dale Rahn @@ -120,7 +120,7 @@ DL_SYSCALL(utrace) DL_SYSCALL2(getcwd,__getcwd) DL_SYSCALL2(sysctl,__sysctl) -DL_SYSCALL(getdirentries) +DL_SYSCALL(getdents) .global _dl_sigprocmask .type _dl_sigprocmask%function diff --git a/libexec/ld.so/arm/syscall.h b/libexec/ld.so/arm/syscall.h index b75681a78b1..7551464b0a1 100644 --- a/libexec/ld.so/arm/syscall.h +++ b/libexec/ld.so/arm/syscall.h @@ -1,4 +1,4 @@ -/* $OpenBSD: syscall.h,v 1.10 2013/06/09 13:10:19 miod Exp $ */ +/* $OpenBSD: syscall.h,v 1.11 2013/08/13 05:52:18 guenther Exp $ */ /* * Copyright (c) 2001 Niklas Hallqvist @@ -49,7 +49,7 @@ int _dl_open(const char *, int); ssize_t _dl_read(int, const char *, size_t); int _dl_fstat(int, struct stat *); int _dl_fcntl(int, int, ...); -int _dl_getdirentries(int, char *, int, off_t *); +ssize_t _dl_getdents(int, char *, size_t); int _dl_sigprocmask(int, const sigset_t *, sigset_t *); int _dl_sysctl(const int *, u_int, void *, size_t *, void *, size_t); int _dl_gettimeofday(struct timeval *, struct timezone *); diff --git a/libexec/ld.so/dir.c b/libexec/ld.so/dir.c index 34fac9cf6b4..e08a5bd64e8 100644 --- a/libexec/ld.so/dir.c +++ b/libexec/ld.so/dir.c @@ -1,4 +1,4 @@ -/* $OpenBSD: dir.c,v 1.16 2012/03/21 04:28:45 matthew Exp $ */ +/* $OpenBSD: dir.c,v 1.17 2013/08/13 05:52:17 guenther Exp $ */ /* * Copyright (c) 1983, 1993 * The Regents of the University of California. All rights reserved. @@ -46,10 +46,9 @@ struct _dl_dirdesc { int dd_fd; /* file descriptor associated with directory */ long dd_loc; /* offset in current buffer */ - long dd_size; /* amount of data returned by getdirentries */ + long dd_size; /* amount of data returned by getdents() */ char *dd_buf; /* data buffer */ int dd_len; /* size of data buffer */ - off_t dd_seek; /* magic cookie returned by getdirentries */ }; /* @@ -81,7 +80,6 @@ _dl_opendir(const char *name) _dl_close (fd); return (NULL); } - dirp->dd_seek = 0; dirp->dd_loc = 0; dirp->dd_fd = fd; @@ -121,8 +119,8 @@ _dl_readdir(_dl_DIR *dirp) dirp->dd_loc = 0; } if (dirp->dd_loc == 0) { - dirp->dd_size = _dl_getdirentries(dirp->dd_fd, - dirp->dd_buf, dirp->dd_len, &dirp->dd_seek); + dirp->dd_size = _dl_getdents(dirp->dd_fd, + dirp->dd_buf, dirp->dd_len); if (dirp->dd_size <= 0) return (NULL); } diff --git a/libexec/ld.so/hppa/ldasm.S b/libexec/ld.so/hppa/ldasm.S index 684a898fa52..a2283749f85 100644 --- a/libexec/ld.so/hppa/ldasm.S +++ b/libexec/ld.so/hppa/ldasm.S @@ -1,4 +1,4 @@ -/* $OpenBSD: ldasm.S,v 1.10 2013/06/01 09:57:58 miod Exp $ */ +/* $OpenBSD: ldasm.S,v 1.11 2013/08/13 05:52:19 guenther Exp $ */ /* * Copyright (c) 2004 Michael Shalayeff @@ -250,11 +250,11 @@ ENTRY(_dl_sysctl,0) nop EXIT(_dl_issetugid) -ENTRY(_dl_getdirentries,0) - SYSCALL(getdirentries) +ENTRY(_dl_getdents,0) + SYSCALL(getdents) bv r0(rp) nop -EXIT(_dl_getdirentries) +EXIT(_dl_getdents) ENTRY(_dl_gettimeofday,0) SYSCALL(gettimeofday) diff --git a/libexec/ld.so/hppa/syscall.h b/libexec/ld.so/hppa/syscall.h index b5996124b7f..2b622b745c6 100644 --- a/libexec/ld.so/hppa/syscall.h +++ b/libexec/ld.so/hppa/syscall.h @@ -1,4 +1,4 @@ -/* $OpenBSD: syscall.h,v 1.10 2013/06/09 13:10:19 miod Exp $ */ +/* $OpenBSD: syscall.h,v 1.11 2013/08/13 05:52:19 guenther Exp $ */ /* * Copyright (c) 2001 Niklas Hallqvist @@ -49,7 +49,7 @@ int _dl_open(const char *, int); ssize_t _dl_read(int, const char *, size_t); int _dl_fstat(int, struct stat *); int _dl_fcntl(int, int, ...); -int _dl_getdirentries(int, char *, int, off_t *); +ssize_t _dl_getdents(int, char *, size_t); int _dl_sigprocmask(int, const sigset_t *, sigset_t *); int _dl_sysctl(const int *, u_int, void *, size_t *, void *, size_t); int _dl_gettimeofday(struct timeval *, struct timezone *); diff --git a/libexec/ld.so/i386/ldasm.S b/libexec/ld.so/i386/ldasm.S index a76fe547176..d20a7ae65bd 100644 --- a/libexec/ld.so/i386/ldasm.S +++ b/libexec/ld.so/i386/ldasm.S @@ -1,4 +1,4 @@ -/* $OpenBSD: ldasm.S,v 1.14 2013/06/01 09:57:58 miod Exp $ */ +/* $OpenBSD: ldasm.S,v 1.15 2013/08/13 05:52:19 guenther Exp $ */ /* * Copyright (c) 2002 Dale Rahn @@ -122,7 +122,7 @@ DL_SYSCALL(lstat) DL_SYSCALL(utrace) DL_SYSCALL2(getcwd,__getcwd) DL_SYSCALL2(sysctl,__sysctl) -DL_SYSCALL(getdirentries) +DL_SYSCALL(getdents) .L_cerr: /* error: result = -errno; - handled here. */ diff --git a/libexec/ld.so/i386/syscall.h b/libexec/ld.so/i386/syscall.h index f6286866e94..7f71f1e725d 100644 --- a/libexec/ld.so/i386/syscall.h +++ b/libexec/ld.so/i386/syscall.h @@ -1,4 +1,4 @@ -/* $OpenBSD: syscall.h,v 1.14 2013/06/09 13:10:19 miod Exp $ */ +/* $OpenBSD: syscall.h,v 1.15 2013/08/13 05:52:19 guenther Exp $ */ /* * Copyright (c) 2001 Niklas Hallqvist @@ -49,7 +49,7 @@ int _dl_open(const char *, int); ssize_t _dl_read(int, const char *, size_t); int _dl_fstat(int, struct stat *); int _dl_fcntl(int, int, ...); -int _dl_getdirentries(int, char *, int, off_t *); +ssize_t _dl_getdents(int, char *, size_t); int _dl_sigprocmask(int, const sigset_t *, sigset_t *); int _dl_sysctl(const int *, u_int, void *, size_t *, void *, size_t); int _dl_gettimeofday(struct timeval *, struct timezone *); diff --git a/libexec/ld.so/m68k/ldasm.S b/libexec/ld.so/m68k/ldasm.S index ac68025eba1..3fb9e308388 100644 --- a/libexec/ld.so/m68k/ldasm.S +++ b/libexec/ld.so/m68k/ldasm.S @@ -1,4 +1,4 @@ -/* $OpenBSD: ldasm.S,v 1.4 2013/06/01 09:57:58 miod Exp $ */ +/* $OpenBSD: ldasm.S,v 1.5 2013/08/13 05:52:19 guenther Exp $ */ /* * Copyright (c) 2006 Dale Rahn @@ -191,7 +191,7 @@ DL_SYSCALL2(getcwd,__getcwd) DL_SYSCALL2(sysctl,__sysctl) rts -DL_SYSCALL(getdirentries) +DL_SYSCALL(getdents) rts .global _dl_sigprocmask diff --git a/libexec/ld.so/m68k/syscall.h b/libexec/ld.so/m68k/syscall.h index 3bee85e30c4..247aabc12a7 100644 --- a/libexec/ld.so/m68k/syscall.h +++ b/libexec/ld.so/m68k/syscall.h @@ -1,4 +1,4 @@ -/* $OpenBSD: syscall.h,v 1.5 2013/06/09 13:10:19 miod Exp $ */ +/* $OpenBSD: syscall.h,v 1.6 2013/08/13 05:52:19 guenther Exp $ */ /* * Copyright (c) 2001 Niklas Hallqvist @@ -49,7 +49,7 @@ int _dl_open(const char *, int); ssize_t _dl_read(int, const char *, size_t); int _dl_fstat(int, struct stat *); int _dl_fcntl(int, int, ...); -int _dl_getdirentries(int, char *, int, off_t *); +ssize_t _dl_getdents(int, char *, size_t); int _dl_sigprocmask(int, const sigset_t *, sigset_t *); int _dl_sysctl(const int *, u_int, void *, size_t *, void *, size_t); int _dl_gettimeofday(struct timeval *, struct timezone *); diff --git a/libexec/ld.so/m88k/ldasm.S b/libexec/ld.so/m88k/ldasm.S index 3f78585d15e..dcee52e6d0c 100644 --- a/libexec/ld.so/m88k/ldasm.S +++ b/libexec/ld.so/m88k/ldasm.S @@ -1,4 +1,4 @@ -/* $OpenBSD: ldasm.S,v 1.6 2013/06/01 09:57:58 miod Exp $ */ +/* $OpenBSD: ldasm.S,v 1.7 2013/08/13 05:52:20 guenther Exp $ */ /* * Copyright (c) 2013 Miodrag Vallat. @@ -212,7 +212,7 @@ DL_SYSCALL2(getcwd,__getcwd) DL_SYSCALL2(sysctl,__sysctl) jmp %r1 -DL_SYSCALL(getdirentries) +DL_SYSCALL(getdents) jmp %r1 ENTRY(_dl_sigprocmask) diff --git a/libexec/ld.so/m88k/syscall.h b/libexec/ld.so/m88k/syscall.h index a3e36731a26..b3302624141 100644 --- a/libexec/ld.so/m88k/syscall.h +++ b/libexec/ld.so/m88k/syscall.h @@ -1,4 +1,4 @@ -/* $OpenBSD: syscall.h,v 1.6 2013/06/09 13:10:19 miod Exp $ */ +/* $OpenBSD: syscall.h,v 1.7 2013/08/13 05:52:20 guenther Exp $ */ /* * Copyright (c) 2001 Niklas Hallqvist @@ -49,7 +49,7 @@ int _dl_open(const char *, int); ssize_t _dl_read(int, const char *, size_t); int _dl_fstat(int, struct stat *); int _dl_fcntl(int, int, ...); -int _dl_getdirentries(int, char *, int, off_t *); +ssize_t _dl_getdents(int, char *, size_t); int _dl_sigprocmask(int, const sigset_t *, sigset_t *); int _dl_sysctl(const int *, u_int, void *, size_t *, void *, size_t); int _dl_gettimeofday(struct timeval *, struct timezone *); diff --git a/libexec/ld.so/mips64/syscall.h b/libexec/ld.so/mips64/syscall.h index afd5fa686d2..6549d3d8dff 100644 --- a/libexec/ld.so/mips64/syscall.h +++ b/libexec/ld.so/mips64/syscall.h @@ -1,4 +1,4 @@ -/* $OpenBSD: syscall.h,v 1.11 2013/06/09 13:10:19 miod Exp $ */ +/* $OpenBSD: syscall.h,v 1.12 2013/08/13 05:52:20 guenther Exp $ */ /* * Copyright (c) 1998-2002 Opsycon AB, Sweden. @@ -227,7 +227,7 @@ _dl_fcntl(int fd, int cmd, int flag) } extern inline ssize_t -_dl_getdirentries(int fd, char *buf, int nbytes, off_t *basep) +_dl_getdents(int fd, char *buf, size_t nbytes) { register int status __asm__ ("$2"); @@ -235,14 +235,13 @@ _dl_getdirentries(int fd, char *buf, int nbytes, off_t *basep) "move $4,%2\n\t" "move $5,%3\n\t" "move $6,%4\n\t" - "move $7,%5\n\t" "li $2,%1\n\t" "syscall\n\t" "beq $7,$0,1f\n\t" "li $2,-1\n\t" "1:" : "=r" (status) - : "I" (SYS_getdirentries), "r" (fd), "r" (buf), "r" (nbytes), "r" (basep) + : "I" (SYS_getdents), "r" (fd), "r" (buf), "r" (nbytes) : "memory", "$3", "$4", "$5", "$6", "$7", "$8", "$9", "$10","$11","$12","$13","$14","$15","$24","$25"); return status; diff --git a/libexec/ld.so/powerpc/syscall.h b/libexec/ld.so/powerpc/syscall.h index 57782f12c94..226e6daa50b 100644 --- a/libexec/ld.so/powerpc/syscall.h +++ b/libexec/ld.so/powerpc/syscall.h @@ -1,4 +1,4 @@ -/* $OpenBSD: syscall.h,v 1.27 2013/06/09 13:10:19 miod Exp $ */ +/* $OpenBSD: syscall.h,v 1.28 2013/08/13 05:52:20 guenther Exp $ */ /* * Copyright (c) 1998 Per Fogelstrom, Opsycon AB @@ -236,8 +236,8 @@ _dl_fcntl(int fd, int cmd, int flag) return status; } -static inline int -_dl_getdirentries(int fd, char *buf, int nbytes, off_t *basep) +static inline ssize_t +_dl_getdents(int fd, char *buf, size_t nbytes) { register int status; @@ -245,7 +245,6 @@ _dl_getdirentries(int fd, char *buf, int nbytes, off_t *basep) "mr 3,%2\n\t" "mr 4,%3\n\t" "mr 5,%4\n\t" - "mr 6,%5\n\t" "sc\n\t" "cmpwi 0, 0\n\t" "beq 1f\n\t" @@ -253,8 +252,7 @@ _dl_getdirentries(int fd, char *buf, int nbytes, off_t *basep) "1:" "mr %0,3\n\t" : "=r" (status) - : "I" (SYS_getdirentries), "r" (fd), "r" (buf), "r"(nbytes), - "r" (basep) + : "I" (SYS_getdents), "r" (fd), "r" (buf), "r" (nbytes), : "memory", "0", "3", "4", "5", "6"); return status; } diff --git a/libexec/ld.so/sh/ldasm.S b/libexec/ld.so/sh/ldasm.S index 0fae819d0f0..5a93d4748f0 100644 --- a/libexec/ld.so/sh/ldasm.S +++ b/libexec/ld.so/sh/ldasm.S @@ -1,4 +1,4 @@ -/* $OpenBSD: ldasm.S,v 1.11 2013/06/01 09:57:58 miod Exp $ */ +/* $OpenBSD: ldasm.S,v 1.12 2013/08/13 05:52:20 guenther Exp $ */ /* * Copyright (c) 2006 Dale Rahn @@ -201,7 +201,7 @@ DL_SYSCALL(utrace) DL_SYSCALL2(getcwd,__getcwd) DL_SYSCALL2(sysctl,__sysctl) -DL_SYSCALL(getdirentries) +DL_SYSCALL(getdents) .global _dl_sigprocmask .type _dl_sigprocmask%function diff --git a/libexec/ld.so/sh/syscall.h b/libexec/ld.so/sh/syscall.h index 214bd9fb74d..431dc2d292f 100644 --- a/libexec/ld.so/sh/syscall.h +++ b/libexec/ld.so/sh/syscall.h @@ -1,4 +1,4 @@ -/* $OpenBSD: syscall.h,v 1.8 2013/06/09 13:10:19 miod Exp $ */ +/* $OpenBSD: syscall.h,v 1.9 2013/08/13 05:52:20 guenther Exp $ */ /* * Copyright (c) 2001 Niklas Hallqvist @@ -49,7 +49,7 @@ int _dl_open(const char *, int); ssize_t _dl_read(int, const char *, size_t); int _dl_fstat(int, struct stat *); int _dl_fcntl(int, int, ...); -int _dl_getdirentries(int, char *, int, off_t *); +ssize_t _dl_getdents(int, char *, size_t); int _dl_sigprocmask(int, const sigset_t *, sigset_t *); int _dl_sysctl(const int *, u_int, void *, size_t *, void *, size_t); int _dl_gettimeofday(struct timeval *, struct timezone *); diff --git a/libexec/ld.so/sparc/ldasm.S b/libexec/ld.so/sparc/ldasm.S index b46cd19317f..ab6e633e058 100644 --- a/libexec/ld.so/sparc/ldasm.S +++ b/libexec/ld.so/sparc/ldasm.S @@ -1,4 +1,4 @@ -/* $OpenBSD: ldasm.S,v 1.20 2013/06/01 09:57:58 miod Exp $ */ +/* $OpenBSD: ldasm.S,v 1.21 2013/08/13 05:52:21 guenther Exp $ */ /* * Copyright (c) 2001 Jason L. Wright (jason@thought.net) @@ -267,10 +267,10 @@ _dl_fcntl: .section ".text" .align 4 - .globl _dl_getdirentries - .type _dl_getdirentries,@function -_dl_getdirentries: - mov SYS_getdirentries | SYSCALL_G2RFLAG, %g1 ! call sys_getdirentries + .globl _dl_getdents + .type _dl_getdents,@function +_dl_getdents: + mov SYS_getdents | SYSCALL_G2RFLAG, %g1 ! call sys_getdents add %o7, 8, %g2 ! just return on success t ST_SYSCALL ! off to wonderland retl diff --git a/libexec/ld.so/sparc/syscall.h b/libexec/ld.so/sparc/syscall.h index ee1e79b2d6e..78c847d7ad4 100644 --- a/libexec/ld.so/sparc/syscall.h +++ b/libexec/ld.so/sparc/syscall.h @@ -1,4 +1,4 @@ -/* $OpenBSD: syscall.h,v 1.15 2013/06/09 13:10:19 miod Exp $ */ +/* $OpenBSD: syscall.h,v 1.16 2013/08/13 05:52:21 guenther Exp $ */ /* * Copyright (c) 2001 Niklas Hallqvist @@ -49,7 +49,7 @@ int _dl_open(const char *, int); ssize_t _dl_read(int, const char *, size_t); int _dl_fstat(int, struct stat *); int _dl_fcntl(int, int, ...); -int _dl_getdirentries(int, char *, int, off_t *); +ssize_t _dl_getdents(int, char *, size_t); int _dl_sigprocmask(int, const sigset_t *, sigset_t *); int _dl_sysctl(const int *, u_int, void *, size_t *, void *, size_t); int _dl_gettimeofday(struct timeval *, struct timezone *); diff --git a/libexec/ld.so/sparc64/ldasm.S b/libexec/ld.so/sparc64/ldasm.S index f99291a2a27..982deaaee59 100644 --- a/libexec/ld.so/sparc64/ldasm.S +++ b/libexec/ld.so/sparc64/ldasm.S @@ -1,4 +1,4 @@ -/* $OpenBSD: ldasm.S,v 1.31 2013/06/01 09:57:58 miod Exp $ */ +/* $OpenBSD: ldasm.S,v 1.32 2013/08/13 05:52:21 guenther Exp $ */ /* $NetBSD: rtld_start.S,v 1.5 2001/08/14 22:17:48 eeh Exp $ */ /* @@ -281,8 +281,8 @@ _ENTRY(_dl_fcntl) retl sub %g0, %o0, %o0 ! error: result = -errno -_ENTRY(_dl_getdirentries) - mov SYS_getdirentries | SYSCALL_G2RFLAG, %g1 ! call sys_getdirentries +_ENTRY(_dl_getdents) + mov SYS_getdents | SYSCALL_G2RFLAG, %g1 ! call sys_getdents add %o7, 8, %g2 ! just return on success t ST_SYSCALL ! off to wonderland retl diff --git a/libexec/ld.so/sparc64/syscall.h b/libexec/ld.so/sparc64/syscall.h index 5c8e0462d0b..41f294d0b55 100644 --- a/libexec/ld.so/sparc64/syscall.h +++ b/libexec/ld.so/sparc64/syscall.h @@ -1,4 +1,4 @@ -/* $OpenBSD: syscall.h,v 1.22 2013/06/09 13:10:19 miod Exp $ */ +/* $OpenBSD: syscall.h,v 1.23 2013/08/13 05:52:21 guenther Exp $ */ /* * Copyright (c) 2001 Niklas Hallqvist @@ -49,7 +49,7 @@ int _dl_open(const char *, int); ssize_t _dl_read(int, const char *, size_t); int _dl_fstat(int, struct stat *); int _dl_fcntl(int, int, ...); -int _dl_getdirentries(int, char *, int, off_t *); +ssize_t _dl_getdents(int, char *, size_t); int _dl_sigprocmask(int, const sigset_t *, sigset_t *); int _dl_sysctl(const int *, u_int, void *, size_t *, void *, size_t); int _dl_gettimeofday(struct timeval *, struct timezone *); |