.TH LIBSIMPLE_RAWMEMELEM_INV 3 libsimple .SH NAME libsimple_rawmemelem_inv \- find different aligned byte string in memory .SH SYNOPSIS .nf #include void *libsimple_rawmemelem_inv(const void *\fIhaystack\fP, const void *\fIneedle\fP, size_t \fIwidth\fP); #ifndef rawmemelem_inv # define rawmemelem_inv libsimple_rawmemelem_inv #endif .fi .PP Link with .IR \-lsimple . .SH DESCRIPTION The .BR libsimple_rawmemelem_inv () function scans the memory segment .IR haystack , for the first occurence of a byte string different from .I needle with the size .IR width , and with an offset equivalent to zero modulo .IR width . .PP The .BR libsimple_rawmemchr () function assumes there is at least one occurence, its behaviour is undefined if this is not the case. .PP The comparison is case-sensitive. .SH RETURN VALUE The .BR libsimple_rawmemelem_inv () function returns the pointer .I s with a minimal offset such that .IR memcmp(r,needle,width) , where .I r is the returned pointer, and such that the offset is equivalent to zero modulo .IR width . If no such offset exists, the behaviour is undefined. .SH ERRORS The .BR libsimple_rawmemelem_inv () function cannot fail. .SH ATTRIBUTES For an explanation of the terms used in this section, see .BR attributes (7). .TS allbox; lb lb lb l l l. Interface Attribute Value T{ .BR libsimple_rawmemelem_inv () T} Thread safety MT-Safe T{ .BR libsimple_rawmemelem_inv () T} Async-signal safety AS-Safe T{ .BR libsimple_rawmemelem_inv () T} Async-cancel safety AC-Safe .TE .SH EXAMPLES None. .SH APPLICATION USAGE None. .SH RATIONALE None. .SH FUTURE DIRECTIONS None. .SH NOTES None. .SH HISTORY libsimple 1.1 .SH BUGS None. .SH SEE ALSO .BR libsimple_rawmemelem (3), .BR libsimple_rawmemrelem_inv (3), .BR libsimple_memelem_inv (3), .BR libsimple_rawmemchr_inv (3)