diff options
Diffstat (limited to 'man3/libsimple_memelem_inv.3')
-rw-r--r-- | man3/libsimple_memelem_inv.3 | 86 |
1 files changed, 86 insertions, 0 deletions
diff --git a/man3/libsimple_memelem_inv.3 b/man3/libsimple_memelem_inv.3 new file mode 100644 index 0000000..a36e38c --- /dev/null +++ b/man3/libsimple_memelem_inv.3 @@ -0,0 +1,86 @@ +.TH LIBSIMPLE_MEMELEM_INV 3 2018-11-24 libsimple +.SH NAME +libsimple_memelem_inv \- find different aligned byte string in memory +.SH SYNOPSIS +.nf +#include <libsimple.h> + +void *libsimple_memelem_inv(const void *\fIhaystack\fP, size_t \fInhaystack\fP, const void *\fIneedle\fP, size_t \fInneedle\fP); + +#ifndef memelem_inv +# define memelem_inv libsimple_memelem_inv +#endif +.fi +.PP +Link with +.IR \-lsimple . +.SH DESCRIPTION +The +.BR libsimple_memelem_inv () +function scans the memory segment +.IR haystack , +with the size +.IR nhaystack*nneedle , +for the first occurence of a byte string +different from +.I needle +with the size +.IR nneedle , +and with an offset equivalent to zero modulo +.IR nneedle . +.PP +The comparison is case-sensitive. +.SH RETURN VALUE +The +.BR libsimple_memelem_inv () +function returns the pointer +.I s +with a minimal offset such that +.IR memcmp(r,needle,nneedle) , +where +.I r +is the returned pointer, and such that +the offset is equivalent to zero modulo +.IR nneedle . +If no such offset exists, +.B NULL +is returned. +.SH ERRORS +The +.BR libsimple_memelem_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_memelem_inv () +T} Thread safety MT-Safe +T{ +.BR libsimple_memelem_inv () +T} Async-signal safety AS-Safe +T{ +.BR libsimple_memelem_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 BUGS +None. +.SH SEE ALSO +.BR libsimple_memelem (3), +.BR libsimple_memelemscan_inv (3), +.BR libsimple_memrelem_inv (3), +.BR libsimple_rawmemelem_inv (3) |