]> git.ipfire.org Git - thirdparty/samba.git/log
thirdparty/samba.git
7 weeks agoctdb-tools: add a --json option for ctdb status
John Mulligan [Thu, 12 Feb 2026 22:47:58 +0000 (17:47 -0500)] 
ctdb-tools: add a --json option for ctdb status

Add a new --json option that prints JSON as a higher-level machine
parse-able output. The --json option is only supported if the
jansson library is available.

The --json option will ONLY print json.  If the subcommand does not
(yet) support json it will raise an error rather than fall back to
emitting human readable text. This way a json parser is never given
"invalid" input.

Pair-Programmed-With: Shachar Sharon <ssharon@redhat.com>
Signed-off-by: Shachar Sharon <ssharon@redhat.com>
Signed-off-by: John Mulligan <jmulligan@redhat.com>
Reviewed-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Anoop C S <anoopcs@samba.org>
7 weeks agoctdb-wscript: support building ctdb command with jansson
John Mulligan [Thu, 12 Feb 2026 22:47:58 +0000 (17:47 -0500)] 
ctdb-wscript: support building ctdb command with jansson

Pair-Programmed-With: Shachar Sharon <ssharon@redhat.com>
Signed-off-by: Shachar Sharon <ssharon@redhat.com>
Signed-off-by: John Mulligan <jmulligan@redhat.com>
Reviewed-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Anoop C S <anoopcs@samba.org>
7 weeks agobuild: Move jansson detection and related options to lib/util
Martin Schwenke [Tue, 17 Feb 2026 00:17:57 +0000 (11:17 +1100)] 
build: Move jansson detection and related options to lib/util

This means that standalone builds (e.g. CTDB) can use it.

The check for without JSON but with AD DC stays in the top-level
wscript.

Signed-off-by: Martin Schwenke <mschwenke@ddn.com>
Reviewed-by: Anoop C S <anoopcs@samba.org>
7 weeks agoctdb-tools: reformat ctdb.c with clang-format
John Mulligan [Tue, 10 Feb 2026 18:55:11 +0000 (13:55 -0500)] 
ctdb-tools: reformat ctdb.c with clang-format

This is the result of running:
    clang-format -i ctdb/tools/ctdb.c

This is in preparation for some upcoming changes that add fields to the
struct tables and general recommendations to use `clang-format` and/or
`git clang-format` to keep samba code formatted consistently.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
Reviewed-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Anoop C S <anoopcs@samba.org>
7 weeks agoctdb-failover: Add sm-notify to statd_callout
Peter Schwenke [Thu, 9 Oct 2025 01:48:28 +0000 (12:48 +1100)] 
ctdb-failover: Add sm-notify to statd_callout

sm-notify is required when an NFS client reboots.
rpc-statd on the client will send an sm-notify to
rpc-statd on the NFS sever.

Add a test case.

BUG: https://bugzilla.samba.org/show_bug.cgi?id=15938

Signed-off-by: Peter Schwenke <pschwenke@ddn.com>
Reviewed-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Anoop C S <anoopcs@samba.org>
Autobuild-User(master): Martin Schwenke <martins@samba.org>
Autobuild-Date(master): Wed Feb 18 12:29:16 UTC 2026 on atb-devel-224

7 weeks agoctdb-scripts: Only send notifies for newly taken IPs
Peter Schwenke [Tue, 29 Apr 2025 06:33:45 +0000 (16:33 +1000)] 
ctdb-scripts: Only send notifies for newly taken IPs

We no longer delete shared state (and send notifies) for
IPs previously held by the current node. The NFS lock manager
won't have released locks for these IPs, so won't generate
SM_MON on reclaim attempts.  Therefore, there will be
no add-client to put them back.

We now record newly taken IP addresses in takeip,
and only send notifies for those during
ipreallocated.  The extra notifies were also confusing
statd.

Update existing tests to always simulate taking all of a node's IPs.
This causes no output changes.

Test updates confirm the subtleties of the statd_callout_helper
behaviour change.  These pretend to only take a single IP, so
SM_NOTIFY must not be sent for other IPs.  Shared state should
remain for these other files.

BUG: https://bugzilla.samba.org/show_bug.cgi?id=15939

Signed-off-by: Peter Schwenke <pschwenke@ddn.com>
Signed-off-by: Martin Schwenke <mschwenke@ddn.com>
Reviewed-by: Anoop C S <anoopcs@samba.org>
7 weeks agoctdb-tests: Update statd-callout unit test infrastructure
Martin Schwenke [Thu, 15 May 2025 05:20:25 +0000 (15:20 +1000)] 
ctdb-tests: Update statd-callout unit test infrastructure

Don't cheat.  Keep some state about what is happening, similar to what
statd_callout and statd_callout_helper are expected to keep.  This
means hinting arguments to check_shared_storage_statd_state() and
check_statd_callout_smnotify() can be dropped.

BUG: https://bugzilla.samba.org/show_bug.cgi?id=15939

Signed-off-by: Martin Schwenke <mschwenke@ddn.com>
Reviewed-by: Anoop C S <anoopcs@samba.org>
7 weeks agovfs_ceph_new: Reduce a level of indirection for SMB_VFS_FSTATVFS
Anoop C S [Tue, 17 Feb 2026 16:21:35 +0000 (21:51 +0530)] 
vfs_ceph_new: Reduce a level of indirection for SMB_VFS_FSTATVFS

Signed-off-by: Anoop C S <anoopcs@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Autobuild-User(master): Volker Lendecke <vl@samba.org>
Autobuild-Date(master): Wed Feb 18 11:12:23 UTC 2026 on atb-devel-224

7 weeks agovfs_ceph: Reduce a level of indirection for SMB_VFS_FSTATVFS
Anoop C S [Tue, 17 Feb 2026 16:20:45 +0000 (21:50 +0530)] 
vfs_ceph: Reduce a level of indirection for SMB_VFS_FSTATVFS

Signed-off-by: Anoop C S <anoopcs@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
7 weeks agoCVE-2026-20833: WHATSNEW: Document new default for ‘kdc default domain supported...
Jennifer Sutton [Wed, 4 Feb 2026 00:51:38 +0000 (13:51 +1300)] 
CVE-2026-20833: WHATSNEW: Document new default for ‘kdc default domain supported enctypes’

