range_bufinbuf man page

range_bufinbuf — range check for buf in buffer


#include <rangecheck.h>

int range_bufinbuf(const void* buf1,size_t len1,
                  const void* buf2,size_t len2);


range_bufinbuf checks that the buffer buf2[0..len2-1] lies entirely in buf1[0..len1].

If the buffer is 0-terminated and you don't know the length beforehand, use range_strinbuf, range_str2inbuf or range_str4inbuf instead.

Return Value

If one of the buffers is implausible (buf is NULL or buf+len has an integer overflow), return 0.

If the buf2[0..len2-1] lies before or after buf1[0..len1-1], return 0.

Otherwise, return 1.

See Also


Referenced By