source: clfs-sysroot/patches/glibc-2.5-branch_update-1.patch@ 5df891f

Last change on this file since 5df891f was 5ed871a, checked in by Joe Ciccone <jciccone@…>, 18 years ago

Added the Glibc branch_update patch.

  • Property mode set to 100644
File size: 18.0 KB
  • ChangeLog

    Submitted By: Robert Connolly <robert at linuxfromscratch dot org> (ashes)
    Date: 2006-12-03
    Initial Package Version: 2.5
    Upstream Status: From Upstream
    Origin: Robert Connolly (Concept)
    	cvs -z 9 -d :pserver:anoncvs@sources.redhat.com:/cvs/glibc \
    		co -rglibc-2_5-branch libc
    Description: This is a branch update for Glibc-2.5, and should be
    rechecked periodically. See the "Changelog" and "localedata/ChangeLog"
    for specific details.
    
    diff -Naur glibc-2.5/ChangeLog libc/ChangeLog
    old new  
     12006-10-06  Andreas Jaeger  <aj@suse.de>
     2
     3        * include/features.h (__GLIBC_MINOR__): It's glibc 2.5 now.
     4
     52006-10-06  Ulrich Drepper  <drepper@redhat.com>
     6
     7        * po/pl.po: Update from translation team.
     8
     9        * nscd/nscd.c (main): Fix typo in message.
     10        Patch by Jakub Bogsz <qboosh@pld-linux.org>.
     11
     122006-10-02  Jakub Jelinek  <jakub@redhat.com>
     13
     14        [BZ #3291]
     15        * sysdeps/unix/sysv/linux/sparc/sparc64/pause.c: Include
     16        errno.h, signal.h, unistd.h and sysdep-cancel.h.
     17        (__sigprocmask): Define.
     18
     192006-10-02  Ulrich Drepper  <drepper@redhat.com>
     20
     21        * elf/rtld.c (dl_main): Don't use prelinking if LD_DYNAMIC_WEAK is
     22        used.
     23
     242006-10-02  Jakub Jelinek  <jakub@redhat.com>
     25
     26        * nscd/mem.c (mempool_alloc): Round array size to 16 bytes
     27        in oldtotal and newtotal calculation.
     28        * nscd/nscd-client.h (struct mapped_database): Add datasize
     29        field.
     30        * nscd/nscd_helper.c (get_mapping): Initialize datasize field.
     31        (__nscd_get_map_ref): Get a new mapping even if mapping's data_size
     32        increased.
     33        (__nscd_cache_search): Add checks to make sure we never reference
     34        data beyond the current mapping.
     35
     362006-10-02  Dmitry V. Levin  <ldv@altlinux.org>
     37
     38        * sysdeps/posix/getaddrinfo.c (match_prefix): Make mask and val
     39        variables const to avoid compiler warnings.
     40
     41        * io/fts.c (fts_close): Remove redundant checks.
     42        (fts_build): Likewise.
     43        (fts_palloc): Likewise.
     44
     45        * manual/message.texi (Advanced gettext functions,
     46        Using gettextized software): Fix typos.
     47
     482006-09-30  Ulrich Drepper  <drepper@redhat.com>
     49
     50        * posix/glob.c (glob_in_dir): Add some comments and asserts to
     51        explain why there are no leaks.
     52
    1532006-09-29  Ulrich Drepper  <drepper@redhat.com>
    254
     55        * libio/wmemstream.c: Include <wchar.h>.
     56        * libio/bug-wmemstream1.c: Likewise.
     57        * libio/tst-wmemstream1.c: Likewise.
     58        * libio/tst-wmemstream2.c: Likewise.
     59
    360        * version.h (RELEASE): Bump to 2.5.
    461        * README: Regenerated.
    562
  • elf/rtld.c

    diff -Naur glibc-2.5/elf/rtld.c libc/elf/rtld.c
    old new  
    20872087    }
    20882088
    20892089  if (main_map->l_info[ADDRIDX (DT_GNU_LIBLIST)]
    2090       && ! __builtin_expect (GLRO(dl_profile) != NULL, 0))
     2090      && ! __builtin_expect (GLRO(dl_profile) != NULL, 0)
     2091      && ! __builtin_expect (GLRO(dl_dynamic_weak), 0))
    20912092    {
    20922093      ElfW(Lib) *liblist, *liblistend;
    20932094      struct link_map **r_list, **r_listend, *l;
  • include/features.h

    diff -Naur glibc-2.5/include/features.h libc/include/features.h
    old new  
    304304/* Major and minor version number of the GNU C library package.  Use
    305305   these macros to test for features in specific releases.  */
    306306#define __GLIBC__       2
    307 #define __GLIBC_MINOR__ 4
     307#define __GLIBC_MINOR__ 5
    308308
    309309#define __GLIBC_PREREQ(maj, min) \
    310310        ((__GLIBC__ << 16) + __GLIBC_MINOR__ >= ((maj) << 16) + (min))
  • io/fts.c

    diff -Naur glibc-2.5/io/fts.c libc/io/fts.c
    old new  
    251251        /* Free up child linked list, sort array, path buffer. */
    252252        if (sp->fts_child)
    253253                fts_lfree(sp->fts_child);
    254         if (sp->fts_array)
    255                 free(sp->fts_array);
     254        free(sp->fts_array);
    256255        free(sp->fts_path);
    257256
    258257        /* Return to original directory, save errno if necessary. */
     
    705704                                 * structures already allocated.
    706705                                 */
    707706mem1:                           saved_errno = errno;
    708                                 if (p)
    709                                         free(p);
     707                                free(p);
    710708                                fts_lfree(head);
    711709                                (void)__closedir(dirp);
    712710                                cur->fts_info = FTS_ERR;
     
    10431041         * We limit fts_pathlen to USHRT_MAX to be safe in both cases.
    10441042         */
    10451043        if (sp->fts_pathlen < 0 || sp->fts_pathlen >= USHRT_MAX) {
    1046                 if (sp->fts_path) {
    1047                         free(sp->fts_path);
    1048                         sp->fts_path = NULL;
    1049                 }
     1044                free(sp->fts_path);
    10501045                sp->fts_path = NULL;
    10511046                __set_errno (ENAMETOOLONG);
    10521047                return (1);
  • libio/bug-wmemstream1.c

    diff -Naur glibc-2.5/libio/bug-wmemstream1.c libc/libio/bug-wmemstream1.c
    old new  
    11#include <stdio.h>
    22#include <string.h>
     3#include <wchar.h>
    34
    45
    56static int
  • libio/tst-wmemstream1.c

    diff -Naur glibc-2.5/libio/tst-wmemstream1.c libc/libio/tst-wmemstream1.c
    old new  
     1#include <wchar.h>
     2
    13#define CHAR_T wchar_t
    24#define W(o) L##o
    35#define OPEN_MEMSTREAM open_wmemstream
  • libio/tst-wmemstream2.c

    diff -Naur glibc-2.5/libio/tst-wmemstream2.c libc/libio/tst-wmemstream2.c
    old new  
     1#include <wchar.h>
     2
    13#define CHAR_T wchar_t
    24#define W(o) L##o
    35#define OPEN_MEMSTREAM open_wmemstream
  • libio/wmemstream.c

    diff -Naur glibc-2.5/libio/wmemstream.c libc/libio/wmemstream.c
    old new  
    2020#include "strfile.h"
    2121#include <stdio.h>
    2222#include <stdlib.h>
     23#include <wchar.h>
    2324
    2425
    2526struct _IO_FILE_wmemstream
  • localedata/ChangeLog

    diff -Naur glibc-2.5/localedata/ChangeLog libc/localedata/ChangeLog
    old new  
     12006-10-05  Dmitry V. Levin  <ldv@altlinux.org>
     2
     3        * locales/tt_RU: Fix territory, title and descriptive comment.
     4
     52006-10-05  Ulrich Drepper  <drepper@redhat.com>
     6
     7        * locales/pa_IN (abday): Fix spelling of Sunday.
     8        Patch by Mayank Jain <majain@redhat.com>.
     9
     102006-10-01  Ulrich Drepper  <drepper@redhat.com>
     11
     12        * locales/en_GB: Use more complete en_US data in LC_NAME.
     13
    1142006-09-29  Ulrich Drepper  <drepper@redhat.com>
    215
    316        [BZ #39]
  • localedata/locales/en_GB

    diff -Naur glibc-2.5/localedata/locales/en_GB libc/localedata/locales/en_GB
    old new  
    146146END LC_MEASUREMENT
    147147
    148148LC_NAME
    149 name_fmt    "<U0025><U0064><U0025><U0074><U0025><U0067><U0025><U0074>/
    150 <U0025><U006D><U0025><U0074><U0025><U0066>"
     149copy "en_US"
    151150END LC_NAME
    152151
    153152LC_ADDRESS
  • localedata/locales/pa_IN

    diff -Naur glibc-2.5/localedata/locales/pa_IN libc/localedata/locales/pa_IN
    old new  
    8080            "<U0A2C><U0A41><U0A71><U0A27><U0020>";/
    8181            "<U0A35><U0A40><U0A30><U0020>";/
    8282            "<U0A36><U0A41><U0A71><U0A15><U0A30><U0020>";/
    83             "<U0A36><U0A28><U0A40><U0A1A><U0A30><U0020>"
     83            "<U0A36><U0A28><U0A3F><U0A71><U0A1A><U0A30><U0020>"
    8484%
    8585% Full weekday names (%A)
    8686day       "<U0A10><U0A24><U0A35><U0A3E><U0A30><U0020>";/
  • localedata/locales/tt_RU

    diff -Naur glibc-2.5/localedata/locales/tt_RU libc/localedata/locales/tt_RU
    old new  
    11comment_char %
    22escape_char  /
    33%
    4 % Tatar Language Locale for Tatarstan
     4% Tatar Language Locale for Russia
    55% Source:
    66% Contact: Pablo Saratxaga, Rinat Norkin
    77% Email: <pablo@mandrakesoft.com>, <rinat@taif.ru>
     
    2424% replace cyrillic alphabet
    2525
    2626LC_IDENTIFICATION
    27 title "Tatar language locale for Tatarstan"
     27title "Tatar language locale for Russia"
    2828source "Rinat Norkin"
    2929address ""
    3030contact "Pablo Saratxaga, Rinat Norkin"
     
    3232tel ""
    3333fax ""
    3434language "Tatar"
    35 territory "Tatarstan"
     35territory "Russia"
    3636revision "0.4"
    3737date "2001-01-28"
    3838
  • manual/message.texi

    diff -Naur glibc-2.5/manual/message.texi libc/manual/message.texi
    old new  
    11891189with every language this is the only viable solution except for
    11901190hardcoding the information in the code (which still would require the
    11911191possibility of extensions to not prevent the use of new languages).  The
    1192 details are explained in the GNU @code{gettext} manual.  Here only a a
     1192details are explained in the GNU @code{gettext} manual.  Here only a
    11931193bit of information is provided.
    11941194
    11951195The information about the plural form selection has to be stored in the
     
    15901590them.
    15911591
    15921592The POSIX locale model uses the environment variables @code{LC_COLLATE},
    1593 @code{LC_CTYPE}, @code{LC_MESSAGES}, @code{LC_MONETARY}, @code{NUMERIC},
     1593@code{LC_CTYPE}, @code{LC_MESSAGES}, @code{LC_MONETARY}, @code{LC_NUMERIC},
    15941594and @code{LC_TIME} to select the locale which is to be used.  This way
    15951595the user can influence lots of functions.  As we mentioned above the
    15961596@code{gettext} functions also take advantage of this.
  • manual/stdio.texi

    diff -Naur glibc-2.5/manual/stdio.texi libc/manual/stdio.texi
    old new  
    23932393allocates a string (as with @code{malloc}; @pxref{Unconstrained
    23942394Allocation}) to hold the output, instead of putting the output in a
    23952395buffer you allocate in advance.  The @var{ptr} argument should be the
    2396 address of a @code{char *} object, and @code{asprintf} stores a pointer
    2397 to the newly allocated string at that location.
     2396address of a @code{char *} object, and a successful call to
     2397@code{asprintf} stores a pointer to the newly allocated string at that
     2398location.
    23982399
    23992400The return value is the number of characters allocated for the buffer, or
    24002401less than zero if an error occurred. Usually this means that the buffer
  • nscd/mem.c

    diff -Naur glibc-2.5/nscd/mem.c libc/nscd/mem.c
    old new  
    11/* Cache memory handling.
    2    Copyright (C) 2004, 2005 Free Software Foundation, Inc.
     2   Copyright (C) 2004, 2005, 2006 Free Software Foundation, Inc.
    33   This file is part of the GNU C Library.
    44   Contributed by Ulrich Drepper <drepper@redhat.com>, 2004.
    55
     
    480480        {
    481481          /* Try to resize the database.  Grow size of 1/8th.  */
    482482          size_t oldtotal = (sizeof (struct database_pers_head)
    483                              + db->head->module * sizeof (ref_t)
     483                             + roundup (db->head->module * sizeof (ref_t), ALIGN)
    484484                             + db->head->data_size);
    485485          size_t new_data_size = (db->head->data_size
    486486                                  + MAX (2 * len, db->head->data_size / 8));
    487487          size_t newtotal = (sizeof (struct database_pers_head)
    488                              + db->head->module * sizeof (ref_t)
     488                             + roundup (db->head->module * sizeof (ref_t), ALIGN)
    489489                             + new_data_size);
    490490          if (newtotal > db->max_db_size)
    491491            {
  • nscd/nscd.c

    diff -Naur glibc-2.5/nscd/nscd.c libc/nscd/nscd.c
    old new  
    237237
    238238      if (chdir ("/") != 0)
    239239        error (EXIT_FAILURE, errno,
    240                _("cannot change current working cirectory to \"/\""));
     240               _("cannot change current working directory to \"/\""));
    241241
    242242      openlog ("nscd", LOG_CONS | LOG_ODELAY, LOG_DAEMON);
    243243
  • nscd/nscd-client.h

    diff -Naur glibc-2.5/nscd/nscd-client.h libc/nscd/nscd-client.h
    old new  
    258258  const char *data;
    259259  size_t mapsize;
    260260  int counter;          /* > 0 indicates it is usable.  */
     261  size_t datasize;
    261262};
    262263#define NO_MAPPING ((struct mapped_database *) -1l)
    263264
  • nscd/nscd_helper.c

    diff -Naur glibc-2.5/nscd/nscd_helper.c libc/nscd/nscd_helper.c
    old new  
    290290      newp->data = ((char *) mapping + head.header_size
    291291                    + roundup (head.module * sizeof (ref_t), ALIGN));
    292292      newp->mapsize = size;
     293      newp->datasize = head.data_size;
    293294      /* Set counter to 1 to show it is usable.  */
    294295      newp->counter = 1;
    295296
     
    340341      /* If not mapped or timestamp not updated, request new map.  */
    341342      if (cur == NULL
    342343          || (cur->head->nscd_certainly_running == 0
    343               && cur->head->timestamp + MAPPING_TIMEOUT < time (NULL)))
     344              && cur->head->timestamp + MAPPING_TIMEOUT < time (NULL))
     345          || cur->head->data_size > cur->datasize)
    344346        cur = get_mapping (type, name,
    345347                           (struct mapped_database **) &mapptr->mapped);
    346348
     
    365367                     const struct mapped_database *mapped)
    366368{
    367369  unsigned long int hash = __nis_hash (key, keylen) % mapped->head->module;
     370  size_t datasize = mapped->datasize;
    368371
    369372  ref_t work = mapped->head->array[hash];
    370   while (work != ENDREF)
     373  while (work != ENDREF && work + sizeof (struct hashentry) <= datasize)
    371374    {
    372375      struct hashentry *here = (struct hashentry *) (mapped->data + work);
    373376
    374       if (type == here->type && keylen == here->len
    375           && memcmp (key, mapped->data + here->key, keylen) == 0)
     377      if (type == here->type
     378          && keylen == here->len
     379          && here->key + here->len <= datasize
     380          && memcmp (key, mapped->data + here->key, keylen) == 0
     381          && here->packet + sizeof (struct datahead) <= datasize)
    376382        {
    377383          /* We found the entry.  Increment the appropriate counter.  */
    378384          const struct datahead *dh
     
    380386
    381387          /* See whether we must ignore the entry or whether something
    382388             is wrong because garbage collection is in progress.  */
    383           if (dh->usable && ((char *) dh + dh->allocsize
    384                              <= (char *) mapped->head + mapped->mapsize))
     389          if (dh->usable && here->packet + dh->allocsize <= datasize)
    385390            return dh;
    386391        }
    387392
  • posix/glob.c

    diff -Naur glibc-2.5/posix/glob.c libc/posix/glob.c
    old new  
    12871287              for (size_t i = 0; i < cur; ++i)
    12881288                free (names->name[i]);
    12891289              names = names->next;
     1290              /* NB: we will not leak memory here if we exit without
     1291                 freeing the current block assigned to OLD.  At least
     1292                 the very first block is always allocated on the stack
     1293                 and this is the block assigned to OLD here.  */
    12901294              if (names == NULL)
    1291                 break;
     1295                {
     1296                  assert (old == &init_names);
     1297                  break;
     1298                }
    12921299              cur = names->count;
    12931300              if (old == names_alloca)
    12941301                names_alloca = names;
     
    13061313                new_gl_pathv[pglob->gl_offs + pglob->gl_pathc++]
    13071314                  = names->name[i];
    13081315              names = names->next;
     1316              /* NB: we will not leak memory here if we exit without
     1317                 freeing the current block assigned to OLD.  At least
     1318                 the very first block is always allocated on the stack
     1319                 and this is the block assigned to OLD here.  */
    13091320              if (names == NULL)
    1310                 break;
     1321                {
     1322                  assert (old == &init_names);
     1323                  break;
     1324                }
    13111325              cur = names->count;
    13121326              if (old == names_alloca)
    13131327                names_alloca = names;
  • README

    diff -Naur glibc-2.5/README libc/README
    old new  
    1010implement the operating system behavior seen by user applications.
    1111In GNU/Hurd systems, it works with a microkernel and Hurd servers.
    1212
    13 Version 2.4 is the first release after a long period of development, and
    14 introduces changes to the API and a new ABI for all configurations.  It
    15 has been tested and deployed in new production systems, but should still
    16 be considered somewhat experimental.  The stable 2.3 release series
    17 continues to be maintained, and implements a widely-deployed ABI.
    18 Version 2.3.6 is available, and we will release 2.3.7 with more bug fixes.
    19 
    2013The GNU C Library implements much of the POSIX.1 functionality in the
    2114GNU/Hurd system, using configurations i[34567]86-*-gnu.
    2215
  • README.template

    diff -Naur glibc-2.5/README.template libc/README.template
    old new  
    1010implement the operating system behavior seen by user applications.
    1111In GNU/Hurd systems, it works with a microkernel and Hurd servers.
    1212
    13 Version 2.4 is the first release after a long period of development, and
    14 introduces changes to the API and a new ABI for all configurations.  It
    15 has been tested and deployed in new production systems, but should still
    16 be considered somewhat experimental.  The stable 2.3 release series
    17 continues to be maintained, and implements a widely-deployed ABI.
    18 Version 2.3.6 is available, and we will release 2.3.7 with more bug fixes.
    19 
    2013The GNU C Library implements much of the POSIX.1 functionality in the
    2114GNU/Hurd system, using configurations i[34567]86-*-gnu.
    2215
  • sysdeps/posix/getaddrinfo.c

    diff -Naur glibc-2.5/sysdeps/posix/getaddrinfo.c libc/sysdeps/posix/getaddrinfo.c
    old new  
    12911291  for (idx = 0; ; ++idx)
    12921292    {
    12931293      unsigned int bits = list[idx].bits;
    1294       uint8_t *mask = list[idx].prefix.s6_addr;
    1295       uint8_t *val = in6->sin6_addr.s6_addr;
     1294      const uint8_t *mask = list[idx].prefix.s6_addr;
     1295      const uint8_t *val = in6->sin6_addr.s6_addr;
    12961296
    12971297      while (bits >= 8)
    12981298        {
  • sysdeps/unix/sysv/linux/sparc/sparc64/pause.c

    diff -Naur glibc-2.5/sysdeps/unix/sysv/linux/sparc/sparc64/pause.c libc/sysdeps/unix/sysv/linux/sparc/sparc64/pause.c
    old new  
     1#include <errno.h>
     2#include <signal.h>
     3#include <unistd.h>
     4#include <sysdep-cancel.h>
     5
     6#define __sigprocmask(how, set, oset) \
     7  INLINE_SYSCALL (rt_sigprocmask, 4, how, set, oset, _NSIG / 8)
     8
    19#include <sysdeps/posix/pause.c>
Note: See TracBrowser for help on using the repository browser.