]> git.ipfire.org Git - thirdparty/samba.git/log
thirdparty/samba.git
5 days agogpfs: Fetch GPFS DOS attributes asynchronously master
Pawan Sahu [Fri, 20 Jun 2025 03:42:01 +0000 (05:42 +0200)] 
gpfs: Fetch GPFS DOS attributes asynchronously

This change introduces asynchronous handling of GPFS DOS attributes
using the pthreadpool infrastructure. This is part of the overall
effort to improve SMB directory listing performance in environments
with GPFS as the backend filesystem.

Signed-off-by: Pawan Sahu <Pawan.Sahu1@ibm.com>
Reviewed-by: Vinit Agnihotri <vagnihot@redhat.com>
Reviewed-by: Christof Schmitt <cs@samba.org>
Reviewed-by: Guenther Deschner <gd@samba.org>
Autobuild-User(master): Günther Deschner <gd@samba.org>
Autobuild-Date(master): Tue Sep 30 13:08:16 UTC 2025 on atb-devel-224

5 days agosmbd: Add vfswrap_check_async_with_thread_creds() helper
Pawan Sahu [Wed, 4 Jun 2025 06:13:08 +0000 (08:13 +0200)] 
smbd: Add vfswrap_check_async_with_thread_creds() helper

Move the logic that checks for sufficient threads and per-thread credential
support into a dedicated helper function: vfswrap_check_async_with_thread_creds().

Signed-off-by: Pawan Sahu <Pawan.Sahu1@ibm.com>
Reviewed-by: Vinit Agnihotri <vagnihot@redhat.com>
Reviewed-by: Christof Schmitt <cs@samba.org>
Reviewed-by: Guenther Deschner <gd@samba.org>
5 days agosmbd: Introduce struct vfs_pthread_pool_job_state
Pawan Sahu [Fri, 9 May 2025 06:19:03 +0000 (23:19 -0700)] 
smbd: Introduce struct vfs_pthread_pool_job_state

Refactor the vfswrap_getattrat_state structure by extracting the members
specific to pthreadpool job handling into a new struct vfs_pthread_pool_job_state.
This improves code clarity and allows reuse of the job-related
state in other contexts.

Signed-off-by: Pawan Sahu <Pawan.Sahu1@ibm.com>
Reviewed-by: Vinit Agnihotri <vagnihot@redhat.com>
Reviewed-by: Christof Schmitt <cs@samba.org>
Reviewed-by: Guenther Deschner <gd@samba.org>
6 days agolib: Add a safeguard for misconfigured directory permissions gitlab/master
Volker Lendecke [Fri, 26 Sep 2025 11:56:37 +0000 (13:56 +0200)] 
lib: Add a safeguard for misconfigured directory permissions

An installation I've seen had the path to the msg.lock directory set
up such that only root could access it. We're calling
serverid_exists() as non-root, so this is a pretty bad error. Log this
as an error in syslog by default and assume this PID still exists.

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
Autobuild-User(master): Volker Lendecke <vl@samba.org>
Autobuild-Date(master): Mon Sep 29 08:14:22 UTC 2025 on atb-devel-224

6 days agolib: Remove an #include "includes.h"
Volker Lendecke [Fri, 26 Sep 2025 11:52:14 +0000 (13:52 +0200)] 
lib: Remove an #include "includes.h"

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
7 days agolib/util: Fix CID 1414760 - Resource leak
Shweta Sodani [Mon, 22 Sep 2025 09:06:58 +0000 (14:36 +0530)] 
lib/util: Fix CID 1414760 - Resource leak

If read is failed torture_assert could return without freeing the t.
Fixing the leak.

Signed-off-by: Shweta Sodani <ssodani@redhat.com>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Vinit Agnihotri <vagnihot@redhat.com>
Reviewed-by: Anoop C S <anoopcs@samba.org>
Autobuild-User(master): Anoop C S <anoopcs@samba.org>
Autobuild-Date(master): Sun Sep 28 09:30:56 UTC 2025 on atb-devel-224

9 days agolib:crypto: Use gnutls_cipher_decrypt3() if possible
Andreas Schneider [Wed, 10 Sep 2025 08:12:02 +0000 (10:12 +0200)] 
lib:crypto: Use gnutls_cipher_decrypt3() if possible

Signed-off-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Stefan Metzmacher <metze@samba.org>
Autobuild-User(master): Andreas Schneider <asn@cryptomilk.org>
Autobuild-Date(master): Fri Sep 26 18:38:57 UTC 2025 on atb-devel-224

9 days agolib:crypto: Use gnutls_cipher_encrypt3() if possible
Andreas Schneider [Wed, 10 Sep 2025 08:07:40 +0000 (10:07 +0200)] 
lib:crypto: Use gnutls_cipher_encrypt3() if possible

Signed-off-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Stefan Metzmacher <metze@samba.org>
9 days agos3/rpc_server/samr: fix CID 1509008 - time_t truncation
Xavi Hernandez [Thu, 25 Sep 2025 08:42:30 +0000 (10:42 +0200)] 
s3/rpc_server/samr: fix CID 1509008 - time_t truncation

The call to get_time_t_max() doesn't work as expected when time_t is a
64-bits type and the returned value is stored into a 32-bits unsigned
integer. Truncating a 64-bits constant to a 32-bits number won't return,
in general, the same value we would get if time_t were a 32-bits type.
It's unsafe and could even return small numbers very far from the
intended maximum.

This patch completely avoids the need to use get_time_t_max() by
assuming that when pwd_max_age is 0 or -1, it means no maximum age is
defined, so the password never expires and we don't need to do any
comparison.

A small adjustment has also been made to avoid calling
pdb_get_account_policy() if it's not necessary.

Signed-off-by: Xavi Hernandez <xhernandez@gmail.com>
Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Reviewed-by: Andreas Schneider <asn@samba.org>
Autobuild-User(master): Douglas Bagnall <dbagnall@samba.org>
Autobuild-Date(master): Fri Sep 26 05:23:30 UTC 2025 on atb-devel-224

10 days agoctdb-common: Only respect CTDB_SOCKET in CTDB_TEST_MODE
Martin Schwenke [Fri, 15 Aug 2025 05:01:58 +0000 (15:01 +1000)] 
ctdb-common: Only respect CTDB_SOCKET in CTDB_TEST_MODE

At the moment CTDB_SOCKET can be used outside of test mode even though
nobody should do this.  So, no longer allow this.

This means ensuring CTDB_TEST_MODE is set in the in the
"clusteredmember" selftest environment, so that CTDB_SOCKET is
respected there..

Details...

The associated use of chown(2) and chmod(2), used to secure the socket
in ctdb_daemon.c:ux_socket_bind(), potentially enables a symlink race
attack.  However, the chown(2) is currently not done in test mode, so
restricting the use of CTDB_SOCKET to test mode solves the potential
security issue.

Also, sprinkle warnings about use of CTDB_TEST_MODE in appropriate
places, just to attempt to limit unwanted behaviour.

