mirror of
https://sourceware.org/git/glibc.git
synced 2024-11-21 12:30:06 +00:00
Update.
1998-04-21 21:49 Zack Weinberg <zack@rabi.phys.columbia.edu> * misc/sys/cdefs.h: New macro __REDIRECT to support changing the asm symbol name of functions. * include/features.h: Kill redundant test. * dirent/dirent.h: Use new macros to implement __USE_FILE_OFFSET64. * io/ftw.h: Likewise. * io/sys/stat.h: Likewise. * io/sys/statfs.h: Likewise. * io/sys/statvfs.h: Likewise. * libio/stdio.h: Likewise. * resource/sys/resource.h: Likewise. * rt/aio.h: Likewise. * posix/unistd.h: Use new macros for __USE_FILE_OFFSET64 and __FAVOR_BSD. * signal/signal.h: Use new macros for BSD vs. SysV signal(). * misc/Makefile: Drop bsd-compat.c. Make libbsd-compat.a a dummy library. * misc/bsd-compat.c: Removed.
This commit is contained in:
parent
28f1c862dd
commit
01cad72266
23
ChangeLog
23
ChangeLog
@ -1,3 +1,26 @@
|
||||
1998-04-21 21:49 Zack Weinberg <zack@rabi.phys.columbia.edu>
|
||||
|
||||
* misc/sys/cdefs.h: New macro __REDIRECT to support changing the
|
||||
asm symbol name of functions.
|
||||
* include/features.h: Kill redundant test.
|
||||
|
||||
* dirent/dirent.h: Use new macros to implement __USE_FILE_OFFSET64.
|
||||
* io/ftw.h: Likewise.
|
||||
* io/sys/stat.h: Likewise.
|
||||
* io/sys/statfs.h: Likewise.
|
||||
* io/sys/statvfs.h: Likewise.
|
||||
* libio/stdio.h: Likewise.
|
||||
* resource/sys/resource.h: Likewise.
|
||||
* rt/aio.h: Likewise.
|
||||
|
||||
* posix/unistd.h: Use new macros for __USE_FILE_OFFSET64 and
|
||||
__FAVOR_BSD.
|
||||
* signal/signal.h: Use new macros for BSD vs. SysV signal().
|
||||
|
||||
* misc/Makefile: Drop bsd-compat.c. Make libbsd-compat.a
|
||||
a dummy library.
|
||||
* misc/bsd-compat.c: Removed.
|
||||
|
||||
1998-04-21 20:32 Ulrich Drepper <drepper@cygnus.com>
|
||||
|
||||
* iconv/loop.c: Allow EXTRA_LOOP_DECLS be defined and use it in
|
||||
|
@ -128,14 +128,18 @@ extern int closedir __P ((DIR *__dirp));
|
||||
If the Large File Support API is selected we have to use the
|
||||
appropriate interface. */
|
||||
extern struct dirent *__readdir __P ((DIR *__dirp));
|
||||
extern struct dirent64 *__readdir64 __P ((DIR *__dirp));
|
||||
#ifndef __USE_FILE_OFFSET64
|
||||
extern struct dirent *readdir __P ((DIR *__dirp));
|
||||
#else
|
||||
extern struct dirent *readdir __P ((DIR *__dirp)) __asm__ ("readdir64");
|
||||
# ifdef __REDIRECT
|
||||
extern struct dirent *__REDIRECT (readdir, __P ((DIR *__dirp)), readdir64);
|
||||
# else
|
||||
# define readdir readdir64
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#ifdef __USE_LARGEFILE64
|
||||
extern struct dirent64 *__readdir64 __P ((DIR *__dirp));
|
||||
extern struct dirent64 *readdir64 __P ((DIR *__dirp));
|
||||
#endif
|
||||
|
||||
@ -148,9 +152,13 @@ extern int __readdir_r __P ((DIR *__dirp, struct dirent *__entry,
|
||||
extern int readdir_r __P ((DIR *__dirp, struct dirent *__entry,
|
||||
struct dirent **__result));
|
||||
# else
|
||||
extern int readdir_r __P ((DIR *__dirp, struct dirent *__entry,
|
||||
struct dirent **__result))
|
||||
__asm__ ("readdir64_r");
|
||||
# ifdef __REDIRECT
|
||||
extern int __REDIRECT (readdir_r, __P ((DIR *__dirp, struct dirent *__entry,
|
||||
struct dirent **__result)),
|
||||
readdir64_r);
|
||||
# else
|
||||
# define readdir_r readdir64_r
|
||||
# endif
|
||||
# endif
|
||||
|
||||
# ifdef __USE_LARGEFILE64
|
||||
@ -205,26 +213,37 @@ extern int scandir __P ((__const char *__dir, struct dirent ***__namelist,
|
||||
int (*__selector) (__const struct dirent *),
|
||||
int (*__cmp) (__const __ptr_t, __const __ptr_t)));
|
||||
# else
|
||||
extern int scandir __P ((__const char *__dir, struct dirent ***__namelist,
|
||||
int (*__selector) (__const struct dirent *),
|
||||
int (*__cmp) (__const __ptr_t, __const __ptr_t)))
|
||||
__asm__ ("scandir64");
|
||||
# ifdef __REDIRECT
|
||||
extern int __REDIRECT (scandir,
|
||||
__P ((__const char *__dir,
|
||||
struct dirent ***__namelist,
|
||||
int (*__selector) (__const struct dirent *),
|
||||
int (*__cmp) (__const __ptr_t, __const __ptr_t))),
|
||||
scandir64);
|
||||
# else
|
||||
# define scandir scandir64
|
||||
# endif
|
||||
# endif
|
||||
|
||||
# if defined __USE_GNU && defined __USE_LARGEFILE64
|
||||
/* This function is like `scandir' but it uses the 64bit dirent structure.
|
||||
Please note that the CMP function must now work with struct dirent64 **. */
|
||||
extern int scandir64 __P ((__const char *__dir, struct dirent64 ***__namelist,
|
||||
int (*__selector) (__const struct dirent64 *),
|
||||
int (*__cmp) (__const __ptr_t, __const __ptr_t)));
|
||||
int (*__selector) (__const struct dirent64 *),
|
||||
int (*__cmp) (__const __ptr_t, __const __ptr_t)));
|
||||
# endif
|
||||
|
||||
/* Function to compare two `struct dirent's alphabetically. */
|
||||
# ifndef __USE_FILE_OFFSET64
|
||||
extern int alphasort __P ((__const __ptr_t __e1, __const __ptr_t __e2));
|
||||
# else
|
||||
extern int alphasort __P ((__const __ptr_t __e1, __const __ptr_t __e2))
|
||||
__asm__ ("alphasort64");
|
||||
# ifdef __REDIRECT
|
||||
extern int __REDIRECT (alphasort,
|
||||
__P ((__const __ptr_t __e1, __const __ptr_t __e2)),
|
||||
alphasort64);
|
||||
# else
|
||||
# define alphasort alphasort64
|
||||
# endif
|
||||
# endif
|
||||
|
||||
# if defined __USE_GNU && defined __USE_LARGEFILE64
|
||||
@ -236,8 +255,13 @@ extern int alphasort64 __P ((__const __ptr_t __e1, __const __ptr_t __e2));
|
||||
# ifndef __USE_FILE_OFFSET64
|
||||
extern int versionsort __P ((__const __ptr_t __e1, __const __ptr_t __e2));
|
||||
# else
|
||||
extern int versionsort __P ((__const __ptr_t __e1, __const __ptr_t __e2))
|
||||
__asm__ ("versionsort64");
|
||||
# ifdef __REDIRECT
|
||||
extern int __REDIRECT (versionsort,
|
||||
__P ((__const __ptr_t __e1, __const __ptr_t __e2)),
|
||||
versionsort64);
|
||||
# else
|
||||
# define versionsort versionsort64
|
||||
# endif
|
||||
# endif
|
||||
|
||||
# ifdef __USE_LARGEFILE64
|
||||
|
@ -237,17 +237,17 @@
|
||||
#define __GLIBC__ 2
|
||||
#define __GLIBC_MINOR__ 1
|
||||
|
||||
|
||||
#if !defined __GNUC__ || __GNUC__ < 2
|
||||
/* In GCC version 2, (__extension__ EXPR) will not complain
|
||||
about GCC extensions used in EXPR under -ansi or -pedantic. */
|
||||
# define __extension__
|
||||
#endif
|
||||
|
||||
|
||||
/* This is here only because every header file already includes this one. */
|
||||
#ifndef __ASSEMBLER__
|
||||
# include <sys/cdefs.h>
|
||||
|
||||
/* If we don't have __REDIRECT, prototypes will be missing if
|
||||
__USE_FILE_OFFSET64 but not __USE_LARGEFILE[64]. */
|
||||
# if defined __USE_FILE_OFFSET64 && !defined __REDIRECT
|
||||
# define __USE_LARGEFILE
|
||||
# define __USE_LARGEFILE64
|
||||
# endif
|
||||
|
||||
#endif
|
||||
|
||||
/* This is here only because every header file already includes this one. */
|
||||
|
16
io/ftw.h
16
io/ftw.h
@ -109,8 +109,12 @@ typedef int (*__nftw64_func_t) __P ((__const char *__filename,
|
||||
extern int ftw __P ((__const char *__dir, __ftw_func_t __func,
|
||||
int __descriptors));
|
||||
#else
|
||||
extern int ftw __P ((__const char *__dir, __ftw_func_t __func,
|
||||
int __descriptors)) __asm__ ("ftw64");
|
||||
# ifdef __REDIRECT
|
||||
extern int __REDIRECT (ftw, __P ((__const char *__dir, __ftw_func_t __func,
|
||||
int __descriptors)), ftw64);
|
||||
# else
|
||||
# define nftw nftw64
|
||||
# endif
|
||||
#endif
|
||||
#ifdef __USE_LARGEFILE64
|
||||
extern int ftw64 __P ((__const char *__dir, __ftw64_func_t __func,
|
||||
@ -124,8 +128,12 @@ extern int ftw64 __P ((__const char *__dir, __ftw64_func_t __func,
|
||||
extern int nftw __P ((__const char *__dir, __nftw_func_t __func,
|
||||
int __descriptors, int __flag));
|
||||
# else
|
||||
extern int nftw __P ((__const char *__dir, __nftw_func_t __func,
|
||||
int __descriptors, int __flag)) __asm__ ("nftw64");
|
||||
# ifdef __REDIRECT
|
||||
extern int __REDIRECT (nftw, __P ((__const char *__dir, __nftw_func_t __func,
|
||||
int __descriptors, int __flag)), nftw64);
|
||||
# else
|
||||
# define nftw nftw64
|
||||
# endif
|
||||
# endif
|
||||
# ifdef __USE_LARGEFILE64
|
||||
extern int nftw64 __P ((__const char *__dir, __nftw64_func_t __func,
|
||||
|
@ -173,37 +173,42 @@ __BEGIN_DECLS
|
||||
|
||||
/* Get file attributes for FILE and put them in BUF. */
|
||||
extern int __stat __P ((__const char *__file, struct stat *__buf));
|
||||
#ifndef __USE_FILE_OFFSET64
|
||||
extern int stat __P ((__const char *__file, struct stat *__buf));
|
||||
#else
|
||||
extern int stat __P ((__const char *__file, struct stat *__buf))
|
||||
__asm__ ("stat64");
|
||||
#endif
|
||||
#ifdef __USE_LARGEFILE64
|
||||
extern int stat64 __P ((__const char *__file, struct stat64 *__buf));
|
||||
#endif
|
||||
|
||||
/* Get file attributes for the file, device, pipe, or socket
|
||||
that file descriptor FD is open on and put them in BUF. */
|
||||
extern int __fstat __P ((int __fd, struct stat *__buf));
|
||||
#ifndef __USE_FILE_OFFSET64
|
||||
extern int fstat __P ((int __fd, struct stat *__buf));
|
||||
#else
|
||||
extern int fstat __P ((int __fd, struct stat *__buf)) __asm__ ("fstat64");
|
||||
#endif
|
||||
#ifdef __USE_LARGEFILE64
|
||||
extern int fstat64 __P ((int __fd, struct stat64 *__buf));
|
||||
#endif
|
||||
|
||||
/* Get file attributes about FILE and put them in BUF.
|
||||
If FILE is a symbolic link, do not follow it. */
|
||||
extern int __lstat __P ((__const char *__file, struct stat *__buf));
|
||||
|
||||
|
||||
#ifndef __USE_FILE_OFFSET64
|
||||
extern int stat __P ((__const char *__file, struct stat *__buf));
|
||||
extern int fstat __P ((int __fd, struct stat *__buf));
|
||||
#else
|
||||
# ifdef __REDIRECT
|
||||
extern int __REDIRECT (stat, __P ((__const char *__file, struct stat *__buf)),
|
||||
stat64);
|
||||
extern int __REDIRECT (fstat, __P ((int __fd, struct stat *__buf)), fstat64);
|
||||
# else
|
||||
# define stat stat64
|
||||
# define fstat fstat64
|
||||
# endif
|
||||
#endif
|
||||
#ifdef __USE_LARGEFILE64
|
||||
extern int stat64 __P ((__const char *__file, struct stat64 *__buf));
|
||||
extern int fstat64 __P ((int __fd, struct stat64 *__buf));
|
||||
#endif
|
||||
|
||||
#if defined __USE_BSD || defined __USE_XOPEN_EXTENDED
|
||||
# ifndef __USE_FILE_OFFSET64
|
||||
extern int lstat __P ((__const char *__file, struct stat *__buf));
|
||||
# else
|
||||
extern int lstat __P ((__const char *__file, struct stat *__buf))
|
||||
__asm__ ("lstat64");
|
||||
# ifdef __REDIRECT
|
||||
extern int __REDIRECT (lstat, __P ((__const char *__file, struct stat *__buf)),
|
||||
lstat64);
|
||||
# else
|
||||
# define lstat lstat64
|
||||
# endif
|
||||
# endif
|
||||
# ifdef __USE_LARGEFILE64
|
||||
extern int lstat64 __P ((__const char *__file, struct stat64 *__buf));
|
||||
@ -283,16 +288,21 @@ extern int __xstat __P ((int __ver, __const char *__filename,
|
||||
extern int __lxstat __P ((int __ver, __const char *__filename,
|
||||
struct stat *__stat_buf));
|
||||
#else
|
||||
extern int __fxstat __P ((int __ver, int __fildes,
|
||||
struct stat *__stat_buf))
|
||||
__asm__ ("__fxstat64");
|
||||
extern int __xstat __P ((int __ver, __const char *__filename,
|
||||
struct stat *__stat_buf))
|
||||
__asm__ ("__xstat64");
|
||||
extern int __lxstat __P ((int __ver, __const char *__filename,
|
||||
struct stat *__stat_buf))
|
||||
__asm__ ("__lxstat64");
|
||||
# ifdef __REDIRECT
|
||||
extern int __REDIRECT (__fxstat, __P ((int __ver, int __fildes,
|
||||
struct stat *__stat_buf)), __fxstat64);
|
||||
extern int __REDIRECT (__xstat, __P ((int __ver, __const char *__filename,
|
||||
struct stat *__stat_buf)), __xstat64);
|
||||
extern int __REDIRECT (__lxstat __P ((int __ver, __const char *__filename,
|
||||
struct stat *__stat_buf)), __lxstat64);
|
||||
|
||||
# else
|
||||
# define __fxstat __fxstat64
|
||||
# define __xstat __xstat64
|
||||
# define __lxstat __lxstat64
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#ifdef __USE_LARGEFILE64
|
||||
extern int __fxstat64 __P ((int __ver, int __fildes,
|
||||
struct stat64 *__stat_buf));
|
||||
|
@ -32,8 +32,12 @@ extern int __statfs __P ((__const char *__file, struct statfs *__buf));
|
||||
#ifndef __USE_FILE_OFFSET64
|
||||
extern int statfs __P ((__const char *__file, struct statfs *__buf));
|
||||
#else
|
||||
extern int statfs __P ((__const char *__file, struct statfs *__buf))
|
||||
__asm__ ("statfs64");
|
||||
# ifdef __REDIRECT
|
||||
extern int __REDIRECT (statfs, __P ((__const char *__file,
|
||||
struct statfs *__buf)), statfs64);
|
||||
# else
|
||||
# define statfs statfs64
|
||||
# endif
|
||||
#endif
|
||||
#ifdef __USE_LARGEFILE64
|
||||
extern int statfs64 __P ((__const char *__file, struct statfs64 *__buf));
|
||||
@ -45,8 +49,12 @@ extern int __fstatfs __P ((int __fildes, struct statfs *__buf));
|
||||
#ifndef __USE_FILE_OFFSET64
|
||||
extern int fstatfs __P ((int __fildes, struct statfs *__buf));
|
||||
#else
|
||||
extern int fstatfs __P ((int __fildes, struct statfs *__buf))
|
||||
__asm__ ("fstatfs64");
|
||||
# ifdef __REDIRECT
|
||||
extern int __REDIRECT (fstatfs, __P ((int __fildes, struct statfs *__buf)),
|
||||
fstatfs64);
|
||||
# else
|
||||
# define statfs statfs64
|
||||
# endif
|
||||
#endif
|
||||
#ifdef __USE_LARGEFILE64
|
||||
extern int fstatfs64 __P ((int __fildes, struct statfs64 *__buf));
|
||||
|
@ -32,8 +32,13 @@ extern int __statvfs __P ((__const char *__file, struct statvfs *__buf));
|
||||
#ifndef __USE_FILE_OFFSET64
|
||||
extern int statvfs __P ((__const char *__file, struct statvfs *__buf));
|
||||
#else
|
||||
extern int statvfs __P ((__const char *__file, struct statvfs *__buf))
|
||||
__asm__ ("statvfs64");
|
||||
# ifdef __REDIRECT
|
||||
extern int __REDIRECT (statvfs,
|
||||
__P ((__const char *__file, struct statvfs *__buf)),
|
||||
statvfs64);
|
||||
# else
|
||||
# define statfs statfs64
|
||||
# endif
|
||||
#endif
|
||||
#ifdef __USE_LARGEFILE64
|
||||
extern int statvfs64 __P ((__const char *__file, struct statvfs64 *__buf));
|
||||
@ -45,8 +50,12 @@ extern int __fstatvfs __P ((int __fildes, struct statvfs *__buf));
|
||||
#ifndef __USE_FILE_OFFSET64
|
||||
extern int fstatvfs __P ((int __fildes, struct statvfs *__buf));
|
||||
#else
|
||||
extern int fstatvfs __P ((int __fildes, struct statvfs *__buf))
|
||||
__asm__ ("fstatvfs64");
|
||||
# ifdef __REDIRECT
|
||||
extern int __REDIRECT (fstatvfs, __P ((int __fildes, struct statvfs *__buf)),
|
||||
fstatvfs64);
|
||||
# else
|
||||
# define statfs statfs64
|
||||
# endif
|
||||
#endif
|
||||
#ifdef __USE_LARGEFILE64
|
||||
extern int fstatvfs64 __P ((int __fildes, struct statvfs64 *__buf));
|
||||
|
@ -145,7 +145,11 @@ extern int rename __P ((__const char *__old, __const char *__new));
|
||||
#ifndef __USE_FILE_OFFSET64
|
||||
extern FILE *tmpfile __P ((void));
|
||||
#else
|
||||
extern FILE *tmpfile __P ((void)) __asm__ ("tmpfile64");
|
||||
# ifdef __REDIRECT
|
||||
extern FILE *__REDIRECT (tmpfile, __P ((void)), tmpfile64);
|
||||
# else
|
||||
# define tmpfile tmpfile64
|
||||
# endif
|
||||
#endif
|
||||
#ifdef __USE_LARGEFILE64
|
||||
extern FILE *tmpfile64 __P ((void));
|
||||
@ -190,30 +194,31 @@ extern int fcloseall __P ((void));
|
||||
#endif
|
||||
|
||||
|
||||
/* Open a file and create a new stream for it. */
|
||||
#ifndef __USE_FILE_OFFSET64
|
||||
/* Open a file and create a new stream for it. */
|
||||
extern FILE *fopen __P ((__const char *__restrict __filename,
|
||||
__const char *__restrict __modes));
|
||||
#else
|
||||
extern FILE *fopen __P ((__const char *__restrict __filename,
|
||||
__const char *__restrict __modes))
|
||||
__asm__ ("fopen64");
|
||||
#endif
|
||||
#ifdef __USE_LARGEFILE64
|
||||
extern FILE *fopen64 __P ((__const char *__restrict __filename,
|
||||
__const char *__restrict __modes));
|
||||
#endif
|
||||
/* Open a file, replacing an existing stream with it. */
|
||||
#ifndef __USE_FILE_OFFSET64
|
||||
extern FILE *freopen __P ((__const char *__restrict __filename,
|
||||
__const char *__restrict __modes,
|
||||
FILE *__restrict __stream));
|
||||
#else
|
||||
extern FILE *freopen __P ((__const char *__restrict __filename,
|
||||
__const char *__restrict __modes,
|
||||
FILE *__restrict __stream)) __asm__ ("freopen64");
|
||||
# ifdef __REDIRECT
|
||||
extern FILE *__REDIRECT (fopen, __P ((__const char *__restrict __filename,
|
||||
__const char *__restrict __modes)),
|
||||
fopen64);
|
||||
extern FILE *__REDIRECT (freopen, __P ((__const char *__restrict __filename,
|
||||
__const char *__restrict __modes,
|
||||
FILE *__restrict __stream)),
|
||||
freopen64);
|
||||
# else
|
||||
# define fopen fopen64
|
||||
# define freopen freopen64
|
||||
# endif
|
||||
#endif
|
||||
#ifdef __USE_LARGEFILE64
|
||||
extern FILE *fopen64 __P ((__const char *__restrict __filename,
|
||||
__const char *__restrict __modes));
|
||||
extern FILE *freopen64 __P ((__const char *__restrict __filename,
|
||||
__const char *__restrict __modes,
|
||||
FILE *__restrict __stream));
|
||||
@ -558,52 +563,44 @@ typedef __off64_t off64_t;
|
||||
# define off64_t off64_t
|
||||
# endif
|
||||
|
||||
|
||||
# ifndef __USE_FILE_OFFSET64
|
||||
/* Seek to a certain position on STREAM. */
|
||||
# ifndef __USE_FILE_OFFSET64
|
||||
extern int fseeko __P ((FILE *__stream, __off_t __off, int __whence));
|
||||
# else
|
||||
extern int fseeko __P ((FILE *__stream, __off64_t __off, int __whence))
|
||||
__asm__ ("fseeko64");
|
||||
# endif
|
||||
# ifdef __USE_LARGEFILE64
|
||||
extern int fseeko64 __P ((FILE *__stream, __off64_t __off, int __whence));
|
||||
# endif
|
||||
|
||||
/* Return the current position of STREAM. */
|
||||
# ifndef __USE_FILE_OFFSET64
|
||||
extern __off_t ftello __P ((FILE *__stream));
|
||||
# else
|
||||
extern __off64_t ftello __P ((FILE *__stream)) __asm__ ("ftello64");
|
||||
# endif
|
||||
# ifdef __USE_LARGEFILE64
|
||||
extern __off64_t ftello64 __P ((FILE *__stream));
|
||||
# endif
|
||||
#endif
|
||||
|
||||
/* Get STREAM's position. */
|
||||
#ifndef __USE_FILE_OFFSET64
|
||||
extern int fgetpos __P ((FILE *__restrict __stream,
|
||||
fpos_t *__restrict __pos));
|
||||
#else
|
||||
extern int fgetpos __P ((FILE *__restrict __stream,
|
||||
fpos_t *__restrict __pos)) __asm__ ("fgetpos64");
|
||||
#endif
|
||||
#ifdef __USE_LARGEFILE64
|
||||
/* Set STREAM's position. */
|
||||
extern int fsetpos __P ((FILE *__stream, __const fpos_t *__pos));
|
||||
# else
|
||||
# ifdef __REDIRECT
|
||||
extern int __REDIRECT (fseeko,
|
||||
__P ((FILE *__stream, __off64_t __off, int __whence)),
|
||||
fseeko64);
|
||||
extern __off64_t __REDIRECT (ftello, __P ((FILE *__stream)), ftello64);
|
||||
extern int __REDIRECT (fgetpos, __P ((FILE *__restrict __stream,
|
||||
fpos_t *__restrict __pos)), fgetpos64);
|
||||
extern int __REDIRECT (fsetpos, __P, ((FILE *__stream, __const fpos_t *__pos)),
|
||||
fsetpos64);
|
||||
# else
|
||||
# define fseeko fseeko64
|
||||
# define ftello ftello64
|
||||
# define fgetpos fgetpos64
|
||||
# define fsetpos fsetpos64
|
||||
# endif
|
||||
# endif
|
||||
|
||||
# ifdef __USE_LARGEFILE64
|
||||
extern int fseeko64 __P ((FILE *__stream, __off64_t __off, int __whence));
|
||||
extern __off64_t ftello64 __P ((FILE *__stream));
|
||||
extern int fgetpos64 __P ((FILE *__restrict __stream,
|
||||
fpos64_t *__restrict __pos));
|
||||
#endif
|
||||
/* Set STREAM's position. */
|
||||
#ifndef __USE_FILE_OFFSET64
|
||||
extern int fsetpos __P ((FILE *__stream, __const fpos_t *__pos));
|
||||
#else
|
||||
extern int fsetpos __P ((FILE *__stream, __const fpos_t *__pos))
|
||||
__asm__ ("fsetpos64");
|
||||
#endif
|
||||
#ifdef __USE_LARGEFILE64
|
||||
extern int fsetpos64 __P ((FILE *__stream, __const fpos64_t *__pos));
|
||||
# endif
|
||||
#endif
|
||||
|
||||
|
||||
/* Clear the error and EOF indicators for STREAM. */
|
||||
extern void clearerr __P ((FILE *__stream));
|
||||
/* Return the EOF indicator for STREAM. */
|
||||
|
@ -58,24 +58,16 @@ routines := brk sbrk sstk ioctl \
|
||||
err error ustat \
|
||||
getsysstats dirname regexp
|
||||
aux := init-misc
|
||||
distribute := bsd-compat.c
|
||||
extra-objs := bsd-compat.o
|
||||
install-lib := libbsd-compat.a libg.a
|
||||
non-lib.a := libbsd-compat.a
|
||||
gpl2lgpl := error.c error.h
|
||||
|
||||
tests := tst-dirname tst-tsearch tst-fdset tst-efgcvt
|
||||
|
||||
include ../Rules
|
||||
|
||||
|
||||
$(objpfx)libbsd-compat.a: $(objpfx)bsd-compat.o
|
||||
rm -f $@
|
||||
ln $< $@
|
||||
|
||||
$(objpfx)libbsd-compat.a: $(dep-dummy-lib); $(make-dummy-lib)
|
||||
$(objpfx)libg.a: $(dep-dummy-lib); $(make-dummy-lib)
|
||||
|
||||
|
||||
CFLAGS-init-misc.c = -fkeep-inline-functions
|
||||
|
||||
ifeq ($(build-shared),yes)
|
||||
|
@ -1,37 +0,0 @@
|
||||
/* BSD-compatible versions of functions where BSD and POSIX.1 conflict.
|
||||
Copyright (C) 1991, 92, 94, 95, 96, 97 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 <sys/types.h>
|
||||
|
||||
/* Don't include unistd.h because it declares a conflicting
|
||||
prototype for the POSIX.1 `getpgrp' function. */
|
||||
extern pid_t __getpgid __P ((pid_t));
|
||||
extern int __setpgid __P ((pid_t, pid_t));
|
||||
|
||||
pid_t
|
||||
getpgrp (pid_t pid)
|
||||
{
|
||||
return __getpgid (pid);
|
||||
}
|
||||
|
||||
int
|
||||
setpgrp (pid_t pid, pid_t pgrp)
|
||||
{
|
||||
return __setpgid (pid, pgrp);
|
||||
}
|
@ -95,15 +95,39 @@
|
||||
# define __END_DECLS
|
||||
#endif
|
||||
|
||||
/* GCC2 has various useful declarations that can be made with the
|
||||
`__attribute__' syntax. All of the ways we use this do fine if
|
||||
they are omitted for compilers that don't understand it. */
|
||||
#if !defined __GNUC__ || __GNUC__ < 2
|
||||
# define __attribute__(xyz) /* Ignore. */
|
||||
/* __asm__ ("xyz") is used throughout the headers to rename functions
|
||||
at the assembly language level. This is wrapped by the __REDIRECT
|
||||
macro, in order to support compilers that can do this some other
|
||||
way. When compilers don't support asm-names at all, we have to do
|
||||
preprocessor tricks instead (which don't have exactly the right
|
||||
semantics, but it's the best we can do).
|
||||
|
||||
Example:
|
||||
int __REDIRECT(setpgrp, __P((__pid_t pid, __pid_t pgrp)), setpgid); */
|
||||
|
||||
#if defined __GNUC__ && __GNUC__ >= 2
|
||||
|
||||
# define __REDIRECT(name, proto, asname) name proto __asm__ (#asname)
|
||||
|
||||
/*
|
||||
#elif __SOME_OTHER_COMPILER__
|
||||
|
||||
# define __attribute__(xyz)
|
||||
# define __ALIAS(name, proto, asname) name proto; \
|
||||
_Pragma("let " #name " = " #asname)
|
||||
*/
|
||||
#endif
|
||||
|
||||
/* GCC has various useful declarations that can be made with the
|
||||
`__attribute__' syntax. All of the ways we use this do fine if
|
||||
they are omitted for compilers that don't understand it. */
|
||||
#if !defined __GNUC__ || __GNUC__ < 2
|
||||
|
||||
/* For now no version of gcc knows the `restrict' keyword. Define it
|
||||
# define __attribute__(xyz) /* Ignore. */
|
||||
|
||||
#endif
|
||||
|
||||
/* No current version of gcc knows the `restrict' keyword. Define it
|
||||
for now unconditionally to the empty string. */
|
||||
#define __restrict
|
||||
|
||||
|
109
posix/unistd.h
109
posix/unistd.h
@ -274,8 +274,14 @@ extern __off64_t __lseek64 __P ((int __fd, __off64_t __offset, int __whence));
|
||||
#ifndef __USE_FILE_OFFSET64
|
||||
extern __off_t lseek __P ((int __fd, __off_t __offset, int __whence));
|
||||
#else
|
||||
extern __off64_t lseek __P ((int __fd, __off64_t __offset, int __whence))
|
||||
__asm__ ("lseek64");
|
||||
# ifdef __REDIRECT
|
||||
extern __off64_t __REDIRECT (lseek,
|
||||
__P ((int __fd, __off64_t __offset,
|
||||
int __whence)),
|
||||
lseek64);
|
||||
# else
|
||||
# define lseek lseek64
|
||||
# endif
|
||||
#endif
|
||||
#ifdef __USE_LARGEFILE64
|
||||
extern __off64_t lseek64 __P ((int __fd, __off64_t __offset, int __whence));
|
||||
@ -300,40 +306,42 @@ extern ssize_t write __P ((int __fd, __const __ptr_t __buf, size_t __n));
|
||||
or 0 for EOF. */
|
||||
extern ssize_t __pread __P ((int __fd, __ptr_t __buf, size_t __nbytes,
|
||||
__off_t __offset));
|
||||
# ifndef __USE_FILE_OFFSET64
|
||||
extern ssize_t pread __P ((int __fd, __ptr_t __buf, size_t __nbytes,
|
||||
__off_t __offset));
|
||||
# else
|
||||
extern ssize_t pread __P ((int __fd, __ptr_t __buf, size_t __nbytes,
|
||||
__off64_t __offset)) __asm__ ("pread64");
|
||||
# endif
|
||||
extern ssize_t __pread64 __P ((int __fd, __ptr_t __buf, size_t __nbytes,
|
||||
__off64_t __offset));
|
||||
# ifdef __USE_LARGEFILE64
|
||||
extern ssize_t pread64 __P ((int __fd, __ptr_t __buf, size_t __nbytes,
|
||||
__off64_t __offset));
|
||||
# endif
|
||||
|
||||
/* Write N bytes of BUF to FD at the given position OFFSET without
|
||||
changing the file pointer. Return the number written, or -1. */
|
||||
extern ssize_t __pwrite __P ((int __fd, __const __ptr_t __buf, size_t __n,
|
||||
__off_t __offset));
|
||||
extern ssize_t __pwrite64 __P ((int __fd, __const __ptr_t __buf, size_t __n,
|
||||
__off64_t __offset));
|
||||
|
||||
# ifndef __USE_FILE_OFFSET64
|
||||
extern ssize_t pread __P ((int __fd, __ptr_t __buf, size_t __nbytes,
|
||||
__off_t __offset));
|
||||
extern ssize_t pwrite __P ((int __fd, __const __ptr_t __buf, size_t __n,
|
||||
__off_t __offset));
|
||||
# else
|
||||
extern ssize_t pwrite __P ((int __fd, __const __ptr_t __buf, size_t __n,
|
||||
__off64_t __offset)) __asm__ ("pwrite64");
|
||||
# ifdef __REDIRECT
|
||||
extern ssize_t __REDIRECT (pread, __P ((int __fd, __ptr_t __buf,
|
||||
size_t __nbytes,__off64_t __offset)),
|
||||
pread64);
|
||||
extern ssize_t __REDIRECT (pwrite, __P ((int __fd, __const __ptr_t __buf,
|
||||
size_t __nbytes, __off64_t __offset)),
|
||||
pwrite64);
|
||||
# else
|
||||
# define pread pread64
|
||||
# define pwrite pwrite64
|
||||
# endif
|
||||
# endif
|
||||
extern ssize_t __pwrite64 __P ((int __fd, __const __ptr_t __buf, size_t __n,
|
||||
__off64_t __offset));
|
||||
|
||||
# ifdef __USE_LARGEFILE64
|
||||
extern ssize_t pread64 __P ((int __fd, __ptr_t __buf, size_t __nbytes,
|
||||
__off64_t __offset));
|
||||
extern ssize_t pwrite64 __P ((int __fd, __const __ptr_t __buf, size_t __n,
|
||||
__off64_t __offset));
|
||||
# endif
|
||||
#endif
|
||||
|
||||
|
||||
/* Create a one-way communication channel (pipe).
|
||||
If successful, two file descriptors are stored in PIPEDES;
|
||||
bytes written on PIPEDES[1] can be read from PIPEDES[0].
|
||||
@ -540,28 +548,31 @@ extern __pid_t getpid __P ((void));
|
||||
extern __pid_t __getppid __P ((void));
|
||||
extern __pid_t getppid __P ((void));
|
||||
|
||||
/* Get the process group ID of the calling process. */
|
||||
/* Get the process group ID of the calling process.
|
||||
This function is different on old BSD. */
|
||||
#ifndef __FAVOR_BSD
|
||||
extern __pid_t getpgrp __P ((void));
|
||||
/* The old BSD definition is a bit different. */
|
||||
extern __pid_t __bsd_getpgrp __P ((__pid_t __pid));
|
||||
#ifdef __FAVOR_BSD
|
||||
/* When we explicitely compile BSD sources use the BSD definition of this
|
||||
function. Please note that we cannot use parameters for the macro. */
|
||||
# define getpgrp __bsd_getpgrp
|
||||
#else
|
||||
# ifdef __REDIRECT
|
||||
extern __pid_t __REDIRECT (getpgrp, __P ((__pid_t __pid)), __getpgid);
|
||||
# else
|
||||
# define getpgrp __getpgid
|
||||
# endif
|
||||
#endif
|
||||
|
||||
/* Set the process group ID of the process matching PID to PGID.
|
||||
If PID is zero, the current process's process group ID is set.
|
||||
If PGID is zero, the process ID of the process is used. */
|
||||
extern int __setpgid __P ((__pid_t __pid, __pid_t __pgid));
|
||||
extern int setpgid __P ((__pid_t __pid, __pid_t __pgid));
|
||||
|
||||
/* Get the process group ID of process PID. */
|
||||
extern __pid_t __getpgid __P ((__pid_t __pid));
|
||||
#ifdef __USE_XOPEN_EXTENDED
|
||||
extern __pid_t getpgid __P ((__pid_t __pid));
|
||||
#endif
|
||||
|
||||
|
||||
/* Set the process group ID of the process matching PID to PGID.
|
||||
If PID is zero, the current process's process group ID is set.
|
||||
If PGID is zero, the process ID of the process is used. */
|
||||
extern int __setpgid __P ((__pid_t __pid, __pid_t __pgid));
|
||||
extern int setpgid __P ((__pid_t __pid, __pid_t __pgid));
|
||||
|
||||
#if defined __USE_SVID || defined __USE_BSD || defined __USE_XOPEN_EXTENDED
|
||||
/* Both System V and BSD have `setpgrp' functions, but with different
|
||||
calling conventions. The BSD function is the same as POSIX.1 `setpgid'
|
||||
@ -571,7 +582,7 @@ extern __pid_t getpgid __P ((__pid_t __pid));
|
||||
New programs should always use `setpgid' instead.
|
||||
|
||||
The default in GNU is to provide the System V function. The BSD
|
||||
function is available under -D_BSD_SOURCE with -lbsd-compat. */
|
||||
function is available under -D_BSD_SOURCE. */
|
||||
|
||||
# ifndef __FAVOR_BSD
|
||||
|
||||
@ -582,7 +593,12 @@ extern int setpgrp __P ((void));
|
||||
# else
|
||||
|
||||
/* Another name for `setpgid' (above). */
|
||||
extern int setpgrp __P ((__pid_t __pid, __pid_t __pgrp));
|
||||
# ifdef __REDIRECT
|
||||
extern int __REDIRECT (setpgrp, __P ((__pid_t __pid, __pid_t __pgrp)),
|
||||
setpgid);
|
||||
# else
|
||||
# define setpgrp setpgid
|
||||
# endif
|
||||
|
||||
# endif /* Favor BSD. */
|
||||
#endif /* Use SVID or BSD. */
|
||||
@ -879,8 +895,13 @@ extern int getpagesize __P ((void));
|
||||
#ifndef __USE_FILE_OFFSET64
|
||||
extern int truncate __P ((__const char *__file, __off_t __length));
|
||||
#else
|
||||
extern int truncate __P ((__const char *__file, __off64_t __length))
|
||||
__asm__ ("truncate64");
|
||||
# ifdef __REDIRECT
|
||||
extern int __REDIRECT (truncate,
|
||||
__P ((__const char *__file, __off64_t __length)),
|
||||
truncate64);
|
||||
# else
|
||||
# define truncate truncate64
|
||||
# endif
|
||||
#endif
|
||||
#ifdef __USE_LARGEFILE64
|
||||
extern int truncate64 __P ((__const char *__file, __off64_t __length));
|
||||
@ -891,8 +912,12 @@ extern int __ftruncate __P ((int __fd, __off_t __length));
|
||||
#ifndef __USE_FILE_OFFSET64
|
||||
extern int ftruncate __P ((int __fd, __off_t __length));
|
||||
#else
|
||||
extern int ftruncate __P ((int __fd, __off64_t __length))
|
||||
__asm__ ("ftruncate64");
|
||||
# ifdef __REDIRECT
|
||||
extern int __REDIRECT (ftruncate, __P ((int __fd, __off64_t __length)),
|
||||
ftruncate64);
|
||||
# else
|
||||
# define ftruncate ftruncate64
|
||||
# endif
|
||||
#endif
|
||||
#ifdef __USE_LARGEFILE64
|
||||
extern int ftruncate64 __P ((int __fd, __off64_t __length));
|
||||
@ -959,8 +984,12 @@ extern long int syscall __P ((long int __sysno, ...));
|
||||
# ifndef __USE_FILE_OFFSET64
|
||||
extern int lockf __P ((int __fd, int __cmd, __off_t __len));
|
||||
# else
|
||||
extern int lockf __P ((int __fd, int __cmd, __off64_t __len))
|
||||
__asm__ ("lockf64");
|
||||
# ifdef __REDIRECT
|
||||
extern int __REDIRECT (lockf, __P ((int __fd, int __cmd, __off64_t __len)),
|
||||
lockf64);
|
||||
# else
|
||||
# define lockf lockf64
|
||||
# endif
|
||||
# endif
|
||||
# ifdef __USE_LARGEFILE64
|
||||
extern int lockf64 __P ((int __fd, int __cmd, __off64_t __len));
|
||||
|
@ -34,8 +34,13 @@ extern int __getrlimit __P ((enum __rlimit_resource __resource,
|
||||
extern int getrlimit __P ((enum __rlimit_resource __resource,
|
||||
struct rlimit *__rlimits));
|
||||
#else
|
||||
extern int getrlimit __P ((enum __rlimit_resource __resource,
|
||||
struct rlimit *__rlimits)) __asm__ ("getrlimit64");
|
||||
# ifdef __REDIRECT
|
||||
extern int __REDIRECT (getrlimit, __P ((enum __rlimit_resource __resource,
|
||||
struct rlimit *__rlimits)),
|
||||
getrlimit64);
|
||||
# else
|
||||
# define getrlimit getrlimit64
|
||||
# endif
|
||||
#endif
|
||||
#ifdef __USE_LARGEFILE64
|
||||
extern int getrlimit64 __P ((enum __rlimit_resource __resource,
|
||||
@ -49,8 +54,13 @@ extern int getrlimit64 __P ((enum __rlimit_resource __resource,
|
||||
extern int setrlimit __P ((enum __rlimit_resource __resource,
|
||||
struct rlimit *__rlimits));
|
||||
#else
|
||||
extern int setrlimit __P ((enum __rlimit_resource __resource,
|
||||
struct rlimit *__rlimits)) __asm__ ("setrlimit64");
|
||||
# ifdef __REDIRECT
|
||||
extern int __REDIRECT (setrlimit, __P ((enum __rlimit_resource __resource,
|
||||
struct rlimit *__rlimits)),
|
||||
setrlimit64);
|
||||
# else
|
||||
# define setrlimit setrlimit64
|
||||
# endif
|
||||
#endif
|
||||
#ifdef __USE_LARGEFILE64
|
||||
extern int setrlimit64 __P ((enum __rlimit_resource __resource,
|
||||
|
130
rt/aio.h
130
rt/aio.h
@ -138,108 +138,90 @@ extern void aio_init __P ((__const struct aioinit *__init));
|
||||
#endif
|
||||
|
||||
|
||||
#ifndef __USE_FILE_OFFSET64
|
||||
/* Enqueue read request for given number of bytes and the given priority. */
|
||||
#ifndef __USE_FILE_OFFSET64
|
||||
extern int aio_read __P ((struct aiocb *__aiocbp));
|
||||
#else
|
||||
extern int aio_read __P ((struct aiocb *__aiocbp)) __asm__ ("aio_read64");
|
||||
#endif
|
||||
#ifdef __USE_LARGEFILE64
|
||||
extern int aio_read64 __P ((struct aiocb64 *__aiocbp));
|
||||
#endif
|
||||
|
||||
/* Enqueue write request for given number of bytes and the given priority. */
|
||||
#ifndef __USE_FILE_OFFSET64
|
||||
extern int aio_write __P ((struct aiocb *__aiocbp));
|
||||
#else
|
||||
extern int aio_write __P ((struct aiocb *__aiocbp)) __asm__ ("aio_write64");
|
||||
#endif
|
||||
#ifdef __USE_LARGEFILE64
|
||||
extern int aio_write64 __P ((struct aiocb64 *__aiocbp));
|
||||
#endif
|
||||
|
||||
|
||||
/* Initiate list of I/O requests. */
|
||||
#ifndef __USE_FILE_OFFSET64
|
||||
extern int lio_listio __P ((int __mode, struct aiocb *__const __list[],
|
||||
int __nent, struct sigevent *__sig));
|
||||
#else
|
||||
extern int lio_listio __P ((int __mode, struct aiocb *__const __list[],
|
||||
int __nent, struct sigevent *__sig))
|
||||
__asm__ ("lio_listio64");
|
||||
#endif
|
||||
#ifdef __USE_LARGEFILE64
|
||||
extern int lio_listio64 __P ((int __mode, struct aiocb64 *__const __list[],
|
||||
int __nent, struct sigevent *__sig));
|
||||
#endif
|
||||
|
||||
|
||||
/* Retrieve error status associated with AIOCBP. */
|
||||
#ifndef __USE_FILE_OFFSET64
|
||||
extern int aio_error __P ((__const struct aiocb *__aiocbp));
|
||||
#else
|
||||
extern int aio_error __P ((__const struct aiocb *__aiocbp))
|
||||
__asm__ ("aio_error64");
|
||||
#endif
|
||||
#ifdef __USE_LARGEFILE64
|
||||
extern int aio_error64 __P ((__const struct aiocb64 *__aiocbp));
|
||||
#endif
|
||||
|
||||
|
||||
/* Return status associated with AIOCBP. */
|
||||
#ifndef __USE_FILE_OFFSET64
|
||||
extern __ssize_t aio_return __P ((struct aiocb *__aiocbp));
|
||||
#else
|
||||
extern __ssize_t aio_return __P ((struct aiocb *__aiocbp))
|
||||
__asm__ ("aio_return64");
|
||||
#endif
|
||||
#ifdef __USE_LARGEFILE64
|
||||
extern __ssize_t aio_return64 __P ((struct aiocb64 *__aiocbp));
|
||||
#endif
|
||||
|
||||
|
||||
/* Try to cancel asynchronous I/O requests outstanding against file
|
||||
descriptot FILDES. */
|
||||
#ifndef __USE_FILE_OFFSET64
|
||||
descriptor FILDES. */
|
||||
extern int aio_cancel __P ((int __fildes, struct aiocb *__aiocbp));
|
||||
#else
|
||||
extern int aio_cancel __P ((int __fildes, struct aiocb *__aiocbp))
|
||||
__asm__ ("aio_cancel64");
|
||||
#endif
|
||||
#ifdef __USE_LARGEFILE64
|
||||
extern int aio_cancel64 __P ((int __fildes, struct aiocb64 *__aiocbp));
|
||||
#endif
|
||||
|
||||
|
||||
/* Suspend calling thread until at least one of the asynchronous I/O
|
||||
operations referenced by LIST has completed. */
|
||||
#ifndef __USE_FILE_OFFSET64
|
||||
extern int aio_suspend __P ((__const struct aiocb *__const __list[],
|
||||
int __nent, __const struct timespec *__timeout));
|
||||
#else
|
||||
extern int aio_suspend __P ((__const struct aiocb *__const __list[],
|
||||
int __nent, __const struct timespec *__timeout))
|
||||
__asm__ ("aio_suspend64");
|
||||
#endif
|
||||
#ifdef __USE_LARGEFILE64
|
||||
extern int aio_suspend64 __P ((__const struct aiocb64 *__const __list[],
|
||||
int __nent,
|
||||
__const struct timespec *__timeout));
|
||||
#endif
|
||||
|
||||
|
||||
/* Force all operations associated with file desriptor described by
|
||||
`aio_fildes' member of AIOCBP. */
|
||||
#ifndef __USE_FILE_OFFSET64
|
||||
extern int aio_fsync __P ((int __op, struct aiocb *__aiocbp));
|
||||
#else
|
||||
extern int aio_fsync __P ((int __op, struct aiocb *__aiocbp))
|
||||
__asm__ ("aio_fsync64");
|
||||
#endif
|
||||
#ifdef __USE_LARGEFILE64
|
||||
extern int aio_fsync64 __P ((int __op, struct aiocb64 *__aiocbp));
|
||||
# ifdef __REDIRECT
|
||||
extern int __REDIRECT (aio_read, __P ((struct aiocb *__aiocbp)), aio_read64);
|
||||
extern int __REDIRECT (aio_write, __P ((struct aiocb *__aiocbp)), aio_write64);
|
||||
|
||||
extern int __REDIRECT (lio_listio, __P ((int __mode,
|
||||
struct aiocb *__const __list[],
|
||||
int __nent, struct sigevent *__sig)),
|
||||
lio_listio64);
|
||||
|
||||
extern int __REDIRECT (aio_error, __P ((__const struct aiocb *__aiocbp)),
|
||||
aio_error64);
|
||||
extern __ssize_t __REDIRECT (aio_return, __P ((struct aiocb *__aiocbp)),
|
||||
aio_return64);
|
||||
|
||||
extern int __REDIRECT (aio_cancel, __P ((int __fildes,
|
||||
struct aiocb *__aiocbp)),
|
||||
aio_cancel64);
|
||||
|
||||
extern int __REDIRECT (aio_suspend,
|
||||
__P ((__const struct aiocb *__const __list[],
|
||||
int __nent, __const struct timespec *__timeout)),
|
||||
aio_suspend64);
|
||||
|
||||
extern int __REDIRECT (aio_fsync __P ((int __op, struct aiocb *__aiocbp)),
|
||||
aio_fsync64);
|
||||
|
||||
# else
|
||||
# define aio_read aio_read64
|
||||
# define aio_write aio_write64
|
||||
# define lio_listio lio_listio64
|
||||
# define aio_error aio_error64
|
||||
# define aio_return aio_return64
|
||||
# define aio_cancel aio_cancel64
|
||||
# define aio_suspend aio_suspend64
|
||||
# define aio_fsync aio_fsync64
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#ifdef __USE_LARGEFILE64
|
||||
extern int aio_read64 __P ((struct aiocb64 *__aiocbp));
|
||||
extern int aio_write64 __P ((struct aiocb64 *__aiocbp));
|
||||
|
||||
extern int lio_listio64 __P ((int __mode, struct aiocb64 *__const __list[],
|
||||
int __nent, struct sigevent *__sig));
|
||||
|
||||
extern int aio_error64 __P ((__const struct aiocb64 *__aiocbp));
|
||||
extern __ssize_t aio_return64 __P ((struct aiocb64 *__aiocbp));
|
||||
|
||||
extern int aio_cancel64 __P ((int __fildes, struct aiocb64 *__aiocbp));
|
||||
|
||||
extern int aio_suspend64 __P ((__const struct aiocb64 *__const __list[],
|
||||
int __nent,
|
||||
__const struct timespec *__timeout));
|
||||
|
||||
extern int aio_fsync64 __P ((int __op, struct aiocb64 *__aiocbp));
|
||||
#endif
|
||||
|
||||
__END_DECLS
|
||||
|
||||
|
@ -65,13 +65,13 @@ extern __sighandler_t __sysv_signal __P ((int __sig,
|
||||
#ifdef __USE_BSD
|
||||
extern __sighandler_t signal __P ((int __sig, __sighandler_t __handler));
|
||||
#else
|
||||
/* Make sure the used `signal' implementation is the SVID version.
|
||||
When GNU CC is used we have a clean way to write this. */
|
||||
# if defined __GNUC__ && __GNUC__ >= 2
|
||||
extern __sighandler_t signal __P ((int __sig, __sighandler_t __handler))
|
||||
__asm__ ("__sysv_signal");
|
||||
/* Make sure the used `signal' implementation is the SVID version. */
|
||||
# ifdef __REDIRECT
|
||||
extern __sighandler_t __REDIRECT (signal,
|
||||
__P ((int __sig, __sighandler_t __handler)),
|
||||
__sysv_signal);
|
||||
# else
|
||||
# define signal(sig, handler) __sysv_signal ((sig), (handler))
|
||||
# define signal __sysv_signal
|
||||
# endif
|
||||
#endif
|
||||
|
||||
|
@ -4,9 +4,14 @@
|
||||
|
||||
#ifndef SYS_ERRLIST
|
||||
# define SYS_ERRLIST _sys_errlist
|
||||
# define SYS_ERRLIST_ALIAS sys_errlist
|
||||
#endif
|
||||
#ifndef SYS_NERR
|
||||
# define SYS_NERR _sys_nerr
|
||||
# define SYS_NERR_ALIAS sys_nerr
|
||||
#endif
|
||||
#ifndef ERR_REMAP
|
||||
# define ERR_REMAP(n) n
|
||||
#endif
|
||||
|
||||
const char *const SYS_ERRLIST[] =
|
||||
@ -16,19 +21,19 @@ const char *const SYS_ERRLIST[] =
|
||||
/*
|
||||
TRANS Operation not permitted; only the owner of the file (or other resource)
|
||||
TRANS or processes with special privileges can perform the operation. */
|
||||
[EPERM] = N_("Operation not permitted"),
|
||||
[ERR_REMAP (EPERM)] = N_("Operation not permitted"),
|
||||
#endif
|
||||
#ifdef ENOENT
|
||||
/*
|
||||
TRANS No such file or directory. This is a ``file doesn't exist'' error
|
||||
TRANS for ordinary files that are referenced in contexts where they are
|
||||
TRANS expected to already exist. */
|
||||
[ENOENT] = N_("No such file or directory"),
|
||||
[ERR_REMAP (ENOENT)] = N_("No such file or directory"),
|
||||
#endif
|
||||
#ifdef ESRCH
|
||||
/*
|
||||
TRANS No process matches the specified process ID. */
|
||||
[ESRCH] = N_("No such process"),
|
||||
[ERR_REMAP (ESRCH)] = N_("No such process"),
|
||||
#endif
|
||||
#ifdef EINTR
|
||||
/*
|
||||
@ -39,12 +44,12 @@ TRANS
|
||||
TRANS You can choose to have functions resume after a signal that is handled,
|
||||
TRANS rather than failing with @code{EINTR}; see @ref{Interrupted
|
||||
TRANS Primitives}. */
|
||||
[EINTR] = N_("Interrupted system call"),
|
||||
[ERR_REMAP (EINTR)] = N_("Interrupted system call"),
|
||||
#endif
|
||||
#ifdef EIO
|
||||
/*
|
||||
TRANS Input/output error; usually used for physical read or write errors. */
|
||||
[EIO] = N_("Input/output error"),
|
||||
[ERR_REMAP (EIO)] = N_("Input/output error"),
|
||||
#endif
|
||||
#ifdef ENXIO
|
||||
/*
|
||||
@ -53,7 +58,7 @@ TRANS represented by a file you specified, and it couldn't find the device.
|
||||
TRANS This can mean that the device file was installed incorrectly, or that
|
||||
TRANS the physical device is missing or not correctly attached to the
|
||||
TRANS computer. */
|
||||
[ENXIO] = N_("Device not configured"),
|
||||
[ERR_REMAP (ENXIO)] = N_("Device not configured"),
|
||||
#endif
|
||||
#ifdef E2BIG
|
||||
/*
|
||||
@ -61,27 +66,27 @@ TRANS Argument list too long; used when the arguments passed to a new program
|
||||
TRANS being executed with one of the @code{exec} functions (@pxref{Executing a
|
||||
TRANS File}) occupy too much memory space. This condition never arises in the
|
||||
TRANS GNU system. */
|
||||
[E2BIG] = N_("Argument list too long"),
|
||||
[ERR_REMAP (E2BIG)] = N_("Argument list too long"),
|
||||
#endif
|
||||
#ifdef ENOEXEC
|
||||
/*
|
||||
TRANS Invalid executable file format. This condition is detected by the
|
||||
TRANS @code{exec} functions; see @ref{Executing a File}. */
|
||||
[ENOEXEC] = N_("Exec format error"),
|
||||
[ERR_REMAP (ENOEXEC)] = N_("Exec format error"),
|
||||
#endif
|
||||
#ifdef EBADF
|
||||
/*
|
||||
TRANS Bad file descriptor; for example, I/O on a descriptor that has been
|
||||
TRANS closed or reading from a descriptor open only for writing (or vice
|
||||
TRANS versa). */
|
||||
[EBADF] = N_("Bad file descriptor"),
|
||||
[ERR_REMAP (EBADF)] = N_("Bad file descriptor"),
|
||||
#endif
|
||||
#ifdef ECHILD
|
||||
/*
|
||||
TRANS There are no child processes. This error happens on operations that are
|
||||
TRANS supposed to manipulate child processes, when there aren't any processes
|
||||
TRANS to manipulate. */
|
||||
[ECHILD] = N_("No child processes"),
|
||||
[ERR_REMAP (ECHILD)] = N_("No child processes"),
|
||||
#endif
|
||||
#ifdef EDEADLK
|
||||
/*
|
||||
@ -89,74 +94,74 @@ TRANS Deadlock avoided; allocating a system resource would have resulted in a
|
||||
TRANS deadlock situation. The system does not guarantee that it will notice
|
||||
TRANS all such situations. This error means you got lucky and the system
|
||||
TRANS noticed; it might just hang. @xref{File Locks}, for an example. */
|
||||
[EDEADLK] = N_("Resource deadlock avoided"),
|
||||
[ERR_REMAP (EDEADLK)] = N_("Resource deadlock avoided"),
|
||||
#endif
|
||||
#ifdef ENOMEM
|
||||
/*
|
||||
TRANS No memory available. The system cannot allocate more virtual memory
|
||||
TRANS because its capacity is full. */
|
||||
[ENOMEM] = N_("Cannot allocate memory"),
|
||||
[ERR_REMAP (ENOMEM)] = N_("Cannot allocate memory"),
|
||||
#endif
|
||||
#ifdef EACCES
|
||||
/*
|
||||
TRANS Permission denied; the file permissions do not allow the attempted operation. */
|
||||
[EACCES] = N_("Permission denied"),
|
||||
[ERR_REMAP (EACCES)] = N_("Permission denied"),
|
||||
#endif
|
||||
#ifdef EFAULT
|
||||
/*
|
||||
TRANS Bad address; an invalid pointer was detected.
|
||||
TRANS In the GNU system, this error never happens; you get a signal instead. */
|
||||
[EFAULT] = N_("Bad address"),
|
||||
[ERR_REMAP (EFAULT)] = N_("Bad address"),
|
||||
#endif
|
||||
#ifdef ENOTBLK
|
||||
/*
|
||||
TRANS A file that isn't a block special file was given in a situation that
|
||||
TRANS requires one. For example, trying to mount an ordinary file as a file
|
||||
TRANS system in Unix gives this error. */
|
||||
[ENOTBLK] = N_("Block device required"),
|
||||
[ERR_REMAP (ENOTBLK)] = N_("Block device required"),
|
||||
#endif
|
||||
#ifdef EBUSY
|
||||
/*
|
||||
TRANS Resource busy; a system resource that can't be shared is already in use.
|
||||
TRANS For example, if you try to delete a file that is the root of a currently
|
||||
TRANS mounted filesystem, you get this error. */
|
||||
[EBUSY] = N_("Device or resource busy"),
|
||||
[ERR_REMAP (EBUSY)] = N_("Device or resource busy"),
|
||||
#endif
|
||||
#ifdef EEXIST
|
||||
/*
|
||||
TRANS File exists; an existing file was specified in a context where it only
|
||||
TRANS makes sense to specify a new file. */
|
||||
[EEXIST] = N_("File exists"),
|
||||
[ERR_REMAP (EEXIST)] = N_("File exists"),
|
||||
#endif
|
||||
#ifdef EXDEV
|
||||
/*
|
||||
TRANS An attempt to make an improper link across file systems was detected.
|
||||
TRANS This happens not only when you use @code{link} (@pxref{Hard Links}) but
|
||||
TRANS also when you rename a file with @code{rename} (@pxref{Renaming Files}). */
|
||||
[EXDEV] = N_("Invalid cross-device link"),
|
||||
[ERR_REMAP (EXDEV)] = N_("Invalid cross-device link"),
|
||||
#endif
|
||||
#ifdef ENODEV
|
||||
/*
|
||||
TRANS The wrong type of device was given to a function that expects a
|
||||
TRANS particular sort of device. */
|
||||
[ENODEV] = N_("Operation not supported by device"),
|
||||
[ERR_REMAP (ENODEV)] = N_("Operation not supported by device"),
|
||||
#endif
|
||||
#ifdef ENOTDIR
|
||||
/*
|
||||
TRANS A file that isn't a directory was specified when a directory is required. */
|
||||
[ENOTDIR] = N_("Not a directory"),
|
||||
[ERR_REMAP (ENOTDIR)] = N_("Not a directory"),
|
||||
#endif
|
||||
#ifdef EISDIR
|
||||
/*
|
||||
TRANS File is a directory; you cannot open a directory for writing,
|
||||
TRANS or create or remove hard links to it. */
|
||||
[EISDIR] = N_("Is a directory"),
|
||||
[ERR_REMAP (EISDIR)] = N_("Is a directory"),
|
||||
#endif
|
||||
#ifdef EINVAL
|
||||
/*
|
||||
TRANS Invalid argument. This is used to indicate various kinds of problems
|
||||
TRANS with passing the wrong argument to a library function. */
|
||||
[EINVAL] = N_("Invalid argument"),
|
||||
[ERR_REMAP (EINVAL)] = N_("Invalid argument"),
|
||||
#endif
|
||||
#ifdef EMFILE
|
||||
/*
|
||||
@ -167,20 +172,20 @@ TRANS In BSD and GNU, the number of open files is controlled by a resource
|
||||
TRANS limit that can usually be increased. If you get this error, you might
|
||||
TRANS want to increase the @code{RLIMIT_NOFILE} limit or make it unlimited;
|
||||
TRANS @pxref{Limits on Resources}. */
|
||||
[EMFILE] = N_("Too many open files"),
|
||||
[ERR_REMAP (EMFILE)] = N_("Too many open files"),
|
||||
#endif
|
||||
#ifdef ENFILE
|
||||
/*
|
||||
TRANS There are too many distinct file openings in the entire system. Note
|
||||
TRANS that any number of linked channels count as just one file opening; see
|
||||
TRANS @ref{Linked Channels}. This error never occurs in the GNU system. */
|
||||
[ENFILE] = N_("Too many open files in system"),
|
||||
[ERR_REMAP (ENFILE)] = N_("Too many open files in system"),
|
||||
#endif
|
||||
#ifdef ENOTTY
|
||||
/*
|
||||
TRANS Inappropriate I/O control operation, such as trying to set terminal
|
||||
TRANS modes on an ordinary file. */
|
||||
[ENOTTY] = N_("Inappropriate ioctl for device"),
|
||||
[ERR_REMAP (ENOTTY)] = N_("Inappropriate ioctl for device"),
|
||||
#endif
|
||||
#ifdef ETXTBSY
|
||||
/*
|
||||
@ -189,35 +194,35 @@ TRANS write to a file that is currently being executed. Often using a
|
||||
TRANS debugger to run a program is considered having it open for writing and
|
||||
TRANS will cause this error. (The name stands for ``text file busy''.) This
|
||||
TRANS is not an error in the GNU system; the text is copied as necessary. */
|
||||
[ETXTBSY] = N_("Text file busy"),
|
||||
[ERR_REMAP (ETXTBSY)] = N_("Text file busy"),
|
||||
#endif
|
||||
#ifdef EFBIG
|
||||
/*
|
||||
TRANS File too big; the size of a file would be larger than allowed by the system. */
|
||||
[EFBIG] = N_("File too large"),
|
||||
[ERR_REMAP (EFBIG)] = N_("File too large"),
|
||||
#endif
|
||||
#ifdef ENOSPC
|
||||
/*
|
||||
TRANS No space left on device; write operation on a file failed because the
|
||||
TRANS disk is full. */
|
||||
[ENOSPC] = N_("No space left on device"),
|
||||
[ERR_REMAP (ENOSPC)] = N_("No space left on device"),
|
||||
#endif
|
||||
#ifdef ESPIPE
|
||||
/*
|
||||
TRANS Invalid seek operation (such as on a pipe). */
|
||||
[ESPIPE] = N_("Illegal seek"),
|
||||
[ERR_REMAP (ESPIPE)] = N_("Illegal seek"),
|
||||
#endif
|
||||
#ifdef EROFS
|
||||
/*
|
||||
TRANS An attempt was made to modify something on a read-only file system. */
|
||||
[EROFS] = N_("Read-only file system"),
|
||||
[ERR_REMAP (EROFS)] = N_("Read-only file system"),
|
||||
#endif
|
||||
#ifdef EMLINK
|
||||
/*
|
||||
TRANS Too many links; the link count of a single file would become too large.
|
||||
TRANS @code{rename} can cause this error if the file being renamed already has
|
||||
TRANS as many links as it can take (@pxref{Renaming Files}). */
|
||||
[EMLINK] = N_("Too many links"),
|
||||
[ERR_REMAP (EMLINK)] = N_("Too many links"),
|
||||
#endif
|
||||
#ifdef EPIPE
|
||||
/*
|
||||
@ -226,19 +231,19 @@ TRANS Every library function that returns this error code also generates a
|
||||
TRANS @code{SIGPIPE} signal; this signal terminates the program if not handled
|
||||
TRANS or blocked. Thus, your program will never actually see @code{EPIPE}
|
||||
TRANS unless it has handled or blocked @code{SIGPIPE}. */
|
||||
[EPIPE] = N_("Broken pipe"),
|
||||
[ERR_REMAP (EPIPE)] = N_("Broken pipe"),
|
||||
#endif
|
||||
#ifdef EDOM
|
||||
/*
|
||||
TRANS Domain error; used by mathematical functions when an argument value does
|
||||
TRANS not fall into the domain over which the function is defined. */
|
||||
[EDOM] = N_("Numerical argument out of domain"),
|
||||
[ERR_REMAP (EDOM)] = N_("Numerical argument out of domain"),
|
||||
#endif
|
||||
#ifdef ERANGE
|
||||
/*
|
||||
TRANS Range error; used by mathematical functions when the result value is
|
||||
TRANS not representable because of overflow or underflow. */
|
||||
[ERANGE] = N_("Numerical result out of range"),
|
||||
[ERR_REMAP (ERANGE)] = N_("Numerical result out of range"),
|
||||
#endif
|
||||
#ifdef EAGAIN
|
||||
/*
|
||||
@ -271,7 +276,7 @@ TRANS Such shortages are usually fairly serious and affect the whole system,
|
||||
TRANS so usually an interactive program should report the error to the user
|
||||
TRANS and return to its command loop.
|
||||
TRANS @end itemize */
|
||||
[EAGAIN] = N_("Resource temporarily unavailable"),
|
||||
[ERR_REMAP (EAGAIN)] = N_("Resource temporarily unavailable"),
|
||||
#endif
|
||||
#if defined (EWOULDBLOCK) && EWOULDBLOCK != EAGAIN
|
||||
/*
|
||||
@ -280,7 +285,7 @@ TRANS The values are always the same, on every operating system.
|
||||
TRANS
|
||||
TRANS C libraries in many older Unix systems have @code{EWOULDBLOCK} as a
|
||||
TRANS separate error code. */
|
||||
[EWOULDBLOCK] = N_("Operation would block"),
|
||||
[ERR_REMAP (EWOULDBLOCK)] = N_("Operation would block"),
|
||||
#endif
|
||||
#ifdef EINPROGRESS
|
||||
/*
|
||||
@ -292,47 +297,47 @@ TRANS the operation has begun and will take some time. Attempts to manipulate
|
||||
TRANS the object before the call completes return @code{EALREADY}. You can
|
||||
TRANS use the @code{select} function to find out when the pending operation
|
||||
TRANS has completed; @pxref{Waiting for I/O}. */
|
||||
[EINPROGRESS] = N_("Operation now in progress"),
|
||||
[ERR_REMAP (EINPROGRESS)] = N_("Operation now in progress"),
|
||||
#endif
|
||||
#ifdef EALREADY
|
||||
/*
|
||||
TRANS An operation is already in progress on an object that has non-blocking
|
||||
TRANS mode selected. */
|
||||
[EALREADY] = N_("Operation already in progress"),
|
||||
[ERR_REMAP (EALREADY)] = N_("Operation already in progress"),
|
||||
#endif
|
||||
#ifdef ENOTSOCK
|
||||
/*
|
||||
TRANS A file that isn't a socket was specified when a socket is required. */
|
||||
[ENOTSOCK] = N_("Socket operation on non-socket"),
|
||||
[ERR_REMAP (ENOTSOCK)] = N_("Socket operation on non-socket"),
|
||||
#endif
|
||||
#ifdef EMSGSIZE
|
||||
/*
|
||||
TRANS The size of a message sent on a socket was larger than the supported
|
||||
TRANS maximum size. */
|
||||
[EMSGSIZE] = N_("Message too long"),
|
||||
[ERR_REMAP (EMSGSIZE)] = N_("Message too long"),
|
||||
#endif
|
||||
#ifdef EPROTOTYPE
|
||||
/*
|
||||
TRANS The socket type does not support the requested communications protocol. */
|
||||
[EPROTOTYPE] = N_("Protocol wrong type for socket"),
|
||||
[ERR_REMAP (EPROTOTYPE)] = N_("Protocol wrong type for socket"),
|
||||
#endif
|
||||
#ifdef ENOPROTOOPT
|
||||
/*
|
||||
TRANS You specified a socket option that doesn't make sense for the
|
||||
TRANS particular protocol being used by the socket. @xref{Socket Options}. */
|
||||
[ENOPROTOOPT] = N_("Protocol not available"),
|
||||
[ERR_REMAP (ENOPROTOOPT)] = N_("Protocol not available"),
|
||||
#endif
|
||||
#ifdef EPROTONOSUPPORT
|
||||
/*
|
||||
TRANS The socket domain does not support the requested communications protocol
|
||||
TRANS (perhaps because the requested protocol is completely invalid.)
|
||||
TRANS @xref{Creating a Socket}. */
|
||||
[EPROTONOSUPPORT] = N_("Protocol not supported"),
|
||||
[ERR_REMAP (EPROTONOSUPPORT)] = N_("Protocol not supported"),
|
||||
#endif
|
||||
#ifdef ESOCKTNOSUPPORT
|
||||
/*
|
||||
TRANS The socket type is not supported. */
|
||||
[ESOCKTNOSUPPORT] = N_("Socket type not supported"),
|
||||
[ERR_REMAP (ESOCKTNOSUPPORT)] = N_("Socket type not supported"),
|
||||
#endif
|
||||
#ifdef EOPNOTSUPP
|
||||
/*
|
||||
@ -342,71 +347,71 @@ TRANS implemented for all communications protocols. In the GNU system, this
|
||||
TRANS error can happen for many calls when the object does not support the
|
||||
TRANS particular operation; it is a generic indication that the server knows
|
||||
TRANS nothing to do for that call. */
|
||||
[EOPNOTSUPP] = N_("Operation not supported"),
|
||||
[ERR_REMAP (EOPNOTSUPP)] = N_("Operation not supported"),
|
||||
#endif
|
||||
#ifdef EPFNOSUPPORT
|
||||
/*
|
||||
TRANS The socket communications protocol family you requested is not supported. */
|
||||
[EPFNOSUPPORT] = N_("Protocol family not supported"),
|
||||
[ERR_REMAP (EPFNOSUPPORT)] = N_("Protocol family not supported"),
|
||||
#endif
|
||||
#ifdef EAFNOSUPPORT
|
||||
/*
|
||||
TRANS The address family specified for a socket is not supported; it is
|
||||
TRANS inconsistent with the protocol being used on the socket. @xref{Sockets}. */
|
||||
[EAFNOSUPPORT] = N_("Address family not supported by protocol"),
|
||||
[ERR_REMAP (EAFNOSUPPORT)] = N_("Address family not supported by protocol"),
|
||||
#endif
|
||||
#ifdef EADDRINUSE
|
||||
/*
|
||||
TRANS The requested socket address is already in use. @xref{Socket Addresses}. */
|
||||
[EADDRINUSE] = N_("Address already in use"),
|
||||
[ERR_REMAP (EADDRINUSE)] = N_("Address already in use"),
|
||||
#endif
|
||||
#ifdef EADDRNOTAVAIL
|
||||
/*
|
||||
TRANS The requested socket address is not available; for example, you tried
|
||||
TRANS to give a socket a name that doesn't match the local host name.
|
||||
TRANS @xref{Socket Addresses}. */
|
||||
[EADDRNOTAVAIL] = N_("Cannot assign requested address"),
|
||||
[ERR_REMAP (EADDRNOTAVAIL)] = N_("Cannot assign requested address"),
|
||||
#endif
|
||||
#ifdef ENETDOWN
|
||||
/*
|
||||
TRANS A socket operation failed because the network was down. */
|
||||
[ENETDOWN] = N_("Network is down"),
|
||||
[ERR_REMAP (ENETDOWN)] = N_("Network is down"),
|
||||
#endif
|
||||
#ifdef ENETUNREACH
|
||||
/*
|
||||
TRANS A socket operation failed because the subnet containing the remote host
|
||||
TRANS was unreachable. */
|
||||
[ENETUNREACH] = N_("Network is unreachable"),
|
||||
[ERR_REMAP (ENETUNREACH)] = N_("Network is unreachable"),
|
||||
#endif
|
||||
#ifdef ENETRESET
|
||||
/*
|
||||
TRANS A network connection was reset because the remote host crashed. */
|
||||
[ENETRESET] = N_("Network dropped connection on reset"),
|
||||
[ERR_REMAP (ENETRESET)] = N_("Network dropped connection on reset"),
|
||||
#endif
|
||||
#ifdef ECONNABORTED
|
||||
/*
|
||||
TRANS A network connection was aborted locally. */
|
||||
[ECONNABORTED] = N_("Software caused connection abort"),
|
||||
[ERR_REMAP (ECONNABORTED)] = N_("Software caused connection abort"),
|
||||
#endif
|
||||
#ifdef ECONNRESET
|
||||
/*
|
||||
TRANS A network connection was closed for reasons outside the control of the
|
||||
TRANS local host, such as by the remote machine rebooting or an unrecoverable
|
||||
TRANS protocol violation. */
|
||||
[ECONNRESET] = N_("Connection reset by peer"),
|
||||
[ERR_REMAP (ECONNRESET)] = N_("Connection reset by peer"),
|
||||
#endif
|
||||
#ifdef ENOBUFS
|
||||
/*
|
||||
TRANS The kernel's buffers for I/O operations are all in use. In GNU, this
|
||||
TRANS error is always synonymous with @code{ENOMEM}; you may get one or the
|
||||
TRANS other from network operations. */
|
||||
[ENOBUFS] = N_("No buffer space available"),
|
||||
[ERR_REMAP (ENOBUFS)] = N_("No buffer space available"),
|
||||
#endif
|
||||
#ifdef EISCONN
|
||||
/*
|
||||
TRANS You tried to connect a socket that is already connected.
|
||||
TRANS @xref{Connecting}. */
|
||||
[EISCONN] = N_("Transport endpoint is already connected"),
|
||||
[ERR_REMAP (EISCONN)] = N_("Transport endpoint is already connected"),
|
||||
#endif
|
||||
#ifdef ENOTCONN
|
||||
/*
|
||||
@ -414,83 +419,83 @@ TRANS The socket is not connected to anything. You get this error when you
|
||||
TRANS try to transmit data over a socket, without first specifying a
|
||||
TRANS destination for the data. For a connectionless socket (for datagram
|
||||
TRANS protocols, such as UDP), you get @code{EDESTADDRREQ} instead. */
|
||||
[ENOTCONN] = N_("Transport endpoint is not connected"),
|
||||
[ERR_REMAP (ENOTCONN)] = N_("Transport endpoint is not connected"),
|
||||
#endif
|
||||
#ifdef EDESTADDRREQ
|
||||
/*
|
||||
TRANS No default destination address was set for the socket. You get this
|
||||
TRANS error when you try to transmit data over a connectionless socket,
|
||||
TRANS without first specifying a destination for the data with @code{connect}. */
|
||||
[EDESTADDRREQ] = N_("Destination address required"),
|
||||
[ERR_REMAP (EDESTADDRREQ)] = N_("Destination address required"),
|
||||
#endif
|
||||
#ifdef ESHUTDOWN
|
||||
/*
|
||||
TRANS The socket has already been shut down. */
|
||||
[ESHUTDOWN] = N_("Cannot send after transport endpoint shutdown"),
|
||||
[ERR_REMAP (ESHUTDOWN)] = N_("Cannot send after transport endpoint shutdown"),
|
||||
#endif
|
||||
#ifdef ETOOMANYREFS
|
||||
/*
|
||||
TRANS ??? */
|
||||
[ETOOMANYREFS] = N_("Too many references: cannot splice"),
|
||||
[ERR_REMAP (ETOOMANYREFS)] = N_("Too many references: cannot splice"),
|
||||
#endif
|
||||
#ifdef ETIMEDOUT
|
||||
/*
|
||||
TRANS A socket operation with a specified timeout received no response during
|
||||
TRANS the timeout period. */
|
||||
[ETIMEDOUT] = N_("Connection timed out"),
|
||||
[ERR_REMAP (ETIMEDOUT)] = N_("Connection timed out"),
|
||||
#endif
|
||||
#ifdef ECONNREFUSED
|
||||
/*
|
||||
TRANS A remote host refused to allow the network connection (typically because
|
||||
TRANS it is not running the requested service). */
|
||||
[ECONNREFUSED] = N_("Connection refused"),
|
||||
[ERR_REMAP (ECONNREFUSED)] = N_("Connection refused"),
|
||||
#endif
|
||||
#ifdef ELOOP
|
||||
/*
|
||||
TRANS Too many levels of symbolic links were encountered in looking up a file name.
|
||||
TRANS This often indicates a cycle of symbolic links. */
|
||||
[ELOOP] = N_("Too many levels of symbolic links"),
|
||||
[ERR_REMAP (ELOOP)] = N_("Too many levels of symbolic links"),
|
||||
#endif
|
||||
#ifdef ENAMETOOLONG
|
||||
/*
|
||||
TRANS Filename too long (longer than @code{PATH_MAX}; @pxref{Limits for
|
||||
TRANS Files}) or host name too long (in @code{gethostname} or
|
||||
TRANS @code{sethostname}; @pxref{Host Identification}). */
|
||||
[ENAMETOOLONG] = N_("File name too long"),
|
||||
[ERR_REMAP (ENAMETOOLONG)] = N_("File name too long"),
|
||||
#endif
|
||||
#ifdef EHOSTDOWN
|
||||
/*
|
||||
TRANS The remote host for a requested network connection is down. */
|
||||
[EHOSTDOWN] = N_("Host is down"),
|
||||
[ERR_REMAP (EHOSTDOWN)] = N_("Host is down"),
|
||||
#endif
|
||||
#ifdef EHOSTUNREACH
|
||||
/*
|
||||
TRANS The remote host for a requested network connection is not reachable. */
|
||||
[EHOSTUNREACH] = N_("No route to host"),
|
||||
[ERR_REMAP (EHOSTUNREACH)] = N_("No route to host"),
|
||||
#endif
|
||||
#ifdef ENOTEMPTY
|
||||
/*
|
||||
TRANS Directory not empty, where an empty directory was expected. Typically,
|
||||
TRANS this error occurs when you are trying to delete a directory. */
|
||||
[ENOTEMPTY] = N_("Directory not empty"),
|
||||
[ERR_REMAP (ENOTEMPTY)] = N_("Directory not empty"),
|
||||
#endif
|
||||
#ifdef EPROCLIM
|
||||
/*
|
||||
TRANS This means that the per-user limit on new process would be exceeded by
|
||||
TRANS an attempted @code{fork}. @xref{Limits on Resources}, for details on
|
||||
TRANS the @code{RLIMIT_NPROC} limit. */
|
||||
[EPROCLIM] = N_("Too many processes"),
|
||||
[ERR_REMAP (EPROCLIM)] = N_("Too many processes"),
|
||||
#endif
|
||||
#ifdef EUSERS
|
||||
/*
|
||||
TRANS The file quota system is confused because there are too many users.
|
||||
TRANS @c This can probably happen in a GNU system when using NFS. */
|
||||
[EUSERS] = N_("Too many users"),
|
||||
[ERR_REMAP (EUSERS)] = N_("Too many users"),
|
||||
#endif
|
||||
#ifdef EDQUOT
|
||||
/*
|
||||
TRANS The user's disk quota was exceeded. */
|
||||
[EDQUOT] = N_("Disc quota exceeded"),
|
||||
[ERR_REMAP (EDQUOT)] = N_("Disc quota exceeded"),
|
||||
#endif
|
||||
#ifdef ESTALE
|
||||
/*
|
||||
@ -498,7 +503,7 @@ TRANS Stale NFS file handle. This indicates an internal confusion in the NFS
|
||||
TRANS system which is due to file system rearrangements on the server host.
|
||||
TRANS Repairing this condition usually requires unmounting and remounting
|
||||
TRANS the NFS file system on the local host. */
|
||||
[ESTALE] = N_("Stale NFS file handle"),
|
||||
[ERR_REMAP (ESTALE)] = N_("Stale NFS file handle"),
|
||||
#endif
|
||||
#ifdef EREMOTE
|
||||
/*
|
||||
@ -506,32 +511,32 @@ TRANS An attempt was made to NFS-mount a remote file system with a file name tha
|
||||
TRANS already specifies an NFS-mounted file.
|
||||
TRANS (This is an error on some operating systems, but we expect it to work
|
||||
TRANS properly on the GNU system, making this error code impossible.) */
|
||||
[EREMOTE] = N_("Object is remote"),
|
||||
[ERR_REMAP (EREMOTE)] = N_("Object is remote"),
|
||||
#endif
|
||||
#ifdef EBADRPC
|
||||
/*
|
||||
TRANS ??? */
|
||||
[EBADRPC] = N_("RPC struct is bad"),
|
||||
[ERR_REMAP (EBADRPC)] = N_("RPC struct is bad"),
|
||||
#endif
|
||||
#ifdef ERPCMISMATCH
|
||||
/*
|
||||
TRANS ??? */
|
||||
[ERPCMISMATCH] = N_("RPC version wrong"),
|
||||
[ERR_REMAP (ERPCMISMATCH)] = N_("RPC version wrong"),
|
||||
#endif
|
||||
#ifdef EPROGUNAVAIL
|
||||
/*
|
||||
TRANS ??? */
|
||||
[EPROGUNAVAIL] = N_("RPC program not available"),
|
||||
[ERR_REMAP (EPROGUNAVAIL)] = N_("RPC program not available"),
|
||||
#endif
|
||||
#ifdef EPROGMISMATCH
|
||||
/*
|
||||
TRANS ??? */
|
||||
[EPROGMISMATCH] = N_("RPC program version wrong"),
|
||||
[ERR_REMAP (EPROGMISMATCH)] = N_("RPC program version wrong"),
|
||||
#endif
|
||||
#ifdef EPROCUNAVAIL
|
||||
/*
|
||||
TRANS ??? */
|
||||
[EPROCUNAVAIL] = N_("RPC bad procedure for program"),
|
||||
[ERR_REMAP (EPROCUNAVAIL)] = N_("RPC bad procedure for program"),
|
||||
#endif
|
||||
#ifdef ENOLCK
|
||||
/*
|
||||
@ -539,7 +544,7 @@ TRANS No locks available. This is used by the file locking facilities; see
|
||||
TRANS @ref{File Locks}. This error is never generated by the GNU system, but
|
||||
TRANS it can result from an operation to an NFS server running another
|
||||
TRANS operating system. */
|
||||
[ENOLCK] = N_("No locks available"),
|
||||
[ERR_REMAP (ENOLCK)] = N_("No locks available"),
|
||||
#endif
|
||||
#ifdef EFTYPE
|
||||
/*
|
||||
@ -548,30 +553,30 @@ TRANS operation, or a data file had the wrong format.
|
||||
TRANS
|
||||
TRANS On some systems @code{chmod} returns this error if you try to set the
|
||||
TRANS sticky bit on a non-directory file; @pxref{Setting Permissions}. */
|
||||
[EFTYPE] = N_("Inappropriate file type or format"),
|
||||
[ERR_REMAP (EFTYPE)] = N_("Inappropriate file type or format"),
|
||||
#endif
|
||||
#ifdef EAUTH
|
||||
/*
|
||||
TRANS ??? */
|
||||
[EAUTH] = N_("Authentication error"),
|
||||
[ERR_REMAP (EAUTH)] = N_("Authentication error"),
|
||||
#endif
|
||||
#ifdef ENEEDAUTH
|
||||
/*
|
||||
TRANS ??? */
|
||||
[ENEEDAUTH] = N_("Need authenticator"),
|
||||
[ERR_REMAP (ENEEDAUTH)] = N_("Need authenticator"),
|
||||
#endif
|
||||
#ifdef ENOSYS
|
||||
/*
|
||||
TRANS Function not implemented. Some functions have commands or options defined
|
||||
TRANS that might not be supported in all implementations, and this is the kind
|
||||
TRANS of error you get if you request them and they are not supported. */
|
||||
[ENOSYS] = N_("Function not implemented"),
|
||||
[ERR_REMAP (ENOSYS)] = N_("Function not implemented"),
|
||||
#endif
|
||||
#ifdef EILSEQ
|
||||
/*
|
||||
TRANS While decoding a multibyte character the function came along an invalid
|
||||
TRANS or an incomplete sequence of bytes or the given wide character is invalid. */
|
||||
[EILSEQ] = N_("Invalid or incomplete multibyte or wide character"),
|
||||
[ERR_REMAP (EILSEQ)] = N_("Invalid or incomplete multibyte or wide character"),
|
||||
#endif
|
||||
#ifdef EBACKGROUND
|
||||
/*
|
||||
@ -581,241 +586,243 @@ TRANS foreground process group of the terminal. Users do not usually see this
|
||||
TRANS error because functions such as @code{read} and @code{write} translate
|
||||
TRANS it into a @code{SIGTTIN} or @code{SIGTTOU} signal. @xref{Job Control},
|
||||
TRANS for information on process groups and these signals. */
|
||||
[EBACKGROUND] = N_("Inappropriate operation for background process"),
|
||||
[ERR_REMAP (EBACKGROUND)] = N_("Inappropriate operation for background process"),
|
||||
#endif
|
||||
#ifdef EDIED
|
||||
/*
|
||||
TRANS In the GNU system, opening a file returns this error when the file is
|
||||
TRANS translated by a program and the translator program dies while starting
|
||||
TRANS up, before it has connected to the file. */
|
||||
[EDIED] = N_("Translator died"),
|
||||
[ERR_REMAP (EDIED)] = N_("Translator died"),
|
||||
#endif
|
||||
#ifdef ED
|
||||
/*
|
||||
TRANS The experienced user will know what is wrong.
|
||||
TRANS @c This error code is a joke. Its perror text is part of the joke.
|
||||
TRANS @c Don't change it. */
|
||||
[ED] = N_("?"),
|
||||
[ERR_REMAP (ED)] = N_("?"),
|
||||
#endif
|
||||
#ifdef EGREGIOUS
|
||||
/*
|
||||
TRANS You did @strong{what}? */
|
||||
[EGREGIOUS] = N_("You really blew it this time"),
|
||||
[ERR_REMAP (EGREGIOUS)] = N_("You really blew it this time"),
|
||||
#endif
|
||||
#ifdef EIEIO
|
||||
/*
|
||||
TRANS Go home and have a glass of warm, dairy-fresh milk. */
|
||||
[EIEIO] = N_("Computer bought the farm"),
|
||||
[ERR_REMAP (EIEIO)] = N_("Computer bought the farm"),
|
||||
#endif
|
||||
#ifdef EGRATUITOUS
|
||||
/*
|
||||
TRANS This error code has no purpose. */
|
||||
[EGRATUITOUS] = N_("Gratuitous error"),
|
||||
[ERR_REMAP (EGRATUITOUS)] = N_("Gratuitous error"),
|
||||
#endif
|
||||
#ifdef EBADMSG
|
||||
/* */
|
||||
[EBADMSG] = N_("Bad message"),
|
||||
[ERR_REMAP (EBADMSG)] = N_("Bad message"),
|
||||
#endif
|
||||
#ifdef EIDRM
|
||||
/* */
|
||||
[EIDRM] = N_("Identifier removed"),
|
||||
[ERR_REMAP (EIDRM)] = N_("Identifier removed"),
|
||||
#endif
|
||||
#ifdef EMULTIHOP
|
||||
/* */
|
||||
[EMULTIHOP] = N_("Multihop attempted"),
|
||||
[ERR_REMAP (EMULTIHOP)] = N_("Multihop attempted"),
|
||||
#endif
|
||||
#ifdef ENODATA
|
||||
/* */
|
||||
[ENODATA] = N_("No data available"),
|
||||
[ERR_REMAP (ENODATA)] = N_("No data available"),
|
||||
#endif
|
||||
#ifdef ENOLINK
|
||||
/* */
|
||||
[ENOLINK] = N_("Link has been severed"),
|
||||
[ERR_REMAP (ENOLINK)] = N_("Link has been severed"),
|
||||
#endif
|
||||
#ifdef ENOMSG
|
||||
/* */
|
||||
[ENOMSG] = N_("No message of desired type"),
|
||||
[ERR_REMAP (ENOMSG)] = N_("No message of desired type"),
|
||||
#endif
|
||||
#ifdef ENOSR
|
||||
/* */
|
||||
[ENOSR] = N_("Out of streams resources"),
|
||||
[ERR_REMAP (ENOSR)] = N_("Out of streams resources"),
|
||||
#endif
|
||||
#ifdef ENOSTR
|
||||
/* */
|
||||
[ENOSTR] = N_("Device not a stream"),
|
||||
[ERR_REMAP (ENOSTR)] = N_("Device not a stream"),
|
||||
#endif
|
||||
#ifdef EOVERFLOW
|
||||
/* */
|
||||
[EOVERFLOW] = N_("Value too large for defined data type"),
|
||||
[ERR_REMAP (EOVERFLOW)] = N_("Value too large for defined data type"),
|
||||
#endif
|
||||
#ifdef EPROTO
|
||||
/* */
|
||||
[EPROTO] = N_("Protocol error"),
|
||||
[ERR_REMAP (EPROTO)] = N_("Protocol error"),
|
||||
#endif
|
||||
#ifdef ETIME
|
||||
/* */
|
||||
[ETIME] = N_("Timer expired"),
|
||||
[ERR_REMAP (ETIME)] = N_("Timer expired"),
|
||||
#endif
|
||||
#ifdef ERESTART
|
||||
/* */
|
||||
[ERESTART] = N_("Interrupted system call should be restarted"),
|
||||
[ERR_REMAP (ERESTART)] = N_("Interrupted system call should be restarted"),
|
||||
#endif
|
||||
#ifdef ECHRNG
|
||||
/* */
|
||||
[ECHRNG] = N_("Channel number out of range"),
|
||||
[ERR_REMAP (ECHRNG)] = N_("Channel number out of range"),
|
||||
#endif
|
||||
#ifdef EL2NSYNC
|
||||
/* */
|
||||
[EL2NSYNC] = N_("Level 2 not synchronized"),
|
||||
[ERR_REMAP (EL2NSYNC)] = N_("Level 2 not synchronized"),
|
||||
#endif
|
||||
#ifdef EL3HLT
|
||||
/* */
|
||||
[EL3HLT] = N_("Level 3 halted"),
|
||||
[ERR_REMAP (EL3HLT)] = N_("Level 3 halted"),
|
||||
#endif
|
||||
#ifdef EL3RST
|
||||
/* */
|
||||
[EL3RST] = N_("Level 3 reset"),
|
||||
[ERR_REMAP (EL3RST)] = N_("Level 3 reset"),
|
||||
#endif
|
||||
#ifdef ELNRNG
|
||||
/* */
|
||||
[ELNRNG] = N_("Link number out of range"),
|
||||
[ERR_REMAP (ELNRNG)] = N_("Link number out of range"),
|
||||
#endif
|
||||
#ifdef EUNATCH
|
||||
/* */
|
||||
[EUNATCH] = N_("Protocol driver not attached"),
|
||||
[ERR_REMAP (EUNATCH)] = N_("Protocol driver not attached"),
|
||||
#endif
|
||||
#ifdef ENOCSI
|
||||
/* */
|
||||
[ENOCSI] = N_("No CSI structure available"),
|
||||
[ERR_REMAP (ENOCSI)] = N_("No CSI structure available"),
|
||||
#endif
|
||||
#ifdef EL2HLT
|
||||
/* */
|
||||
[EL2HLT] = N_("Level 2 halted"),
|
||||
[ERR_REMAP (EL2HLT)] = N_("Level 2 halted"),
|
||||
#endif
|
||||
#ifdef EBADE
|
||||
/* */
|
||||
[EBADE] = N_("Invalid exchange"),
|
||||
[ERR_REMAP (EBADE)] = N_("Invalid exchange"),
|
||||
#endif
|
||||
#ifdef EBADR
|
||||
/* */
|
||||
[EBADR] = N_("Invalid request descriptor"),
|
||||
[ERR_REMAP (EBADR)] = N_("Invalid request descriptor"),
|
||||
#endif
|
||||
#ifdef EXFULL
|
||||
/* */
|
||||
[EXFULL] = N_("Exchange full"),
|
||||
[ERR_REMAP (EXFULL)] = N_("Exchange full"),
|
||||
#endif
|
||||
#ifdef ENOANO
|
||||
/* */
|
||||
[ENOANO] = N_("No anode"),
|
||||
[ERR_REMAP (ENOANO)] = N_("No anode"),
|
||||
#endif
|
||||
#ifdef EBADRQC
|
||||
/* */
|
||||
[EBADRQC] = N_("Invalid request code"),
|
||||
[ERR_REMAP (EBADRQC)] = N_("Invalid request code"),
|
||||
#endif
|
||||
#ifdef EBADSLT
|
||||
/* */
|
||||
[EBADSLT] = N_("Invalid slot"),
|
||||
[ERR_REMAP (EBADSLT)] = N_("Invalid slot"),
|
||||
#endif
|
||||
#if defined (EDEADLOCK) && EDEADLOCK != EDEADLK
|
||||
/* */
|
||||
[EDEADLOCK] = N_("File locking deadlock error"),
|
||||
[ERR_REMAP (EDEADLOCK)] = N_("File locking deadlock error"),
|
||||
#endif
|
||||
#ifdef EBFONT
|
||||
/* */
|
||||
[EBFONT] = N_("Bad font file format"),
|
||||
[ERR_REMAP (EBFONT)] = N_("Bad font file format"),
|
||||
#endif
|
||||
#ifdef ENONET
|
||||
/* */
|
||||
[ENONET] = N_("Machine is not on the network"),
|
||||
[ERR_REMAP (ENONET)] = N_("Machine is not on the network"),
|
||||
#endif
|
||||
#ifdef ENOPKG
|
||||
/* */
|
||||
[ENOPKG] = N_("Package not installed"),
|
||||
[ERR_REMAP (ENOPKG)] = N_("Package not installed"),
|
||||
#endif
|
||||
#ifdef EADV
|
||||
/* */
|
||||
[EADV] = N_("Advertise error"),
|
||||
[ERR_REMAP (EADV)] = N_("Advertise error"),
|
||||
#endif
|
||||
#ifdef ESRMNT
|
||||
/* */
|
||||
[ESRMNT] = N_("Srmount error"),
|
||||
[ERR_REMAP (ESRMNT)] = N_("Srmount error"),
|
||||
#endif
|
||||
#ifdef ECOMM
|
||||
/* */
|
||||
[ECOMM] = N_("Communication error on send"),
|
||||
[ERR_REMAP (ECOMM)] = N_("Communication error on send"),
|
||||
#endif
|
||||
#ifdef EDOTDOT
|
||||
/* */
|
||||
[EDOTDOT] = N_("RFS specific error"),
|
||||
[ERR_REMAP (EDOTDOT)] = N_("RFS specific error"),
|
||||
#endif
|
||||
#ifdef ENOTUNIQ
|
||||
/* */
|
||||
[ENOTUNIQ] = N_("Name not unique on network"),
|
||||
[ERR_REMAP (ENOTUNIQ)] = N_("Name not unique on network"),
|
||||
#endif
|
||||
#ifdef EBADFD
|
||||
/* */
|
||||
[EBADFD] = N_("File descriptor in bad state"),
|
||||
[ERR_REMAP (EBADFD)] = N_("File descriptor in bad state"),
|
||||
#endif
|
||||
#ifdef EREMCHG
|
||||
/* */
|
||||
[EREMCHG] = N_("Remote address changed"),
|
||||
[ERR_REMAP (EREMCHG)] = N_("Remote address changed"),
|
||||
#endif
|
||||
#ifdef ELIBACC
|
||||
/* */
|
||||
[ELIBACC] = N_("Can not access a needed shared library"),
|
||||
[ERR_REMAP (ELIBACC)] = N_("Can not access a needed shared library"),
|
||||
#endif
|
||||
#ifdef ELIBBAD
|
||||
/* */
|
||||
[ELIBBAD] = N_("Accessing a corrupted shared library"),
|
||||
[ERR_REMAP (ELIBBAD)] = N_("Accessing a corrupted shared library"),
|
||||
#endif
|
||||
#ifdef ELIBSCN
|
||||
/* */
|
||||
[ELIBSCN] = N_(".lib section in a.out corrupted"),
|
||||
[ERR_REMAP (ELIBSCN)] = N_(".lib section in a.out corrupted"),
|
||||
#endif
|
||||
#ifdef ELIBMAX
|
||||
/* */
|
||||
[ELIBMAX] = N_("Attempting to link in too many shared libraries"),
|
||||
[ERR_REMAP (ELIBMAX)] = N_("Attempting to link in too many shared libraries"),
|
||||
#endif
|
||||
#ifdef ELIBEXEC
|
||||
/* */
|
||||
[ELIBEXEC] = N_("Cannot exec a shared library directly"),
|
||||
[ERR_REMAP (ELIBEXEC)] = N_("Cannot exec a shared library directly"),
|
||||
#endif
|
||||
#ifdef ESTRPIPE
|
||||
/* */
|
||||
[ESTRPIPE] = N_("Streams pipe error"),
|
||||
[ERR_REMAP (ESTRPIPE)] = N_("Streams pipe error"),
|
||||
#endif
|
||||
#ifdef EUCLEAN
|
||||
/* */
|
||||
[EUCLEAN] = N_("Structure needs cleaning"),
|
||||
[ERR_REMAP (EUCLEAN)] = N_("Structure needs cleaning"),
|
||||
#endif
|
||||
#ifdef ENOTNAM
|
||||
/* */
|
||||
[ENOTNAM] = N_("Not a XENIX named type file"),
|
||||
[ERR_REMAP (ENOTNAM)] = N_("Not a XENIX named type file"),
|
||||
#endif
|
||||
#ifdef ENAVAIL
|
||||
/* */
|
||||
[ENAVAIL] = N_("No XENIX semaphores available"),
|
||||
[ERR_REMAP (ENAVAIL)] = N_("No XENIX semaphores available"),
|
||||
#endif
|
||||
#ifdef EISNAM
|
||||
/* */
|
||||
[EISNAM] = N_("Is a named type file"),
|
||||
[ERR_REMAP (EISNAM)] = N_("Is a named type file"),
|
||||
#endif
|
||||
#ifdef EREMOTEIO
|
||||
/* */
|
||||
[EREMOTEIO] = N_("Remote I/O error"),
|
||||
[ERR_REMAP (EREMOTEIO)] = N_("Remote I/O error"),
|
||||
#endif
|
||||
#ifdef ENOMEDIUM
|
||||
/* */
|
||||
[ENOMEDIUM] = N_("No medium found"),
|
||||
[ERR_REMAP (ENOMEDIUM)] = N_("No medium found"),
|
||||
#endif
|
||||
#ifdef EMEDIUMTYPE
|
||||
/* */
|
||||
[EMEDIUMTYPE] = N_("Wrong medium type"),
|
||||
[ERR_REMAP (EMEDIUMTYPE)] = N_("Wrong medium type"),
|
||||
#endif
|
||||
};
|
||||
|
||||
const int SYS_NERR = sizeof SYS_ERRLIST / sizeof SYS_ERRLIST [0];
|
||||
#if !defined HAVE_ELF || !defined PIC || !defined DO_VERSIONING
|
||||
weak_alias (_sys_errlist, sys_errlist)
|
||||
weak_alias (_sys_nerr, sys_nerr)
|
||||
#ifdef SYS_ERRLIST_ALIAS
|
||||
weak_alias (_sys_errlist, SYS_ERRLIST_ALIAS)
|
||||
#endif
|
||||
#ifdef SYS_NERR_ALIAS
|
||||
weak_alias (_sys_nerr, SYS_NERR_ALIAS)
|
||||
#endif
|
||||
|
Loading…
Reference in New Issue
Block a user