13e12c5d1SDavid du Colombier #include <string.h> 23e12c5d1SDavid du Colombier #define N 256 33e12c5d1SDavid du Colombier 43e12c5d1SDavid du Colombier char* strpbrk(const char * s,const char * b)53e12c5d1SDavid du Colombierstrpbrk(const char *s, const char *b) 63e12c5d1SDavid du Colombier { 73e12c5d1SDavid du Colombier char map[N]; 83e12c5d1SDavid du Colombier 93e12c5d1SDavid du Colombier memset(map, 0, N); 103e12c5d1SDavid du Colombier for(;;) { 113e12c5d1SDavid du Colombier map[*b] = 1; 123e12c5d1SDavid du Colombier if(*b++ == 0) 133e12c5d1SDavid du Colombier break; 143e12c5d1SDavid du Colombier } 153e12c5d1SDavid du Colombier while(map[*s++] == 0) 163e12c5d1SDavid du Colombier ; 173e12c5d1SDavid du Colombier if(*--s) 18*781103c4SDavid du Colombier return (char *)s; 193e12c5d1SDavid du Colombier return 0; 203e12c5d1SDavid du Colombier } 21