--- memory.3 2003-05-20 15:23:25.000000000 -0700 +++ memory.3.edit 2006-07-13 09:26:29.000000000 -0700 @@ -36,42 +36,101 @@ .Dt MEMORY 3 .Os .Sh NAME -.Nm malloc , -.Nm free , -.Nm realloc , -.Nm calloc , .Nm alloca , -.Nm mmap +.Nm calloc , +.Nm free , +.Nm malloc , +.Nm mmap , +.Nm realloc .Nd general memory allocation operations .Sh LIBRARY .Lb libc .Sh SYNOPSIS .In stdlib.h .Ft void * -.Fn malloc "size_t size" -.Ft void -.Fn free "void *ptr" +.Fo alloca +.Fa "size_t size" +.Fc .Ft void * -.Fn realloc "void *ptr" "size_t size" +.Fo calloc +.Fa "size_t nelem" +.Fa "size_t elsize" +.Fc +.Ft void +.Fo free +.Fa "void *ptr" +.Fc .Ft void * -.Fn calloc "size_t nelem" "size_t elsize" +.Fo malloc +.Fa "size_t size" +.Fc .Ft void * -.Fn alloca "size_t size" -.In sys/types.h +.Fo realloc +.Fa "void *ptr" +.Fa "size_t size" +.Fc .In sys/mman.h .Ft void * -.Fn mmap "void * addr" "size_t len" "int prot" "int flags" "int fd" "off_t offset" +.Fo mmap +.Fa "void * addr" +.Fa "size_t len" +.Fa "int prot" +.Fa "int flags" +.Fa "int fildes" +.Fa "off_t off" +.Fc .Sh DESCRIPTION These functions allocate and free memory for the calling process. They are described in the individual manual pages. +.Sh LEGACY SYNOPSIS +.Fd #include <sys/types.h> +.Fd #include <sys/mman.h> +.Pp +.Ft void * +.br +.Fo mmap +.Fa "void * addr" +.Fa "size_t len" +.Fa "int prot" +.Fa "int flags" +.Fa "int fildes" +.Fa "off_t off" +.Fc ; +.Pp +The include file +.In sys/types.h +is needed for this function. +.Sh COMPATIBILITY +.Fn mmap +now returns with +.Va errno +set to EINVAL in places that historically succeeded. +The rules have changed as follows: +.Bl -bullet +.It +The +.Fa flags +parameter must specify either MAP_PRIVATE or MAP_SHARED. +.It +The +.Fa size +parameter must not be 0. +.It +The +.Fa off +parameter must be a multiple of pagesize, +as returned by +.Fn sysconf . +.El .Sh SEE ALSO .Xr mmap 2 , .Xr alloca 3 , .Xr calloc 3 , .Xr free 3 , .Xr malloc 3 , -.Xr realloc 3 +.Xr realloc 3 , +.Xr compat 5 .Sh STANDARDS These functions, with the exception of .Fn alloca