DragonFly commits List (threaded) for 2009-04
DragonFly BSD
DragonFly commits List (threaded) for 2009-04
[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]

DragonFly-2.3.0.611.g5d064 master bin/df df.c bin/sh var.c include search.h stdlib.h unistd.h lib/libc/gen getprogname.c lib/libc/include libc_private.h lib/libc/stdlib Makefile.inc a64l.3 a64l.c abort.3 abort.c abs.3 abs.c alloca.3 atexit.3 atexit.c atexit.h atof.3 atof.c atoi.3 atoi.c atol.3 atol.c bsearch.3 bsearch.c div.3 div.c exit.3 exit.c getenv.3 getenv.c getopt.3 getopt.c getopt_long.3 getopt_long.c getsubopt.3 getsubopt.c hcreate.3 hcreate.c heapsort.c insque.3 insque.c l64a.c labs.3 labs.c ldiv.3 ldiv.c lsearch.c malloc.c memory.3 merge.c putenv.c qsort.3 qsort.c qsort_r.c radixsort.3 radixsort.c rand.3 rand.c random.3 random.c realpath.3 realpath.c remque.c setenv.c strtol.3 strtoq.c strtoul.3 strtouq.c system.3 system.c tdelete.c tfind.c tsearch.3 tsearch.c twalk.c libexec/pppoed pppoed.c usr.bin/du du.c usr.bin/env env.c usr.bin/limits limits.c usr.sbin/pstat pstat.c


From: Peter Avalos <pavalos@xxxxxxxxxxxxxxxxxxxxxxx>
Date: Tue, 7 Apr 2009 00:12:20 -0700 (PDT)

commit 5d0641a49aa3545f73b6fdefb388923018512597
Author: Peter Avalos <pavalos@theshell.com>
Date:   Sun Jan 18 21:51:47 2009 -0500

    Sync libc/stdlib with FreeBSD (ignoring jemalloc, pts, and gdtoa):
    
    -Add a64l(), l64a(), and l64a_r() XSI extentions.  These functions
    convert between a 32-bit integer and a radix-64 ASCII string.
    
    -Replace some syscalls with libc version.
    
    -Remove advertising clause.
    
    -alloca() cannot check if the allocation is valid; mention the
    consequences.
    
    -Include some verbage about not calling exit() from functions registered
    by atexit().
    
    -Use pthread mutexes where possible instead of libc spinlocks.
    
    -Significantly reduce the memory leak as noted in the BUGS section of
    setenv(3) by tracking the size of the memory allocated instead of using
    strlen() on the current value.
    
    -Prefer setenv() instead of putenv().
    
    -Convert *env() calls to POSIX:
    	-unsetenv returns an int.
    	-putenv takes a char * instead of const char *.
    	-putenv no longer makes a copy of the input string.
    	-errno is set appropriately.  Exceptions involve bad environ
    	variable and internal initialization code.  These both set errno
    	to EFAULT.
    
    -Make getopt_long() more GNU compatible and sync up with OpenBSD's
    version.
    
    -POSIX clearly states that getsubopt() should be declared in <stdlib.h>
    not in <unistd.h>
    
    -Use size_t to avoid overflow when sorting arrays larger than 2 GB in
    heapsort() and qsort().
    
    -Add new implementations of insque() and remque() which conform to
    IEEE Std 1003.1-2001.
    
    -Add qsort_r() for functions that need to be reentrant.
    
    -Improve radixsort()'s preformance when sorting strings with common
    prefixes.
    
    -Use 'uint32_t' instead of 'long' when a 32-bit integer is intended in
    random(3).
    
    -Rearrange <stdlib.h> in a more logical order based on visibility.
    
    -Move getsubopt()'s prototype to <stdlib.h> (standards).
    
    -Make an internal _getprogname() that is used only inside
    libc. For libc, getprogname(3) is a weak symbol in case a
    function of the same name is defined in userland.

