acl_delete_def_file man page
acl_delete_def_file — delete a default ACL by filename
Linux Access Control Lists library (libacl, -lacl).
acl_delete_def_file(const char *path_p);
The acl_delete_def_file() function deletes a default ACL from the directory whose pathname is pointed to by the argument path_p.
The effective user ID of the process must match the owner of the file or directory or the process must have the CAP_FOWNER capability for the request to succeed.
If the argument path_p is not a directory, then the function fails. It is no error if the directory whose pathname is pointed to by the argument path_p does not have a default ACL.
The acl_delete_def_file() function returns the value 0 if successful; otherwise the value -1 is returned and the global variable errno is set to indicate the error.
If any of the following conditions occur, the acl_delete_def_file() function returns the value
-1 and and sets errno to the corresponding value:
The file referred to by path_p is not a directory.
The file system on which the file identified by path_p is located does not support ACLs, or ACLs are disabled.
The process does not have appropriate privilege to perform the operation to delete the default ACL.
This function requires modification of a file system which is currently read-only.
IEEE Std 1003.1e draft 17 (“POSIX.1e”, abandoned)
acl_get_file(3), acl_set_file(3), acl(5)
Derived from the FreeBSD manual pages written by Robert N M Watson ⟨rwatson@FreeBSD.org⟩, and adapted for Linux by Andreas Gruenbacher ⟨email@example.com⟩.
acl(5), acl_set_fd(3), acl_set_file(3).