cistrstr.c - 9base - revived minimalist port of Plan 9 userland to Unix
(HTM) git clone git://git.suckless.org/9base
(DIR) Log
(DIR) Files
(DIR) Refs
(DIR) README
(DIR) LICENSE
---
cistrstr.c (357B)
---
1 #include <u.h>
2 #include <libc.h>
3
4 char*
5 cistrstr(char *s, char *sub)
6 {
7 int c, csub, n;
8
9 csub = *sub;
10 if(csub == '\0')
11 return s;
12 if(csub >= 'A' && csub <= 'Z')
13 csub -= 'A' - 'a';
14 sub++;
15 n = strlen(sub);
16 for(; c = *s; s++){
17 if(c >= 'A' && c <= 'Z')
18 c -= 'A' - 'a';
19 if(c == csub && cistrncmp(s+1, sub, n) == 0)
20 return s;
21 }
22 return nil;
23 }