Signed-off-by: Jennifer Sutton <jennifersutton@catalyst.net.nz>
Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Autobuild-User(master): Douglas Bagnall <dbagnall@samba.org>
Autobuild-Date(master): Wed Feb 18 01:52:23 UTC 2026 on atb-devel-224

7 weeks agoCVE-2026-20833: s4:kdc: Make default domain supported enctypes AES by default
Jennifer Sutton [Fri, 30 Jan 2026 02:03:42 +0000 (15:03 +1300)] 
CVE-2026-20833: s4:kdc: Make default domain supported enctypes AES by default

If AES keys are available in the domain, assume that service accounts support
AES by default.

BUG: https://bugzilla.samba.org/show_bug.cgi?id=15998

Signed-off-by: Jennifer Sutton <jennifersutton@catalyst.net.nz>
Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
7 weeks agoCVE-2026-20833: selftest: Avoid renaming ‘testallowed_account’
Jennifer Sutton [Wed, 4 Feb 2026 01:43:09 +0000 (14:43 +1300)] 
CVE-2026-20833: selftest: Avoid renaming ‘testallowed_account’

cli_credentials_get_keytab() uses the sAMAccountName to calculate the salt via
cli_credentials_get_salt_principal(). Changing the sAMAccountName means that
cli_credentials_get_keytab() will generate AES Kerberos keys using the wrong
salt, and gensec authentication will fail.

BUG: https://bugzilla.samba.org/show_bug.cgi?id=15998

Signed-off-by: Jennifer Sutton <jennifersutton@catalyst.net.nz>
Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
7 weeks agoCVE-2026-20833: python:tests: Set secure channel type for test credentials
Jennifer Sutton [Tue, 3 Feb 2026 01:36:59 +0000 (14:36 +1300)] 
CVE-2026-20833: python:tests: Set secure channel type for test credentials

This will ensure that we use the correct salting algorithm for AES when we
authenticate using gensec.

BUG: https://bugzilla.samba.org/show_bug.cgi?id=15998

Signed-off-by: Jennifer Sutton <jennifersutton@catalyst.net.nz>
Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
7 weeks agodocs-xml: Add missing word
Jennifer Sutton [Tue, 27 Jan 2026 04:12:00 +0000 (17:12 +1300)] 
docs-xml: Add missing word

Signed-off-by: Jennifer Sutton <jennifersutton@catalyst.net.nz>
Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
7 weeks agolib:audit_logging: Fix code spelling
Jennifer Sutton [Sun, 25 Jan 2026 22:23:34 +0000 (11:23 +1300)] 
lib:audit_logging: Fix code spelling

Signed-off-by: Jennifer Sutton <jennifersutton@catalyst.net.nz>
Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
7 weeks agobuild: allow `./configure _foo=x` to work like FOO=x
Douglas Bagnall [Mon, 2 Feb 2026 21:24:14 +0000 (10:24 +1300)] 
build: allow `./configure _foo=x` to work like FOO=x

OpenWRT passes arguments like '_python_sysroot=x' after the './configure',
which it expects to work as if the occurred before the './configure'
-- that is, setting environment variables (let's assume its build
system is necessarily complex due to all the cross-compiles).

This used to work (or at least not cause a failure return code) until
the upgrade to waf 2.1.5 or 2.1.6 in mid-2025, when waf started using
the argparse parser.

BUG: https://bugzilla.samba.org/show_bug.cgi?id=15990

Signed-off-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Reviewed-by: Gary Lockyer <gary@catalyst.net.nz>
Autobuild-User(master): Douglas Bagnall <dbagnall@samba.org>
Autobuild-Date(master): Wed Feb 18 00:00:30 UTC 2026 on atb-devel-224

7 weeks agos3/libsmb: block anon authentication fallback is use-kerberos = desired
Noel Power [Mon, 19 Jan 2026 16:18:02 +0000 (16:18 +0000)] 
s3/libsmb: block anon authentication fallback is use-kerberos = desired

When cli_credentials_get_kerberos_state returns CRED_USE_KERBEROS_REQUIRED
libsmbclient method SMBC_server_internal will still try to fallback to
anon NTLM. This patch prevents that.

Bug: https://bugzilla.samba.org/show_bug.cgi?id=15789
Signed-off-by: Noel Power <noel.power@suse.com>
Reviewed-by: Andreas Schneider <asn@samba.org>
Autobuild-User(master): Noel Power <npower@samba.org>
Autobuild-Date(master): Tue Feb 17 16:06:18 UTC 2026 on atb-devel-224

7 weeks agos3/libsmb: cli_session_creds_init fails when kerberos is desired
Noel Power [Mon, 19 Jan 2026 16:10:10 +0000 (16:10 +0000)] 
s3/libsmb: cli_session_creds_init fails when kerberos is desired

There is a regression with code using cli_session_creds_init when
cli_credentials_get_kerberos_state() returns CRED_USE_KERBEROS_DESIRED

Authentication succeeds when boolean fallback_after_kerberos is false
and fails when true.
There doesn't seem to be a good reason why the value of
fallback_after_kerberos should initialise the krb5 ccache or not.
It would seems that krb5 cache should be setup for creds
for *any* kerberos auth (whether fallback is enabled or not)

Partial patch from <will69@gmx.de> (see bug referenced below)
Bug: https://bugzilla.samba.org/show_bug.cgi?id=15789
Signed-off-by: Noel Power <noel.power@suse.com>
Reviewed-by: Andreas Schneider <asn@samba.org>
7 weeks agoauth/credentials: Fix regression with --use-kerberos=desired for smbclient
Noel Power [Mon, 19 Jan 2026 15:46:59 +0000 (15:46 +0000)] 
auth/credentials: Fix regression with --use-kerberos=desired for smbclient

As part of the gse_krb5 processing the following call chain

gensec_gse_client_start()
  ---> gensec_kerberos_possible()
         ---> cli_credentials_authentication_requested()

gensec_kerberos_possible()  will always fail when
cli_credentials_get_kerberos_state() returns CRED_USE_KERBEROS_DESIRED

