]> sourceware.org Git - glibc.git/commitdiff
Update.
authorUlrich Drepper <drepper@redhat.com>
Sat, 22 Nov 2003 07:29:27 +0000 (07:29 +0000)
committerUlrich Drepper <drepper@redhat.com>
Sat, 22 Nov 2003 07:29:27 +0000 (07:29 +0000)
* locale/programs/charmap.c (charmap_read): If encoding is found
not ASCII compatible, set enc_not_ascii_compatible.
* locale/programs/charmap.h: Declare enc_not_ascii_compatible.
* locale/programs/ld-ctype.c (ctype_startup): If
enc_not_ascii_compatible is set, initialize to_nonascii to 1.

2003-11-22  Jakub Jelinek  <jakub@redhat.com>

* elf/rtld.c (process_envvars): Only honor LD_USE_LOAD_BIAS
if !__libc_enable_secure.

* sysdeps/generic/ldsodefs.h (_dl_use_load_bias): New _rtld_global
field.
* elf/rtld.c (_rtld_global): Initialize _dl_use_load_bias field.
(dl_main): Set GL(dl_use_load_bias) default.
(process_envvars): Set GL(dl_use_load_bias) from LD_USE_LOAD_BIAS.
Add EXTRA_LD_ENVVARS_13.
* elf/dl-support.c (_dl_use_load_bias): New variable.
* elf/dl-load.c (_dl_map_object_from_fd): Mask c->mapstart
with GL(dl_use_load_bias).
* sysdeps/generic/unsecvars.h (UNSECURE_ENVVARS): Add
LD_USE_LOAD_BIAS.
* sysdeps/unix/sysv/linux/dl-librecon.h (EXTRA_LD_ENVVARS): Remove.
(EXTRA_LD_ENVVARS_LINUX): Renamed to...
(EXTRA_LD_ENVVARS_13): ... this.  Remove case at the beginning.
* sysdeps/unix/sysv/linux/i386/dl-librecon.h (EXTRA_LD_ENVVARS):
Don't undefine first.  Remove EXTRA_LD_ENVVARS_LINUX.

2003-11-21  Ulrich Drepper  <drepper@redhat.com>

ChangeLog
locale/programs/charmap.c
locale/programs/charmap.h
locale/programs/ld-ctype.c

index 6fee041d5db367075aefb59c531894d43c2784a7..7a2bc976b0ff96882d5bf18f9a61fa796f38fcac 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,33 @@
+2003-11-21  Ulrich Drepper  <drepper@redhat.com>
+
+       * locale/programs/charmap.c (charmap_read): If encoding is found
+       not ASCII compatible, set enc_not_ascii_compatible.
+       * locale/programs/charmap.h: Declare enc_not_ascii_compatible.
+       * locale/programs/ld-ctype.c (ctype_startup): If
+       enc_not_ascii_compatible is set, initialize to_nonascii to 1.
+
+2003-11-22  Jakub Jelinek  <jakub@redhat.com>
+
+       * elf/rtld.c (process_envvars): Only honor LD_USE_LOAD_BIAS
+       if !__libc_enable_secure.
+
+       * sysdeps/generic/ldsodefs.h (_dl_use_load_bias): New _rtld_global
+       field.
+       * elf/rtld.c (_rtld_global): Initialize _dl_use_load_bias field.
+       (dl_main): Set GL(dl_use_load_bias) default.
+       (process_envvars): Set GL(dl_use_load_bias) from LD_USE_LOAD_BIAS.
+       Add EXTRA_LD_ENVVARS_13.
+       * elf/dl-support.c (_dl_use_load_bias): New variable.
+       * elf/dl-load.c (_dl_map_object_from_fd): Mask c->mapstart
+       with GL(dl_use_load_bias).
+       * sysdeps/generic/unsecvars.h (UNSECURE_ENVVARS): Add
+       LD_USE_LOAD_BIAS.
+       * sysdeps/unix/sysv/linux/dl-librecon.h (EXTRA_LD_ENVVARS): Remove.
+       (EXTRA_LD_ENVVARS_LINUX): Renamed to...
+       (EXTRA_LD_ENVVARS_13): ... this.  Remove case at the beginning.
+       * sysdeps/unix/sysv/linux/i386/dl-librecon.h (EXTRA_LD_ENVVARS):
+       Don't undefine first.  Remove EXTRA_LD_ENVVARS_LINUX.
+
 2003-11-21  Ulrich Drepper  <drepper@redhat.com>
 
        * posix/regcomp.c (duplicate_node): Remove unnecessary local variable.
index 8612d996882fcc5dd91e682c5119e540ffa65cfe..8c9e4e9abb6a34c62aa3f6d2ebcbecf6309ee418 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1996,1998,1999,2000,2001,2002 Free Software Foundation, Inc.
+/* Copyright (C) 1996, 1998-2002, 2003 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@gnu.org>, 1996.
 
@@ -25,7 +25,6 @@
 #include <errno.h>
 #include <libintl.h>
 #include <limits.h>
-#include <obstack.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
@@ -35,7 +34,6 @@
 #include "linereader.h"
 #include "charmap.h"
 #include "charmap-dir.h"
-#include "repertoire.h"
 
 #include <assert.h>
 
@@ -55,6 +53,9 @@ static void charmap_new_char (struct linereader *lr, struct charmap_t *cm,
                              const char *to, int decimal_ellipsis, int step);
 
 
+bool enc_not_ascii_compatible;
+
+
 #ifdef NEED_NULL_POINTER
 static const char *null_pointer;
 #endif
@@ -252,9 +253,12 @@ default character map file `%s' not found"), DEFAULT_CHARMAP));
       while (*p++ != '\0');
 
       if (failed)
-       WITH_CUR_LOCALE (fprintf (stderr, _("\
+       {
+         WITH_CUR_LOCALE (fprintf (stderr, _("\
 character map `%s' is not ASCII compatible, locale not ISO C compliant\n"),
-                                 result->code_set_name));
+                                   result->code_set_name));
+         enc_not_ascii_compatible = true;
+       }
     }
 
   return result;
index f4ca3abe6c684a5a57af886cb57a00d78d07b1be..a4a6d3833ba7182ebd2461a63f649cfca4a708f3 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1996, 1997, 1998, 1999, 2001 Free Software Foundation, Inc.
+/* Copyright (C) 1996-1999, 2001, 2003 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@gnu.org>, 1996.
 
@@ -21,6 +21,7 @@
 #define _CHARMAP_H
 
 #include <obstack.h>
+#include <stdbool.h>
 
 #include "repertoire.h"
 #include "simple-hash.h"
@@ -64,6 +65,10 @@ struct charseq
 };
 
 
+/* True if the encoding is not ASCII compatible.  */
+extern bool enc_not_ascii_compatible;
+
+
 /* Prototypes for charmap handling functions.  */
 extern struct charmap_t *charmap_read (const char *filename, int verbose,
                                       int be_quiet, int use_default);
index 499868237b4b094ca6d99e8dde867bad00e44095..ca2ca1eaca94c553e27b85b5f808d8ddce83230c 100644 (file)
@@ -340,6 +340,9 @@ ctype_startup (struct linereader *lr, struct localedef_t *locale,
              ctype->map256_collection[1][cnt] = cnt;
            }
 
+         if (enc_not_ascii_compatible)
+           ctype->to_nonascii = 1;
+
          obstack_init (&ctype->mempool);
        }
       else
This page took 0.066932 seconds and 5 git commands to generate.