MAN PAGES FOR QMAIL 1.03



NAME

     alloc - allocate memory


SYNTAX

     #include <alloc.h>

     char *alloc(new);

     void alloc_free(x);

     void alloc_re(&x,old,new);

     char *x;
     unsigned int old;
     unsigned int new;


DESCRIPTION

     alloc allocates enough space from the heap for new bytes  of
     data,  adequately  aligned for any data type.  new may be 0.
     alloc returns a pointer to  the  space.   If  space  is  not
     available, alloc returns 0, setting errno appropriately.

     alloc_free returns space to the heap.

     alloc_re expands the space allocated to x from old bytes  to
     new  bytes.   It  allocates new space, copies old bytes from
     the old space to the new space, returns the old space to the
     heap,  and  changes  x  to  point to the new space.  It then
     returns 1.  If space is not available, alloc_re  returns  0,
     leaving the old space alone.


SEE ALSO

     sbrk(2), malloc(3), error(3)