Lines Matching full:pattern
38 * Compares a filename or pathname to a pattern.
54 fnmatch(const char *pattern, const char *string, int flags) in fnmatch() argument
61 switch (c = *pattern++) { in fnmatch()
78 c = *pattern; in fnmatch()
81 c = *++pattern; in fnmatch()
88 /* Optimize for pattern with * at end or before /. */ in fnmatch()
104 if (!fnmatch(pattern, string, flags & ~FNM_PERIOD)) in fnmatch()
121 switch (rangematch(pattern, *string, flags, &newp)) { in fnmatch()
125 pattern = newp; in fnmatch()
134 if ((c = *pattern++) == EOS) { in fnmatch()
136 --pattern; in fnmatch()
157 rangematch(const char *pattern, char test, int flags, char **newp) in rangematch() argument
169 if ( (negate = (*pattern == '!' || *pattern == '^')) ) in rangematch()
170 ++pattern; in rangematch()
181 c = *pattern++; in rangematch()
184 c = *pattern++; in rangematch()
194 if (*pattern == '-' in rangematch()
195 && (c2 = *(pattern+1)) != EOS && c2 != ']') { in rangematch()
196 pattern += 2; in rangematch()
198 c2 = *pattern++; in rangematch()
209 } while ((c = *pattern++) != ']'); in rangematch()
211 *newp = (char *)(uintptr_t)pattern; in rangematch()