Update.
authorUlrich Drepper <drepper@redhat.com>
Thu, 31 Aug 2000 07:34:24 +0000 (07:34 +0000)
committerUlrich Drepper <drepper@redhat.com>
Thu, 31 Aug 2000 07:34:24 +0000 (07:34 +0000)
2000-08-31  Ulrich Drepper  <drepper@redhat.com>

* malloc/malloc.c (ptmalloc_init): Optimize a bit by not calling
__secure_getenv.  Instead test __libc_enable_secure once.

* io/pwd.c (main): Provide a good example, use *_unlocked function.

ChangeLog
io/pwd.c
malloc/malloc.c

index c39a2f1..8b8f6cc 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2000-08-31  Ulrich Drepper  <drepper@redhat.com>
+
+       * malloc/malloc.c (ptmalloc_init): Optimize a bit by not calling
+       __secure_getenv.  Instead test __libc_enable_secure once.
+
+       * io/pwd.c (main): Provide a good example, use *_unlocked function.
+
 2000-08-30  Ulrich Drepper  <drepper@redhat.com>
 
        * iconv/gconv_conf.c (insert_module): Take extra parameter to decide
index c4d3a5f..006f1d3 100644 (file)
--- a/io/pwd.c
+++ b/io/pwd.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991, 1997, 1998 Free Software Foundation, Inc.
+/* Copyright (C) 1991, 1997, 1998, 2000 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
@@ -35,7 +35,7 @@ main (void)
     perror ("getcwd");
   else
     {
-      puts (dir);
+      fputs_unlocked (dir, stdout);
       free (dir);
     }
 
index 6db6629..46a4db2 100644 (file)
@@ -314,10 +314,6 @@ extern char* getenv();
 # endif
 #endif
 
-#ifndef _LIBC
-# define __secure_getenv(Str) getenv (Str)
-#endif
-
 /* Macros for handling mutexes and thread-specific data.  This is
    included early, because some thread-related header files (such as
    pthread.h) should be included before any others. */
@@ -1680,6 +1676,7 @@ ptmalloc_init __MALLOC_P((void))
   char* s;
 # endif
 #endif
+  int secure;
 
   if(__malloc_initialized >= 0) return;
   __malloc_initialized = 0;
@@ -1708,20 +1705,24 @@ ptmalloc_init __MALLOC_P((void))
   tsd_setspecific(arena_key, (Void_t *)&main_arena);
   thread_atfork(ptmalloc_lock_all, ptmalloc_unlock_all, ptmalloc_init_all);
 #if defined _LIBC || defined MALLOC_HOOKS
-  if((s = __secure_getenv("MALLOC_TRIM_THRESHOLD_")))
-    mALLOPt(M_TRIM_THRESHOLD, atoi(s));
-  if((s = __secure_getenv("MALLOC_TOP_PAD_")))
-    mALLOPt(M_TOP_PAD, atoi(s));
-  if((s = __secure_getenv("MALLOC_MMAP_THRESHOLD_")))
-    mALLOPt(M_MMAP_THRESHOLD, atoi(s));
-  if((s = __secure_getenv("MALLOC_MMAP_MAX_")))
-    mALLOPt(M_MMAP_MAX, atoi(s));
-  s = getenv("MALLOC_CHECK_");
 #ifndef NO_THREADS
   __malloc_hook = save_malloc_hook;
   __free_hook = save_free_hook;
 #endif
-  if(s && (! __libc_enable_secure || access ("/etc/suid-debug", F_OK) == 0)) {
+  secure = __libc_enable_secure;
+  if (! secure)
+    {
+      if((s = getenv("MALLOC_TRIM_THRESHOLD_")))
+       mALLOPt(M_TRIM_THRESHOLD, atoi(s));
+      if((s = getenv("MALLOC_TOP_PAD_")))
+       mALLOPt(M_TOP_PAD, atoi(s));
+      if((s = getenv("MALLOC_MMAP_THRESHOLD_")))
+       mALLOPt(M_MMAP_THRESHOLD, atoi(s));
+      if((s = getenv("MALLOC_MMAP_MAX_")))
+       mALLOPt(M_MMAP_MAX, atoi(s));
+    }
+  s = getenv("MALLOC_CHECK_");
+  if(s && (! secure || access ("/etc/suid-debug", F_OK) == 0)) {
     if(s[0]) mALLOPt(M_CHECK_ACTION, (int)(s[0] - '0'));
     __malloc_check_init();
   }