Backend:
- Import pwd/grp for uid/gid → name resolution
- _path_stat(path): returns current owner, group, octal mode via os.stat
- get_all_shares: attaches stat info to each share so the modal can
pre-fill current values
- POST /api/permissions: validates and applies chown/chmod to a share
path; returns updated stat on success
Frontend:
- Edit modal now has a Permissions section (Owner / Group / Mode)
pre-filled with current values, with a hint line showing common modes
- Valid Users label notes @groupname syntax for Samba group access
- submitEdit applies permissions after saving the share config if any
permission field is non-empty; shows specific error on failure
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>