An alternative could be to use the socket file descriptor with
fchown(2) and fchmod(2).  However, these system calls are not well
defined on sockets.  Still, this was previously done in CTDB's early
days (using the poorly documented method where they are allowed in
Linux (only?) before calling bind(2)).  It was removed (due to
portability issues, via commits
cf1056df94943ddcc3d547d4533b4bc04f57f265 and
2da3fe1b175a468fdff4aa4f65627facd2c28394) and replaced with the
current post-bind chown(2) and chmod(2).

I would like to remove the CTDB_SOCKET environment variable entirely,
since setting CTDB_TEST_MODE and CTDB_BASE covers all reasonable test
environments.  However, I have a feeling that people use it for
interactive testing, and that can still be done in CTDB_TEST_MODE.

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

Signed-off-by: Martin Schwenke <mschwenke@ddn.com>
Reported-by: *GUIAR OQBA * <techokba@gmail.com>
Reviewed-by: Volker Lendecke <vl@samba.org>
Autobuild-User(master): Volker Lendecke <vl@samba.org>
Autobuild-Date(master): Thu Sep 25 09:02:06 UTC 2025 on atb-devel-224

10 days agoctdb-common: Factor out checking of CTDB_TEST_MODE
Martin Schwenke [Fri, 15 Aug 2025 04:59:49 +0000 (14:59 +1000)] 
ctdb-common: Factor out checking of CTDB_TEST_MODE

For use elsewhere.

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

Signed-off-by: Martin Schwenke <mschwenke@ddn.com>
10 days agoctdb-pmda: Do not directly support CTDB_SOCKET environment variable
Martin Schwenke [Fri, 15 Aug 2025 02:08:47 +0000 (12:08 +1000)] 
ctdb-pmda: Do not directly support CTDB_SOCKET environment variable

Always use whatever CTDB uses in the current environment.

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

Signed-off-by: Martin Schwenke <mschwenke@ddn.com>
Reviewed-by: Volker Lendecke <vl@samba.org>
10 days agoctdb-ib: Replace uses of sprintf()
Martin Schwenke [Thu, 18 Sep 2025 05:24:32 +0000 (15:24 +1000)] 
ctdb-ib: Replace uses of sprintf()

An unbounded sprintf() into ibw_lasterr (a 512-byte static data
buffer) can potentially cause overflow into other BSS data.

However, the risk is effectively minimised to zero due to:

* This code not being executed at all in ctdbd.  It is only executed
  in the accompanying test code:

  - The function ibw_process_init_attrs() can cause a buffer overflow
    if its 2nd argument, nattr, is non-zero and one of the structs in
    the array pointed to by its 1st argument, attr, contains a name
    member that is too long.

  - ibw_process_init_attrs() is only called by ibw_init(), which also
    has attr and nattr as its 1st and 2nd args, and it just passes them
    straight through.

  - ibw_init() is called in 2 places:

    1. In ibwrapper_test.c, which is targeted test code.

    2. In ibw_ctdb_init.c:ctdb_ibw_init(), which is the initialisation
       function use to initialise the IB transport in ctdbd.  Here, NULL
       and 0 are passed as the relevant arguments to ibw_init().  Both
       arguments are flagged with TODO comments.  :-)

* This code is not built by default (--enable-infiniband is
  required).

  It appears that Debian and Red Hat family Linux distributions have
  never distributed binaries with this enabled.

* Documentation (ctdb(7) and the wiki) recommends that private
  addresses are configured on a private network that is separate from
  client networks.  So, even if the TODOs were done and the relevant
  arguments could come off the wire, the attack surface should be very
  small.

Only the instance with %s in the format is potentially problematic.
The others can not overflow the current 512 byte buffer.  However, it
makes sense to change them all in case someone foolishly reduces the
size of the buffer and makes other changes so that the buffer can be
overflowed in ctdbd.

Now, will static analysers complain that the result of snprintf() is
not checked even though snprintf() always NUL-terminates?

Signed-off-by: Martin Schwenke <mschwenke@ddn.com>
Reported-by: Marcos “Tr0p” Tolosa <marcos.tolosa@owasp.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
10 days agos4:kdc:sdb_to_hdb: Fix CID 1665466
Gary Lockyer [Sun, 21 Sep 2025 21:04:02 +0000 (09:04 +1200)] 
s4:kdc:sdb_to_hdb: Fix CID 1665466

Fix:
*** CID 1665466:         Resource leaks  (RESOURCE_LEAK)
/source4/kdc/sdb_to_hdb.c: 482             in sdb_entry_to_hdb_entry()
476      }
477
478      h->context = ske;
479      if (ske != NULL) {
480      ske->kdc_entry = h;
481      }
>>>     CID 1665466:         Resource leaks  (RESOURCE_LEAK)
>>>     Variable "kt" going out of scope leaks the storage "kt.val" points to.
482      return 0;
483     error:
484      free_hdb_entry(h);
485      return rc;

This is almost certainly a false positive as when kt.len == 0, kt.val will be
NULL. But changing the condition to kt.val != NULL, will not do any harm.

Signed-off-by: Gary Lockyer <gary@catalyst.net.nz>
Reviewed-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
Autobuild-User(master): Anoop C S <anoopcs@samba.org>
Autobuild-Date(master): Thu Sep 25 07:13:28 UTC 2025 on atb-devel-224

11 days agopassdb: Fixing CID 1509029 for time_t in DEBUG statement
Rabinarayan Panigrahi [Wed, 17 Sep 2025 11:32:26 +0000 (17:02 +0530)] 
passdb: Fixing CID 1509029 for time_t in DEBUG statement

In the most likely scenario of time_t being 64 bit signed, we do the
typecast to intmax_t to also log negative values correctly.

Signed-off-by: Rabinarayan Panigrahi <rapanigr@redhat.com>
Reviewed-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Reviewed-by: Anoop C S <anoopcs@samba.org>
Reviewed-by: Vinit Agnihotri <vagnihot@redhat.com>
Autobuild-User(master): Anoop C S <anoopcs@samba.org>
Autobuild-Date(master): Wed Sep 24 06:44:50 UTC 2025 on atb-devel-224

12 days agonsswitch/libwbclient: Fix CID #1034858, #1034859, #1034860 Resource leak
Shweta Sodani [Tue, 23 Sep 2025 05:43:26 +0000 (11:13 +0530)] 
nsswitch/libwbclient: Fix CID #1034858, #1034859, #1034860 Resource leak

Signed-off-by: Shweta Sodani <ssodani@redhat.com>
Reviewed-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): Tue Sep 23 12:53:10 UTC 2025 on atb-devel-224

13 days agonsswitch/libwbclient: Fix CID #1034861 Resource leak
Shweta Sodani [Fri, 19 Sep 2025 13:11:49 +0000 (18:41 +0530)] 
nsswitch/libwbclient: Fix CID #1034861 Resource leak

Signed-off-by: Shweta Sodani <ssodani@redhat.com>
Reviewed-by: Vinit Agnihotri <vagnihot@redhat.com>
Reviewed-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): Mon Sep 22 14:46:13 UTC 2025 on atb-devel-224

