CONDITION_PATH_IS_DIRECTORY, CONDITION_PATH_IS_SYMBOLIC_LINK and
CONDITION_FILE_IS_EXECUTABLE gave reversed results when the path
did not exist at all.
struct stat st;
if (stat(c->parameter, &st) < 0)
- return !c->negate;
+ return c->negate;
return S_ISDIR(st.st_mode) == !c->negate;
}
struct stat st;
if (lstat(c->parameter, &st) < 0)
- return !c->negate;
+ return c->negate;
return S_ISLNK(st.st_mode) == !c->negate;
}
struct stat st;
if (stat(c->parameter, &st) < 0)
- return !c->negate;
+ return c->negate;
return (S_ISREG(st.st_mode) && (st.st_mode & 0111)) == !c->negate;
}