1999-12-21  Ulrich Drepper  <drepper@cygnus.com>

	* sysdeps/unix/sysv/linux/i386/getmsg.c: New file.
	* sysdeps/unix/sysv/linux/i386/getpmsg.c: New file.
	* sysdeps/unix/sysv/linux/i386/putmsg.c: New file.
	* sysdeps/unix/sysv/linux/i386/putpmsg.c: New file.
	* sysdeps/unix/sysv/linux/m68k/getmsg.c: New file.
	* sysdeps/unix/sysv/linux/m68k/getpmsg.c: New file.
	* sysdeps/unix/sysv/linux/m68k/putmsg.c: New file.
	* sysdeps/unix/sysv/linux/m68k/putpmsg.c: New file.
	* sysdeps/unix/sysv/linux/mips/getmsg.c: New file.
	* sysdeps/unix/sysv/linux/mips/getpmsg.c: New file.
	* sysdeps/unix/sysv/linux/mips/putmsg.c: New file.
	* sysdeps/unix/sysv/linux/mips/putpmsg.c: New file.
	* sysdeps/unix/sysv/linux/powerpc/getmsg.c: New file.
	* sysdeps/unix/sysv/linux/powerpc/getpmsg.c: New file.
	* sysdeps/unix/sysv/linux/powerpc/putmsg.c: New file.
	* sysdeps/unix/sysv/linux/powerpc/putpmsg.c: New file.
	* sysdeps/unix/sysv/linux/powerpc/syscalls.list: Add getpmsg and
	putpmsg.

1999-12-20  Ulrich Drepper  <drepper@cygnus.com>

	* sysdeps/unix/sysv/linux/lxstat64.c: Include "kernel-features.h"
	before testing for __ASSUME_STAT64_SYSCALL.
	* sysdeps/unix/sysv/linux/fxstat64.c: Likewise.
	* sysdeps/unix/sysv/linux/xstat64.c: Likewise.

1999-12-20  Andreas Schwab  <schwab@suse.de>

	* manual/install.texi (Running make install): Clearify that
	install_root should be an absolute file name.

	* iconv/gconv.c (__gconv): Deal with outbuf being NULL.

	* iconv/iconv.c (iconv): Allow omitting output buffer if no input
	buffer is given to place conversion descriptor in initial state.
	* iconvdata/gconv-modules: Correct aliases CSPC850MULTILINGUAL and
	CSPC862LATINHEBREW.
	* iconvdata/gconv-modules: Add aliases GB2312 and csGB2312
	(according to IANA registry).
	Reported by Bruno Haible <haible@ilog.fr>.

	* iconvdata/johab.c: Correct completely broken conversion to JOHAB.
This commit is contained in:
Ulrich Drepper 1999-12-21 08:10:06 +00:00
parent 47cd4757a8
commit c63598bf05
29 changed files with 292 additions and 32 deletions

View file