13 days agovfs_ceph_new: Use integer value instead of boolean
Anoop C S [Mon, 22 Sep 2025 05:41:46 +0000 (11:11 +0530)] 
vfs_ceph_new: Use integer value instead of boolean

ceph_ll_fsync() API[1] accepts the third and final argument as integer
and not a boolean value.

[1] https://github.com/ceph/ceph/blob/main/src/include/cephfs/libcephfs.h#L2041

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

Signed-off-by: Anoop C S <anoopcs@samba.org>
Reviewed-by: Guenther Deschner <gd@samba.org>
Autobuild-User(master): Günther Deschner <gd@samba.org>
Autobuild-Date(master): Mon Sep 22 12:24:35 UTC 2025 on atb-devel-224

13 days agovfs_ceph_new: dont use ceph_ll_nonblocking_readv_writev for fsync_send
Shachar Sharon [Wed, 17 Sep 2025 11:25:27 +0000 (14:25 +0300)] 
vfs_ceph_new: dont use ceph_ll_nonblocking_readv_writev for fsync_send

Commit 4ae922413844 ("vfs_ceph_new: use libcephfs nonblocking API for
async-io ops") uses ceph_ll_nonblocking_readv_writev for fsync_send.
However, the actual behaviour of libcephfs when using this API with
'fsync=true' is not async-fsync, as one may assume. Instead,
vfs_ceph_new should use a nonblocking fsync API[1], once it is ready.

Removed the usage of ceph_ll_nonblocking_readv_writev for fsync.

Bug: https://bugzilla.samba.org/show_bug.cgi?id=15919

[1] https://github.com/ceph/ceph/commit/c88a21c30d8b265adb152f631d2629d29539f7b7

Signed-off-by: Shachar Sharon <ssharon@redhat.com>
Reviewed-by: Anoop C S <anoopcs@samba.org>
Reviewed-by: Xavi Hernandez <xhernandez@redhat.com>
Reviewed-by: Guenther Deschner <gd@samba.org>
2 weeks agoFix crash in DLZ plugin for incorrect setup
Alexander Bokovoy [Fri, 19 Sep 2025 13:23:41 +0000 (16:23 +0300)] 
Fix crash in DLZ plugin for incorrect setup

When bind is not yet setup properly, logging errors should be done
through the temporary handle.

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

Signed-off-by: Alexander Bokovoy <ab@samba.org>
Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Autobuild-User(master): Douglas Bagnall <dbagnall@samba.org>
Autobuild-Date(master): Sat Sep 20 06:49:37 UTC 2025 on atb-devel-224

2 weeks agos4:kdc/db-glue: Use realloc_p macro
Mike L [Tue, 16 Sep 2025 09:17:25 +0000 (11:17 +0200)] 
s4:kdc/db-glue: Use realloc_p macro

Signed-off-by: Mike L. <cl.jeremy@gmail.com>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Andreas Schneider <asn@samba.org>
Autobuild-User(master): Volker Lendecke <vl@samba.org>
Autobuild-Date(master): Wed Sep 17 13:19:25 UTC 2025 on atb-devel-224

2 weeks agos4:kdc:sdb_to_hdb key trust support
Gary Lockyer [Mon, 11 Aug 2025 00:00:03 +0000 (12:00 +1200)] 
s4:kdc:sdb_to_hdb key trust support

Convert key trust public keys contained in the clients sdb records, and add
to the HDB_Ext_KeyTrust extension on the clients HDB record

Signed-off-by: Gary Lockyer <gary@catalyst.net.nz>
Reviewed-by: Jennifer Sutton <jennifersutton@catalyst.net.nz>
Autobuild-User(master): Douglas Bagnall <dbagnall@samba.org>
Autobuild-Date(master): Tue Sep 16 23:23:42 UTC 2025 on atb-devel-224

2 weeks agotests:krb5 Add key trust tests
Gary Lockyer [Sun, 10 Aug 2025 23:44:14 +0000 (11:44 +1200)] 
tests:krb5 Add key trust tests

Add tests to verify Key Trust authentication

Signed-off-by: Gary Lockyer <gary@catalyst.net.nz>
Reviewed-by: Jennifer Sutton <jennifersutton@catalyst.net.nz>
2 weeks agos4:kdc:db-glue binary dn changes
Gary Lockyer [Mon, 11 Aug 2025 04:09:46 +0000 (16:09 +1200)] 
s4:kdc:db-glue binary dn changes

msDS-KeyCredentialLink will be stored as a BinaryDN and not a binary blob.
This commit updates db-glue and it's tests accordingly.

Signed-off-by: Gary Lockyer <gary@catalyst.net.nz>
Reviewed-by: Jennifer Sutton <jennifersutton@catalyst.net.nz>
2 weeks agos4:auth:sam Fix key trust attribute name
Gary Lockyer [Sun, 10 Aug 2025 22:28:35 +0000 (10:28 +1200)] 
s4:auth:sam Fix key trust attribute name

Use the correct attribute name for the key trust credentials,
msDS-KeyCredentialLink.

Signed-off-by: Gary Lockyer <gary@catalyst.net.nz>
Reviewed-by: Jennifer Sutton <jennifersutton@catalyst.net.nz>
2 weeks agosmbd: Fixing CID 1509052 for time_t in DEBUG statement
Rabinarayan Panigrahi [Mon, 1 Sep 2025 06:21:09 +0000 (11:51 +0530)] 
smbd: Fixing CID 1509052 for time_t in DEBUG statement

Fix: typecast changing from (unsigned)convert_timespec_to_time_t  to
(intmax_t)convert_timespec_to_time_t can hold epoch seconds
after 2038 year

Signed-off-by: Rabinarayan Panigrahi <rapanigr@redhat.com>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Reviewed-by: Vinit Agnihotri <vagnihot@redhat.com>
Reviewed-by: Anoop C S <anoopcs@samba.org>
Reviewed-by: Guenther Deschner <gd@samba.org>
Autobuild-User(master): Anoop C S <anoopcs@samba.org>
Autobuild-Date(master): Tue Sep 16 17:45:30 UTC 2025 on atb-devel-224

2 weeks agolibsmb: Fixing CID 1509051 for time_t in DEBUG statement
Rabinarayan Panigrahi [Mon, 1 Sep 2025 07:09:07 +0000 (12:39 +0530)] 
libsmb: Fixing CID 1509051 for time_t in DEBUG statement

Fix: typecast changing from (unsigned int)expire  to
(intmax_t)expire as intmax_t can hold epoch seconds
after 2038 year

Signed-off-by: Rabinarayan Panigrahi <rapanigr@redhat.com>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Reviewed-by: Vinit Agnihotri <vagnihot@redhat.com>
Reviewed-by: Anoop C S <anoopcs@samba.org>
Reviewed-by: Guenther Deschner <gd@samba.org>
2 weeks agonmbd: Fixing CID 1509046 for time_t in DEBUG statement
Rabinarayan Panigrahi [Mon, 1 Sep 2025 08:39:33 +0000 (14:09 +0530)] 
nmbd: Fixing CID 1509046 for time_t in DEBUG statement

Fix: typecast changing from (int)browc->death_time  to
(intmax_t)browc->death_time as intmax_t can hold epoch seconds
after 2038 year

Signed-off-by: Rabinarayan Panigrahi <rapanigr@redhat.com>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Reviewed-by: Vinit Agnihotri <vagnihot@redhat.com>
Reviewed-by: Anoop C S <anoopcs@samba.org>
Reviewed-by: Guenther Deschner <gd@samba.org>
2 weeks agobuildtools: fixed broken build with FIPS-enabled host
Shachar Sharon [Thu, 7 Aug 2025 13:42:07 +0000 (16:42 +0300)] 
buildtools: fixed broken build with FIPS-enabled host

MD5 is not supported on FIPS-enabled machines, but the current
work-around is broken. One the other hand, latest Waf has proper
fixup (use sha1 as a replacement to md5) so there is no need for Samba
specific code.

Tested on CentOS-stream-9 with FIPS (Python-3.9.23).

Signed-off-by: Shachar Sharon <ssharon@redhat.com>
Reviewed-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Alexander Bokovoy <ab@samba.org>
2 weeks agosmbd: Fix CID 1665417, UNUSED_VALUE in openat_pathref_fsp_dot()
Anoop C S [Thu, 11 Sep 2025 06:11:25 +0000 (11:41 +0530)] 
smbd: Fix CID 1665417, UNUSED_VALUE in openat_pathref_fsp_dot()

Rearrange how the open flags are defined so as to make Coverity happy
about it.

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

Signed-off-by: Anoop C S <anoopcs@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Autobuild-User(master): Anoop C S <anoopcs@samba.org>
Autobuild-Date(master): Mon Sep 15 15:44:38 UTC 2025 on atb-devel-224

3 weeks agoctdb: Fix redefinitoin of pmdaResult
Andreas Schneider [Fri, 12 Sep 2025 13:37:38 +0000 (15:37 +0200)] 
ctdb: Fix redefinitoin of pmdaResult

../../ctdb/utils/pmda/pmda_ctdb.c:52:9: warning: 'pmdaResult' redefined
   52 | #define pmdaResult pmResult
      |         ^~~~~~~~~~
In file included from ../../ctdb/utils/pmda/pmda_ctdb.c:35:
/usr/include/pcp/pmda.h:30:9: note: this is the location of the previous definition
   30 | #define pmdaResult pmResult_v2
      |         ^~~~~~~~~~

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

Signed-off-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Alexander Bokovoy <ab@samba.org>
Autobuild-User(master): Andreas Schneider <asn@cryptomilk.org>
Autobuild-Date(master): Sat Sep 13 08:12:42 UTC 2025 on atb-devel-224

3 weeks agowinbind: Initialize idmap in winbindd_getgroups
Volker Lendecke [Fri, 12 Sep 2025 16:19:29 +0000 (18:19 +0200)] 
winbind: Initialize idmap in winbindd_getgroups

Bug: https://bugzilla.samba.org/show_bug.cgi?id=15914
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Ralph Boehme <slow@samba.org>
Autobuild-User(master): Volker Lendecke <vl@samba.org>
Autobuild-Date(master): Sat Sep 13 05:44:20 UTC 2025 on atb-devel-224

3 weeks agotdbtorture: Fix CID 1034815,1034816: protect from out-of-bounds access
Shachar Sharon [Mon, 8 Sep 2025 05:19:23 +0000 (08:19 +0300)] 
tdbtorture: Fix CID 1034815,1034816: protect from out-of-bounds access

A user may provide a non-valid input value for 'num_procs' (negative).
Avoid potential out-of-bound access by forcing 'unsigned int' value
(Coverity: OVERRUN).

Signed-off-by: Shachar Sharon <ssharon@redhat.com>
Reviewed-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): Thu Sep 11 19:06:16 UTC 2025 on atb-devel-224

