summaryrefslogtreecommitdiff
path: root/src/libstddjb/byte_search.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/libstddjb/byte_search.c')
-rw-r--r--src/libstddjb/byte_search.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/libstddjb/byte_search.c b/src/libstddjb/byte_search.c
new file mode 100644
index 0000000..286d806
--- /dev/null
+++ b/src/libstddjb/byte_search.c
@@ -0,0 +1,11 @@
+/* ISC license. */
+
+#include <string.h>
+#include <skalibs/posixplz.h>
+#include <skalibs/bytestr.h>
+
+size_t byte_search (char const *haystack, size_t hlen, char const *needle, size_t nlen)
+{
+ char *p = memmem(haystack, hlen, needle, nlen) ;
+ return p ? p - haystack : hlen + 1 - nlen ;
+}