diff options
Diffstat (limited to 'man3/libsimple_rawmemrelem.3')
-rw-r--r-- | man3/libsimple_rawmemrelem.3 | 88 |
1 files changed, 88 insertions, 0 deletions
diff --git a/man3/libsimple_rawmemrelem.3 b/man3/libsimple_rawmemrelem.3 new file mode 100644 index 0000000..0a179a8 --- /dev/null +++ b/man3/libsimple_rawmemrelem.3 @@ -0,0 +1,88 @@ +.TH LIBSIMPLE_RAWMEMRELEM 3 2018-11-24 libsimple +.SH NAME +libsimple_rawmemrelem \- find aligned byte string in memory +.SH SYNOPSIS +.nf +#include <libsimple.h> + +void *libsimple_rawmemrelem(const void *\fIhaystack\fP, size_t \fInhaystack\fP, const void *\fIneedle\fP, size_t \fInneedle\fP); + +#ifndef rawmemrelem +# define rawmemrelem libsimple_rawmemrelem +#endif +.fi +.PP +Link with +.IR \-lsimple . +.SH DESCRIPTION +The +.BR libsimple_rawmemrelem () +function scans the memory segment +.IR haystack , +with the size +.IR nhaystack*nneedle , +for the last occurence of the byte string +.I needle +with the size +.IR nneedle , +and with an offset equivalent to zero modulo +.IR nneedle . +The +.BR libsimple_rawmemrelem () +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_rawmemrelem () +function returns the pointer +.I s +with a maximal 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, the behaviour is undefined. +.SH ERRORS +The +.BR libsimple_rawmemrelem () +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_rawmemrelem () +T} Thread safety MT-Safe +T{ +.BR libsimple_rawmemrelem () +T} Async-signal safety AS-Safe +T{ +.BR libsimple_rawmemrelem () +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_rawmemrelem_inv (3), +.BR libsimple_memrelem (3), +.BR libsimple_rawmemelem (3), +.BR libsimple_rawmemrchr (3) |