(If our POSIX types aren't valid, we can't handle the ACLs.)
if (sacl == NULL) {
/* Couldn't get an ACL. Darn. */
switch (errno) {
if (sacl == NULL) {
/* Couldn't get an ACL. Darn. */
switch (errno) {
+ case EINVAL:
+ /* If SMB_ACL_TYPE_DEFAULT isn't valid, then the ACLs must be non-POSIX. */
+ break;
#ifdef ENOTSUP
case ENOTSUP:
#endif
#ifdef ENOTSUP
case ENOTSUP:
#endif
+ if (err == EINVAL) {
+ /* If the type of SMB_ACL_TYPE_ACCESS or SMB_ACL_TYPE_DEFAULT
+ * isn't valid, then the ACLs must be non-POSIX. */
+ return 1;
+ }