[BACK]Return to xmalloc.c CVS log [TXT][DIR] Up to [local] / src / usr.bin / ssh

Diff for /src/usr.bin/ssh/xmalloc.c between version 1.8 and 1.8.2.5

version 1.8, 2000/09/07 20:27:55 version 1.8.2.5, 2001/09/27 00:15:43
Line 4 
Line 4 
  *                    All rights reserved   *                    All rights reserved
  * Versions of malloc and friends that check their results, and never return   * Versions of malloc and friends that check their results, and never return
  * failure (they call fatal if they encounter an error).   * failure (they call fatal if they encounter an error).
  *   *
  * As far as I am concerned, the code I have written for this software   * As far as I am concerned, the code I have written for this software
  * can be used freely for any purpose.  Any derived versions of this   * can be used freely for any purpose.  Any derived versions of this
  * software must be clearly marked as such, and if the derived work is   * software must be clearly marked as such, and if the derived work is
Line 15 
Line 15 
 #include "includes.h"  #include "includes.h"
 RCSID("$OpenBSD$");  RCSID("$OpenBSD$");
   
 #include "ssh.h"  #include "xmalloc.h"
   #include "log.h"
   
 void *  void *
 xmalloc(size_t size)  xmalloc(size_t size)
 {  {
         void *ptr = malloc(size);          void *ptr;
   
           if (size == 0)
                   fatal("xmalloc: zero size");
           ptr = malloc(size);
         if (ptr == NULL)          if (ptr == NULL)
                 fatal("xmalloc: out of memory (allocating %d bytes)", (int) size);                  fatal("xmalloc: out of memory (allocating %lu bytes)", (u_long) size);
         return ptr;          return ptr;
 }  }
   
Line 31 
Line 36 
 {  {
         void *new_ptr;          void *new_ptr;
   
           if (new_size == 0)
                   fatal("xrealloc: zero size");
         if (ptr == NULL)          if (ptr == NULL)
                 fatal("xrealloc: NULL pointer given as argument");                  new_ptr = malloc(new_size);
         new_ptr = realloc(ptr, new_size);          else
                   new_ptr = realloc(ptr, new_size);
         if (new_ptr == NULL)          if (new_ptr == NULL)
                 fatal("xrealloc: out of memory (new_size %d bytes)", (int) new_size);                  fatal("xrealloc: out of memory (new_size %lu bytes)", (u_long) new_size);
         return new_ptr;          return new_ptr;
 }  }
   
Line 50 
Line 58 
 char *  char *
 xstrdup(const char *str)  xstrdup(const char *str)
 {  {
         int len = strlen(str) + 1;          size_t len;
           char *cp;
   
         char *cp = xmalloc(len);          len = strlen(str) + 1;
           cp = xmalloc(len);
         strlcpy(cp, str, len);          strlcpy(cp, str, len);
         return cp;          return cp;
 }  }

Legend:
Removed from v.1.8  
changed lines
  Added in v.1.8.2.5