3 weeks agothird_party: Bump version for socket_wrapper
Andreas Schneider [Thu, 11 Sep 2025 10:39:49 +0000 (12:39 +0200)] 
third_party: Bump version for socket_wrapper

Commit be007c2cf41085a8648965fc904f37d25d35a453 forgot to do that.

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

Signed-off-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Stefan Metzmacher <metze@samba.org>
Autobuild-User(master): Andreas Schneider <asn@cryptomilk.org>
Autobuild-Date(master): Thu Sep 11 17:05:00 UTC 2025 on atb-devel-224

3 weeks agos4:auth: Fix 'no delegation' logic in gensec_gssapi_start()
Andreas Schneider [Wed, 10 Sep 2025 13:13:37 +0000 (15:13 +0200)] 
s4:auth: Fix 'no delegation' logic in gensec_gssapi_start()

This fixes samba4.ntvfs.cifs.krb5.base.lock test with MIT Kerberos.

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

Signed-off-by: Andreas Schneider <asn@samba.org>
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Pair-Programmed-With: Stefan Metzmacher <metze@samba.org>

Reviewed-by: Alexander Bokovoy <ab@samba.org>
3 weeks agos4:auth: Fix trailing white spaces in gensec_gssapi.c
Andreas Schneider [Wed, 10 Sep 2025 13:13:13 +0000 (15:13 +0200)] 
s4:auth: Fix trailing white spaces in gensec_gssapi.c

Signed-off-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Alexander Bokovoy <ab@samba.org>
3 weeks agos4:tests: Use the command line option '--use-kerberos'
Andreas Schneider [Tue, 9 Sep 2025 08:12:42 +0000 (10:12 +0200)] 
s4:tests: Use the command line option '--use-kerberos'

'--kerberos' is deprecated

Signed-off-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Alexander Bokovoy <ab@samba.org>
3 weeks agorpc_server: Remove the source4 implementation of wkssvc
Stefan Metzmacher [Thu, 3 Jul 2025 08:35:32 +0000 (10:35 +0200)] 
rpc_server: Remove the source4 implementation of wkssvc

This was pretty much a stub anyway

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Guenther Deschner <gd@samba.org>
Autobuild-User(master): Günther Deschner <gd@samba.org>
Autobuild-Date(master): Thu Sep 11 15:16:17 UTC 2025 on atb-devel-224

3 weeks agowkssvc3: Return RNG_ERROR where source4 does it
Volker Lendecke [Thu, 3 Jul 2025 08:32:43 +0000 (10:32 +0200)] 
wkssvc3: Return RNG_ERROR where source4 does it

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Guenther Deschner <gd@samba.org>
3 weeks agowkssvc3: Return ACCESS_DENIED where source4 does it
Volker Lendecke [Thu, 3 Jul 2025 08:27:27 +0000 (10:27 +0200)] 
wkssvc3: Return ACCESS_DENIED where source4 does it

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Guenther Deschner <gd@samba.org>
3 weeks agosamr: Fix CID 1035506: close slave fd (REASOURCE_LEAK)
Shachar Sharon [Tue, 19 Aug 2025 08:34:13 +0000 (11:34 +0300)] 
samr: Fix CID 1035506: close slave fd (REASOURCE_LEAK)

