autresizeblock(3) resizes a memory block

SYNOPSYS

#include "aut101.h"
  char *autresize( Source, OldSize, NewSize )
   char         *Source;
   unsigned int OldSize;
   unsigned int NewSize;

PARAMETERS

Source
Pointer to the memory block to be resized.
OldSize
Old size of the memory block.
NewSize
New size of the memory block.

DESCRIPTION

autresizeblock resizes a memory block from OldSize to NewSize. if NewSize is greater than OldSize then the new bytes are set to zero.

RETURN VALUE

autresizeblock returns the pointer to the resized block.

ERRORS

"autresize: resize error, can't continue !"
System break can't be moved anymore, no more memory can be retrieved from the system.

EXAMPLE

#include "aut101.h"
     char *concatstring( t, s )
        char * t;
        char * s;
     {
        t = (char *)autresizeblock( t, strlen(t)+1, strlen(t)+strlen(s)+1);
        strcat(t, s);
        return t;
     }