@ -1,5 +1,50 @@
1999-12-21 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/unix/sysv/linux/i386/getmsg.c: New file.
* sysdeps/unix/sysv/linux/i386/getpmsg.c: New file.
* sysdeps/unix/sysv/linux/i386/putmsg.c: New file.
* sysdeps/unix/sysv/linux/i386/putpmsg.c: New file.
* sysdeps/unix/sysv/linux/m68k/getmsg.c: New file.
* sysdeps/unix/sysv/linux/m68k/getpmsg.c: New file.
* sysdeps/unix/sysv/linux/m68k/putmsg.c: New file.
* sysdeps/unix/sysv/linux/m68k/putpmsg.c: New file.
* sysdeps/unix/sysv/linux/mips/getmsg.c: New file.
* sysdeps/unix/sysv/linux/mips/getpmsg.c: New file.
* sysdeps/unix/sysv/linux/mips/putmsg.c: New file.
* sysdeps/unix/sysv/linux/mips/putpmsg.c: New file.
* sysdeps/unix/sysv/linux/powerpc/getmsg.c: New file.
* sysdeps/unix/sysv/linux/powerpc/getpmsg.c: New file.
* sysdeps/unix/sysv/linux/powerpc/putmsg.c: New file.
* sysdeps/unix/sysv/linux/powerpc/putpmsg.c: New file.
* sysdeps/unix/sysv/linux/powerpc/syscalls.list: Add getpmsg and
putpmsg.
1999-12-20 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/unix/sysv/linux/lxstat64.c: Include "kernel-features.h"
before testing for __ASSUME_STAT64_SYSCALL.
* sysdeps/unix/sysv/linux/fxstat64.c: Likewise.
* sysdeps/unix/sysv/linux/xstat64.c: Likewise.
1999-12-20 Andreas Schwab <schwab@suse.de>
* manual/install.texi (Running make install): Clearify that
install_root should be an absolute file name.
1999-12-20 Ulrich Drepper <drepper@cygnus.com>
* iconv/gconv.c (__gconv): Deal with outbuf being NULL.
* iconv/iconv.c (iconv): Allow omitting output buffer if no input
buffer is given to place conversion descriptor in initial state.
* iconvdata/gconv-modules: Correct aliases CSPC850MULTILINGUAL and
CSPC862LATINHEBREW.
* iconvdata/gconv-modules: Add aliases GB2312 and csGB2312
(according to IANA registry).
Reported by Bruno Haible <haible@ilog.fr>.
* iconvdata/johab.c: Correct completely broken conversion to JOHAB.
* locale/categories.def: Remove most of the collate definitions.
* locale/langinfo.h: Comment out corresponding definitions.
* locale/programs/locale-spec.c (locale_special): Don't recognize the

11
FAQ
View file

