diff options
Diffstat (limited to 'sysdeps')
-rw-r--r-- | sysdeps/generic/bits/errno.h | 17 | ||||
-rw-r--r-- | sysdeps/generic/make_siglist.c | 8 | ||||
-rw-r--r-- | sysdeps/generic/readdir_r.c | 2 | ||||
-rw-r--r-- | sysdeps/standalone/bits/errno.h | 62 | ||||
-rw-r--r-- | sysdeps/unix/readdir_r.c | 2 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/alpha/Dist | 2 |
6 files changed, 79 insertions, 14 deletions
diff --git a/sysdeps/generic/bits/errno.h b/sysdeps/generic/bits/errno.h index cb61da7836..622c2c9de4 100644 --- a/sysdeps/generic/bits/errno.h +++ b/sysdeps/generic/bits/errno.h @@ -22,20 +22,15 @@ #undef __need_Emath #define __Emath_defined 1 -# define EDOM 1 -# define ERANGE 2 +# define EDOM XXX <--- fill in what is actually needed +# define ERANGE XXX <--- fill in what is actually needed #endif #ifdef _ERRNO_H -# define ENOSYS 3 -# define EINVAL 4 -# define ESPIPE 5 -# define EBADF 6 -# define ENOMEM 7 -# define EACCES 8 -# define ENFILE 9 -# define EMFILE 10 -# define ENOMSG 11 +# error "Define here all the missing error messages for the port. These" +# error "must match the numbers of the kernel." +# define Exxxx XXX +... #endif #define __set_errno(val) errno = (val) diff --git a/sysdeps/generic/make_siglist.c b/sysdeps/generic/make_siglist.c index b670baf434..2cfd4988dd 100644 --- a/sysdeps/generic/make_siglist.c +++ b/sysdeps/generic/make_siglist.c @@ -17,6 +17,11 @@ Boston, MA 02111-1307, USA. */ #include <stdio.h> + +/* Include signal.h now so that we can safely reinclude it again in + signame.c later on. We completely override the definitions, we + just have to be sure that the include guard in signal.h keeps it + from redefining the signal values. */ #include <signal.h> /* Get this configuration's defns of the signal numbers. */ @@ -32,6 +37,9 @@ #define HAVE_PSIGNAL #define sys_siglist my_siglist /* Avoid clash with signal.h. */ +#undef NSIG +#define NSIG _NSIG /* make sure that the value from SIGNUM_H is used. */ + #include "signame.c" diff --git a/sysdeps/generic/readdir_r.c b/sysdeps/generic/readdir_r.c index ae14d18160..41bf87fca2 100644 --- a/sysdeps/generic/readdir_r.c +++ b/sysdeps/generic/readdir_r.c @@ -27,7 +27,7 @@ __readdir_r (DIR *dirp, struct dirent *entry, struct dirent **result) { __set_errno (ENOSYS); *result = NULL; - return -1; + return ENOSYS; } weak_alias (__readdir_r, readdir_r) diff --git a/sysdeps/standalone/bits/errno.h b/sysdeps/standalone/bits/errno.h new file mode 100644 index 0000000000..30eec4308d --- /dev/null +++ b/sysdeps/standalone/bits/errno.h @@ -0,0 +1,62 @@ +/* Copyright (C) 1991, 1994, 1996, 1997 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. */ + +/* This file defines the `errno' constants. */ + +#if !defined __Emath_defined && (defined _ERRNO_H || defined __need_Emath) +#undef __need_Emath +#define __Emath_defined 1 + +# define EDOM 1 +# define ERANGE 2 +#endif + +#ifdef _ERRNO_H +# define ENOSYS 3 +# define EINVAL 4 +# define ESPIPE 5 +# define EBADF 6 +# define ENOMEM 7 +# define EACCES 8 +# define ENFILE 9 +# define EMFILE 10 +# define ENOMSG 11 +# define ENAMETOOLONG 12 +# define ELOOP 13 +# define ENOMSG 14 +# define E2BIG 15 +# define EINTR 16 +# define EILSEQ 17 +# define ENOEXEC 18 +# define ENOENT 19 +# define EPROTOTYPE 20 +# define ESRCH 21 +# define EPERM 22 +# define EEXIST 23 +# define ENOTDIR 24 +# define ESTALE 25 +# define ENOTTY 26 +# define EISDIR 27 +# define EOPNOTSUPP 28 +# define EAGAIN 29 +# define EIO 30 +# define ENOSPC 31 +# define EBUSY 32 +#endif + +#define __set_errno(val) errno = (val) diff --git a/sysdeps/unix/readdir_r.c b/sysdeps/unix/readdir_r.c index fa26db6381..a4462f73e7 100644 --- a/sysdeps/unix/readdir_r.c +++ b/sysdeps/unix/readdir_r.c @@ -103,6 +103,6 @@ __readdir_r (DIR *dirp, struct dirent *entry, struct dirent **result) __libc_lock_unlock (dirp->lock); - return dp != NULL ? 0 : -1; + return dp != NULL ? 0 : errno; } weak_alias (__readdir_r, readdir_r) diff --git a/sysdeps/unix/sysv/linux/alpha/Dist b/sysdeps/unix/sysv/linux/alpha/Dist index ebbf300eac..715fda7bd3 100644 --- a/sysdeps/unix/sysv/linux/alpha/Dist +++ b/sysdeps/unix/sysv/linux/alpha/Dist @@ -12,4 +12,4 @@ kernel_termios.h sys/acct.h sys/io.h sys/procfs.h -xstatconv.c \ No newline at end of file +xstatconv.c |