Skip to content
  • Harald Sitter's avatar
    fix up ACE ordering · f3c12f12
    Harald Sitter authored
    the order of entries within the ACL have meaning as samba aborts
    permission lookup on matching denials but combines read and full access.
    since our ACL table mimics windows' we'll follow its behavior as it's
    also fairly easy to explain
    
    "a denial always denies, no matter what other rules exist"
    
    to that end we'll now sort the ACL to first list denials, then reads,
    then full access
    
    - if foo is denied they'll not be let in
    - if bar is read they get let in
    - if Everyone is denied nobody gets in
    
    should we later add group support this further becomes
    
    - if groupFoo is denied and bar is a member of it then bar is denied
    - if groupBar is read and foo is a member of it then foo is still denied
    - if groupFoo is fullacces and bar is a member they'll get fullaccess
    
    CCBUG: 422554
    FIXED-IN: 20.12
    f3c12f12