.TH LIBSIMPLE_MEMMEM 3 libsimple .SH NAME libsimple_memmem \- find byte string in memory .SH SYNOPSIS .nf #include void *libsimple_memmem(const void *\fIhaystack\fP, size_t \fInhaystack\fP, const void *\fIneedle\fP, size_t \fInneedle\fP); #ifndef memmem # define memmem libsimple_memmem #endif .fi .PP Link with .IR \-lsimple . .SH DESCRIPTION The .BR libsimple_memmem () function scans the memory segment .IR haystack , with the size .IR nhaystack , for the first occurence of the byte string .I needle with the size .IR nneedle . .PP The comparison is case-sensitive. .SH RETURN VALUE The .BR libsimple_memmem () function returns the pointer .I s with a minimal offset such that .IR !memcmp(r,needle,nneedle) , where .I r is the returned pointer. If no such offset exists, .B NULL is returned. .SH ERRORS The .BR libsimple_memmem () 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_memmem () T} Thread safety MT-Safe T{ .BR libsimple_memmem () T} Async-signal safety AS-Safe T{ .BR libsimple_memmem () 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.0 .SH BUGS None. .SH SEE ALSO .BR libsimple_memrcasemem (3), .BR libsimple_memrmem (3), .BR libsimple_memelem (3), .BR libsimple_strnstr (3), .BR strstr (3), .BR memchr (3)