It seems since use kerberos == desired is the default that it isn't
necessary to see if credentials were modified to indicated authentication
was requested. gensec_kerberos_possible() should afaics return true
if kerberos is desired OR required (regardless of whether credentials
were requested)

This commit removes the knownfail associated with this bug.

Bug: https://bugzilla.samba.org/show_bug.cgi?id=15789
Signed-off-by: <noel.power@suse.com>
Reviewed-by: Andreas Schneider <asn@samba.org>
7 weeks agoselftest: Update tests to use --use-kereros=desired|required no creds
Noel Power [Fri, 13 Feb 2026 11:54:46 +0000 (11:54 +0000)] 
selftest: Update tests to use --use-kereros=desired|required no creds

Add tests to call smbclient without passing credentials to
demonstrate failure with --use-kereros=desired

Also add knownfail

Signed-off-by: Noel Power <noel.power@suse.com>
Reviewed-by: Andreas Schneider <asn@samba.org>
7 weeks agovfs_ceph: Handle absolute paths with dirfd = ‑1 in openat
Anoop C S [Sun, 15 Feb 2026 04:27:18 +0000 (09:57 +0530)] 
vfs_ceph: Handle absolute paths with dirfd = ‑1 in openat

ceph_openat() does not follow the convention of ignoring 'dirfd' when
the pathname is absolute, resulting in EBADF. As a temporary workaround,
handle this special case in cephwrap_openat() by calling ceph_open()
directly instead of ceph_openat().

Signed-off-by: Anoop C S <anoopcs@samba.org>
Reviewed-by: John Mulligan <jmulligan@redhat.com>
Reviewed-by: Shwetha K Acharya <Shwetha.K.Acharya@ibm.com>
Reviewed-by: Xavi Hernandez <xhernandez@redhat.com>
Autobuild-User(master): Anoop C S <anoopcs@samba.org>
Autobuild-Date(master): Mon Feb 16 17:27:03 UTC 2026 on atb-devel-224

7 weeks agos3:utils: Fix misleading recursive flag in smbget error message
DESKTOP-73571CJ\User [Wed, 11 Feb 2026 08:04:33 +0000 (16:04 +0800)] 
s3:utils: Fix misleading recursive flag in smbget error message

The error message in smbget incorrectly instructs users to use "-R" for
recursive downloads.

In recent Samba versions, the "-R" flag was repurposed for
"--name-resolve" to align with other tools. The correct flag for
recursion is now "--recursive". This mismatch causes confusion as using
"-R" triggers a parameter parsing error rather than enabling recursion.

This patch updates the error string to correctly suggest "--recursive"
instead of "-R".

RN: smbget: Fix error message suggesting wrong flag for recursion.

Signed-off-by: Hugo Chia hugochiaxyz.nus@gmail.com
Reviewed-by: Anoop C S <anoopcs@samba.org>
Reviewed-by: John Mulligan <jmulligan@redhat.com>
Autobuild-User(master): Anoop C S <anoopcs@samba.org>
Autobuild-Date(master): Mon Feb 16 15:37:04 UTC 2026 on atb-devel-224

7 weeks agovfs: Simplify xattr_tdb_getxattrat_send()
Volker Lendecke [Mon, 9 Feb 2026 12:10:07 +0000 (13:10 +0100)] 
vfs: Simplify xattr_tdb_getxattrat_send()

Avoid calls to SMB_VFS_CHDIR and SMB_VFS_GETWD by using
openat_pathref_fsp()

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
Autobuild-User(master): Anoop C S <anoopcs@samba.org>
Autobuild-Date(master): Sun Feb 15 11:45:52 UTC 2026 on atb-devel-224

7 weeks agoparam: Simplify check_ad_dc_required_mods()
Volker Lendecke [Mon, 9 Feb 2026 12:00:22 +0000 (13:00 +0100)] 
param: Simplify check_ad_dc_required_mods()

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
7 weeks agolib: Avoid DEBUGADDs in debug_lock_order()
Volker Lendecke [Tue, 3 Feb 2026 17:58:06 +0000 (18:58 +0100)] 
lib: Avoid DEBUGADDs in debug_lock_order()

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
7 weeks agoauth: Align integer types
Volker Lendecke [Tue, 3 Feb 2026 17:49:31 +0000 (18:49 +0100)] 
auth: Align integer types

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
7 weeks agoauth: Avoid a DEBUGADD in kerberos_decode_pac()
Volker Lendecke [Tue, 3 Feb 2026 17:47:34 +0000 (18:47 +0100)] 
auth: Avoid a DEBUGADD in kerberos_decode_pac()

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
7 weeks agoauth: Refactor check_pac_checksum to improve readability
Volker Lendecke [Tue, 3 Feb 2026 17:34:44 +0000 (18:34 +0100)] 
auth: Refactor check_pac_checksum to improve readability

Use ARRAY_SIZE over terminating array element. Easier to read for me.

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
7 weeks agolib: Remove unused str_list_show
Volker Lendecke [Mon, 26 Jan 2026 12:00:11 +0000 (13:00 +0100)] 
lib: Remove unused str_list_show

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
7 weeks agosmbd: Modernize a DEBUG
Volker Lendecke [Sat, 31 Jan 2026 10:09:59 +0000 (11:09 +0100)] 
smbd: Modernize a DEBUG

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
7 weeks agosmbd: Simplify smbd_do_qfsinfo()
Volker Lendecke [Thu, 29 Jan 2026 15:18:06 +0000 (16:18 +0100)] 
smbd: Simplify smbd_do_qfsinfo()

We can rely on fsp now, avoid passing and using fname

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
7 weeks agosmbd: smbd_do_qfsinfo() can rely on an fsp now, use fsp's stat info
Volker Lendecke [Thu, 29 Jan 2026 15:16:30 +0000 (16:16 +0100)] 
smbd: smbd_do_qfsinfo() can rely on an fsp now, use fsp's stat info

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
7 weeks agolib: Streamline finding a file's block device for quota code
Volker Lendecke [Mon, 26 Jan 2026 13:01:05 +0000 (14:01 +0100)] 
lib: Streamline finding a file's block device for quota code

Use /proc/self/mountinfo to find the block device a file is mounted on for
quotactl purposes.

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
7 weeks agolib: Convert sys_path_to_bdev to talloc
Volker Lendecke [Mon, 26 Jan 2026 14:35:39 +0000 (15:35 +0100)] 
lib: Convert sys_path_to_bdev to talloc