In the case of (unlikely) failure of dup2 on one of the standard file
descriptors, close 'slave' fd upon return.

Signed-off-by: Shachar Sharon <ssharon@redhat.com>
Reviewed-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
Autobuild-User(master): Anoop C S <anoopcs@samba.org>
Autobuild-Date(master): Thu Sep 11 13:29:37 UTC 2025 on atb-devel-224

3 weeks agoselftest: Do not use wrappers for samba.tests.docs
Andreas Schneider [Wed, 10 Sep 2025 11:31:11 +0000 (13:31 +0200)] 
selftest: Do not use wrappers for samba.tests.docs

We will run into issues with Python 3.14 passing sockets for
concurrently running tasks.

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

Signed-off-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
Autobuild-User(master): Anoop C S <anoopcs@samba.org>
Autobuild-Date(master): Wed Sep 10 19:21:55 UTC 2025 on atb-devel-224

3 weeks agosource3/passdb: Follow up to the fix for CID 1508970
Anoop C S [Wed, 10 Sep 2025 11:45:59 +0000 (17:15 +0530)] 
source3/passdb: Follow up to the fix for CID 1508970

Fixing another occurrence for the same CID in the same DEBUG statement.
See the previous commit c25a5a26a1cba698420fb64e23bee3b52540b21b.

Signed-off-by: Anoop C S <anoopcs@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Autobuild-User(master): Anoop C S <anoopcs@samba.org>
Autobuild-Date(master): Wed Sep 10 15:23:08 UTC 2025 on atb-devel-224

3 weeks agosource3/utils: Follow up to the fix for CID 1508980
Anoop C S [Wed, 10 Sep 2025 11:41:49 +0000 (17:11 +0530)] 
source3/utils: Follow up to the fix for CID 1508980

Fixing two other occurrences for the same CID in the same file.
See previous commit ba0a748654b11bff5caaf3e8aca0ab7a5bd7022c.

Signed-off-by: Anoop C S <anoopcs@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
3 weeks agoutils: Fixing CID 1509038 for time_t in DEBUG statement
Rabinarayan Panigrahi [Fri, 5 Sep 2025 04:32:55 +0000 (10:02 +0530)] 
utils: Fixing CID 1509038 for time_t in DEBUG statement

Fix: typecast changing from (int)nt_time_to_unix_abs to
(intmax_t)nt_time_to_unix_abs) as intmax_t can hold
epoch seconds after 2038 year

Signed-off-by: Rabinarayan Panigrahi <rapanigr@redhat.com>
Reviewed-by: Signed-off-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Andreas Schneider <asn@samba.org>
Autobuild-User(master): Andreas Schneider <asn@cryptomilk.org>
Autobuild-Date(master): Wed Sep 10 10:38:24 UTC 2025 on atb-devel-224

3 weeks agoutils: Fixing CID 1509034 for time_t in DEBUG statement
Rabinarayan Panigrahi [Fri, 5 Sep 2025 04:15:20 +0000 (09:45 +0530)] 
utils: Fixing CID 1509034 for time_t in DEBUG statement

Fix: typecast changing from (int)nt_time_to_unix_abs(&i12->lockout_window)
to (intmax_t)nt_time_to_unix_abs(&i12->lockout_window)
as intmax_t can hold epoch seconds after 2038 year

Signed-off-by: Rabinarayan Panigrahi <rapanigr@redhat.com>
Reviewed-by: Signed-off-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Andreas Schneider <asn@samba.org>
3 weeks agoutils: Fixing CID 1508980 for time_t in DEBUG statement
Rabinarayan Panigrahi [Fri, 5 Sep 2025 03:53:39 +0000 (09:23 +0530)] 
utils: Fixing CID 1508980 for time_t in DEBUG statement

Fix: typecast changing from (int)t  to (intmax_t)t
as intmax_t can hold epoch seconds after 2038 year

Signed-off-by: Rabinarayan Panigrahi <rapanigr@redhat.com>
Reviewed-by: Signed-off-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Andreas Schneider <asn@samba.org>
3 weeks agopassdb: Fixing CID 1508971 for time_t in DEBUG statement
Rabinarayan Panigrahi [Thu, 4 Sep 2025 14:22:05 +0000 (19:52 +0530)] 
passdb: Fixing CID 1508971 for time_t in DEBUG statement

Fix: typecast changing from (unsigned int)badtime  to (intmax_t)badtime
as intmax_t can hold epoch seconds after 2038 year

Signed-off-by: Rabinarayan Panigrahi <rapanigr@redhat.com>
Reviewed-by: Signed-off-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Andreas Schneider <asn@samba.org>
3 weeks agopassdb: Fixing CID 1508970 for time_t in DEBUG statement
Rabinarayan Panigrahi [Thu, 4 Sep 2025 12:57:00 +0000 (18:27 +0530)] 
passdb: Fixing CID 1508970 for time_t in DEBUG statement

Fix: typecast changing from (unsigned int)entry->bad_password_time  to
(intmax_t)entry->bad_password_time as intmax_t can hold epoch seconds
after 2038 year

Signed-off-by: Rabinarayan Panigrahi <rapanigr@redhat.com>
Reviewed-by: Signed-off-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Andreas Schneider <asn@samba.org>
3 weeks agowinbindd: Fixing CID 1508950 for time_t in DEBUG statement
Rabinarayan Panigrahi [Thu, 4 Sep 2025 12:43:31 +0000 (18:13 +0530)] 
winbindd: Fixing CID 1508950 for time_t in DEBUG statement

Fix: typecast changing from (uint32_t)domain->last_seq_check  to
(intmax_t)domain->last_seq_check as intmax_t can hold epoch seconds
after 2038 year

Signed-off-by: Rabinarayan Panigrahi <rapanigr@redhat.com>
Reviewed-by: Signed-off-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Andreas Schneider <asn@samba.org>
3 weeks agonmbd: Fixing CID 1508948 for time_t in DEBUG statement
Rabinarayan Panigrahi [Thu, 4 Sep 2025 10:21:18 +0000 (15:51 +0530)] 
nmbd: Fixing CID 1508948 for time_t in DEBUG statement

Fix: typecast changing from (int)namerec->data.death_time  to
(intmax_t)namerec->data.death_time as intmax_t can hold epoch seconds
after 2038 year

Signed-off-by: Rabinarayan Panigrahi <rapanigr@redhat.com>
Reviewed-by: Signed-off-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Andreas Schneider <asn@samba.org>
3 weeks agonmbd: Fixing CID 1509039 for time_t in DEBUG statement
Rabinarayan Panigrahi [Fri, 5 Sep 2025 05:01:16 +0000 (10:31 +0530)] 
nmbd: Fixing CID 1509039 for time_t in DEBUG statement

Fix: typecast changing from (int)t to (intmax_t)t as intmax_t
can hold epoch seconds after 2038 year

