b23af01cebd7fb66c39d70e4fb2ba9030c86570a
[elfdbg/.git] / compat.c
1 #include <string.h>
2
3 char *
4 strnstr(const char *s, const char *find, size_t slen)
5 {
6     char c, sc;
7     size_t len;
8
9     if ((c = *find++) != '\0') {
10         len = strlen(find);
11         do {
12             do {
13                 if (slen-- < 1 || (sc = *s++) == '\0')
14                     return (NULL);
15             } while (sc != c);
16             if (len > slen)
17                 return (NULL);
18         } while (strncmp(s, find, len) != 0);
19         s--;
20     }
21     return ((char *)s);
22 }