- NetBSD Manual Pages
ALLOCA(3) NetBSD Library Functions Manual ALLOCA(3)
Powered by man-cgi (2021-06-01).
Maintained for NetBSD
by Kimmo Suominen.
Based on man-cgi by Panagiotis Christias.
alloca -- memory allocator
Standard C Library (libc, -lc)
The alloca() function allocates size bytes of space in the stack frame of
the caller. This temporary space is automatically freed on return.
The alloca() function returns a pointer to the beginning of the allocated
space. If the allocation failed, a NULL pointer is returned.
brk(2), calloc(3), getpagesize(3), malloc(3), realloc(3)
Few limitations can be mentioned:
· The alloca() function is machine dependent; its use is discouraged.
· The alloca() function is slightly unsafe because it cannot ensure
that the pointer returned points to a valid and usable block of mem-
ory. The allocation made may exceed the bounds of the stack, or even
go further into other objects in memory, and alloca() cannot deter-
mine such an error. Avoid alloca() with large unbounded allocations.
· Since alloca() modifies the stack at runtime, it causes problems to
certain security features. See security(7) for a discussion.
NetBSD 6.0 March 21, 2011 NetBSD 6.0