Signed-off-by: Rabinarayan Panigrahi <rapanigr@redhat.com>
Reviewed-by: Signed-off-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Andreas Schneider <asn@samba.org>
3 weeks agosmbd: Fix Bug 15897
Volker Lendecke [Sun, 7 Sep 2025 19:57:27 +0000 (21:57 +0200)] 
smbd: Fix Bug 15897

Don't leak smb_dirname->fsp->fh->fd == -1 coming from
openat_pathref_fsp_lcomp().

Bug: https://bugzilla.samba.org/show_bug.cgi?id=15897
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
Autobuild-User(master): Volker Lendecke <vl@samba.org>
Autobuild-Date(master): Wed Sep 10 09:37:33 UTC 2025 on atb-devel-224

3 weeks agosmbd: Add openat_pathref_fsp_dot()
Volker Lendecke [Sun, 7 Sep 2025 19:56:30 +0000 (21:56 +0200)] 
smbd: Add openat_pathref_fsp_dot()

Very simple reopen of a directory as pathref. Too much magic in
openat_pathref_fsp_lcomp() leads to Bug 15897:
openat_pathref_fsp_lcomp() can return NT_STATUS_OK but still leave the
file descriptor at -1 for msdfs and smb1 posix reasons. When using it
in filename_convert_dirfsp_nosymlink() this bites us, the -1 can leak
into vfswrap_openat(). Avoid any magic by directly calling
SMB_VFS_OPENAT() with maximum NOFOLLOW/etc safety for this use case
and fail when this does not work.

This adds another flavor of openat_pathref_fsp, and at some point we
need to consolidate them again.

Bug: https://bugzilla.samba.org/show_bug.cgi?id=15897
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
3 weeks agolib: Fix the build on FreeBSD
Volker Lendecke [Sun, 7 Sep 2025 19:23:07 +0000 (21:23 +0200)] 
lib: Fix the build on FreeBSD

FreeBSD does not need crypt.h for crypt_r(). Patch from
Peter Eriksson <pen@lysator.liu.se> via
https://bugzilla.samba.org/show_bug.cgi?id=15897#c8

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
3 weeks agobootstrap: Use slim images for Debian
Andreas Schneider [Fri, 8 Aug 2025 07:57:59 +0000 (09:57 +0200)] 
bootstrap: Use slim images for Debian

Signed-off-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Martin Schwenke <martin@meltin.net>
Autobuild-User(master): Martin Schwenke <martins@samba.org>
Autobuild-Date(master): Wed Sep 10 03:13:07 UTC 2025 on atb-devel-224

3 weeks agobootstrap: Use minimal image for Fedora
Andreas Schneider [Fri, 8 Aug 2025 07:50:05 +0000 (09:50 +0200)] 
bootstrap: Use minimal image for Fedora

This will reduce the container image size.

Signed-off-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Martin Schwenke <martin@meltin.net>
3 weeks agobootstrap: Remove unused ubuntu1804 images
Andreas Schneider [Fri, 8 Aug 2025 08:05:10 +0000 (10:05 +0200)] 
bootstrap: Remove unused ubuntu1804 images

Signed-off-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Martin Schwenke <martin@meltin.net>
3 weeks agos3:script: Avoid UnicodeDecodeError for samba-log-parser processing whole directory
Pavel Filipenský [Wed, 9 Jul 2025 20:38:02 +0000 (22:38 +0200)] 
s3:script: Avoid UnicodeDecodeError for samba-log-parser processing whole directory

When log directory contains zipped files like
old/log.rpcd_spoolss-20250831.gz we get error.
We want to ignore such files.

$ samba-log-parser --traceid 6 --merge-by-timestamp
Traceback (most recent call last):
  File "/usr/bin/samba-log-parser", line 382, in <module>
    main()
    ~~~~^^
  File "/usr/bin/samba-log-parser", line 311, in main
    process_file(
    ~~~~~~~~~~~~^
        record_list,
        ^^^^^^^^^^^^
    ...<3 lines>...
        options.traceid,
        ^^^^^^^^^^^^^^^^
    )
    ^
  File "/usr/bin/samba-log-parser", line 92, in process_file
    data = infile.readlines()
  File "<frozen codecs>", line 325, in decode
UnicodeDecodeError: 'utf-8' codec can't decode byte 0x8b in position 1: invalid start byte

Signed-off-by: Pavel Filipenský <pfilipensky@samba.org>
Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Autobuild-User(master): Pavel Filipensky <pfilipensky@samba.org>
Autobuild-Date(master): Tue Sep  9 13:50:00 UTC 2025 on atb-devel-224

3 weeks agoprinting: Fix an uninitialized read
Volker Lendecke [Mon, 8 Sep 2025 16:19:01 +0000 (18:19 +0200)] 
printing: Fix an uninitialized read

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

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Björn Baumbach <bb@sernet.de>
Autobuild-User(master): Björn Baumbach <bb@sernet.de>
Autobuild-Date(master): Tue Sep  9 11:06:34 UTC 2025 on atb-devel-224

3 weeks agos4:torture: Fix stack buffer overflow in test_dirlease_oplocks()
Andreas Schneider [Tue, 9 Sep 2025 07:24:47 +0000 (09:24 +0200)] 
s4:torture: Fix stack buffer overflow in test_dirlease_oplocks()

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

Signed-off-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Autobuild-User(master): Volker Lendecke <vl@samba.org>
Autobuild-Date(master): Tue Sep  9 09:27:33 UTC 2025 on atb-devel-224

3 weeks agoctdb: fix build against PCP 7.0.0
Alexander Bokovoy [Wed, 3 Sep 2025 12:42:46 +0000 (15:42 +0300)] 
ctdb: fix build against PCP 7.0.0

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

Signed-off-by: Alexander Bokovoy <ab@samba.org>
Reviewed-by: Martin Schwenke <martin@meltin.net>
Autobuild-User(master): Martin Schwenke <martins@samba.org>
Autobuild-Date(master): Mon Sep  8 04:47:37 UTC 2025 on atb-devel-224

3 weeks agothird_party:heimdal: import lorikeet-heimdal-202508180154
Gary Lockyer [Mon, 18 Aug 2025 01:59:17 +0000 (13:59 +1200)] 
third_party:heimdal: import lorikeet-heimdal-202508180154

Import lorikeet-heimdal-202508180154 commits:
    beffefde5c6767589603cca98065378250eaae2c
    2073647157adb2791aa8b524e88e1a2d47268e5a
    dedeffb96b24288f6c3387cf48d82c7b9c3bbbf7

Add support for MS Key Trust Authentication

Signed-off-by: Gary Lockyer <gary@catalyst.net.nz>
Reviewed-by: Jennifer Sutton <jennifersutton@catalyst.net.nz>
Autobuild-User(master): Jennifer Sutton <jsutton@samba.org>
Autobuild-Date(master): Mon Sep  8 02:27:53 UTC 2025 on atb-devel-224

