mirror of
https://sourceware.org/git/glibc.git
synced 2025-01-03 00:10:10 +00:00
Update.
1998-11-02 Ulrich Drepper <drepper@cygnus.com> * sysdeps/unix/sysv/linux/i386/setgroups.c (setgroups): Remove unnecessary test and add cast. 1998-11-02 Andreas Jaeger <aj@arthur.rhein-neckar.de> * posix/getconf.c: Add initializer SYSCONF for CHARCLASS_NAME_MAX. * sysdeps/unix/sysv/linux/ttyname.c (getttyname): Remove unused parameter fd. * sysdeps/unix/sysv/linux/ttyname_r.c (__ttyname_r): Likewise. 1998-11-02 Mark Kettenis <kettenis@phys.uva.nl> * sysdeps/generic/bits/types.h (__FDS_BITS): New macro to access fds_bits member. (__FDMASK): Use __fd_mask instead of unsigned long int in cast. 1998-10-31 Richard Henderson <rth@cygnus.com> * math/Makefile (gmp-objs): Add udiv_qrnnd. * sysdeps/unix/alpha/sysdep.h (INLINE_SYSCALL*): New. (inline_syscall*): New. * sysdeps/unix/sysv/linux/alpha/sysdep.h (INLINE_SYSCALL): New. * sysdeps/unix/sysv/linux/alpha/syscalls.list: Kill __syscall* bits. 1998-10-30 Thorsten Kukuk <kukuk@vt.uni-paderborn.de> * sunrpc/Versions: Add xdr_uint32_t and xdr_int32_t. * sunrpc/pmap_rmt.c: Initialize clnt_stat variable. * sunrpc/rpc/auth_des.h: Use uint32_t for time values. * sunrpc/rpc/xdr.h: Add INT32 support. * nis/nis_call.c: Changes for new 64bit clean NIS+ interface. * nis/nis_callback.c: Likewise. * nis/nis_creategroup.c: Likewise. * nis/nis_defaults.c: Likewise. * nis/nis_intern.h: Likewise. * nis/nis_lookup.c: Likewise. * nis/nis_ping.c: Likewise. * nis/nis_print.c: Likewise. * nis/nis_table.c: Likewise. * nis/nis_util.c: Likewise. * nis/nis_xdr.c: Likewise. * nis/rpcsvc/nis.h: Likewise. * nis/rpcsvc/nis.x: Likewise. * nis/rpcsvc/nis_callback.h: Likewise. * nis/rpcsvc/nis_object.x: Likewise. * nis/rpcsvc/nislib.h: Likewise. * nis/rpcsvc/yp.h: Remove casts to (u_long). * nis/rpcsvc/yp_prot.h: Likewise. * nis/rpcsvc/ypupd.h: Likewise. * nis/ypclnt.c: Change %ld to %d in sprintf. 1998-10-29 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> * manual/locale.texi (Formatting Numbers): Fix strfmon examples. 1998-10-28 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> * sysdeps/generic/bits/select.h (__FD_ZERO): Change '\0' to plain 0, __fd_mask is usually not a char. 1998-10-30 Andreas Jaeger <aj@arthur.rhein-neckar.de> * sysdeps/unix/sysv/linux/sigpending.c (sigpending): Allow compilation on systems without rt_* syscalls (e.g. on Linux 2.0). * sysdeps/unix/sysv/linux/sigprocmask.c (__sigprocmask): Likewise. * sysdeps/unix/sysv/linux/sigwaitinfo.c: Likewise. * sysdeps/unix/sysv/linux/sigtimedwait.c: Likewise. * sysdeps/unix/sysv/linux/sigsuspend.c (__sigsuspend): Likewise * sysdeps/unix/sysv/linux/sigqueue.c: Likewise. * sysdeps/unix/sysv/linux/aio_sigqueue.c: Likewise. * sysdeps/unix/sysv/linux/i386/sigaction.c (__sigaction): Allow compiling on systems without rt_sigaction syscall. * sysdeps/unix/sysv/linux/sparc/sparc32/sigaction.c (__sigaction): Likewise. 1998-10-30 Andreas Jaeger <aj@arthur.rhein-neckar.de> * time/strptime.c (HERE_D_FMT): Fix typo. Reported by Claus Heine <heine@math1.rwth-aachen.de>, PR libc/842.
This commit is contained in:
parent
c55be36de7
commit
160698e277
28
ChangeLog
28
ChangeLog
@ -1,3 +1,31 @@
|
||||
1998-11-02 Ulrich Drepper <drepper@cygnus.com>
|
||||
|
||||
* sysdeps/unix/sysv/linux/i386/setgroups.c (setgroups): Remove
|
||||
unnecessary test and add cast.
|
||||
|
||||
1998-11-02 Andreas Jaeger <aj@arthur.rhein-neckar.de>
|
||||
|
||||
* posix/getconf.c: Add initializer SYSCONF for CHARCLASS_NAME_MAX.
|
||||
|
||||
* sysdeps/unix/sysv/linux/ttyname.c (getttyname): Remove unused
|
||||
parameter fd.
|
||||
* sysdeps/unix/sysv/linux/ttyname_r.c (__ttyname_r): Likewise.
|
||||
|
||||
1998-11-02 Mark Kettenis <kettenis@phys.uva.nl>
|
||||
|
||||
* sysdeps/generic/bits/types.h (__FDS_BITS): New macro to access
|
||||
fds_bits member.
|
||||
(__FDMASK): Use __fd_mask instead of unsigned long int in cast.
|
||||
|
||||
1998-10-31 Richard Henderson <rth@cygnus.com>
|
||||
|
||||
* math/Makefile (gmp-objs): Add udiv_qrnnd.
|
||||
|
||||
* sysdeps/unix/alpha/sysdep.h (INLINE_SYSCALL*): New.
|
||||
(inline_syscall*): New.
|
||||
* sysdeps/unix/sysv/linux/alpha/sysdep.h (INLINE_SYSCALL): New.
|
||||
* sysdeps/unix/sysv/linux/alpha/syscalls.list: Kill __syscall* bits.
|
||||
|
||||
1998-10-31 Ulrich Drepper <drepper@cygnus.com>
|
||||
|
||||
* aclocal.m4 (LIBC_PROG_FOO_GNU): Name output file using -o to
|
||||
|
@ -93,7 +93,7 @@ typedef unsigned long int __fd_mask;
|
||||
/* It's easier to assume 8-bit bytes than to get CHAR_BIT. */
|
||||
#define __NFDBITS (sizeof (unsigned long int) * 8)
|
||||
#define __FDELT(d) ((d) / __NFDBITS)
|
||||
#define __FDMASK(d) ((unsigned long int) 1 << ((d) % __NFDBITS))
|
||||
#define __FDMASK(d) ((__fd_mask) 1 << ((d) % __NFDBITS))
|
||||
|
||||
/* fd_set for select and pselect. */
|
||||
typedef struct
|
||||
@ -102,8 +102,10 @@ typedef struct
|
||||
from the user namespace. */
|
||||
#ifdef __USE_XOPEN
|
||||
__fd_mask fds_bits[(__FD_SETSIZE + (__NFDBITS - 1)) / __NFDBITS];
|
||||
# define __FDS_BITS(set) ((set)->fds_bits)
|
||||
#else
|
||||
__fd_mask __fds_bits[(__FD_SETSIZE + (__NFDBITS - 1)) / __NFDBITS];
|
||||
# define __FDS_BITS(set) ((set)->__fds_bits)
|
||||
#endif
|
||||
} __fd_set;
|
||||
|
||||
|
@ -156,7 +156,7 @@ o = .os
|
||||
endif
|
||||
gmp-objs = $(patsubst %,$(common-objpfx)stdlib/%$o,\
|
||||
add_n sub_n cmp addmul_1 mul_1 mul_n divmod_1 \
|
||||
lshift rshift mp_clz_tab)
|
||||
lshift rshift mp_clz_tab udiv_qrnnd)
|
||||
$(objpfx)atest-exp: $(gmp-objs)
|
||||
$(objpfx)atest-sincos: $(gmp-objs)
|
||||
$(objpfx)atest-exp2: $(gmp-objs)
|
||||
|
@ -423,7 +423,7 @@ static const struct conf vars[] =
|
||||
#ifdef _SC_BC_STRING_MAX
|
||||
{ "BC_STRING_MAX", _SC_BC_STRING_MAX, SYSCONF },
|
||||
#endif
|
||||
{ "CHARCLASS_NAME_MAX", _SC_CHARCLASS_NAME_MAX },
|
||||
{ "CHARCLASS_NAME_MAX", _SC_CHARCLASS_NAME_MAX, SYSCONF },
|
||||
#ifdef _SC_COLL_WEIGHTS_MAX
|
||||
{ "COLL_WEIGHTS_MAX", _SC_COLL_WEIGHTS_MAX, SYSCONF },
|
||||
#endif
|
||||
|
@ -93,7 +93,7 @@ typedef unsigned long int __fd_mask;
|
||||
/* It's easier to assume 8-bit bytes than to get CHAR_BIT. */
|
||||
#define __NFDBITS (sizeof (unsigned long int) * 8)
|
||||
#define __FDELT(d) ((d) / __NFDBITS)
|
||||
#define __FDMASK(d) ((unsigned long int) 1 << ((d) % __NFDBITS))
|
||||
#define __FDMASK(d) ((__fd_mask) 1 << ((d) % __NFDBITS))
|
||||
|
||||
/* fd_set for select and pselect. */
|
||||
typedef struct
|
||||
@ -102,8 +102,10 @@ typedef struct
|
||||
from the user namespace. */
|
||||
#ifdef __USE_XOPEN
|
||||
__fd_mask fds_bits[(__FD_SETSIZE + (__NFDBITS - 1)) / __NFDBITS];
|
||||
# define __FDS_BITS(set) ((set)->fds_bits)
|
||||
#else
|
||||
__fd_mask __fds_bits[(__FD_SETSIZE + (__NFDBITS - 1)) / __NFDBITS];
|
||||
# define __FDS_BITS(set) ((set)->__fds_bits)
|
||||
#endif
|
||||
} __fd_set;
|
||||
|
||||
|
@ -109,4 +109,167 @@ __LABEL(name) \
|
||||
|
||||
#define MOVE(x,y) mov x,y
|
||||
|
||||
#endif
|
||||
#else /* !ASSEMBLER */
|
||||
|
||||
/* Define a macro which expands inline into the wrapper code for a
|
||||
system call. */
|
||||
|
||||
#undef INLINE_SYSCALL
|
||||
#define INLINE_SYSCALL(name, nr, args...) INLINE_SYSCALL1(name, nr, args)
|
||||
|
||||
#define INLINE_SYSCALL1(name, nr, args...) \
|
||||
({ \
|
||||
long _sc_ret, _sc_err; \
|
||||
inline_syscall##nr(name, args); \
|
||||
if (_sc_err) \
|
||||
{ \
|
||||
__set_errno (_sc_ret); \
|
||||
_sc_ret = -1L; \
|
||||
} \
|
||||
_sc_ret; \
|
||||
})
|
||||
|
||||
#define inline_syscall_clobbers \
|
||||
"$1", "$2", "$3", "$4", "$5", "$6", "$7", "$8", \
|
||||
"$22", "$23", "$24", "$25", "$27", "$28"
|
||||
|
||||
/* It is moderately important optimization-wise to limit the lifetime
|
||||
of the hard-register variables as much as possible. Thus we copy
|
||||
in/out as close to the asm as possible. */
|
||||
|
||||
#define inline_syscall0(name) \
|
||||
{ \
|
||||
register long _sc_0 __asm__("$0"); \
|
||||
register long _sc_19 __asm__("$19"); \
|
||||
\
|
||||
_sc_0 = __NR_##name; \
|
||||
__asm__("callsys # %0 %1 <= %2" \
|
||||
: "=r"(_sc_0), "=r"(_sc_19) \
|
||||
: "0"(_sc_0) \
|
||||
: inline_syscall_clobbers); \
|
||||
_sc_ret = _sc_0, _sc_err = _sc_19; \
|
||||
}
|
||||
|
||||
#define inline_syscall1(name,arg1) \
|
||||
{ \
|
||||
register long _sc_0 __asm__("$0"); \
|
||||
register long _sc_16 __asm__("$16"); \
|
||||
register long _sc_19 __asm__("$19"); \
|
||||
\
|
||||
_sc_0 = __NR_##name; \
|
||||
_sc_16 = (long) (arg1); \
|
||||
__asm__("callsys # %0 %1 <= %2 %3" \
|
||||
: "=r"(_sc_0), "=r"(_sc_19) \
|
||||
: "0"(_sc_0), "r"(_sc_16) \
|
||||
: inline_syscall_clobbers); \
|
||||
_sc_ret = _sc_0, _sc_err = _sc_19; \
|
||||
}
|
||||
|
||||
#define inline_syscall2(name,arg1,arg2) \
|
||||
{ \
|
||||
register long _sc_0 __asm__("$0"); \
|
||||
register long _sc_16 __asm__("$16"); \
|
||||
register long _sc_17 __asm__("$17"); \
|
||||
register long _sc_19 __asm__("$19"); \
|
||||
\
|
||||
_sc_0 = __NR_##name; \
|
||||
_sc_16 = (long) (arg1); \
|
||||
_sc_17 = (long) (arg2); \
|
||||
__asm__("callsys # %0 %1 <= %2 %3 %4" \
|
||||
: "=r"(_sc_0), "=r"(_sc_19) \
|
||||
: "0"(_sc_0), "r"(_sc_16), "r"(_sc_17) \
|
||||
: inline_syscall_clobbers); \
|
||||
_sc_ret = _sc_0, _sc_err = _sc_19; \
|
||||
}
|
||||
|
||||
#define inline_syscall3(name,arg1,arg2,arg3) \
|
||||
{ \
|
||||
register long _sc_0 __asm__("$0"); \
|
||||
register long _sc_16 __asm__("$16"); \
|
||||
register long _sc_17 __asm__("$17"); \
|
||||
register long _sc_18 __asm__("$18"); \
|
||||
register long _sc_19 __asm__("$19"); \
|
||||
\
|
||||
_sc_0 = __NR_##name; \
|
||||
_sc_16 = (long) (arg1); \
|
||||
_sc_17 = (long) (arg2); \
|
||||
_sc_18 = (long) (arg3); \
|
||||
__asm__("callsys # %0 %1 <= %2 %3 %4 %5" \
|
||||
: "=r"(_sc_0), "=r"(_sc_19) \
|
||||
: "0"(_sc_0), "r"(_sc_16), "r"(_sc_17), \
|
||||
"r"(_sc_18) \
|
||||
: inline_syscall_clobbers); \
|
||||
_sc_ret = _sc_0, _sc_err = _sc_19; \
|
||||
}
|
||||
|
||||
#define inline_syscall4(name,arg1,arg2,arg3,arg4) \
|
||||
{ \
|
||||
register long _sc_0 __asm__("$0"); \
|
||||
register long _sc_16 __asm__("$16"); \
|
||||
register long _sc_17 __asm__("$17"); \
|
||||
register long _sc_18 __asm__("$18"); \
|
||||
register long _sc_19 __asm__("$19"); \
|
||||
\
|
||||
_sc_0 = __NR_##name; \
|
||||
_sc_16 = (long) (arg1); \
|
||||
_sc_17 = (long) (arg2); \
|
||||
_sc_18 = (long) (arg3); \
|
||||
_sc_19 = (long) (arg4); \
|
||||
__asm__("callsys # %0 %1 <= %2 %3 %4 %5 %6" \
|
||||
: "=r"(_sc_0), "=r"(_sc_19) \
|
||||
: "0"(_sc_0), "r"(_sc_16), "r"(_sc_17), \
|
||||
"r"(_sc_18), "1"(_sc_19) \
|
||||
: inline_syscall_clobbers); \
|
||||
_sc_ret = _sc_0, _sc_err = _sc_19; \
|
||||
}
|
||||
|
||||
#define inline_syscall5(name,arg1,arg2,arg3,arg4,arg5) \
|
||||
{ \
|
||||
register long _sc_0 __asm__("$0"); \
|
||||
register long _sc_16 __asm__("$16"); \
|
||||
register long _sc_17 __asm__("$17"); \
|
||||
register long _sc_18 __asm__("$18"); \
|
||||
register long _sc_19 __asm__("$19"); \
|
||||
register long _sc_20 __asm__("$20"); \
|
||||
\
|
||||
_sc_0 = __NR_##name; \
|
||||
_sc_16 = (long) (arg1); \
|
||||
_sc_17 = (long) (arg2); \
|
||||
_sc_18 = (long) (arg3); \
|
||||
_sc_19 = (long) (arg4); \
|
||||
_sc_20 = (long) (arg5); \
|
||||
__asm__("callsys # %0 %1 <= %2 %3 %4 %5 %6 %7" \
|
||||
: "=r"(_sc_0), "=r"(_sc_19) \
|
||||
: "0"(_sc_0), "r"(_sc_16), "r"(_sc_17), \
|
||||
"r"(_sc_18), "1"(_sc_19), "r"(_sc_20) \
|
||||
: inline_syscall_clobbers); \
|
||||
_sc_ret = _sc_0, _sc_err = _sc_19; \
|
||||
}
|
||||
|
||||
#define inline_syscall6(name,arg1,arg2,arg3,arg4,arg5,arg6) \
|
||||
{ \
|
||||
register long _sc_0 __asm__("$0"); \
|
||||
register long _sc_16 __asm__("$16"); \
|
||||
register long _sc_17 __asm__("$17"); \
|
||||
register long _sc_18 __asm__("$18"); \
|
||||
register long _sc_19 __asm__("$19"); \
|
||||
register long _sc_20 __asm__("$20"); \
|
||||
register long _sc_21 __asm__("$21"); \
|
||||
\
|
||||
_sc_0 = __NR_##name; \
|
||||
_sc_16 = (long) (arg1); \
|
||||
_sc_17 = (long) (arg2); \
|
||||
_sc_18 = (long) (arg3); \
|
||||
_sc_19 = (long) (arg4); \
|
||||
_sc_20 = (long) (arg5); \
|
||||
_sc_21 = (long) (arg6); \
|
||||
__asm__("callsys # %0 %1 <= %2 %3 %4 %5 %6 %7 %8" \
|
||||
: "=r"(_sc_0), "=r"(_sc_19) \
|
||||
: "0"(_sc_0), "r"(_sc_16), "r"(_sc_17), \
|
||||
"r"(_sc_18), "1"(_sc_19), "r"(_sc_20), \
|
||||
"r"(_sc_21) \
|
||||
: inline_syscall_clobbers); \
|
||||
_sc_ret = _sc_0, _sc_err = _sc_19; \
|
||||
}
|
||||
|
||||
#endif /* ASSEMBLER */
|
||||
|
@ -79,30 +79,3 @@ old_adjtimex - old_adjtimex 1 __adjtimex_tv32 __adjtimex@GLIBC_2.0 adjtimex@GLI
|
||||
|
||||
# and one for timeval64 entry points
|
||||
adjtimex adjtime adjtimex 1 __syscall_adjtimex_tv64
|
||||
|
||||
# System calls with wrappers.
|
||||
rt_sigaction - rt_sigaction 4 __syscall_rt_sigaction
|
||||
rt_sigpending - rt_sigpending 2 __syscall_rt_sigpending
|
||||
rt_sigprocmask - rt_sigprocmask 4 __syscall_rt_sigprocmask
|
||||
rt_sigqueueinfo - rt_sigqueueinfo 3 __syscall_rt_sigqueueinfo
|
||||
rt_sigsuspend - rt_sigsuspend 2 __syscall_rt_sigsuspend
|
||||
rt_sigtimedwait - rt_sigtimedwait 4 __syscall_rt_sigtimedwait
|
||||
s_getcwd getcwd getcwd 2 __syscall_getcwd
|
||||
s_getdents getdents getdents 3 __syscall_getdents
|
||||
s_getpriority getpriority getpriority 2 __syscall_getpriority
|
||||
s_getresgid getresgid getresgid 3 __syscall_getresgid
|
||||
s_getresuid getresuid getresuid 3 __syscall_getresuid
|
||||
s_poll poll poll 3 __syscall_poll
|
||||
s_ptrace ptrace ptrace 4 __syscall_ptrace
|
||||
s_reboot reboot reboot 3 __syscall_reboot
|
||||
s_sigaction sigaction sigaction 3 __syscall_sigaction
|
||||
s_sigpending sigpending sigpending 1 __syscall_sigpending
|
||||
s_sigprocmask sigprocmask sigprocmask 3 __syscall_sigprocmask
|
||||
s_sigsuspend sigsuspend sigsuspend 3 __syscall_sigsuspend
|
||||
s_sysctl sysctl _sysctl 1 __syscall__sysctl
|
||||
sys_fstat fxstat fstat 2 __syscall_fstat
|
||||
sys_lstat lxstat lstat 2 __syscall_lstat
|
||||
sys_mknod xmknod mknod 3 __syscall_mknod
|
||||
sys_readv readv readv 3 __syscall_readv
|
||||
sys_stat xstat stat 2 __syscall_stat
|
||||
sys_writev writev writev 3 __syscall_writev
|
||||
|
@ -55,3 +55,15 @@
|
||||
#define __NR_osf_shmat 209
|
||||
#define __NR_osf_getsysinfo 256
|
||||
#define __NR_osf_setsysinfo 257
|
||||
|
||||
/*
|
||||
* In order to get the hidden arguments for rt_sigaction set up
|
||||
* properly, we need to call the assembly version. Detect this in the
|
||||
* INLINE_SYSCALL macro, and fail to expand inline in that case.
|
||||
*/
|
||||
|
||||
#undef INLINE_SYSCALL
|
||||
#define INLINE_SYSCALL(name, nr, args...) \
|
||||
(__NR_##name == __NR_rt_sigaction \
|
||||
? __syscall_##name(args) \
|
||||
: INLINE_SYSCALL1(name, nr, args))
|
||||
|
@ -36,7 +36,7 @@ setgroups (n, groups)
|
||||
size_t n;
|
||||
const gid_t *groups;
|
||||
{
|
||||
if (n < 0 || n > __sysconf (_SC_NGROUPS_MAX))
|
||||
if (n > (size_t) __sysconf (_SC_NGROUPS_MAX))
|
||||
{
|
||||
__set_errno (EINVAL);
|
||||
return -1;
|
||||
|
@ -30,15 +30,14 @@
|
||||
|
||||
char *__ttyname = NULL;
|
||||
|
||||
static char * getttyname __P ((const char *dev, int fd, dev_t mydev,
|
||||
static char * getttyname __P ((const char *dev, dev_t mydev,
|
||||
ino_t myino, int save, int *dostat))
|
||||
internal_function;
|
||||
|
||||
static char *
|
||||
internal_function
|
||||
getttyname (dev, fd, mydev, myino, save, dostat)
|
||||
getttyname (dev, mydev, myino, save, dostat)
|
||||
const char *dev;
|
||||
int fd;
|
||||
dev_t mydev;
|
||||
ino_t myino;
|
||||
int save;
|
||||
@ -142,9 +141,9 @@ ttyname (fd)
|
||||
if (stat ("/dev/pts", &st1) == 0 && S_ISDIR (st1.st_mode))
|
||||
{
|
||||
#ifdef _STATBUF_ST_RDEV
|
||||
name = getttyname ("/dev/pts", fd, st.st_rdev, st.st_ino, save, &dostat);
|
||||
name = getttyname ("/dev/pts", st.st_rdev, st.st_ino, save, &dostat);
|
||||
#else
|
||||
name = getttyname ("/dev/pts", fd, st.st_dev, st.st_ino, save, &dostat);
|
||||
name = getttyname ("/dev/pts", st.st_dev, st.st_ino, save, &dostat);
|
||||
#endif
|
||||
}
|
||||
else
|
||||
@ -156,9 +155,9 @@ ttyname (fd)
|
||||
if (!name && dostat != -1)
|
||||
{
|
||||
#ifdef _STATBUF_ST_RDEV
|
||||
name = getttyname ("/dev", fd, st.st_rdev, st.st_ino, save, &dostat);
|
||||
name = getttyname ("/dev", st.st_rdev, st.st_ino, save, &dostat);
|
||||
#else
|
||||
name = getttyname ("/dev", fd, st.st_dev, st.st_ino, save, &dostat);
|
||||
name = getttyname ("/dev", st.st_dev, st.st_ino, save, &dostat);
|
||||
#endif
|
||||
}
|
||||
|
||||
@ -166,9 +165,9 @@ ttyname (fd)
|
||||
{
|
||||
dostat = 1;
|
||||
#ifdef _STATBUF_ST_RDEV
|
||||
name = getttyname ("/dev", fd, st.st_rdev, st.st_ino, save, &dostat);
|
||||
name = getttyname ("/dev", st.st_rdev, st.st_ino, save, &dostat);
|
||||
#else
|
||||
name = getttyname ("/dev", fd, st.st_dev, st.st_ino, save, &dostat);
|
||||
name = getttyname ("/dev", st.st_dev, st.st_ino, save, &dostat);
|
||||
#endif
|
||||
}
|
||||
|
||||
|
@ -28,14 +28,13 @@
|
||||
|
||||
#include <stdio-common/_itoa.h>
|
||||
|
||||
static int getttyname_r __P ((int fd, char *buf, size_t buflen,
|
||||
static int getttyname_r __P ((char *buf, size_t buflen,
|
||||
dev_t mydev, ino_t myino, int save,
|
||||
int *dostat)) internal_function;
|
||||
|
||||
static int
|
||||
internal_function
|
||||
getttyname_r (fd, buf, buflen, mydev, myino, save, dostat)
|
||||
int fd;
|
||||
getttyname_r (buf, buflen, mydev, myino, save, dostat)
|
||||
char *buf;
|
||||
size_t buflen;
|
||||
dev_t mydev;
|
||||
@ -152,10 +151,10 @@ __ttyname_r (fd, buf, buflen)
|
||||
if (stat (buf, &st1) == 0 && S_ISDIR (st1.st_mode))
|
||||
{
|
||||
#ifdef _STATBUF_ST_RDEV
|
||||
ret = getttyname_r (fd, buf, buflen, st.st_rdev, st.st_ino, save,
|
||||
ret = getttyname_r (buf, buflen, st.st_rdev, st.st_ino, save,
|
||||
&dostat);
|
||||
#else
|
||||
ret = getttyname_r (fd, buf, buflen, st.st_dev, st.st_ino, save,
|
||||
ret = getttyname_r (buf, buflen, st.st_dev, st.st_ino, save,
|
||||
&dostat);
|
||||
#endif
|
||||
}
|
||||
@ -170,10 +169,10 @@ __ttyname_r (fd, buf, buflen)
|
||||
buf[sizeof ("/dev/") - 1] = '\0';
|
||||
buflen += sizeof ("pts/") - 1;
|
||||
#ifdef _STATBUF_ST_RDEV
|
||||
ret = getttyname_r (fd, buf, buflen, st.st_rdev, st.st_ino, save,
|
||||
ret = getttyname_r (buf, buflen, st.st_rdev, st.st_ino, save,
|
||||
&dostat);
|
||||
#else
|
||||
ret = getttyname_r (fd, buf, buflen, st.st_dev, st.st_ino, save,
|
||||
ret = getttyname_r (buf, buflen, st.st_dev, st.st_ino, save,
|
||||
&dostat);
|
||||
#endif
|
||||
}
|
||||
@ -183,10 +182,10 @@ __ttyname_r (fd, buf, buflen)
|
||||
buf[sizeof ("/dev/") - 1] = '\0';
|
||||
dostat = 1;
|
||||
#ifdef _STATBUF_ST_RDEV
|
||||
ret = getttyname_r (fd, buf, buflen, st.st_rdev, st.st_ino,
|
||||
ret = getttyname_r (buf, buflen, st.st_rdev, st.st_ino,
|
||||
save, &dostat);
|
||||
#else
|
||||
ret = getttyname_r (fd, buf, buflen, st.st_dev, st.st_ino,
|
||||
ret = getttyname_r (buf, buflen, st.st_dev, st.st_ino,
|
||||
save, &dostat);
|
||||
#endif
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user