[OpenBSD]

Manual Page Search Parameters

POSIX_MEMALIGN(3) Library Functions Manual POSIX_MEMALIGN(3)

NAME

posix_memalignaligned memory allocation

SYNOPSIS

#include <stdlib.h>
int
posix_memalign(void **ptr, size_t alignment, size_t size);

DESCRIPTION

The posix_memalign() function allocates size bytes of memory such that the allocation's base address is a multiple of alignment, and returns the allocation in the value pointed to by ptr.
The requested alignment must be a power of 2 at least as large as sizeof(void *).
Memory that is allocated via posix_memalign() can be used as an argument in subsequent calls to realloc(3), reallocarray(3) and free(3), but not recallocarray(3) and freezero(3).

RETURN VALUES

The posix_memalign() function returns the value 0 if successful; otherwise it returns an error value.

ERRORS

The posix_memalign() function will fail if:
 
 
[EINVAL]
The alignment parameter is not a power of 2 at least as large as sizeof(void *).
 
 
[ENOMEM]
Memory allocation error.

SEE ALSO

free(3), malloc(3), realloc(3)

STANDARDS

The posix_memalign() function conforms to IEEE Std 1003.1-2001 (“POSIX.1”).

HISTORY

The posix_memalign() function first appeared in OpenBSD 4.8.
May 13, 2017 OpenBSD-current