Next we'll have sys_dev_to_bdev based on string_list_make, which is
talloc-based.

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
7 weeks agovfs: Add "fsp" to SMB_VFS_SET_QUOTA
Volker Lendecke [Wed, 11 Feb 2026 11:29:54 +0000 (12:29 +0100)] 
vfs: Add "fsp" to SMB_VFS_SET_QUOTA

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
7 weeks agovfs: Change SMB_VFS_GET_QUOTA to take a fsp instead of a name
Volker Lendecke [Wed, 28 Jan 2026 14:57:37 +0000 (15:57 +0100)] 
vfs: Change SMB_VFS_GET_QUOTA to take a fsp instead of a name

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
7 weeks agosmbd: Make disk_quotas() take a fsp
Volker Lendecke [Wed, 28 Jan 2026 14:26:47 +0000 (15:26 +0100)] 
smbd: Make disk_quotas() take a fsp

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
7 weeks agovfs: Remove SMB_VFS_STATVFS
Volker Lendecke [Tue, 27 Jan 2026 17:59:09 +0000 (18:59 +0100)] 
vfs: Remove SMB_VFS_STATVFS

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
7 weeks agosmbd: Call FSTATVFS instead of STATVFS
Volker Lendecke [Tue, 27 Jan 2026 17:46:30 +0000 (18:46 +0100)] 
smbd: Call FSTATVFS instead of STATVFS

To get the fs capabilities we do an openat_pathref_fsp_dot(), which
also avoids a call to SMB_VFS_STAT there.

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
7 weeks agovfs: Add SMB_VFS_FSTATVFS
Volker Lendecke [Wed, 19 Nov 2025 13:05:49 +0000 (14:05 +0100)] 
vfs: Add SMB_VFS_FSTATVFS

To replace SMB_VFS_STATVFS next

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
7 weeks agovfs_gpfs: Use fstatvfs() instead of the path-based statvfs()
Volker Lendecke [Tue, 27 Jan 2026 17:37:02 +0000 (18:37 +0100)] 
vfs_gpfs: Use fstatvfs() instead of the path-based statvfs()

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
7 weeks agovfs_default: Use fstatvfs() instead of the path-based statvfs()
Volker Lendecke [Tue, 27 Jan 2026 17:36:40 +0000 (18:36 +0100)] 
vfs_default: Use fstatvfs() instead of the path-based statvfs()

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
7 weeks agolib: Remove sys_fsusage()
Volker Lendecke [Fri, 23 Jan 2026 18:08:16 +0000 (19:08 +0100)] 
lib: Remove sys_fsusage()

"man statfs" on Linux says "Unless you need the f_type field, you
should use the standard statvfs(3) interface instead.". We don't need
f_type to get disk usage :-)

We lose some of the older compatibility layers. Should these ever be
needed again, we should add them to lib/util/statvfs.c an the single
interface to retrieve file system usage info.

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
7 weeks agosmbserver: Convert callers of sys_fsusage to sys_statvfs
Volker Lendecke [Fri, 23 Jan 2026 17:52:00 +0000 (18:52 +0100)] 
smbserver: Convert callers of sys_fsusage to sys_statvfs

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
7 weeks agolib: Add statvfs2fsusage
Volker Lendecke [Fri, 23 Jan 2026 17:34:57 +0000 (18:34 +0100)] 
lib: Add statvfs2fsusage

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
7 weeks agolib: Move statvfs.[ch] to lib/util
Volker Lendecke [Fri, 23 Jan 2026 15:40:09 +0000 (16:40 +0100)] 
lib: Move statvfs.[ch] to lib/util

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
7 weeks agosmbd: Give statvfs.c its own header file
Volker Lendecke [Sun, 23 Nov 2025 07:09:10 +0000 (08:09 +0100)] 
smbd: Give statvfs.c its own header file

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
7 weeks agosmbd: Add sys_fstatvfs()
Volker Lendecke [Sun, 23 Nov 2025 06:59:55 +0000 (07:59 +0100)] 
smbd: Add sys_fstatvfs()

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
7 weeks agosmbd: Factor out initializing vfs_statvfs_struct from system info
Volker Lendecke [Sun, 23 Nov 2025 06:52:46 +0000 (07:52 +0100)] 
smbd: Factor out initializing vfs_statvfs_struct from system info

Patch is a bit confusing due to all the #ifdefs, but it's just some
code shuffling to prepare for the next patch.

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
7 weeks agovfs: Change SMB_VFS_DISK_FREE to take a fsp
Volker Lendecke [Tue, 27 Jan 2026 17:15:53 +0000 (18:15 +0100)] 
vfs: Change SMB_VFS_DISK_FREE to take a fsp

The modules that change the pathname need a synthetic_pathref now for
the SMB_VFS_NEXT_DISK_FREE() call. I think this is the right thing to
do anyway, as this goes through all the path scrutiny and does not
depend on direct multi-component paths anymore.

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
7 weeks agotorture: Avoid a few casts in vfstest
Volker Lendecke [Tue, 27 Jan 2026 17:08:10 +0000 (18:08 +0100)] 
torture: Avoid a few casts in vfstest

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
7 weeks agosmbd: Make sys_disk_free() take a fsp
Volker Lendecke [Tue, 27 Jan 2026 12:38:56 +0000 (13:38 +0100)] 
smbd: Make sys_disk_free() take a fsp

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
7 weeks agosmbd: Make get_dfree_info() take a fsp
Volker Lendecke [Tue, 27 Jan 2026 12:21:24 +0000 (13:21 +0100)] 
smbd: Make get_dfree_info() take a fsp

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
7 weeks agosmbd: Use fsp->fsp_name in smbd_do_qfsinfo()
Volker Lendecke [Tue, 27 Jan 2026 12:15:44 +0000 (13:15 +0100)] 
smbd: Use fsp->fsp_name in smbd_do_qfsinfo()

Both callers pass an fsp now, use that for get_dfree_info()

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
7 weeks agosmbd/smb1: Open a pathref's fsp_name to get_dfree_info()
Volker Lendecke [Tue, 27 Jan 2026 11:45:46 +0000 (12:45 +0100)] 
smbd/smb1: Open a pathref's fsp_name to get_dfree_info()

