Range check pointer in buffer
#include <rangecheck.h>
int range_ptrinbuf(const void* buf,size_t len,const void* ptr);
range_ptrinbuf checks if ptr points to buf[0..len-1].
If the buffer is implausible (buf is NULL or buf+len has an integer overflow), return 0.
If ptr points to one of buf[0], buf[1], ... or buf[len-1], return 1.
Otherwise, return 0.