diff options
Diffstat (limited to 'man/alloc.3')
-rw-r--r-- | man/alloc.3 | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/man/alloc.3 b/man/alloc.3 new file mode 100644 index 0000000..5bd40d2 --- /dev/null +++ b/man/alloc.3 @@ -0,0 +1,68 @@ +.TH qlibs: alloc 3 +.SH NAME +alloc \- allocate memory +.SH SYNTAX +.B #include \(dqalloc.h\(dq + +char *\fBalloc\fP(\fInew\fR); + +void \fBalloc_free\fP(\fIx\fR); + +void \fBalloc_re\fP(&\fIx\fR,\fIold\fR,\fInew\fR); + +char *\fIx\fR; +.br +unsigned int \fIold\fR; +.br +unsigned int \fInew\fR; +.SH DESCRIPTION +.B alloc +allocates enough space from the heap for +.I new +bytes of data, +adequately aligned for any data type. +.I new +may be 0. +.B alloc +returns a pointer to the space. +If space is not available, +.B alloc +returns 0, +setting +.B errno +appropriately. + +.B alloc_free +returns space to the heap. + +.B alloc_re +expands the space allocated to +.I x +from +.I old +bytes to +.I new +bytes. +It allocates new space, +copies +.I old +bytes from the old space to the new space, +returns the old space to the heap, +and changes +.I x +to point to the new space. +It then returns 1. +If space is not available, +.B alloc_re +returns 0, +leaving the old space alone. +.SH "CVE-2005-1513" +This version of +.B alloc +respects +.I limits.h +to avoid memory resource exhaustion. +.SH "SEE ALSO" +sbrk(2), +malloc(3), +error(3) |