bug in can_delete_file_in_directory

Herb Lewis hlewis at panasas.com
Fri Mar 20 18:19:00 GMT 2009


This is in samba 3.2 git

in the function can_delete_file_in_directory we have the following test

         /* Check primary owner write access. */
         if (current_user.ut.uid == sbuf.st_uid) {
                 return (sbuf.st_mode & S_IWUSR) ? True : False;
         }

I believe this is wrong. Shouldn't it just be

         /* Check primary owner write access. */
         if ((current_user.ut.uid == sbuf.st_uid) &&
             (sbuf.st_mode & S_IWUSR)) {
                 return True;
         }

otherwise we don't check for access granted by some ACL


More information about the samba-technical mailing list