Preparation for converting get_dfree_info() to directly take a fsp.

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
7 weeks agosmbd/smb1: send pathref fsp of share root to smbd_do_qfsinfo
Volker Lendecke [Fri, 23 Jan 2026 12:16:09 +0000 (13:16 +0100)] 
smbd/smb1: send pathref fsp of share root to smbd_do_qfsinfo

The other caller of this already passes one.

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
7 weeks agosmbd: Slightly simplify smbd_smb2_lock_send()
Volker Lendecke [Mon, 1 Sep 2025 15:16:42 +0000 (17:16 +0200)] 
smbd: Slightly simplify smbd_smb2_lock_send()

"<bool> == false" just looks wrong :-)

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
7 weeks agoadouble: Use strequal_m instead of strcasecmp_m
Volker Lendecke [Fri, 16 Jan 2026 14:55:47 +0000 (15:55 +0100)] 
adouble: Use strequal_m instead of strcasecmp_m

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
7 weeks agosmbd: Simply return status instead of special-casing errors
Volker Lendecke [Tue, 20 Jan 2026 11:51:29 +0000 (12:51 +0100)] 
smbd: Simply return status instead of special-casing errors

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
7 weeks agoprofiling: Fix a comment
Volker Lendecke [Tue, 20 Jan 2026 10:35:24 +0000 (11:35 +0100)] 
profiling: Fix a comment

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
7 weeks agolib: Simplify conv_str_size
Volker Lendecke [Mon, 26 Jan 2026 09:43:44 +0000 (10:43 +0100)] 
lib: Simplify conv_str_size

conv_str_size_error() from lib/util has almost the same code

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
7 weeks agolib: Move conv_str_bool() to its only user
Volker Lendecke [Sun, 25 Jan 2026 10:17:30 +0000 (11:17 +0100)] 
lib: Move conv_str_bool() to its only user

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
7 weeks agolib: Avoid an "else", we return in the if-branch
Volker Lendecke [Sun, 25 Jan 2026 09:33:19 +0000 (10:33 +0100)] 
lib: Avoid an "else", we return in the if-branch

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
7 weeks agolib: Remove very little used wrapper conv_str_u64()
Volker Lendecke [Sun, 25 Jan 2026 09:28:45 +0000 (10:28 +0100)] 
lib: Remove very little used wrapper conv_str_u64()

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
7 weeks agolib: Clean up includes in util_strlist_v3.c
Volker Lendecke [Sun, 25 Jan 2026 09:19:08 +0000 (10:19 +0100)] 
lib: Clean up includes in util_strlist_v3.c

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
7 weeks agosmbd: Save a few lines with direct smb_file_time initialization
Volker Lendecke [Sat, 31 Jan 2026 10:59:34 +0000 (11:59 +0100)] 
smbd: Save a few lines with direct smb_file_time initialization

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
7 weeks agovfs_full_audit: Print NTSTATUS errors
Volker Lendecke [Mon, 2 Feb 2026 18:21:29 +0000 (19:21 +0100)] 
vfs_full_audit: Print NTSTATUS errors

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
7 weeks agopython: Align py_ntstatus.c with py_hresult.c
Volker Lendecke [Fri, 30 Jan 2026 11:21:45 +0000 (12:21 +0100)] 
python: Align py_ntstatus.c with py_hresult.c

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
7 weeks agopython: Simplify py_hresult.c
Volker Lendecke [Fri, 30 Jan 2026 11:20:48 +0000 (12:20 +0100)] 
python: Simplify py_hresult.c

CFLAGS=-Og did not finish this file. Also, this makes the file a few
hundred kilobytes smaller

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
7 weeks agotorture: Align an integer type
Volker Lendecke [Wed, 28 Jan 2026 15:03:00 +0000 (16:03 +0100)] 
torture: Align an integer type

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
7 weeks agothird_party: init vars for -Og on debian testing
Volker Lendecke [Tue, 3 Feb 2026 13:35:20 +0000 (14:35 +0100)] 
third_party: init vars for -Og on debian testing

When building on debian testing with -Og, gcc complains about these
two uninitialized variables. Not sure how to deal with those, I'm
happy to re-fix if a new upstream patch overwrites them.

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
7 weeks agoclang-format: Cut at 79 chars
Volker Lendecke [Fri, 20 Sep 2024 20:55:36 +0000 (22:55 +0200)] 
clang-format: Cut at 79 chars

As discussed at FOSDEM with Andreas: This makes emacs a bit nicer when
running on a 161x40 terminal in two columns :-)

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
7 weeks agolib/pthreadpool: Add some pthreadpool_pipe unit tests
Noel Power [Tue, 27 Jan 2026 11:50:38 +0000 (11:50 +0000)] 
lib/pthreadpool: Add some pthreadpool_pipe unit tests

Reviewed-by: Gary Lockyer <gary@catalyst.net.nz>
Signed-off-by: Noel Power <noel.power@suse.com>
Autobuild-User(master): Noel Power <npower@samba.org>
Autobuild-Date(master): Fri Feb 13 11:22:34 UTC 2026 on atb-devel-224

7 weeks agolib/pthreadpool: Incorrect error state detected for dup2 call
Noel Power [Fri, 30 Jan 2026 13:23:53 +0000 (13:23 +0000)] 
lib/pthreadpool: Incorrect error state detected for dup2 call

Reviewed-by: Gary Lockyer <gary@catalyst.net.nz>
Signed-off-by: Noel Power <noel.power@suse.com>
8 weeks agobootstrap: fix bootstrap in opensuse container
Michael Adam [Mon, 9 Feb 2026 17:17:13 +0000 (18:17 +0100)] 
bootstrap: fix bootstrap in opensuse container

bootstrap.sh was failing in an opensuse container due to a conflict
of which with the pre-installed busybox-which package.

forcing resolution with zypper fixes the bootstrapping.

Thanks to Andreas Scheider for the hint!

Signed-off-by: Michael Adam <obnox@samba.org>
Reviewed-by: Andreas Schneider <asn@samba.org>
Autobuild-User(master): Andreas Schneider <asn@cryptomilk.org>
Autobuild-Date(master): Wed Feb 11 10:30:26 UTC 2026 on atb-devel-224

