]> sbz's 6dev Repos - elfdbg/.git/blob - compat.c
Fix C99 compilation warning on OpenBSD
[elfdbg/.git] / compat.c
1 #include <string.h>
2
3 #if defined(__linux__) || defined(__OpenBSD__)
4 char *
5 strnstr(const char *s, const char *find, size_t slen)
6 {
7         char c, sc;
8         size_t len;
9
10         if ((c = *find++) != '\0') {
11                 len = strlen(find);
12                 do {
13                         do {
14                                 if (slen-- < 1 || (sc = *s++) == '\0')
15                                         return (NULL);
16                         } while (sc != c);
17                         if (len > slen)
18                                 return (NULL);
19                 } while (strncmp(s, find, len) != 0);
20                 s--;
21         }
22         return ((char *)s);
23 }
24 #endif