1*80ee5cbfSDavid du Colombier #include <u.h> 2*80ee5cbfSDavid du Colombier #include <libc.h> 3*80ee5cbfSDavid du Colombier 4*80ee5cbfSDavid du Colombier char* cistrstr(char * s,char * sub)5*80ee5cbfSDavid du Colombiercistrstr(char *s, char *sub) 6*80ee5cbfSDavid du Colombier { 7*80ee5cbfSDavid du Colombier int c, csub, n; 8*80ee5cbfSDavid du Colombier 9*80ee5cbfSDavid du Colombier csub = *sub; 10*80ee5cbfSDavid du Colombier if(csub == '\0') 11*80ee5cbfSDavid du Colombier return s; 12*80ee5cbfSDavid du Colombier if(csub >= 'A' && csub <= 'Z') 13*80ee5cbfSDavid du Colombier csub -= 'A' - 'a'; 14*80ee5cbfSDavid du Colombier sub++; 15*80ee5cbfSDavid du Colombier n = strlen(sub); 16*80ee5cbfSDavid du Colombier for(; c = *s; s++){ 17*80ee5cbfSDavid du Colombier if(c >= 'A' && c <= 'Z') 18*80ee5cbfSDavid du Colombier c -= 'A' - 'a'; 19*80ee5cbfSDavid du Colombier if(c == csub && cistrncmp(s+1, sub, n) == 0) 20*80ee5cbfSDavid du Colombier return s; 21*80ee5cbfSDavid du Colombier } 22*80ee5cbfSDavid du Colombier return nil; 23*80ee5cbfSDavid du Colombier } 24