summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRoland McGrath <roland@gnu.org>2004-10-20 10:05:07 +0000
committerRoland McGrath <roland@gnu.org>2004-10-20 10:05:07 +0000
commitcb57664d297d1669be7887d2e17a1a2128d39af6 (patch)
tree678ec620c42cceeb9699573659b452be392f1a45
parent4b359a27dd5c9d76e507db782a8e907e20c1df95 (diff)
downloadglibc-cb57664d297d1669be7887d2e17a1a2128d39af6.tar.gz
* manual/errno.texi (Error Codes): Add ENOKEY, EKEYEXPIRED,cvs/fedora-glibc-20041020T1016
EKEYREVOKED, EKEYREJECTED. * sysdeps/unix/sysv/linux/Versions (libc: GLIBC_2.3.4): New errlist. * sysdeps/gnu/errlist.c: Regenerated * sysdeps/gnu/errlist-compat.awk: Don't bail if Versions gives a count higher than ERR_MAX reports. Instead, emit a #define ERR_MAX. * sysdeps/gnu/Makefile ($(objpfx)errlist-compat.h): New target. (generated): Add errlist-compat.h. * sysdeps/gnu/errlist.awk: Make output #include <errlist-compat.h> to define ERR_MAX and use that for table size.
-rw-r--r--ChangeLog14
-rw-r--r--manual/errno.texi24
-rw-r--r--sysdeps/gnu/errlist.c42
-rw-r--r--sysdeps/unix/sysv/linux/Versions3
4 files changed, 82 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 5b58a02c76..6a6083f08c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,17 @@
+2004-10-20 Roland McGrath <roland@redhat.com>
+
+ * manual/errno.texi (Error Codes): Add ENOKEY, EKEYEXPIRED,
+ EKEYREVOKED, EKEYREJECTED.
+ * sysdeps/unix/sysv/linux/Versions (libc: GLIBC_2.3.4): New errlist.
+ * sysdeps/gnu/errlist.c: Regenerated
+
+ * sysdeps/gnu/errlist-compat.awk: Don't bail if Versions gives a count
+ higher than ERR_MAX reports. Instead, emit a #define ERR_MAX.
+ * sysdeps/gnu/Makefile ($(objpfx)errlist-compat.h): New target.
+ (generated): Add errlist-compat.h.
+ * sysdeps/gnu/errlist.awk: Make output #include <errlist-compat.h> to
+ define ERR_MAX and use that for table size.
+
2004-10-20 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/syscalls.list: Add entries for setaltroot,
diff --git a/manual/errno.texi b/manual/errno.texi
index c799d268f8..7872452df3 100644
--- a/manual/errno.texi
+++ b/manual/errno.texi
@@ -1229,6 +1229,30 @@ They are not yet documented.}
@comment errno ???/???
@end deftypevr
+@comment errno.h
+@comment Linux???: Required key not available
+@deftypevr Macro int ENOKEY
+@comment errno ???/???
+@end deftypevr
+
+@comment errno.h
+@comment Linux???: Key has expired
+@deftypevr Macro int EKEYEXPIRED
+@comment errno ???/???
+@end deftypevr
+
+@comment errno.h
+@comment Linux???: Key has been revoked
+@deftypevr Macro int EKEYREVOKED
+@comment errno ???/???
+@end deftypevr
+
+@comment errno.h
+@comment Linux???: Key was rejected by service
+@deftypevr Macro int EKEYREJECTED
+@comment errno ???/???
+@end deftypevr
+
@node Error Messages, , Error Codes, Error Reporting
@section Error Messages
diff --git a/sysdeps/gnu/errlist.c b/sysdeps/gnu/errlist.c
index 8131038047..3098fc34c5 100644
--- a/sysdeps/gnu/errlist.c
+++ b/sysdeps/gnu/errlist.c
@@ -7,7 +7,15 @@
# define ERR_REMAP(n) n
#endif
-const char *const _sys_errlist_internal[] =
+#if !defined EMIT_ERR_MAX && !defined ERRLIST_NO_COMPAT
+# include <errlist-compat.h>
+#endif
+#ifdef ERR_MAX
+# define ERRLIST_SIZE ERR_MAX + 1
+#else
+# define ERRLIST_SIZE
+#endif
+const char *const _sys_errlist_internal[ERRLIST_SIZE] =
{
[0] = N_("Success"),
#ifdef EPERM
@@ -1400,6 +1408,38 @@ TRANS error; @pxref{Cancel AIO Operations}. */
# define ERR_MAX EMEDIUMTYPE
# endif
#endif
+#ifdef ENOKEY
+/* */
+ [ERR_REMAP (ENOKEY)] = N_("Required key not available"),
+# if ENOKEY > ERR_MAX
+# undef ERR_MAX
+# define ERR_MAX ENOKEY
+# endif
+#endif
+#ifdef EKEYEXPIRED
+/* */
+ [ERR_REMAP (EKEYEXPIRED)] = N_("Key has expired"),
+# if EKEYEXPIRED > ERR_MAX
+# undef ERR_MAX
+# define ERR_MAX EKEYEXPIRED
+# endif
+#endif
+#ifdef EKEYREVOKED
+/* */
+ [ERR_REMAP (EKEYREVOKED)] = N_("Key has been revoked"),
+# if EKEYREVOKED > ERR_MAX
+# undef ERR_MAX
+# define ERR_MAX EKEYREVOKED
+# endif
+#endif
+#ifdef EKEYREJECTED
+/* */
+ [ERR_REMAP (EKEYREJECTED)] = N_("Key was rejected by service"),
+# if EKEYREJECTED > ERR_MAX
+# undef ERR_MAX
+# define ERR_MAX EKEYREJECTED
+# endif
+#endif
};
const int _sys_nerr_internal
diff --git a/sysdeps/unix/sysv/linux/Versions b/sysdeps/unix/sysv/linux/Versions
index 955d93d8af..2d38ed6247 100644
--- a/sysdeps/unix/sysv/linux/Versions
+++ b/sysdeps/unix/sysv/linux/Versions
@@ -117,6 +117,9 @@ libc {
# new syscalls
setaltroot; add_key; request_key; keyctl;
+
+ #errlist-compat 129
+ _sys_errlist; sys_errlist; _sys_nerr; sys_nerr;
}
GLIBC_PRIVATE {
# functions used in other libraries