8 weeks agoctdb-daemon: Hex encode key before logging
Martin Schwenke [Sun, 8 Feb 2026 23:03:04 +0000 (10:03 +1100)] 
ctdb-daemon: Hex encode key before logging

This currently causes binary data to be logged.

Instead, conditionally hex encode the key in a similar style to the
way it is done in dbwrap_ctdb.c:fetch_locked_internal().  In this
case, the key is truncated if the debug level is less than 10.`

Signed-off-by: Martin Schwenke <mschwenke@ddn.com>
Reviewed-by: Volker Lendecke <vl@samba.org>
Autobuild-User(master): Volker Lendecke <vl@samba.org>
Autobuild-Date(master): Mon Feb  9 12:21:08 UTC 2026 on atb-devel-224

8 weeks agoutil: Avoid signed/unsigned integer comparisons
Martin Schwenke [Sun, 22 Sep 2024 06:37:50 +0000 (16:37 +1000)] 
util: Avoid signed/unsigned integer comparisons

../../../lib/util/sys_rw.c: In function ‘sys_pread_full’:
../../../lib/util/sys_rw.c:219:25: warning: comparison of integer expressions of different signedness: ‘ssize_t’ {aka ‘long int’} and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare]
  219 |                 if (ret > curr_count) {
      |                         ^
../../../lib/util/sys_rw.c: In function ‘sys_pwrite_full’:
../../../lib/util/sys_rw.c:282:25: warning: comparison of integer expressions of different signedness: ‘ssize_t’ {aka ‘long int’} and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare]
  282 |                 if (ret > curr_count) {
      |                         ^
../../../lib/util/sys_rw.c: In function ‘sys_write_full’:
../../../lib/util/sys_rw.c:321:25: warning: comparison of integer expressions of different signedness: ‘ssize_t’ {aka ‘long int’} and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare]
  321 |                 if (ret > curr_count) {
      |                         ^

Signed-off-by: Martin Schwenke <mschwenke@ddn.com>
Reviewed-by: Volker Lendecke <vl@samba.org>
8 weeks agoctdb-tests: Fix tunables test when run as root
Martin Schwenke [Sat, 7 Feb 2026 04:51:06 +0000 (15:51 +1100)] 
ctdb-tests: Fix tunables test when run as root

When run as root, this test's expected output is missing:

  Loading tunables from ...

at the top.

Fix this by using the correct function to construct the expected
output.

Signed-off-by: Martin Schwenke <mschwenke@ddn.com>
Reviewed-by: Volker Lendecke <vl@samba.org>
8 weeks agoctdb-doc: Improve private and public network documentation
Martin Schwenke [Wed, 14 Jan 2026 04:30:55 +0000 (15:30 +1100)] 
ctdb-doc: Improve private and public network documentation

Signed-off-by: Martin Schwenke <mschwenke@ddn.com>
Reviewed-by: Volker Lendecke <vl@samba.org>
8 weeks agoctdb-common: Use if_nametoindex(3) to check if interface exists
Martin Schwenke [Mon, 12 Jan 2026 07:05:23 +0000 (18:05 +1100)] 
ctdb-common: Use if_nametoindex(3) to check if interface exists

This is much simpler than looping through the array.  It will also
find an interface by altname, which could be very useful.

Signed-off-by: Martin Schwenke <mschwenke@ddn.com>
Reviewed-by: Volker Lendecke <vl@samba.org>
8 weeks agoctdb-common: Align integer type
Martin Schwenke [Sun, 16 Nov 2025 23:20:11 +0000 (10:20 +1100)] 
ctdb-common: Align integer type

[132/416] Compiling ctdb/common/run_event.c
../../common/run_event.c: In function ‘run_event_fail’:
../../common/run_event.c:806:50: warning: comparison of integer expressions of different signedness: ‘id_t’ {aka ‘unsigned int’} and ‘int’ [-Wsign-compare]
  806 |         if (script->summary == -ETIMEDOUT && pid != -1) {
      |                                                  ^~

This is actually due to a typo in commit
20e9f203627752c4c1934e4bc0776e26c0dfb00e.  It should always have been
pid_t.

Signed-off-by: Martin Schwenke <mschwenke@ddn.com>
Reviewed-by: Volker Lendecke <vl@samba.org>
8 weeks agoctdb-scripts: Move NFS lock manager grace hack to callout
Martin Schwenke [Thu, 1 May 2025 23:15:08 +0000 (09:15 +1000)] 
ctdb-scripts: Move NFS lock manager grace hack to callout

The "startipreallocate" event was added so the NFS-Ganesha callout
could use it to start grace.  Use it for Linux kernel lock manager
grace too.

Signed-off-by: Martin Schwenke <mschwenke@ddn.com>
Reviewed-by: Volker Lendecke <vl@samba.org>
8 weeks agoctdb-scripts: Reformat with "shfmt -w -p -i 0 -fn"
Martin Schwenke [Sun, 6 Jul 2025 06:20:10 +0000 (16:20 +1000)] 
ctdb-scripts: Reformat with "shfmt -w -p -i 0 -fn"

Best reviewed with "git show -w" or similar.

I now have a pre-commit hook to avoid formatting breakage.  :-)

Signed-off-by: Martin Schwenke <mschwenke@ddn.com>
Reviewed-by: Volker Lendecke <vl@samba.org>
2 months agomanpages: Update NET ADS KERBEROS KINIT manpage
Pavel Filipenský [Thu, 5 Feb 2026 15:04:25 +0000 (16:04 +0100)] 
manpages: Update NET ADS KERBEROS KINIT manpage

Signed-off-by: Pavel Filipenský <pfilipensky@samba.org>
Reviewed-by: Andreas Schneider <asn@samba.org>
Autobuild-User(master): Pavel Filipensky <pfilipensky@samba.org>
Autobuild-Date(master): Thu Feb  5 21:11:13 UTC 2026 on atb-devel-224

2 months agos3:utils: 'net ads kerberos kinit' should use also default ccache name from krb5...
Pavel Filipenský [Tue, 3 Feb 2026 11:53:10 +0000 (12:53 +0100)] 
s3:utils: 'net ads kerberos kinit' should use also default ccache name from krb5.conf

This is re-introducing the behavior from samba-4.20 where both these
commands operated on the same ccache (default_ccache_name in
[libdefaults] section of krb5.conf)

 'net ads kerberos kinit -P'
 'klist'

 With samba-4.21 it no longer works, 'net ads kerberos kinit -P'
 fallbacks to 'MEMORY:net' (which is of a very limited use, ticket
 cannot be used by other process) and klist finds no ticket.

 The order is changed from:

    --use-krb5-ccache
    env "KRB5CCNAME"
    "MEMORY:net"

to ("MEMORY:net" is removed):

    --use-krb5-ccache
    env "KRB5CCNAME"
    default_ccache_name

'--use-krb5-ccache=MEMORY:net' can be used to validate the credentials.

Use smb_force_krb5_cc_default_name() instead of krb5_cc_default_name()
because of commit:
1ca6fb5 make sure krb5_cc_default[_name]() is no longer used directly

Signed-off-by: Pavel Filipenský <pfilipensky@samba.org>
Reviewed-by: Andreas Schneider <asn@samba.org>
2 months agos3/printing: Fix leaking parsed options
Noel Power [Thu, 29 Jan 2026 15:12:52 +0000 (15:12 +0000)] 
s3/printing: Fix leaking parsed options

BUG: https://bugzilla.samba.org/show_bug.cgi?id=15979
Signed-off-by: Noel Power <noel.power@suse.com>
Reviewed-by: Gary Lockyer <gary@catalyst.net.nz>
Autobuild-User(master): Noel Power <npower@samba.org>
Autobuild-Date(master): Fri Jan 30 11:09:44 UTC 2026 on atb-devel-224

2 months agos3/printing: Fix leaked mem ctx returned from talloc_new
Noel Power [Thu, 29 Jan 2026 11:00:26 +0000 (11:00 +0000)] 
s3/printing: Fix leaked mem ctx returned from talloc_new

BUG: https://bugzilla.samba.org/show_bug.cgi?id=15979
Signed-off-by: Noel Power <noel.power@suse.com>
Reviewed-by: Gary Lockyer <gary@catalyst.net.nz>
2 months agoWHATSNEW document JSON audit logging changes
Gary Lockyer [Tue, 27 Jan 2026 21:39:19 +0000 (10:39 +1300)] 
WHATSNEW document JSON audit logging changes

Document the JSON audit logging changes.
  - leading spaces before opening '{' removed
  - any embedded '\n' chars replaced with spaces

BUG: https://bugzilla.samba.org/show_bug.cgi?id=15898

Signed-off-by: Gary Lockyer <gary@catalyst.net.nz>
Reviewed-by: Volker Lendecke <vl@samba.org>
Autobuild-User(master): Douglas Bagnall <dbagnall@samba.org>
Autobuild-Date(master): Thu Jan 29 00:33:43 UTC 2026 on atb-devel-224

2 months agolib:audit_logging JSON remove leading spaces
Gary Lockyer [Thu, 22 Jan 2026 20:33:10 +0000 (09:33 +1300)] 
lib:audit_logging JSON remove leading spaces

Remove the leading spaces in JSON audit lines.

BUG: https://bugzilla.samba.org/show_bug.cgi?id=15898

Signed-off-by: Gary Lockyer <gary@catalyst.net.nz>
Reviewed-by: Volker Lendecke <vl@samba.org>
2 months agolib:util:debug tests for JSON logging macros
Gary Lockyer [Thu, 22 Jan 2026 20:27:54 +0000 (09:27 +1300)] 
lib:util:debug tests for JSON logging macros

Add unit tests for the new JSON debugging macros DBGJSON and DBGJSONC

BUG: https://bugzilla.samba.org/show_bug.cgi?id=15898

Signed-off-by: Gary Lockyer <gary@catalyst.net.nz>
Reviewed-by: Volker Lendecke <vl@samba.org>
2 months agolib:util:debug Logging macros for JSON output
Gary Lockyer [Thu, 22 Jan 2026 20:25:13 +0000 (09:25 +1300)] 
lib:util:debug Logging macros for JSON output

Add new debug macros for outputting JSON log lines

BUG: https://bugzilla.samba.org/show_bug.cgi?id=15898

Signed-off-by: Gary Lockyer <gary@catalyst.net.nz>
Reviewed-by: Volker Lendecke <vl@samba.org>
2 months agos3:rpc_client: Fix memory leak opening local named pipe
Samuel Cabrero [Mon, 26 Jan 2026 12:36:02 +0000 (13:36 +0100)] 
s3:rpc_client: Fix memory leak opening local named pipe

If no local server name was passed to rpc_pipe_open_local_np() then
get_myname() was called with NULL talloc context instead of the
current stackframe.

This was causing an increase of memory usage on busy servers with long-living
rpcd_* workers.

BUG: https://bugzilla.samba.org/show_bug.cgi?id=15979

Signed-off-by: Samuel Cabrero <scabrero@samba.org>
Reviewed-by: Noel Power <noel.power@suse.com>
Reviewed-by: Volker Lendecke <vl@samba.org>
Autobuild-User(master): Volker Lendecke <vl@samba.org>
Autobuild-Date(master): Tue Jan 27 10:13:40 UTC 2026 on atb-devel-224

2 months agosmbd: in contend_dirleases() don't bother checking when not enabled
Ralph Boehme [Fri, 23 Jan 2026 10:27:28 +0000 (11:27 +0100)] 
smbd: in contend_dirleases() don't bother checking when not enabled

BUG: https://bugzilla.samba.org/show_bug.cgi?id=15984

Signed-off-by: Ralph Boehme <slow@samba.org>
Reviewed-by: Martin Schwenke <martins@samba.org>
Autobuild-User(master): Ralph Böhme <slow@samba.org>
Autobuild-Date(master): Mon Jan 26 12:09:13 UTC 2026 on atb-devel-224

2 months agos3:libads: Allocate cli_credentials on a stackframe
Pavel Filipenský [Thu, 22 Jan 2026 13:27:09 +0000 (14:27 +0100)] 
s3:libads: Allocate cli_credentials on a stackframe

This fixes:
ERROR: talloc_free with references at ../../source3/libads/ldap_utils.c:158

What happens:

* `struct cli_credentials *creds` is allocated on `ads` talloc context
* gensec_set_credentials() creates a talloc_reference to `creds`
* TALLOC_FREE(creds) sees two parents and complains

All other code is using temporary talloc_stackframe() for `creds`.
Do it here as well.

Signed-off-by: Pavel Filipenský <pfilipensky@samba.org>
Reviewed-by: Stefan Metzmacher <metze@samba.org>
Autobuild-User(master): Stefan Metzmacher <metze@samba.org>
Autobuild-Date(master): Fri Jan 23 11:20:28 UTC 2026 on atb-devel-224

2 months agodocs-xml:smb.conf: Fix "ctdbd socket" documentation
Martin Schwenke [Wed, 21 Jan 2026 23:41:54 +0000 (10:41 +1100)] 
docs-xml:smb.conf: Fix "ctdbd socket" documentation

This has been wrong for a very long time.  I only noticed it just
now...  :-(

BUG: https://bugzilla.samba.org/show_bug.cgi?id=15977

Signed-off-by: Martin Schwenke <mschwenke@ddn.com>
Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Autobuild-User(master): Martin Schwenke <martins@samba.org>
Autobuild-Date(master): Thu Jan 22 23:06:20 UTC 2026 on atb-devel-224

2 months agos3:libads: Separate use of ads->config.flags for NBT_* and DS_* values
Pavel Filipenský [Sun, 18 Jan 2026 00:04:11 +0000 (01:04 +0100)] 
s3:libads: Separate use of ads->config.flags for NBT_* and DS_* values

Use of ads->config.flags is overloaded.

It is used to:

- pass DS_* flags down to cldap_netlogon()
- store the server_type from NETLOGON_SAM_LOGON_RESPONSE

Both cases use different values and cannot be combined.
E.g. flags mess up with value 0x00000080

NBT_SERVER_CLOSEST  0x00000080
DS_PDC_REQUIRED     0x00000080

Let's create two separate flags

nbt_server_type server_flags; /* NBT_* cldap flags identifying the services. */
uint32 required_flags; /* DS_* - Netlogon flags */

BUG: https://bugzilla.samba.org/show_bug.cgi?id=15972

Signed-off-by: Pavel Filipenský <pfilipensky@samba.org>
Reviewed-by: Andreas Schneider <asn@samba.org>
Autobuild-User(master): Pavel Filipensky <pfilipensky@samba.org>
Autobuild-Date(master): Thu Jan 22 09:14:25 UTC 2026 on atb-devel-224

2 months agos3:libads: Reset ads->config.flags in ads_disconnect()
Pavel Filipenský [Mon, 19 Jan 2026 13:33:52 +0000 (14:33 +0100)] 
s3:libads: Reset ads->config.flags in ads_disconnect()

This is doing the same thing in ads_disconnect() as commit
a26f535 Clear previous CLDAP ping flags when reusing the ADS_STRUCT
did in ads_current_time()

In this case we:

1) found cached ADS_STRUCT which already has ads->config.flags set:

  lookup_groupmem()
    ads_cached_connection()
      ads_cached_connection_reuse()

2) started search which immediately timeouts (the cached conn. was dead)

  ads_do_search_retry_internal()
    ldap_search_with_timeout() - IO_TIMEOUT

3) Retry loop finds a new DC and tries to connect

  ads_do_search_retry_internal()
    ads_disconnect()
    ads_find_dc()
    ads_try_connect()
      netlogon_pings()
        check_cldap_reply_required_flags()

4) check_cldap_reply_required_flags() fails since ads->config.flags
   (stored possibly long time ago) contain:

   NBT_SERVER_CLOSEST  0x00000080
     which is misinterpreted as:
   DS_PDC_REQUIRED     0x00000080

   the newly found DC is not PDC (we asked for DS_ONLY_LDAP_NEEDED)
   and since previous DC had NBT_SERVER_CLOSEST we want DS_PDC_REQUIRED
   and fail.

We should anyway avoid mixing independent namespaces  NBT_* and DS_*
in the same flag.
Next commit will do that.

BUG: https://bugzilla.samba.org/show_bug.cgi?id=15972

Signed-off-by: Pavel Filipenský <pfilipensky@samba.org>
Reviewed-by: Andreas Schneider <asn@samba.org>
2 months agoprinting: Fix compilation error for native 32-bit time_t
Michael Tokarev [Wed, 21 Jan 2026 05:05:15 +0000 (10:35 +0530)] 
printing: Fix compilation error for native 32-bit time_t

commit#e9a7dce599eb12d broke samba compilation for 32-bit time_t.

BUG: https://bugzilla.samba.org/show_bug.cgi?id=15976
Used correct pointer type to fix the warning to fix compialtion.

Pair-Programmed-With: Vinit Agnihotri <vagnihot@redhat.com>
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
Signed-off-by: Vinit Agnihotri <vagnihot@redhat.com>
Reviewed-by: Günther Deschner <gd@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Autobuild-User(master): Volker Lendecke <vl@samba.org>
Autobuild-Date(master): Wed Jan 21 19:23:29 UTC 2026 on atb-devel-224

2 months agos3:libads: Do not reduce the page size in case of immediate timeouts
Pavel Filipenský [Mon, 19 Jan 2026 18:50:37 +0000 (19:50 +0100)] 
s3:libads: Do not reduce the page size in case of immediate timeouts

Signed-off-by: Pavel Filipenský <pfilipensky@samba.org>
Reviewed-by: Andreas Schneider <asn@samba.org>
Autobuild-User(master): Andreas Schneider <asn@cryptomilk.org>
Autobuild-Date(master): Wed Jan 21 11:38:40 UTC 2026 on atb-devel-224

2 months agos3:libads: Fix trailing whitespaces in ldap_utils.c
Pavel Filipenský [Mon, 19 Jan 2026 18:47:25 +0000 (19:47 +0100)] 
s3:libads: Fix trailing whitespaces in ldap_utils.c

Signed-off-by: Pavel Filipenský <pfilipensky@samba.org>
Reviewed-by: Andreas Schneider <asn@samba.org>