FNM_PATHNAME
else if (c == '/' && flags & FNM_PATHNAME) {
if (test == '/' && flags & FNM_PATHNAME)
if (*string == '/' && flags & FNM_PATHNAME)
if (*string == '/' && (flags & FNM_PATHNAME))
((flags & FNM_PATHNAME) && *(string - 1) == '/')))
((flags & FNM_PATHNAME) && *(string - 1) == '/')))
if (flags & FNM_PATHNAME)
if (*string == '/' && (flags & FNM_PATHNAME))
((flags & FNM_PATHNAME) && *(string - 1) == '/')))
((flags & FNM_PATHNAME) && *(string - 1) == '/')))
if (flags & FNM_PATHNAME)
} else if (c == '/' && flags & FNM_PATHNAME) {
if (test == '/' && flags & FNM_PATHNAME)
if (*string == '/' && flags & FNM_PATHNAME)
const int slash = !!(flags & FNM_PATHNAME);
const int slash = !!(flags & FNM_PATHNAME);
#define FNM_FILE_NAME FNM_PATHNAME
#define FNM_FILE_NAME FNM_PATHNAME
if (sc == '/' && (flags & FNM_PATHNAME))
((flags & FNM_PATHNAME) && *(string - 1) == '/')))
((flags & FNM_PATHNAME) && *(string - 1) == '/')))
if (flags & FNM_PATHNAME)
else if (c == '/' && flags & FNM_PATHNAME) {
if (sc == '/' && (flags & FNM_PATHNAME))
((flags & FNM_PATHNAME) && *(string - 1) == '/')))
if (sc == '/' && flags & FNM_PATHNAME)
} else if (*pattern == '/' && (flags & FNM_PATHNAME)) {
!(flags & (FNM_PATHNAME | FNM_PERIOD))) {
!(flags & FNM_PATHNAME)) {
flags |= FNM_PATHNAME;
flags & FNM_PATHNAME && !(flags & FNM_PERIOD)) {
!(flags & (FNM_PATHNAME | FNM_PERIOD))) {
flags |= FNM_PATHNAME | FNM_PERIOD;
static const int flagvalues[] = { FNM_NOESCAPE, FNM_PATHNAME,
{ "a/a", "a/a", FNM_PATHNAME, 0 },
{ "a/*", "a/a", FNM_PATHNAME, 0 },
{ "*/a", "a/a", FNM_PATHNAME, 0 },
{ "*/*", "a/a", FNM_PATHNAME, 0 },
{ "a*b/*", "abbb/x", FNM_PATHNAME, 0 },
{ "a*b/*", "abbb/.x", FNM_PATHNAME, 0 },
{ "*", "a/a", FNM_PATHNAME, FNM_NOMATCH },
{ "*/*", "a/a/a", FNM_PATHNAME, FNM_NOMATCH },
{ "b/*", "b/.x", FNM_PATHNAME | FNM_PERIOD, FNM_NOMATCH },
{ "b*/*", "a/.x", FNM_PATHNAME | FNM_PERIOD, FNM_NOMATCH },
{ "b/.*", "b/.x", FNM_PATHNAME | FNM_PERIOD, 0 },
{ "b*/.*", "b/.x", FNM_PATHNAME | FNM_PERIOD, 0 },
{ "a", "a/b", FNM_PATHNAME, FNM_NOMATCH },
{ "*", "a/b", FNM_PATHNAME, FNM_NOMATCH },
{ "*b", "a/b", FNM_PATHNAME, FNM_NOMATCH },
{ "a", "a/b", FNM_PATHNAME | FNM_LEADING_DIR, 0 },
{ "*", "a/b", FNM_PATHNAME | FNM_LEADING_DIR, 0 },
{ "*", ".a/b", FNM_PATHNAME | FNM_LEADING_DIR, 0 },
{ "*a", ".a/b", FNM_PATHNAME | FNM_LEADING_DIR, 0 },
{ "*", ".a/b", FNM_PATHNAME | FNM_PERIOD | FNM_LEADING_DIR, FNM_NOMATCH },
{ "*a", ".a/b", FNM_PATHNAME | FNM_PERIOD | FNM_LEADING_DIR, FNM_NOMATCH },
{ "a*b/*", "abbb/.x", FNM_PATHNAME | FNM_PERIOD, FNM_NOMATCH },
setkv(FNM_PATHNAME);
match = fnmatch(dr->dr_pathptrn, pname, FNM_PATHNAME) == 0;
if (test == '/' && flags & FNM_PATHNAME)
if (*string == '/' && (flags & FNM_PATHNAME))
((flags & FNM_PATHNAME) && *(string - 1) == '/')))
if (c == '/' && (flags & FNM_PATHNAME))
if (*string == '/' && (flags & FNM_PATHNAME))
((flags & FNM_PATHNAME) && *(string - 1) == '/')))
((flags & FNM_PATHNAME) && *(string - 1) == '/')))
if (flags & FNM_PATHNAME)
else if (c == '/' && flags & FNM_PATHNAME) {
#define FNM_FILE_NAME FNM_PATHNAME
if (fnmatch(excl->pattern, dp->d_name, FNM_PATHNAME) == 0)
fnres = fnmatch(ent->log, *given, FNM_PATHNAME);