samba-tool gpo manage motd set failing with invalid handle on s390x

Andreas Hasenack andreas.hasenack at canonical.com
Tue May 6 16:47:15 UTC 2025


Hi,

On Tue, May 6, 2025 at 11:34 AM David Mulder via samba-technical
<samba-technical at lists.samba.org> wrote:
>
> On 5/5/25 4:52 PM, Andreas Hasenack via samba-technical wrote:
> > Hi,
> >
> > I just wrote some tests around the motd GPO subset of commands of
> > samba-tool, and am baffled at a failure I'm getting only on s390x (big
> > endian).
> >    File "/usr/lib/python3/dist-packages/samba/netcmd/__init__.py", line
> > 353, in _run
> >      return self.run(*args, **kwargs)
> >             ~~~~~~~~^^^^^^^^^^^^^^^^^
> >    File "/usr/lib/python3/dist-packages/samba/netcmd/gpo.py", line 3850, in run
> >      reg.increment_gpt_ini(machine_changed=True)
> >      ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^
> >    File "/usr/lib/python3/dist-packages/samba/policies.py", line 198,
> > in increment_gpt_ini
> >      self.__save_file(self.pol_dir % '', GPT_INI,
> >      ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> >                       out_data.read().encode('utf-8'))
> >                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> >    File "/usr/lib/python3/dist-packages/samba/policies.py", line 99, in
> > __save_file
> >      self.conn.set_acl(file_name, self.fs_sd)
> >      ~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^
> >    File "/usr/lib/python3/dist-packages/samba/samba3/libsmb_samba_internal.py",
> > line 128, in set_acl
> >      self.set_sd(fnum, sd, sinfo)
> >      ~~~~~~~~~~~^^^^^^^^^^^^^^^^^
> It's only failing while setting the acls on the GPT.INI file (not the
> manifest). What do
> the acls look like on GPT.INI?

There are two GPT.INI files:

root at ad:~# getfacl
"/var/lib/samba/sysvol/example/Policies/{31B2F340-016D-11D2-945F-00C04FB984F9}/GPT.INI"
getfacl: Removing leading '/' from absolute path names
# file: var/lib/samba/sysvol/example/Policies/{31B2F340-016D-11D2-945F-00C04FB984F9}/GPT.INI
# owner: EXAMPLE.FAKE\\domain\040admins
# group: EXAMPLE.FAKE\\domain\040admins
user::rwx
user:root:rwx
user:BUILTIN\\administrators:rwx
user:BUILTIN\\server\040operators:r-x
user:NT\040Authority\\system:rwx
user:NT\040Authority\\authenticated\040users:r-x
group::rwx
group:BUILTIN\\administrators:rwx
group:BUILTIN\\server\040operators:r-x
group:NT\040Authority\\system:rwx
group:NT\040Authority\\authenticated\040users:r-x
mask::rwx
other::---


root at ad:~# getfacl
"/var/lib/samba/sysvol/example/Policies/{6AC1786C-016F-11D2-945F-00C04FB984F9}/GPT.INI"
getfacl: Removing leading '/' from absolute path names
# file: var/lib/samba/sysvol/example/Policies/{6AC1786C-016F-11D2-945F-00C04FB984F9}/GPT.INI
# owner: EXAMPLE.FAKE\\domain\040admins
# group: EXAMPLE.FAKE\\domain\040admins
user::rwx
user:root:rwx
user:BUILTIN\\administrators:rwx
user:BUILTIN\\server\040operators:r-x
user:NT\040Authority\\system:rwx
user:NT\040Authority\\authenticated\040users:r-x
group::rwx
group:BUILTIN\\administrators:rwx
group:BUILTIN\\server\040operators:r-x
group:NT\040Authority\\system:rwx
group:NT\040Authority\\authenticated\040users:r-x
mask::rwx
other::---

They have slightly different content:

root at ad:~# cat "/var/lib/samba/sysvol/example/Policies/{31B2F340-016D-11D2-945F-00C04FB984F9}/GPT.INI"
[General]
Version = 1

root at ad:~# cat "/var/lib/samba/sysvol/example/Policies/{6AC1786C-016F-11D2-945F-00C04FB984F9}/GPT.INI"
[General]
Version=0

(there was no \n at the end of the one above, after the zero, if that matters).



More information about the samba-technical mailing list