range_arrayinbuf(3) Library Functions Manual range_arrayinbuf(3)
NAME
range_arrayinbuf - range check for array in buffer
SYNTAX
#include <rangecheck.h>
int range_arrayinbuf(const void* buf,size_t len,
const void* arraystart,
size_t elements,size_t membersize);
DESCRIPTION
range_arrayinbuf checks that the array starting at arraystart consisting of elements members of size membersize each starts and ends within
the buffer buf[0..len-1].
If the array is 0-terminated and you don't know the length beforehand, use range_strinbuf, range_str2inbuf or range_str4inbuf instead.
RETURN VALUE
If the buffer is implausible (buf is NULL or buf+len has an integer overflow), return 0.
If the array is implausible (arraystart is NULL, elements*membersize overflows, or calculating the byte offset of the last element over-
flows), return 0.
If the first or last element of the array points before or after the buffer, return 0.
Otherwise, return 1.
SEE ALSO
rangecheck(3)
range_arrayinbuf(3)