@ -170,6 +170,7 @@ please let me know.
daylight saving time is in effect the timezone string is EST.
4.6. I've build make 3.77 against glibc 2.1 and now make gets
segmentation faults.
4.7. Why do so many programs using math functions fail on my AlphaStation?
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
@ -1705,6 +1706,15 @@ filesystem support :-( ). To get a working make you can use either make
3.75 or patch 3.77. A working patch is available via RedHat's Rawhide server
(ftp://rawhide.redhat.com/SRPMS/SRPMS/make-3.77-*src.rpm).
4.7. Why do so many programs using math functions fail on my AlphaStation?
{AO} The functions floor() and floorf() use an instruction that is not
implemented in some old PALcodes of AlphaStations. This may cause
`Illegal Instruction' core dumps or endless loops in programs that
catch these signals. Updating the firmware to a 1999 release has
fixed the problem on an AlphaStation 200 4/166.
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
@ -1721,6 +1731,7 @@ Answers were given by:
{GK} Geoffrey Keating, <geoffk@ozemail.com.au>
{HJ} H.J. Lu, <hjl@gnu.org>
{CG} Cristian Gafton, <gafton@redhat.com>
{AO} Alexandre Oliva, <oliva@lsd.ic.unicamp.br>
Local Variables:
mode:outline

9
FAQ.in
View file

@ -1473,6 +1473,14 @@ filesystem support :-( ). To get a working make you can use either make
3.75 or patch 3.77. A working patch is available via RedHat's Rawhide server
(ftp://rawhide.redhat.com/SRPMS/SRPMS/make-3.77-*src.rpm).
?? Why do so many programs using math functions fail on my AlphaStation?
{AO} The functions floor() and floorf() use an instruction that is not
implemented in some old PALcodes of AlphaStations. This may cause
`Illegal Instruction' core dumps or endless loops in programs that
catch these signals. Updating the firmware to a 1999 release has
fixed the problem on an AlphaStation 200 4/166.
Answers were given by:
{UD} Ulrich Drepper, <drepper@cygnus.com>
@ -1487,6 +1495,7 @@ Answers were given by:
{GK} Geoffrey Keating, <geoffk@ozemail.com.au>
{HJ} H.J. Lu, <hjl@gnu.org>
{CG} Cristian Gafton, <gafton@redhat.com>
{AO} Alexandre Oliva, <oliva@lsd.ic.unicamp.br>
Local Variables:
mode:outline

View file

@ -39,7 +39,7 @@ __gconv (__gconv_t cd, const unsigned char **inbuf,
assert (converted != NULL);
*converted = 0;
cd->__data[last_step].__outbuf = *outbuf;
cd->__data[last_step].__outbuf = outbuf != NULL ? *outbuf : NULL;
cd->__data[last_step].__outbufend = outbufend;
if (inbuf == NULL || *inbuf == NULL)

View file

@ -39,9 +39,12 @@ iconv (iconv_t cd, const char **inbuf, size_t *inbytesleft, char **outbuf,
if (inbuf == NULL || *inbuf == NULL)
{
result = __gconv (gcd, NULL, NULL, (unsigned char **) outbuf,
(unsigned char *) (outstart + *outbytesleft),
&converted);
if (outbuf == NULL || *outbuf == NULL)
result = __gconv (gcd, NULL, NULL, NULL, NULL, &converted);
else
result = __gconv (gcd, NULL, NULL, (unsigned char **) outbuf,
(unsigned char *) (outstart + *outbytesleft),
&converted);
}
else
{

View file

@ -648,7 +648,7 @@ module INTERNAL IBM500// IBM500 1
# from to module cost
alias CP850// IBM850//
alias 850// IBM850//
alias CSPC8MULTILINGUAL// IBM850//
alias CSPC850MULTILINGUAL// IBM850//
alias OSF10020352// IBM850//
module IBM850// INTERNAL IBM850 1
module INTERNAL IBM850// IBM850 1
@ -702,7 +702,7 @@ module INTERNAL IBM861// IBM861 1
# from to module cost
alias CP862// IBM862//
alias 862// IBM862//
alias CSPC8LATINHEBREW// IBM862//
alias CSPC862LATINHEBREW// IBM862//
alias OSF1002035E// IBM862//
module IBM862// INTERNAL IBM862 1
module INTERNAL IBM862// IBM862 1
@ -881,6 +881,8 @@ module INTERNAL EUC-JP// EUC-JP 1
# from to module cost
alias EUCCN// EUC-CN//
alias GB2312// EUC-CN//
alias csGB2312// EUC-CN//
module EUC-CN// INTERNAL EUC-CN 1
module INTERNAL EUC-CN// EUC-CN 1

View file

@ -64,12 +64,12 @@ static const uint32_t init_to_ucs[19] =
0x314c, 0x314d, 0x314e
};
static const uint32_t final_to_ucs[27] =
static const uint32_t final_to_ucs[31] =
{
L'\0', L'\0', 0x3133, L'\0', 0x3135, 0x3136, L'\0', L'\0',
0x313a, 0x313b, 0x314c, 0x313d, 0x313e, 0x313f,
0x3140, L'\0', L'\0', 0x3144, L'\0', L'\0', L'\0',
L'\0', L'\0', L'\0', L'\0', L'\0', L'\0'
0x3140, L'\0', L'\0', L'\0', 0x3144, L'\0', L'\0', L'\0',
L'\0', L'\0', L'\0', L'\0', L'\0', L'\0', L'\0', L'\0', L'\0'
};
/* The following three arrays are used to convert
@ -307,18 +307,18 @@ johab_sym_hanja_to_ucs (uint_fast32_t idx, uint_fast32_t c1, uint_fast32_t c2)
{ \
if (ch >= 0xac00 && ch <= 0xd7a3) \
{ \
ch -= 0xac00; \
\
ch = (init_to_bit[ch / 588] /* 21 * 28 = 588 */ \
+ mid_to_bit[(ch / 28) % 21]/* (ch % (21 * 28)) / 28 */ \
+ final_to_bit[ch % 28]); /* (ch % (21 * 28)) % 28 */ \
\
if (NEED_LENGTH_TEST && outptr + 2 > outend) \
{ \
result = __GCONV_FULL_OUTPUT; \
break; \
} \
\
ch -= 0xac00; \
\
ch = (init_to_bit[ch / 588] /* 21 * 28 = 588 */ \
+ mid_to_bit[(ch / 28) % 21]/* (ch % (21 * 28)) / 28 */ \
+ final_to_bit[ch % 28]); /* (ch % (21 * 28)) % 28 */ \
\
*outptr++ = ch / 256; \
*outptr++ = ch % 256; \
} \
@ -337,9 +337,11 @@ johab_sym_hanja_to_ucs (uint_fast32_t idx, uint_fast32_t c1, uint_fast32_t c2)
*outptr++ = ch / 256; \
*outptr++ = ch % 256; \
} \
if ((ch >= 0x4e00 && ch <= 0x9fa5) || (ch >= 0xf900 && ch <= 0xfa0b)) \
else if ((ch >= 0x4e00 && ch <= 0x9fa5) \
|| (ch >= 0xf900 && ch <= 0xfa0b)) \
{ \
size_t written; \
uint32_t temp; \
\
written = ucs4_to_ksc5601_hanja (ch, outptr, \
(NEED_LENGTH_TEST \
@ -356,13 +358,13 @@ johab_sym_hanja_to_ucs (uint_fast32_t idx, uint_fast32_t c1, uint_fast32_t c2)
} \
\
outptr[0] -= 0x4a; \
outptr[1] += 0x80; \
outptr[1] -= 0x21; \
\
outptr[1] += (outptr[0] % 2 \
? 0 : (outptr[1] > 0xee ? 0x43 : 0x31)); \
outptr[1] -= 0xa1; \
outptr[0] /= 2; \
outptr[0] += 0xe0; \
temp = outptr[0] * 94 + outptr[1]; \
\
outptr[0] = 0xe0 + temp / 188; \
outptr[1] = temp % 188; \
outptr[1] += outptr[1] >= 78 ? 0x43 : 0x31; \
\
outptr += 2; \
} \

View file

@ -1,3 +1,8 @@
1999-12-20 Andreas Jaeger <aj@suse.de>
* pthread.c (pthread_initialize): Move getrlimit call after
setting of errno.
1999-12-18 Ulrich Drepper <drepper@cygnus.com>
* Versions: Export pread, __pread64, pread64, pwrite, __pwrite64,

View file

@ -299,14 +299,6 @@ static void pthread_initialize(void)
STACK_SIZE boundary. */
__pthread_initial_thread_bos =
(char *)(((long)CURRENT_STACK_FRAME - 2 * STACK_SIZE) & ~(STACK_SIZE - 1));
/* Play with the stack size limit to make sure that no stack ever grows
beyond STACK_SIZE minus one page (to act as a guard page). */
getrlimit(RLIMIT_STACK, &limit);
max_stack = STACK_SIZE - __getpagesize();
if (limit.rlim_cur > max_stack) {
limit.rlim_cur = max_stack;
setrlimit(RLIMIT_STACK, &limit);
}
/* Update the descriptor for the initial thread. */
__pthread_initial_thread.p_pid = __getpid();
/* If we have special thread_self processing, initialize that for the
@ -317,6 +309,14 @@ static void pthread_initialize(void)
/* The errno/h_errno variable of the main thread are the global ones. */
__pthread_initial_thread.p_errnop = &_errno;
__pthread_initial_thread.p_h_errnop = &_h_errno;
/* Play with the stack size limit to make sure that no stack ever grows
beyond STACK_SIZE minus one page (to act as a guard page). */
getrlimit(RLIMIT_STACK, &limit);
max_stack = STACK_SIZE - __getpagesize();
if (limit.rlim_cur > max_stack) {
limit.rlim_cur = max_stack;
setrlimit(RLIMIT_STACK, &limit);
}
/* Likewise for the resolver state _res. */
__pthread_initial_thread.p_resp = &_res;
#ifdef __SIGRTMIN

View file

@ -24,6 +24,7 @@
#include <sysdep.h>
#include <sys/syscall.h>
#include "kernel-features.h"
#if __ASSUME_STAT64_SYSCALL == 0
# include <xstatconv.c>

View file

@ -0,0 +1,41 @@
/* Copyright (C) 1998, 1999 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 Library General Public License as
published by the Free Software Foundation; either version 2 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
Library General Public License for more details.
You should have received a copy of the GNU Library General Public
License along with the GNU C Library; see the file COPYING.LIB. If not,
write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
#include <errno.h>
#include <stddef.h>
#include <stropts.h>
#include <sysdep.h>
#include <sys/syscall.h>
extern int __syscall_getpmsg (int fildes, struct strbuf *ctlptr,
struct strbuf *dataptr, int *bandp, int *flagsp);
#ifdef __NR_getpmsg
int
getmsg (fildes, ctlptr, dataptr, flagsp)
int fildes;
struct strbuf *ctlptr;
struct strbuf *dataptr;
int *flagsp;
{
return INLINE_SYSCALL (getpmsg, 5, fildes, ctlptr, dataptr, NULL, flagsp);
}
#else
# include <sysdeps/generic/getmsg.c>
#endif

View file

@ -0,0 +1,41 @@
/* Copyright (C) 1998, 1999 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 Library General Public License as
published by the Free Software Foundation; either version 2 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
Library General Public License for more details.
You should have received a copy of the GNU Library General Public
License along with the GNU C Library; see the file COPYING.LIB. If not,
write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
#include <errno.h>
#include <stropts.h>
#include <sysdep.h>
#include <sys/syscall.h>
extern int __syscall_getpmsg (int fildes, struct strbuf *ctlptr,
struct strbuf *dataptr, int *bandp, int *flagsp);
#ifdef __NR_getpmsg
int
getpmsg (fildes, ctlptr, dataptr, bandp, flagsp)
int fildes;
struct strbuf *ctlptr;
struct strbuf *dataptr;
int *bandp;
int *flagsp;
{
return INLINE_SYSCALL (getpmsg, 5, fildes, ctlptr, dataptr, bandp, flagsp);
}
#else
# include <sysdeps/generic/getpmsg.c>
#endif

View file

@ -0,0 +1,42 @@
/* Copyright (C) 1998, 1999 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 Library General Public License as
published by the Free Software Foundation; either version 2 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
Library General Public License for more details.
You should have received a copy of the GNU Library General Public
License along with the GNU C Library; see the file COPYING.LIB. If not,
write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
#include <errno.h>
#include <stddef.h>
#include <stropts.h>
#include <sysdep.h>
#include <sys/syscall.h>
extern int __syscall_putpmsg (int fildes, const struct strbuf *ctlptr,
const struct strbuf *dataptr, int band,
int flags);
#ifdef __NR_putpmsg
int
putmsg (fildes, ctlptr, dataptr, flags)
int fildes;
const struct strbuf *ctlptr;
const struct strbuf *dataptr;
int flags;
{
return INLINE_SYSCALL (putpmsg, 5, fildes, ctlptr, dataptr, -1, flags);
}
#else
# include <sysdeps/generic/putmsg.c>
#endif

View file

@ -0,0 +1,42 @@
/* Copyright (C) 1998, 1999 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 Library General Public License as
published by the Free Software Foundation; either version 2 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
Library General Public License for more details.
You should have received a copy of the GNU Library General Public
License along with the GNU C Library; see the file COPYING.LIB. If not,
write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
#include <errno.h>
#include <stropts.h>
#include <sysdep.h>
#include <sys/syscall.h>
extern int __syscall_putpmsg (int fildes, const struct strbuf *ctlptr,
const struct strbuf *dataptr, int band,
int flags);
#ifdef __NR_putpmsg
int
putpmsg (fildes, ctlptr, dataptr, band, flags)
int fildes;
const struct strbuf *ctlptr;
const struct strbuf *dataptr;
int band;
int flags;
{
return INLINE_SYSCALL (putpmsg, 5, fildes, ctlptr, dataptr, band, flags);
}
#else
# include <sysdeps/generic/putpmsg.c>
#endif

View file

@ -24,6 +24,7 @@
#include <sysdep.h>
#include <sys/syscall.h>
#include "kernel-features.h"
#if __ASSUME_STAT64_SYSCALL == 0
# include <xstatconv.c>

View file

@ -0,0 +1 @@
include <sysdeps/unix/sysv/linux/i386/getmsg.c>

View file

@ -0,0 +1 @@
include <sysdeps/unix/sysv/linux/i386/getpmsg.c>

View file

@ -0,0 +1 @@
include <sysdeps/unix/sysv/linux/i386/putmsg.c>

View file

@ -0,0 +1 @@
include <sysdeps/unix/sysv/linux/i386/putpmsg.c>

View file

@ -0,0 +1 @@
include <sysdeps/unix/sysv/linux/i386/getmsg.c>

View file

@ -0,0 +1 @@
include <sysdeps/unix/sysv/linux/i386/getpmsg.c>

View file

@ -0,0 +1 @@
include <sysdeps/unix/sysv/linux/i386/putmsg.c>

View file

@ -0,0 +1 @@
include <sysdeps/unix/sysv/linux/i386/putpmsg.c>

View file

@ -0,0 +1 @@
include <sysdeps/unix/sysv/linux/i386/getmsg.c>

View file

@ -0,0 +1 @@
include <sysdeps/unix/sysv/linux/i386/getpmsg.c>

View file

@ -0,0 +1 @@
include <sysdeps/unix/sysv/linux/i386/putmsg.c>

View file

@ -0,0 +1 @@
include <sysdeps/unix/sysv/linux/i386/putpmsg.c>

View file

@ -14,6 +14,7 @@ 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_getpmsg getpmsg getpmsg 5 __syscall_getpmsg
s_getpriority getpriority getpriority 2 __syscall_getpriority
s_getresgid getresgid getresgid 3 __syscall_getresgid
s_getresuid getresuid getresuid 3 __syscall_getresuid
@ -21,6 +22,7 @@ s_getrlimit getrlimit getrlimit 2 __syscall_getrlimit
s_poll poll poll 3 __syscall_poll
s_pread64 pread64 pread 5 __syscall_pread
s_ptrace ptrace ptrace 4 __syscall_ptrace
s_putpmsg putpmsg putpmsg 5 __syscall_putpmsg
s_pwrite64 pwrite64 pwrite 5 __syscall_pwrite
s_reboot reboot reboot 3 __syscall_reboot
s_setrlimit setrlimit setrlimit 3 __syscall_setrlimit

View file

@ -1,5 +1,5 @@
/* xstat64 using old-style Unix stat system call.
Copyright (C) 1991, 1995, 1996, 1997, 1998, 1999 Free Software Foundation, Inc.
Copyright (C) 1991, 95, 96, 97, 98, 99 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
@ -24,6 +24,7 @@
#include <sysdep.h>
#include <sys/syscall.h>
#include "kernel-features.h"
#if __ASSUME_STAT64_SYSCALL == 0
# include <xstatconv.c>
@ -63,7 +64,7 @@ __xstat64 (int vers, const char *name, struct stat64 *buf)
have_no_stat64 = 1;
}
# endif
result = INLINE_SYSCALL (stat, 2, name, &kbuf);
if (result == 0)
result = xstat64_conv (vers, &kbuf, buf);