diff -r -u samba-3.0.11/source/smbd/posix_acls.c samba-3.0.11-orphan_sid/source/smbd/posix_acls.c --- samba-3.0.11/source/smbd/posix_acls.c 2004-11-15 22:03:13.000000000 -0500 +++ samba-3.0.11-orphan_sid/source/smbd/posix_acls.c 2004-12-09 16:42:17.000000000 -0500 @@ -1379,6 +1379,12 @@ } else if (NT_STATUS_IS_OK(sid_to_gid( ¤t_ace->trustee, ¤t_ace->unix_ug.gid))) { current_ace->owner_type = GID_ACE; current_ace->type = SMB_ACL_GROUP; + } else if (lp_force_unknown_acl_user(SNUM(fsp->conn))) { + DEBUG(3,("Must by an orphan/foreign SID- mapping SID to samba's UID\n")); + extern struct current_user current_user; + current_ace->unix_ug.uid = current_user.uid; + current_ace->owner_type = UID_ACE; + current_ace->type = SMB_ACL_USER; } else { fstring str;