Summary of changes:
 bin/df/df.c                     |   16 +-
 bin/sh/var.c                    |   33 ++-
 include/search.h                |   58 ++--
 include/stdlib.h                |  219 +++++++++----
 include/unistd.h                |    3 -
 lib/libc/gen/getprogname.c      |   11 +-
 lib/libc/include/libc_private.h |   11 +
 lib/libc/stdlib/Makefile.inc    |   38 ++-
 lib/libc/stdlib/a64l.3          |  187 +++++++++++
 lib/libc/stdlib/a64l.c          |   34 ++
 lib/libc/stdlib/abort.3         |   13 +-
 lib/libc/stdlib/abort.c         |   37 +--
 lib/libc/stdlib/abs.3           |   12 +-
 lib/libc/stdlib/abs.c           |    5 +-
 lib/libc/stdlib/alloca.3        |   39 ++-
 lib/libc/stdlib/atexit.3        |   24 +-
 lib/libc/stdlib/atexit.c        |   51 ++--
 lib/libc/stdlib/atexit.h        |    7 +-
 lib/libc/stdlib/atof.3          |   35 ++-
 lib/libc/stdlib/atof.c          |    8 +-
 lib/libc/stdlib/atoi.3          |   27 +-
 lib/libc/stdlib/atoi.c          |    6 +-
 lib/libc/stdlib/atol.3          |    9 +-
 lib/libc/stdlib/atol.c          |    6 +-
 lib/libc/stdlib/bsearch.3       |    6 +-
 lib/libc/stdlib/bsearch.c       |    7 +-
 lib/libc/stdlib/div.3           |   16 +-
 lib/libc/stdlib/div.c           |    5 +-
 lib/libc/stdlib/exit.3          |   60 ++--
 lib/libc/stdlib/exit.c          |   16 +-
 lib/libc/stdlib/getenv.3        |  160 ++++++---
 lib/libc/stdlib/getenv.c        |  702 ++++++++++++++++++++++++++++++++++++---
 lib/libc/stdlib/getopt.3        |  107 ++++--
 lib/libc/stdlib/getopt.c        |   14 +-
 lib/libc/stdlib/getopt_long.3   |  508 +++++++++++++++++++---------
 lib/libc/stdlib/getopt_long.c   |  608 +++++++++++++++++++++-------------
 lib/libc/stdlib/getsubopt.3     |    8 +-
 lib/libc/stdlib/getsubopt.c     |   11 +-
 lib/libc/stdlib/hcreate.3       |   40 ++-
 lib/libc/stdlib/hcreate.c       |   10 +-
 lib/libc/stdlib/heapsort.c      |   10 +-
 lib/libc/stdlib/insque.3        |   61 ++++
 lib/libc/stdlib/insque.c        |   47 +++
 lib/libc/stdlib/l64a.c          |   40 +++
 lib/libc/stdlib/labs.3          |   10 +-
 lib/libc/stdlib/labs.c          |    5 +-
 lib/libc/stdlib/ldiv.3          |   20 +-
 lib/libc/stdlib/ldiv.c          |    5 +-
 lib/libc/stdlib/lsearch.c       |    2 +-
 lib/libc/stdlib/malloc.c        |    2 -
 lib/libc/stdlib/memory.3        |   16 +-
 lib/libc/stdlib/merge.c         |    7 +-
 lib/libc/stdlib/putenv.c        |   56 ---
 lib/libc/stdlib/qsort.3         |  112 +++++--
 lib/libc/stdlib/qsort.c         |   70 +++--
 lib/libc/stdlib/qsort_r.c       |    8 +
 lib/libc/stdlib/radixsort.3     |   14 +-
 lib/libc/stdlib/radixsort.c     |   28 +-
 lib/libc/stdlib/rand.3          |   12 +-
 lib/libc/stdlib/rand.c          |   19 +-
 lib/libc/stdlib/random.3        |   25 +-
 lib/libc/stdlib/random.c        |   70 +++--
 lib/libc/stdlib/realpath.3      |   16 +-
 lib/libc/stdlib/realpath.c      |    2 +-
 lib/libc/stdlib/remque.c        |   30 ++
 lib/libc/stdlib/setenv.c        |  114 -------
 lib/libc/stdlib/strtol.3        |   12 +-
 lib/libc/stdlib/strtoq.c        |    9 +-
 lib/libc/stdlib/strtoul.3       |   13 +-
 lib/libc/stdlib/strtouq.c       |    9 +-
 lib/libc/stdlib/system.3        |   10 +-
 lib/libc/stdlib/system.c        |   11 +-
 lib/libc/stdlib/tdelete.c       |   19 +-
 lib/libc/stdlib/tfind.c         |   11 +-
 lib/libc/stdlib/tsearch.3       |   40 ++-
 lib/libc/stdlib/tsearch.c       |    9 +-
 lib/libc/stdlib/twalk.c         |   15 +-
 libexec/pppoed/pppoed.c         |    8 +-
 usr.bin/du/du.c                 |    8 +-
 usr.bin/env/env.c               |    6 +-
 usr.bin/limits/limits.c         |    6 +-
 usr.sbin/pstat/pstat.c          |    4 +-
 82 files changed, 2790 insertions(+), 1368 deletions(-)
 create mode 100644 lib/libc/stdlib/a64l.3
 create mode 100644 lib/libc/stdlib/a64l.c
 create mode 100644 lib/libc/stdlib/insque.3
 create mode 100644 lib/libc/stdlib/insque.c
 create mode 100644 lib/libc/stdlib/l64a.c
 delete mode 100644 lib/libc/stdlib/putenv.c
 create mode 100644 lib/libc/stdlib/qsort_r.c
 create mode 100644 lib/libc/stdlib/remque.c
 delete mode 100644 lib/libc/stdlib/setenv.c

http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/5d0641a49aa3545f73b6fdefb388923018512597


-- 
DragonFly BSD source repository



[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]