Okay, let's try this again.

I have a Samba server, joined to my Windows Active Directory domain, and 
I'm having a problem setting ACLs on a share from Windows. On Windows, I 
get the error message "Unable to save permission changes on <folder>. The 
parameter is incorrect." and when I look in my Samba log, I see the 
message "ACL is invalid for set (Invalid argument)".

I'm using Fedora 13 with the stock Samba, version 3.5.4. Everything works 
(joining the domain, accessing files, etc.), except setting ACLs from 
Windows.

"getent passwd" and "getent group" return both local and AD users and 
groups, respectively. Setting up user mappings doesn't solve the problem.

My underlying filesystem supports extended attributes, as you can see by 
looking at the attached section, "getfacl output".

Currently, I'm trying to get more information, by compiling Samba from 
source and adding debug statements, but I'm having some trouble, so I 
won't be able to post any information from that effort, yet. (My compiled 
version won't join the domain, even though I'm using the same 
configuration file.)

I've also dug into some of the Samba source and discovered the error is 
coming from a function named "acl_valid", which is called from 
"smb_acl_to_posix", in the file "vfs_posixacl.c". I'll admit I'm no 
expert on POSIX ACLs, but I have to wonder if there's a bug in the Linux 
ACL functions, since "smb_acl_to_posix" uses *only* ACL functions to 
manipulate the ACL, and someone else in this group said that very same 
function works on Solaris. Does this work for anyone out there, using a 
Linux system?

Thanks

===== "getfacl" output

    # owner: <My domain>\134<user1>
    # group: <My domain>\134mis
    user::rwx
    user:<My domain>\134<me>:rwx
    user:<My domain>\134administrator:rwx
    user:<My domain>\134<user2>:rwx
    user:<My domain>\134<user3>:rwx
    group::rwx
    group:<My domain>\134accounting:rwx
    mask::rwx
    other::rwx
    default:user::rwx
    default:user:<My domain>\134<user1>:rwx
    default:user:<My domain>\134administrator:rwx
    default:user:<My domain>\134<user2>:rwx
    default:user:<My domain>\134<user3>:rwx
    default:group::---
    default:mask::rwx
    default:other::---

===== "testparm -sv" output

