3.17 & edge ksmbd is running with umask 0022 and prevents to set g+w and o+w permissions
It seems that umask 022 is always applied to created files and directories. And it is impossible to set g+w and o+w permissions.
tested on aarch64 3.17 and edge with in-tree ksmbd, ksmbd-tools and also with cifsd-team/ksmbd, cifsd-team/ksmbd-tools
ksmbd.conf:
create mask = 0664
directory mask = 2775
ls -la (on the server shared folder)
drwxrwsr-x 3 user storage 4096 Jan 18 18:21 .
drwxr-xr-x 6 root root 4096 Jan 18 15:31 ..
-rw-r--r-- 1 user storage 2 Mar 30 2022 dummy3.txt
drwxr-sr-x 2 user storage 4096 Jan 18 18:21 dummy
umask of ksmbd processess:
# ps afx | grep ksmbd
3790 root 0:00 /usr/sbin/ksmbd.mountd -c /etc/ksmbd/ksmbd.conf
3792 root 0:00 /usr/sbin/ksmbd.mountd -c /etc/ksmbd/ksmbd.conf
3794 root 0:08 [ksmbd-eth0]
3795 root 0:00 [ksmbd-smb_direc]
# igrep umask /proc/{3794,3795}/status
/proc/3794/status:Umask: 0022
/proc/3795/status:Umask: 0022