4 weeks agos3:shadow_copy: CID 1449539 talloc_realloc and error handling
Shwetha K Acharya [Mon, 1 Sep 2025 08:50:39 +0000 (14:20 +0530)] 
s3:shadow_copy: CID 1449539 talloc_realloc and error handling

- Replace TALLOC_REALLOC with talloc_realloc inorder to handle
  the integer overflow better.
- Rename tlabels as tmp_labels for clarity.
- Use shadow_copy_data->labels directly after successful
  reallocation instead of relying on a temporary variable.
- Ensure that  shadow_copy_data->num_volumes is set to 0 and
  shadow_copy_data->labels is freed on error paths inorder to
  address the potential resource leaks.

Fixes: CID_1449539
Signed-off-by: Shwetha K Acharya <Shwetha.K.Acharya@ibm.com>
Reviewed-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): Sat Sep  6 10:34:27 UTC 2025 on atb-devel-224

4 weeks agos3:net: Pass down the server from cmdline to sync_pw2keytabs()
Andreas Schneider [Mon, 28 Jul 2025 08:43:36 +0000 (10:43 +0200)] 
s3:net: Pass down the server from cmdline to sync_pw2keytabs()

This makes sure that during 'net ads join' the keytab create code
- sync_pw2keytabs() talks to the same DC at what the machine account
was created.

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

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

Reviewed-by: Alexander Bokovoy <ab@samba.org>
Autobuild-User(master): Pavel Filipensky <pfilipensky@samba.org>
Autobuild-Date(master): Fri Sep  5 13:38:33 UTC 2025 on atb-devel-224

4 weeks agotests: Add test for 'net ads join' to a preferred DC
Pavel Filipenský [Mon, 4 Aug 2025 09:20:54 +0000 (11:20 +0200)] 
tests: Add test for 'net ads join' to a preferred DC

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

Signed-off-by: Pavel Filipenský <pfilipensky@samba.org>
Reviewed-by: Alexander Bokovoy <ab@samba.org>
4 weeks agoselftest: Add the short name for localvampiredc to hosts file
Pavel Filipenský [Tue, 29 Jul 2025 09:19:07 +0000 (11:19 +0200)] 
selftest: Add the short name for localvampiredc to hosts file

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

Signed-off-by: Pavel Filipenský <pfilipensky@samba.org>
Reviewed-by: Alexander Bokovoy <ab@samba.org>
4 weeks agos3:net: fix "net ads group"
MikeLiu [Fri, 29 Aug 2025 09:31:36 +0000 (17:31 +0800)] 
s3:net: fix "net ads group"

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

Signed-off-by: MikeLiu <mikeliu@qnap.com>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Noel Power <npower@samba.org>
Autobuild-User(master): Volker Lendecke <vl@samba.org>
Autobuild-Date(master): Thu Sep  4 09:33:27 UTC 2025 on atb-devel-224

4 weeks agokrb5: handle GSS-Proxy credentials lifetime
Alexander Bokovoy [Tue, 2 Sep 2025 07:36:11 +0000 (10:36 +0300)] 
krb5: handle GSS-Proxy credentials lifetime

GSS-Proxy stores its credential in encrypted form in the Kerberos ccache
with a start and end time of 0 and a server principal in the realm named
'X-GSSPROXY:'. This credential is accessed through GSS-Proxy interposer
mechanism in MIT Kerberos and cannot be analysed with raw krb5 API.

As MIT Kerberos has no krb5_cc_get_lifetime() implementation, add check
for the GSS-Proxy credential to smb_krb5_cc_get_lifetime() wrapper to
return KRB5_PLUGIN_NO_HANDLE. The two places where
smb_krb5_cc_get_lifetime() is used then handle this return code to avoid
deciding on the 'expired' lifetime to cause a kinit.

This fixes FreeIPA use case where an IPA API endpoint uses Samba Python
bindings with a GSS-Proxy-controlled credential cache.

Bug: https://bugzilla.samba.org/show_bug.cgi?id=15902

Signed-off-by: Alexander Bokovoy <ab@samba.org>
Reviewed-by: Pavel Filipenský <pfilipensky@samba.org>
Autobuild-User(master): Pavel Filipensky <pfilipensky@samba.org>
Autobuild-Date(master): Wed Sep  3 10:15:50 UTC 2025 on atb-devel-224

4 weeks agodsdb:audit log: cmocka unit tests for KCL
Douglas Bagnall [Sun, 31 Aug 2025 09:24:34 +0000 (21:24 +1200)] 
dsdb:audit log: cmocka unit tests for KCL

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 Sep  3 03:13:47 UTC 2025 on atb-devel-224

4 weeks agodsdb:audit: bump minor version of password logs (1.1 -> 1.2)
Douglas Bagnall [Thu, 28 Aug 2025 05:09:43 +0000 (17:09 +1200)] 
dsdb:audit: bump minor version of password logs (1.1 -> 1.2)

In https://wiki.samba.org/index.php/Interpreting_JSON_Audit_Logs we say:

> a version number for the JSON format. It has two parts.
>
>    major: incremented if fields change meaning
>    minor: incremented if a field is added
>
> A change in possible values does not usually trigger a version
> change. This is obviously true for client supplied data, but also
> applies to e.g. passwordType, where the set of supported password
> formats can change over time without changing the JSON version.

The last paragraph explicitly exempts us from a version change for
adding a new possible value ("Public key change") to the "action"
field. On the other hand we have expanded the scope of the log, which
deserves some version recognition.

Signed-off-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Reviewed-by: Gary Lockyer <gary@catalyst.net.nz>
4 weeks agodsdb:audit: log if msDS-KeyCredentialLink changed
Douglas Bagnall [Thu, 28 Aug 2025 05:02:34 +0000 (17:02 +1200)] 
dsdb:audit: log if msDS-KeyCredentialLink changed

As noted in the comments, by "changed" we mean "set" or "unset".
Explicitly re-setting to the current value will be logged as if it
were a change.

This follows the behaviour of the password fields.

Signed-off-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Reviewed-by: Gary Lockyer <gary@catalyst.net.nz>
4 weeks agodsdb:audit: password_change loggers take a new flag argument
Douglas Bagnall [Thu, 28 Aug 2025 05:03:51 +0000 (17:03 +1200)] 
dsdb:audit: password_change loggers take a new flag argument

This will allow a key credential link change to be logged, but we
don't do that anywhere in this commit.

Signed-off-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Reviewed-by: Gary Lockyer <gary@catalyst.net.nz>
4 weeks agodsdb: audit: replace local min() with libreplace MIN()
Douglas Bagnall [Wed, 27 Aug 2025 04:02:56 +0000 (16:02 +1200)] 
dsdb: audit: replace local min() with libreplace MIN()

Signed-off-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Reviewed-by: Gary Lockyer <gary@catalyst.net.nz>
4 weeks agodsdb:audit:test: test msDS-KeyCredentialLink change logging
Douglas Bagnall [Thu, 28 Aug 2025 21:57:48 +0000 (09:57 +1200)] 
dsdb:audit:test: test msDS-KeyCredentialLink change logging

