]> arthur.barton.de Git - netatalk.git/blobdiff - etc/afpd/unix.c
Remove stickydirmode wrapper
[netatalk.git] / etc / afpd / unix.c
index fb842b274545424c876cd823a8f08d57ff2552ec..1688c9abbf06854f8b6954b30c7586c6c27211b1 100644 (file)
@@ -322,14 +322,14 @@ int setdirunixmode(const struct vol *vol, const char *name, mode_t mode)
 
     if (dir_rx_set(mode)) {
        /* extending right? dir first then .AppleDouble in rf_setdirmode */
-       if ( stickydirmode(name, DIRBITS | mode, 0, vol->v_umask) < 0 )
+       if (chmod_acl(name, (DIRBITS | mode) & ~vol->v_umask) < 0 )
                return -1;
     }
     if (vol->vfs->vfs_setdirunixmode(vol, name, mode, NULL) < 0) {
         return  -1 ;
     }
     if (!dir_rx_set(mode)) {
-       if ( stickydirmode(name, DIRBITS | mode, 0, vol->v_umask) < 0 )
+       if (chmod_acl(name, (DIRBITS | mode) & ~vol->v_umask) < 0 )
             return -1;
     }
     return 0;