}
printf("Apply any applicable default ACLs to the given files or "
- "directories.\n\n");
+ "directories.\n\n");
printf("Usage: %s [flags] <target1> [<target2> [ <target3>...]]\n\n",
- program_name);
+ program_name);
printf("Flags:\n");
printf(" -h, --help Print this help message\n");
printf(" -r, --recursive Act on any given directories recursively\n");
*
*/
int apply_default_acl_nftw(const char *target,
- const struct stat *sp,
- int info,
- struct FTW *ftw) {
+ const struct stat *sp,
+ int info,
+ struct FTW *ftw) {
if (target == NULL) {
errno = EINVAL;
}
- if (apply_default_acl_ex(target, sp, false) == ACL_ERROR) {
+ /* The apply_default_acl() function could make use of the stat
+ struct pointer sp, but for safety we choose to stat the result of
+ safe_open() ourselves. */
+ if (apply_default_acl(target, false) == ACL_ERROR) {
/* I guess we do want to bail out for serious/unexpected errors? */
return ACL_ERROR;
}
*
*/
int apply_default_acl_nftw_x(const char *target,
- const struct stat *sp,
- int info,
- struct FTW *ftw) {
+ const struct stat *sp,
+ int info,
+ struct FTW *ftw) {
if (target == NULL) {
errno = EINVAL;
return ACL_ERROR;
}
- if (apply_default_acl_ex(target, sp, true) == ACL_ERROR) {
+ /* The apply_default_acl() function could make use of the stat
+ struct pointer sp, but for safety we choose to stat the result of
+ safe_open() ourselves. */
+ if (apply_default_acl(target, true) == ACL_ERROR) {
/* I guess we do want to bail out for serious/unexpected errors? */
return ACL_ERROR;
}
* typos, too.
*/
if (!path_accessible(target)) {
- fprintf(stderr, "%s: %s: No such file or directory\n", argv[0], target);
+ perror(target);
result = EXIT_FAILURE;
continue;
}