Signed-off-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Reviewed-by: Gary Lockyer <gary@catalyst.net.nz>
4 weeks agolibrpc:idl: add windows event 5136 object change
Douglas Bagnall [Thu, 28 Aug 2025 00:37:13 +0000 (12:37 +1200)] 
librpc:idl: add windows event 5136 object change

Signed-off-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Reviewed-by: Gary Lockyer <gary@catalyst.net.nz>
4 weeks agowinbindd: Simplify parse_domain_user()
Volker Lendecke [Mon, 25 Aug 2025 10:59:32 +0000 (12:59 +0200)] 
winbindd: Simplify parse_domain_user()

We have talloc_strndup() for this.

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
Autobuild-User(master): Volker Lendecke <vl@samba.org>
Autobuild-Date(master): Tue Sep  2 09:08:59 UTC 2025 on atb-devel-224

4 weeks agolibsmb: Avoid an "else"
Volker Lendecke [Wed, 20 Aug 2025 16:23:50 +0000 (18:23 +0200)] 
libsmb: 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>
4 weeks agovfs: Add some const to make in/out params more obvious
Volker Lendecke [Fri, 1 Aug 2025 16:07:25 +0000 (18:07 +0200)] 
vfs: Add some const to make in/out params more obvious

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
4 weeks agolibsmb: Slightly simplify cli_tcon_andx_done()
Volker Lendecke [Fri, 20 Jun 2025 14:45:30 +0000 (16:45 +0200)] 
libsmb: Slightly simplify cli_tcon_andx_done()

We have tevent_req_nomem() for this

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
4 weeks agolibsmb: Remove sync smb1cli_trans and _echo wrappers
Volker Lendecke [Fri, 20 Jun 2025 15:20:11 +0000 (17:20 +0200)] 
libsmb: Remove sync smb1cli_trans and _echo wrappers

Unused. If someone wants them back, they're easy to recreate

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
4 weeks agolib: Fix Coverity ID 1509061 Use of 32-bit time_t
Volker Lendecke [Fri, 20 Jun 2025 07:48:11 +0000 (09:48 +0200)] 
lib: Fix Coverity ID 1509061 Use of 32-bit time_t

"man gnutls_x509_crt_set_serial" says that the serial number should be
a big-endian positive integer of up to 20 bytes....

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
4 weeks agolib: Use talloc_realloc_zero() in a few obvious places
Volker Lendecke [Tue, 29 Jul 2025 13:26:21 +0000 (15:26 +0200)] 
lib: Use talloc_realloc_zero() in a few obvious places

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
4 weeks agolib: Add talloc_realloc_zero()
Volker Lendecke [Tue, 29 Jul 2025 12:50:40 +0000 (14:50 +0200)] 
lib: Add talloc_realloc_zero()

Like talloc_realloc, zeroing out expanded memory

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
4 weeks agolibsmb: Slightly clarify format in set/get_secdesc
Volker Lendecke [Tue, 13 May 2025 09:31:12 +0000 (11:31 +0200)] 
libsmb: Slightly clarify format in set/get_secdesc

We have reserved fields after those 16-bit ones. With little endian
those are set to 0 with PUSH_LE32. That is unnecessary here, the
fields are already set to 0. This patch is not for efficiency, I just
got a bit confused by the subtlety.

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
4 weeks agolibsmb: Make map_fnum_to_smb2_handle type-safe
Volker Lendecke [Tue, 13 May 2025 09:12:25 +0000 (11:12 +0200)] 
libsmb: Make map_fnum_to_smb2_handle type-safe

"struct smb2_hnd" is talloced here, use talloc_get_type_abort()

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
4 weeks agolibsmb: Make dsgetdcname print flags in one DEBUG
Volker Lendecke [Mon, 12 May 2025 16:21:40 +0000 (18:21 +0200)] 
libsmb: Make dsgetdcname print flags in one DEBUG

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
4 weeks agolibsmb: Remove an unnecessary cast
Volker Lendecke [Tue, 13 May 2025 09:13:08 +0000 (11:13 +0200)] 
libsmb: Remove an unnecessary cast

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
4 weeks agotls: Reorder macro for easier readability
Volker Lendecke [Fri, 1 Aug 2025 14:06:23 +0000 (16:06 +0200)] 
tls: Reorder macro for easier readability

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
4 weeks agolib: Remove unused interpret_string_addr_prefer_ipv4()
Volker Lendecke [Wed, 25 Jun 2025 08:10:53 +0000 (10:10 +0200)] 
lib: Remove unused interpret_string_addr_prefer_ipv4()

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
4 weeks agolib: Fix whitespace
Volker Lendecke [Wed, 25 Jun 2025 07:42:21 +0000 (09:42 +0200)] 
lib: Fix whitespace

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
4 weeks agolibsmb: Use tevent_req_nterror() properly
Volker Lendecke [Fri, 20 Jun 2025 15:21:49 +0000 (17:21 +0200)] 
libsmb: Use tevent_req_nterror() properly

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
4 weeks agolibsmb: Save a few lines with direct var initialization
Volker Lendecke [Mon, 23 Jun 2025 14:12:26 +0000 (16:12 +0200)] 
libsmb: Save a few lines with direct var initialization

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
4 weeks agodnsserver: Align an integer type
Volker Lendecke [Thu, 3 Jul 2025 08:38:03 +0000 (10:38 +0200)] 
dnsserver: Align an integer type

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
4 weeks agovfs: Simplify fruit_unlink_rsrc_stream()
Volker Lendecke [Sun, 2 Feb 2025 15:44:53 +0000 (16:44 +0100)] 
vfs: Simplify fruit_unlink_rsrc_stream()

We have the dirfsp around, no need to do a full stat()

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
4 weeks agovfs_streams_xattr: Add some overflow protection to pread and pwrite
Volker Lendecke [Tue, 29 Jul 2025 12:49:33 +0000 (14:49 +0200)] 
vfs_streams_xattr: Add some overflow protection to pread and pwrite

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
4 weeks agovfs: Slightly streamline streams_xattr_renameat()
Volker Lendecke [Mon, 28 Jul 2025 08:44:24 +0000 (10:44 +0200)] 
vfs: Slightly streamline streams_xattr_renameat()

We have strequal() for this

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
4 weeks agotls: Make tstream_tls_params_quic_enabled a bit easier to read
Volker Lendecke [Mon, 4 Aug 2025 11:44:01 +0000 (13:44 +0200)] 
tls: Make tstream_tls_params_quic_enabled a bit easier to read

YMMV

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
4 weeks agotls: Fix a printf sign mismatch
Volker Lendecke [Mon, 4 Aug 2025 11:43:31 +0000 (13:43 +0200)] 
tls: Fix a printf sign mismatch

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>
4 weeks agotls: Fix whitespace
Volker Lendecke [Mon, 4 Aug 2025 11:40:17 +0000 (13:40 +0200)] 
tls: Fix whitespace

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Anoop C S <anoopcs@samba.org>