summaryrefslogtreecommitdiff
path: root/sysdeps/gnu
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2004-10-20 10:47:20 +0000
committerJakub Jelinek <jakub@redhat.com>2004-10-20 10:47:20 +0000
commit75c95410b7b80289663bf2ba828e84d2c7890369 (patch)
tree83f4b406b0d4d0a9bcf68f6c56feb00fc59406fa /sysdeps/gnu
parente9e4030ae5f685547a9f7ead1362c7526aa88b80 (diff)
Updated to fedora-glibc-20041018T0940
Diffstat (limited to 'sysdeps/gnu')
-rw-r--r--sysdeps/gnu/Makefile8
-rw-r--r--sysdeps/gnu/errlist-compat.awk10
-rw-r--r--sysdeps/gnu/errlist.awk13
-rw-r--r--sysdeps/gnu/errlist.c42
4 files changed, 66 insertions, 7 deletions
diff --git a/sysdeps/gnu/Makefile b/sysdeps/gnu/Makefile
index dee0c67bcf..0fc33213ae 100644
--- a/sysdeps/gnu/Makefile
+++ b/sysdeps/gnu/Makefile
@@ -49,10 +49,14 @@ endif
# Make it unwritable so noone will edit it by mistake.
-chmod a-w $@T
mv -f $@T $@
-generated += errlist-compat.c
+$(objpfx)errlist-compat.h: $(objpfx)errlist-compat.c
+ sed -n '1p;/ERR_MAX/p' $< > $@T
+ -chmod a-w $@T
+ mv -f $@T $@
+generated += errlist-compat.c errlist-compat.h
# This will force the generation above to happy if need be.
-$(foreach o,.d $(object-suffixes),$(objpfx)errlist$o):$(objpfx)errlist-compat.c
+$(foreach o,.d $(object-suffixes),$(objpfx)errlist$o):$(objpfx)errlist-compat.h
endif
ifeq ($(subdir),login)
diff --git a/sysdeps/gnu/errlist-compat.awk b/sysdeps/gnu/errlist-compat.awk
index b243a96bc4..db827f3f70 100644
--- a/sysdeps/gnu/errlist-compat.awk
+++ b/sysdeps/gnu/errlist-compat.awk
@@ -1,5 +1,5 @@
# awk script to generate errlist-compat.c
-# Copyright (C) 2002 Free Software Foundation, Inc.
+# Copyright (C) 2002, 2004 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
@@ -59,7 +59,7 @@ END {
count = maxerr + 1;
- if (highest != count) {
+ if (highest < count) {
printf "*** errlist.c count %d vs Versions sys_errlist@%s count %d\n", \
count, highest_version, highest > "/dev/stderr";
exit 1;
@@ -79,6 +79,12 @@ END {
print "/* This file was generated by errlist-compat.awk; DO NOT EDIT! */\n";
print "#include <shlib-compat.h>\n";
+ if (highest > count) {
+ printf "*** errlist.c count %d inflated to %s count %d (old errno.h?)\n", \
+ count, highest_version, highest > "/dev/stderr";
+ printf "#define ERR_MAX %d\n\n", highest;
+ }
+
for (old in compat) {
new = compat[old];
n = vcount[old];
diff --git a/sysdeps/gnu/errlist.awk b/sysdeps/gnu/errlist.awk
index 952cb8073c..3f074ed482 100644
--- a/sysdeps/gnu/errlist.awk
+++ b/sysdeps/gnu/errlist.awk
@@ -1,4 +1,4 @@
-# Copyright (C) 1991-1999, 2002 Free Software Foundation, Inc.
+# Copyright (C) 1991-1999,2002,2004 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
@@ -47,7 +47,16 @@ BEGIN {
print "#endif";
print "";
- print "const char *const _sys_errlist_internal[] =";
+ print "#if !defined EMIT_ERR_MAX && !defined ERRLIST_NO_COMPAT";
+ print "# include <errlist-compat.h>";
+ print "#endif";
+ print "#ifdef ERR_MAX";
+ print "# define ERRLIST_SIZE ERR_MAX + 1";
+ print "#else"
+ print "# define ERRLIST_SIZE";
+ print "#endif";
+
+ print "const char *const _sys_errlist_internal[ERRLIST_SIZE] =";
print " {";
print " [0] = N_(\"Success\"),"
}
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