Load smb config files from /etc/samba/smb.conf
rlimit_max: rlimit_max (1024) below minimum Windows limit (16384)
Processing section "[homes]"
Processing section "[printers]"
Processing section "[paperport]"
Loaded services file OK.
Server role: ROLE_DOMAIN_MEMBER
[global]
        dos charset = CP850
        unix charset = UTF-8
        display charset = LOCALE
        workgroup = <My domain>
        realm = <My domain>.LOCAL
        netbios name = PPTEST
        netbios aliases = 
        netbios scope = 
        server string = Samba Server Version %v
        interfaces = 
        bind interfaces only = No
        security = ADS
        auth methods = 
        encrypt passwords = Yes
        update encrypted = No
        client schannel = Auto
        server schannel = Auto
        allow trusted domains = Yes
        map to guest = Never
        null passwords = No
        obey pam restrictions = No
        password server = *
        smb passwd file = /var/lib/samba/private/smbpasswd
        private dir = /var/lib/samba/private
        passdb backend = tdbsam
        algorithmic rid base = 1000
        root directory = 
        guest account = nobody
        enable privileges = Yes
        pam password change = No
        passwd program = 
        passwd chat = *new*password* %n\n *new*password* %n\n *changed*
        passwd chat debug = No
        passwd chat timeout = 2
        check password script = 
        username map = /etc/samba/smbusers
        password level = 0
        username level = 0
        unix password sync = No
        restrict anonymous = 0
        lanman auth = No
        ntlm auth = Yes
        client NTLMv2 auth = No
        client lanman auth = No
        client plaintext auth = No
        preload modules = 
        dedicated keytab file = 
        kerberos method = default
        map untrusted to domain = No
        log level = 3 winbind:3 acls:3 idmap:10
        syslog = 1
        syslog only = No
        log file = /var/log/samba/log.%m
        max log size = 50
        debug timestamp = Yes
        debug prefix timestamp = No
        debug hires timestamp = Yes
        debug pid = No
        debug uid = No
        debug class = No
        enable core files = Yes
        smb ports = 445 139
        large readwrite = Yes
        max protocol = NT1
        min protocol = CORE
        min receivefile size = 0
        read raw = Yes
        write raw = Yes
        disable netbios = No
        reset on zero vc = No
        acl compatibility = auto
        defer sharing violations = Yes
        nt pipe support = Yes
        nt status support = Yes
        announce version = 4.9
        announce as = NT
        max mux = 50
        max xmit = 16644
        name resolve order = lmhosts wins host bcast
        max ttl = 259200
        max wins ttl = 518400
        min wins ttl = 21600
        time server = No
        unix extensions = Yes
        use spnego = Yes
        client signing = auto
        server signing = No
        client use spnego = Yes
        client ldap sasl wrapping = plain
        enable asu support = No
        svcctl list = 
        deadtime = 0
        getwd cache = Yes
        keepalive = 300
        lpq cache time = 30
        max smbd processes = 0
        paranoid server security = Yes
        max disk size = 0
        max open files = 16384
        socket options = TCP_NODELAY
        use mmap = Yes
        hostname lookups = No
        name cache timeout = 660
        ctdbd socket = 
        cluster addresses = 
        clustering = No
        ctdb timeout = 0
        load printers = No
        printcap cache time = 750
        printcap name = 
        cups server = 
        cups encrypt = No
        cups connection timeout = 30
        iprint server = 
        disable spoolss = No
        addport command = 
        enumports command = 
        addprinter command = 
        deleteprinter command = 
        show add printer wizard = Yes
        os2 driver map = 
        mangling method = hash2
        mangle prefix = 1
        max stat cache size = 256
        stat cache = Yes
        machine password timeout = 604800
        add user script = 
        rename user script = 
        delete user script = 
        add group script = 
        delete group script = 
        add user to group script = 
        delete user from group script = 
        set primary group script = 
        add machine script = 
        shutdown script = 
        abort shutdown script = 
        username map script = 
        logon script = 
        logon path = \\%N\%U\profile
        logon drive = 
        logon home = \\%N\%U
        domain logons = No
        init logon delayed hosts = 
        init logon delay = 100
        os level = 20
        lm announce = Auto
        lm interval = 60
        preferred master = No
        local master = Yes
        domain master = Auto
        browse list = Yes
        enhanced browsing = Yes
        dns proxy = Yes
        wins proxy = No
        wins server = 10.0.0.65
        wins support = No
        wins hook = 
        kernel oplocks = Yes
        lock spin time = 200
        oplock break wait time = 0
        ldap admin dn = 
        ldap delete dn = No
        ldap group suffix = 
        ldap idmap suffix = 
        ldap machine suffix = 
        ldap passwd sync = no
        ldap replication sleep = 1000
        ldap suffix = 
        ldap ssl = start tls
        ldap ssl ads = No
        ldap deref = auto
        ldap follow referral = Auto
        ldap timeout = 15
        ldap connection timeout = 2
        ldap page size = 1024
        ldap user suffix = 
        ldap debug level = 0
        ldap debug threshold = 10
        eventlog list = 
        add share command = 
        change share command = 
        delete share command = 
        preload = 
        lock directory = /var/lib/samba
        state directory = /var/lib/samba
        cache directory = /var/lib/samba
        pid directory = /var/run
        utmp directory = 
        wtmp directory = 
        utmp = No
        default service = 
        message command = 
        get quota command = 
        set quota command = 
        remote announce = 
        remote browse sync = 
        socket address = 0.0.0.0
        nmbd bind explicit broadcast = Yes
        homedir map = auto.home
        afs username map = 
        afs token lifetime = 604800
        log nt token command = 
        time offset = 0
        NIS homedir = No
        registry shares = No
        usershare allow guests = No
        usershare max shares = 0
        usershare owner only = Yes
        usershare path = /var/lib/samba/usershares
        usershare prefix allow list = 
        usershare prefix deny list = 
        usershare template share = 
        panic action = 
        perfcount module = 
        host msdfs = Yes
        passdb expand explicit = No
        idmap backend = tdb
        idmap alloc backend = 
        idmap cache time = 604800
        idmap negative cache time = 120
        idmap uid = 2000-10000
        idmap gid = 2000-10000
        template homedir = /home/%D/%U
        template shell = /bin/false
        winbind separator = \
        winbind cache time = 300
        winbind reconnect delay = 30
        winbind enum users = Yes
        winbind enum groups = Yes
        winbind use default domain = No
        winbind trusted domains only = No
        winbind nested groups = Yes
        winbind expand groups = 1
        winbind nss info = template
        winbind refresh tickets = No
        winbind offline logon = No
        winbind normalize names = No
        winbind rpc only = No
        create krb5 conf = Yes
        comment = 
        path = 
        username = 
        invalid users = 
        valid users = 
        admin users = 
        read list = 
        write list = 
        printer admin = 
        force user = 
        force group = 
        read only = Yes
        acl check permissions = Yes
        acl group control = No
        acl map full control = Yes
        create mask = 0744
        force create mode = 00
        security mask = 0777
        force security mode = 00
        directory mask = 0755
        force directory mode = 00
        directory security mask = 0777
        force directory security mode = 00
        force unknown acl user = No
        inherit permissions = No
        inherit acls = No
        inherit owner = No
        guest only = No
        administrative share = No
        guest ok = No
        only user = No
        hosts allow = 
        hosts deny = 
        allocation roundup size = 1048576
        aio read size = 0
        aio write size = 0
        aio write behind = 
        ea support = No
        nt acl support = Yes
        profile acls = No
        map acl inherit = No
        afs share = No
        smb encrypt = auto
        block size = 1024
        change notify = Yes
        directory name cache size = 100
        kernel change notify = Yes
        max connections = 0
        min print space = 0
        strict allocate = No
        strict sync = No
        sync always = No
        use sendfile = No
        write cache size = 0
        max reported print jobs = 0
        max print jobs = 1000
        printable = No
        printing = cups
        cups options = raw
        print command = 
        lpq command = %p
        lprm command = 
        lppause command = 
        lpresume command = 
        queuepause command = 
        queueresume command = 
        printer name = 
        use client driver = No
        default devmode = Yes
        force printername = No
        printjob username = %U
        default case = lower
        case sensitive = Auto
        preserve case = Yes
        short preserve case = Yes
        mangling char = ~
        hide dot files = Yes
        hide special files = No
        hide unreadable = No
        hide unwriteable files = No
        delete veto files = No
        veto files = 
        hide files = 
        veto oplock files = 
        map archive = Yes
        map hidden = No
        map system = No
        map readonly = yes
        mangled names = Yes
        store dos attributes = No
        dmapi support = No
        browseable = Yes
        access based share enum = No
        blocking locks = Yes
        csc policy = manual
        fake oplocks = No
        locking = Yes
        oplocks = Yes
        level2 oplocks = Yes
        oplock contention limit = 2
        posix locking = Yes
        strict locking = Auto
        share modes = Yes
        dfree cache time = 0
        dfree command = 
        copy = 
        preexec = 
        preexec close = No
        postexec = 
        root preexec = 
        root preexec close = No
        root postexec = 
        available = Yes
        volume = 
        fstype = NTFS
        set directory = No
        wide links = No
        follow symlinks = Yes
        dont descend = 
        magic script = 
        magic output = 
        delete readonly = No
        dos filemode = No
        dos filetimes = Yes
        dos filetime resolution = No
        fake directory create times = No
        vfs objects = 
        msdfs root = No
        msdfs proxy = 
[homes]
        comment = Home Directories
        read only = No
        browseable = No
[printers]
        comment = All Printers
        path = /var/spool/samba
        printable = Yes
        browseable = No
[paperport]
        comment = Test share for PaperPort images
        path = /u1/images
        admin users = <me>, <My domain>\<user1>, <My domain>\<me>
        read only = No
        guest ok = Yes

-- 
To unsubscribe from this list go to the following URL and read the
instructions:  https://lists.samba.org/mailman/options/samba

Reply via email to