[Pkg-samba-maint] [Git][samba-team/samba][master] 53 commits: VERSION: Bump version up to Samba 4.25.1...
Michael Tokarev (@mjt)
gitlab at salsa.debian.org
Fri Oct 23 17:08:51 BST 2026
Michael Tokarev pushed to branch master at Debian Samba Team / samba
Commits:
2e6742ac by Björn Jacke at 2026-09-24T23:54:17+02:00
VERSION: Bump version up to Samba 4.25.1...
and re-enable GIT_SNAPSHOT.
Signed-off-by: Bjoern Jacke <bjacke at samba.org>
- - - - -
2f380b09 by Michael Tokarev at 2026-09-30T15:00:11+03:00
ctdb.service: adjust runtime dir (/run/ctdb => /run/samba/ctdb)
Closes: #1149531
- - - - -
bed06de0 by Michael Tokarev at 2026-09-30T15:06:05+03:00
ctdb-create-piddir.patch: stop patching ctdb.service.in (we ship our own service unit)
and fix commit comment (path is different now)
- - - - -
8d705bec by Anoop C S at 2026-10-02T18:33:16+00:00
s3/g_lock: Create the stack frame before the fast path
The fast path calls talloc_tos() before a stack frame exists when
invoked by callers such as the smbconf Python bindings. Allocate the
frame before this path and route exits through a common label.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16258
Signed-off-by: Anoop C S <anoopcs at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
(cherry picked from commit fdf6726c1c6f7274675f070c0d0761ea5101fd4b)
- - - - -
c5025479 by Anoop C S at 2026-10-02T18:33:16+00:00
s3/smbconf: Avoid leaking a stack frame for a NULL share name
Allocate the stack frame after the NULL servicename check so the
early return in smbconf_reg_create_share() does not leak it.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16258
Signed-off-by: Anoop C S <anoopcs at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Autobuild-User(master): Volker Lendecke <vl at samba.org>
Autobuild-Date(master): Wed Sep 30 21:26:41 UTC 2026 on atb-devel-224
(cherry picked from commit c670e4fce53c04d3d41a47af403e771f34250fe1)
- - - - -
961fb52d by Martin Schwenke at 2026-10-02T18:33:16+00:00
ctdb-daemon: Modernise a DEBUG
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16254
Signed-off-by: Martin Schwenke <mschwenke at ddn.com>
Reviewed-by: Ralph Boehme <slow at samba.org>
(cherry picked from commit 792942b7e9cfb51dac3ec1c406f40570098d429c)
- - - - -
0bc5af0d by Martin Schwenke at 2026-10-02T18:33:16+00:00
ctdb-server: Apply some README.Coding, improve comments
Some comments in the same function aren't changed now because they
will be changed in a subsequent commit when the behaviour changes..
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16254
Signed-off-by: Martin Schwenke <mschwenke at ddn.com>
Reviewed-by: Ralph Boehme <slow at samba.org>
(cherry picked from commit 6420aba887c09590bbd46706b0a8ebdd4b848a96)
- - - - -
0a8cb061 by Martin Schwenke at 2026-10-02T18:33:16+00:00
ctdb-daemon: Fix conditions for choosing persistent traverse node
The local node doesn't have to be in the VNN map, since it might have
the lmaster capability disabled. It just needs to be active.
Otherwise, still prefer the first node in the VNN map. Be defensive
about selecting it even though the VNN map should never be empty.
Fall back to selecting the first active node (which won't have been
found in the VNN map if it has the lmaster capability disabled).
If there is no active node then fail.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16254
Signed-off-by: Martin Schwenke <mschwenke at ddn.com>
Reviewed-by: Ralph Boehme <slow at samba.org>
(cherry picked from commit 65d55e410bc217e8ba02c7194a53412366dc8443)
- - - - -
ad586f29 by Martin Schwenke at 2026-10-02T18:33:16+00:00
ctdb-daemon: Persistent transactions go to all active nodes
The VNN map only contains active nodes with the lmaster capability.
However, transactions on persistent databases should involve all
active nodes. So, don't use the VNN map, use the nodes list instead.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16254
Signed-off-by: Martin Schwenke <mschwenke at ddn.com>
Reviewed-by: Ralph Boehme <slow at samba.org>
(cherry picked from commit a8b99d264b87d96fe4af377ac127e64920d9ad1f)
- - - - -
0d2d87bd by Martin Schwenke at 2026-10-02T18:33:16+00:00
ctdb-tests: Add a persistent transaction test
Test that a persistent transaction also writes to nodes with the
lmaster capability disabled.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16254
Signed-off-by: Martin Schwenke <mschwenke at ddn.com>
Reviewed-by: Ralph Boehme <slow at samba.org>
(cherry picked from commit f2fba08c1d7fc616ded2690b10ebefe86a17a5c0)
- - - - -
9a5bb759 by Martin Schwenke at 2026-10-02T18:33:16+00:00
ctdb-daemon: Push record should go to all active nodes
The VNN map only contains active nodes with the lmaster capability.
However, push record operations should involve all active nodes. So,
don't use the VNN map, use the nodes list instead.
This is a separate commit because it does not need to be backported to
versions before 4.25.0.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16254
Signed-off-by: Martin Schwenke <mschwenke at ddn.com>
Reviewed-by: Ralph Boehme <slow at samba.org>
(cherry picked from commit 7e1bc53dd9e7f4677a0b0a758d80d1780a18362d)
- - - - -
71c5ee6c by Martin Schwenke at 2026-10-02T18:33:16+00:00
ctdb: Apply some README.Coding and other cosmetic changes
Mostly, switch multi-line function calls and declarations to one item
per line. Also, a couple of minor whitespace changes. These changes
will make a subsequent change more readable.
Include tdb.h in a header file where it is missing. This is cosmetic
because the build currently works (probably because all of the
includers include tdb.h first). However, the recent addition of a use
of TDB_DATA in this file causes an angry red underline in my editor.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16254
Signed-off-by: Martin Schwenke <mschwenke at ddn.com>
Reviewed-by: Ralph Boehme <slow at samba.org>
(cherry picked from commit ac2bf232aca9966c551bb02f6c8120b62b938ccd)
- - - - -
a2793a57 by Martin Schwenke at 2026-10-02T18:33:16+00:00
ctdb-client: Drop unset status output parameter
This is used but not set. Just rely on ret, which isn't quite right
yet... but we'll get there.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16254
Signed-off-by: Martin Schwenke <mschwenke at ddn.com>
Reviewed-by: Ralph Boehme <slow at samba.org>
(cherry picked from commit 9fb6267aaed48f7400d1c14c721b53572662e85e)
- - - - -
d455e858 by Martin Schwenke at 2026-10-02T18:33:16+00:00
ctdb-protocol: Properly process push record reply result
Push record now waits for a reply from all other nodes. Recognise
this and use the result.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16254
Signed-off-by: Martin Schwenke <mschwenke at ddn.com>
Reviewed-by: Ralph Boehme <slow at samba.org>
(cherry picked from commit a34ecddd44080144d11af68eff62fc2b14a0e725)
- - - - -
97e568be by Martin Schwenke at 2026-10-02T18:33:16+00:00
ctdb-client: Send push record control to specified node
This used to be broadcast but is now sent to the local node. Do
that... or send to another node as specified on the command-line.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16254
Signed-off-by: Martin Schwenke <mschwenke at ddn.com>
Reviewed-by: Ralph Boehme <slow at samba.org>
(cherry picked from commit 508b04c3dae960e59593dcc56517eb5d3b9172d8)
- - - - -
1aa831d9 by Martin Schwenke at 2026-10-02T18:33:16+00:00
ctdb-client: Simplify synchronous push record API
Have it take struct push_record_data like the underlying
ctdb_req_control_push_record() function. No need to reorganise
data (or malloc()/free()!).
Have ctdb.c:control_push_record_data() fill in this struct directly.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16254
Signed-off-by: Martin Schwenke <mschwenke at ddn.com>
Reviewed-by: Ralph Boehme <slow at samba.org>
(cherry picked from commit b124f9dc29b297756438520cb06c505a78bdb926)
- - - - -
9dc13243 by Martin Schwenke at 2026-10-02T18:33:16+00:00
ctdb-tools: Set the generation in push record data
The generation is not currently set in this code path so is always
wrong, causing daemon-side failures in
ctdb_control_push_record_store():
ctdb_control_push_record_store: Rejecting outdated push-record
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16254
Signed-off-by: Martin Schwenke <mschwenke at ddn.com>
Reviewed-by: Ralph Boehme <slow at samba.org>
(cherry picked from commit 7c976de907a7871992bd26dc212b2112ce2c8745)
- - - - -
2d26150c by Martin Schwenke at 2026-10-02T18:33:16+00:00
ctdb-tools: Only the RSN on the local node should be incremented
The comment several lines above explains why this is important for
vacuuming.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16254
Signed-off-by: Martin Schwenke <mschwenke at ddn.com>
Reviewed-by: Ralph Boehme <slow at samba.org>
(cherry picked from commit 87c7f950c1cb5c1c40917089c338ae2b3634d1a1)
- - - - -
ac9bf9c6 by Martin Schwenke at 2026-10-02T18:33:16+00:00
ctdb-tests: Reformat with "shfmt -w -i 0 -fn"
Best reviewed with "git show -w" or similar.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16254
Signed-off-by: Martin Schwenke <mschwenke at ddn.com>
Reviewed-by: Ralph Boehme <slow at samba.org>
(cherry picked from commit 4421df999e474a77d84b1162443cab6778ac5986)
- - - - -
d0a4ec0c by Martin Schwenke at 2026-10-02T18:33:16+00:00
ctdb-tests: Change some test function names
Some of these will be used for more than vacuuming, so rename to avoid
confusion.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16254
Signed-off-by: Martin Schwenke <mschwenke at ddn.com>
Reviewed-by: Ralph Boehme <slow at samba.org>
(cherry picked from commit acae3df63ca495d871bf6a1a252c125c87a494f1)
- - - - -
d58bdb54 by Martin Schwenke at 2026-10-02T18:33:16+00:00
ctdb-tests: Generalise some test functions
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16254
Signed-off-by: Martin Schwenke <mschwenke at ddn.com>
Reviewed-by: Ralph Boehme <slow at samba.org>
(cherry picked from commit 5bf2f9e7d6d087467ab8025dea6b72334a375400)
- - - - -
98ac072b by Martin Schwenke at 2026-10-02T18:33:16+00:00
ctdb-tests: Add a ctdb pushrecord test
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16254
Signed-off-by: Martin Schwenke <mschwenke at ddn.com>
Reviewed-by: Ralph Boehme <slow at samba.org>
Autobuild-User(master): Ralph Böhme <slow at samba.org>
Autobuild-Date(master): Wed Sep 30 15:56:30 UTC 2026 on atb-devel-224
(cherry picked from commit 22daa1d18f9e6c24ae7773106bf19520b126b097)
- - - - -
3ea71d01 by Martin Schwenke at 2026-10-02T18:33:16+00:00
ctdb-tests: Fix ctdb pushrecord test
If the record is being pushed to the lmaster node then the RSNs will
be 1 less than in the other cases. This is because the empty record
constructed on the lmaster is not migrated.
https://bugzilla.samba.org/show_bug.cgi?id=16254
Signed-off-by: Martin Schwenke <mschwenke at ddn.com>
Reviewed-by: Ralph Boehme <slow at samba.org>
Autobuild-User(master): Martin Schwenke <martins at samba.org>
Autobuild-Date(master): Thu Oct 1 10:30:41 UTC 2026 on atb-devel-224
(cherry picked from commit 9e6767eddc3f36eda34dcec118810f633c6066f8)
- - - - -
11f95d3f by Daeho Ro at 2026-10-02T18:33:17+00:00
lib: Fix the BSD_STYLE_STATVFS build
bsd_init_statvfs() is fed a struct statfs by bsd_statvfs() and
bsd_fstatvfs() and reads statfs-only fields (f_iosize, f_mntonname,
f_flags), but was declared to take a struct statvfs. This broke the build
on macOS and the BSDs since 24ca9a756701 ("smbd: Factor out initializing
vfs_statvfs_struct from system info").
Moving the file to lib/util in 2a6a5cf40d08 ("lib: Move statvfs.[ch] to
lib/util") also replaced includes.h with replace.h, which no longer
declares DEBUG() used by darwin_fs_capabilities().
Found building 4.25.0 on macOS 26.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16263
Signed-off-by: Daeho Ro <email at daeho.ro>
Reviewed-by: Anoop C S <anoopcs at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
(cherry picked from commit 40e665097d48f1359aed1b7fd76b0ddabf76ae4e)
- - - - -
bac3bd87 by Daeho Ro at 2026-10-02T18:33:17+00:00
s4:libcli: Link LP_RESOLVE against resolv
resolve/dns_ex.c calls res_search(), which lives in libresolv on
platforms where it is not part of libc, e.g. macOS where it is
res_9_search(). LP_RESOLVE used to get resolv through addns, but
bffb51f09ab3 ("addns: Move DNS hand-marshalling smbtorture4") dropped it
from addns' public_deps, so linking libcli-ldap fails there with an
undefined _res_9_search.
Depend on resolv directly where it is used. On glibc >= 2.34 res_search()
is in libc, which is why this was not noticed on Linux.
Found building 4.25.0 on macOS 26.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16263
Signed-off-by: Daeho Ro <email at daeho.ro>
Reviewed-by: Anoop C S <anoopcs at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Autobuild-User(master): Volker Lendecke <vl at samba.org>
Autobuild-Date(master): Sun Sep 27 11:08:58 UTC 2026 on atb-devel-224
(cherry picked from commit fdb87d1c67476dd6540a29ce8e75463824e1da72)
- - - - -
ad2e3a5f by Shweta Sodani at 2026-10-02T19:37:43+00:00
lib/util: backend file level log is not respected to "logging" option.
With the help of "logging" option, we can set the each logging backend
with different level, this is working fine for all backend logging
except file level logging. This change is respecting the file level
logging as well.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=15857
Signed-off-by: Shweta Sodani <ssodani at redhat.com>
Reviewed-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Autobuild-User(master): Volker Lendecke <vl at samba.org>
Autobuild-Date(master): Thu Oct 1 22:32:48 UTC 2026 on atb-devel-224
(cherry picked from commit 019e7e304e4d9cb053341ebec9e801b852164481)
Autobuild-User(v4-25-test): Björn Jacke <bjacke at samba.org>
Autobuild-Date(v4-25-test): Fri Oct 2 19:37:43 UTC 2026 on atb-devel-224
- - - - -
6e3e8b38 by Volker Lendecke at 2026-10-09T22:46:12+00:00
selftest: Add regression test for rename ReplaceIfExists case-only collision
Add samba.tests.libsmb-basic.LibsmbTestCase.test_rename_replace_case,
which renames a temporary file over an existing target differing only
in case with ReplaceIfExists set. The existing target must be replaced,
not left in place alongside a second, duplicate directory entry.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16261
Signed-off-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Anoop C S <anoopcs at samba.org>
(cherry picked from commit a798b16fc76b968d8af64409e6365791bbd62419)
- - - - -
d6140ca8 by Volker Lendecke at 2026-10-09T22:46:12+00:00
smbd: Fix rename with ReplaceIfExists to a target differing only in case
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16261
Signed-off-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Anoop C S <anoopcs at samba.org>
Autobuild-User(master): Volker Lendecke <vl at samba.org>
Autobuild-Date(master): Tue Sep 29 19:34:05 UTC 2026 on atb-devel-224
(cherry picked from commit 15f64c46c935b428d1827a170ee4082694464c19)
- - - - -
932ccc9d by Anoop C S at 2026-10-09T22:46:12+00:00
buildtools: Restrict dynamic_lookup to macOS
The linker flag probe added by 9938c9a6f7b succeeds on Linux, but
GNU ld.bfd interprets `-undefined,dynamic_lookup` as an undefined
reference to a symbol named "dynamic_lookup". This breaks i686
builds when linking shared libraries that allow undefined symbols.
. . .
[2483/3877] Compiling bin/default/librpc/gen_ndr/py_lsa.c
/usr/bin/ld.bfd: /builddir/build/BUILD/samba-4.25.0-build/samba-4.25.0/
bin/default/source3/libsamba-cluster-support-private-samba.so:
undefined reference to `dynamic_lookup'
collect2: error: ld returned 1 exit status
. . .
Only probe and add this macOS specific flag on macOS; Linux
already permits unresolved symbols in these shared libraries
when `-no-undefined` is removed.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16265
Signed-off-by: Anoop C S <anoopcs at samba.org>
Reviewed-by: Andreas Schneider <asn at samba.org>
Autobuild-User(master): Anoop C S <anoopcs at samba.org>
Autobuild-Date(master): Wed Sep 30 14:38:17 UTC 2026 on atb-devel-224
(cherry picked from commit 7399c227bfb5e6e68030f8c694a9761c0c9d6d76)
- - - - -
978b9a51 by Björn Baumbach at 2026-10-09T23:52:02+00:00
ctdb-scripts: Extract real interface name in ip_prefix_iface()
For interfaces that have a link, e.g. VLANs, macvlan or veth devices
in containers, "ip -brief addr show" prints the interface name as
"<iface>@<link>", for example "eth1 at if23". This is not the real
interface name, so releasing or moving a public IP fails when the
interface has to be looked up.
10.interface: Cannot find device "eth1 at if23"
10.interface: Failed to del 192.168.0.123/24 on dev eth1 at if23
The previous implementation of ip_maskbits_iface() stripped the
"@<link>" suffix, so do this again. Has been changed by commit
386d8881740 ("ctdb-scripts: Add function ip_prefix_iface()").
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16274
Signed-off-by: Björn Baumbach <bb at sernet.de>
Reviewed-by: Martin Schwenke <martin at meltin.net>
Autobuild-User(master): Björn Baumbach <bb at sernet.de>
Autobuild-Date(master): Fri Oct 9 15:23:15 UTC 2026 on atb-devel-224
(cherry picked from commit a860511ec49de09c7a69b13b070bf9335c33b23f)
Autobuild-User(v4-25-test): Björn Jacke <bjacke at samba.org>
Autobuild-Date(v4-25-test): Fri Oct 9 23:52:02 UTC 2026 on atb-devel-224
- - - - -
8177022c by Martin Schwenke at 2026-10-12T19:46:18+00:00
ctdb-recoverd: Avoid recovery race on lost cluster lock
The following was seen while running
ctdb/tests/INTEGRATION/simple/cluster.015.reclock_remove_lock.sh:
726102 node.0 ctdbd[2655369]: ctdb_mutex_fcntl_helper: lock lost - lock file "tests/var/INTEGRATION/simple/shared/.ctdb/cluster.lock" open failed (ret=2)
726937 node.0 ctdb-recoverd[2655437]: Cluster lock helper terminated
726971 node.0 ctdb-recoverd[2655437]: Start election
727053 node.0 ctdbd[2655369]: Recovery mode set to ACTIVE
727071 node.1 ctdbd[2655392]: Recovery mode set to ACTIVE
727071 node.2 ctdbd[2655407]: Recovery mode set to ACTIVE
727161 node.0 ctdb-recoverd[2655437]: Attempting to take cluster lock (! /m/martins/aMASTER/b1443461/ctdb/ctdb/bin/ctdb_mutex_fcntl_helper tests/var/INTEGRATION/simple/shared/.ctdb/cluster.lock 5)
727198 node.1 ctdb-recoverd[2655480]: Attempting to take cluster lock (! /m/martins/aMASTER/b1443461/ctdb/ctdb/bin/ctdb_mutex_fcntl_helper tests/var/INTEGRATION/simple/shared/.ctdb/cluster.lock 5)
727212 node.2 ctdb-recoverd[2655503]: Attempting to take cluster lock (! /m/martins/aMASTER/b1443461/ctdb/ctdb/bin/ctdb_mutex_fcntl_helper tests/var/INTEGRATION/simple/shared/.ctdb/cluster.lock 5)
727885 node.0 ctdb-recoverd[2655437]: Received leader broadcast, leader=0
731562 node.0 ctdb-recoverd[2655437]: Unable to take cluster lock - contention
731579 node.2 ctdb-recoverd[2655503]: Unable to take cluster lock - contention
731587 node.1 ctdb-recoverd[2655480]: Cluster lock taken successfully
731602 node.1 ctdb-recoverd[2655480]: Took cluster lock, leader=1
731976 node.0 ctdb-recoverd[2655437]: Node:0 was in recovery mode. Start recovery process
732006 node.0 ctdb-recoverd[2655437]: Node:1 was in recovery mode. Start recovery process
732022 node.0 ctdb-recoverd[2655437]: Node:2 was in recovery mode. Start recovery process
732029 node.0 ctdb-recoverd[2655437]: do_recovery: Starting do_recovery
732035 node.1 ctdb-recoverd[2655480]: Node:1 was in recovery mode. Start recovery process
732050 node.1 ctdb-recoverd[2655480]: Node:0 was in recovery mode. Start recovery process
732059 node.1 ctdb-recoverd[2655480]: Node:2 was in recovery mode. Start recovery process
732062 node.0 ctdb-recoverd[2655437]: Cluster lock not held - abort recovery, ban node
732063 node.1 ctdb-recoverd[2655480]: do_recovery: Starting do_recovery
732067 node.0 ctdb-recoverd[2655437]: Banning node 0 for 300 seconds
732082 node.0 ctdbd[2655369]: SET BAN STATE
732090 node.0 ctdbd[2655369]: Banning this node for 300 seconds
732094 node.0 ctdbd[2655369]: Making node INACTIVE
732096 node.1 ctdb-recoverd[2655480]: do_recovery: Recovery initiated due to problem with node 0
Note that the date/time has been trimmed to just show microseconds for
readability.
The problem here is that the node that lost the cluster lock still
has itself recorded as leader. By the time it attempts to run
recovery, it hasn't received a leader broadcast from the new leader
so it passes all the checks allowing it to run recovery, except for
the cluster lock one.
Clearing the leader on this node will avoid the problem because
do_recovery() will notice it is no longer the leader and will abort
recovery.
Improve the associated message in do_recovery() to avoid printing the
confusing value of CTDB_UNKNOWN_PNN when this occurs.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16273
Signed-off-by: Martin Schwenke <mschwenke at ddn.com>
Reviewed-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Anoop C S <anoopcs at samba.org>
Autobuild-User(master): Anoop C S <anoopcs at samba.org>
Autobuild-Date(master): Fri Oct 9 18:47:25 UTC 2026 on atb-devel-224
(cherry picked from commit a01ade983b71640332798a97e7d6bcaa454b78ca)
- - - - -
b7590c3c by Volker Lendecke at 2026-10-12T19:46:18+00:00
tests: The fix for Bug 16200 causes a locking corruption bug
smbd caches share_mode_data and reuses it as long as the
unique_content_epoch of the locking.tdb record is unchanged.
Right now a fresh smbd hands out the same epochs as the smbd that
created a record before. Make c2's smbd cache the share_mode_data of a
record created by c1, remove the record and let a third connection
recreate it with a different share mode. c2 then uses its cached
share_mode_data and misses the sharing violation.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16200
Signed-off-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
(cherry picked from commit f92b40e9ce29c70b970d932b962d25ccfe2d2cc3)
- - - - -
b0ddaf0a by Volker Lendecke at 2026-10-12T20:49:58+00:00
lib: seed generate_unique_u64() per process again
Since commit 89968416949 ("lib/util: make generate_unique_u64() more
robust") the first call in a process sets next_value to veto_value and
increments it before the veto check. So the random nonce is never
generated, and every process continues counting from the value it was
passed. Processes that start from the same value, for example the
unique_content_epoch of the same locking.tdb record, hand out the same
"unique" values. New g_lock records get unique_lock_epoch 1 and
unique_data_epoch 2 in every fresh process.
share_mode_memcache_fetch() relies on unique_content_epoch being unique
across processes to detect stale cached share_mode_data, g_lock relies
on unique_data_epoch to detect data changes for watchers. With
colliding epochs an smbd can use outdated share_mode_data or miss a
change of g_lock data.
Start every process at a random value as documented in samba_util.h.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16200
Signed-off-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
Autobuild-User(master): Volker Lendecke <vl at samba.org>
Autobuild-Date(master): Fri Oct 9 09:42:26 UTC 2026 on atb-devel-224
(cherry picked from commit 67eeb79811e57038a38d7272ee98064938b27b06)
Autobuild-User(v4-25-test): Björn Jacke <bjacke at samba.org>
Autobuild-Date(v4-25-test): Mon Oct 12 20:49:58 UTC 2026 on atb-devel-224
- - - - -
6b46f7d5 by Martin Schwenke at 2026-10-14T20:57:18+00:00
smbd: Fix a comment typo
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16235
Signed-off-by: Martin Schwenke <mschwenke at ddn.com>
Reviewed-by: Volker Lendecke <vl at samba.org>
(cherry picked from commit 9a6eb2d26fdfd16728116837d10517a8e0e3060e)
- - - - -
302a7eda by Martin Schwenke at 2026-10-14T20:57:18+00:00
smbd: Modernise some DEBUGs
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16235
Signed-off-by: Martin Schwenke <mschwenke at ddn.com>
Reviewed-by: Volker Lendecke <vl at samba.org>
(cherry picked from commit 51fe0eb702c545d89e672642c82857ddf69eddbf)
- - - - -
3a45524f by Martin Schwenke at 2026-10-14T20:57:18+00:00
smbd: Update a stale DEBUG message
The called function was updated to open_socket_in_protocol() in commit
6bbcf1114c1b0382f167cc9baf25900809bf60c5. Update the debug message to
match.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16235
Signed-off-by: Martin Schwenke <mschwenke at ddn.com>
Reviewed-by: Volker Lendecke <vl at samba.org>
(cherry picked from commit f3c50e7561de9cb95b34f844ea23602d29043c63)
- - - - -
f1adcdab by Martin Schwenke at 2026-10-14T20:57:18+00:00
smbd: Rename variable "matched" to "is_dynamic"
This variable is about to be used further from where it is set, so
give it a name that makes its meaning clearer to the reader.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16235
Signed-off-by: Martin Schwenke <mschwenke at ddn.com>
Reviewed-by: Volker Lendecke <vl at samba.org>
(cherry picked from commit b700437c10f9734b184b66f41755727d195ce437)
- - - - -
d07449c9 by Martin Schwenke at 2026-10-14T20:57:18+00:00
smbd: Reduce noise for address changes on non-dynamic interfaces
We see messages like this at NOTICE level:
[root at testn1 ~]# [2026/09/17 16:33:02.166491, 3] ../../source3/smbd/server.c:2267(smbd_addr_changed)
smbd_addr_changed: smbd: No interface present for if_index 2 with dynamic option
These are for (unknown) addresses we probably aren't interested in.
The message could be made more useful for debugging by including the
address and whether it is a DEL/ADD.
So, move this to DEBUG level, putting a DBG_DEBUG() into each of the
relevant DEL/ADD cases so the extra details can be logged. To make
this sane, produce the address string earlier, requiring variables to
be moved to the outer scope.
Now, the DEBUG level messages look like:
[2026/09/17 22:06:09.643377, 10, pid=453297, effective(0, 0), real(0, 0)] ../../source3/smbd/server.c:2272(smbd_addr_changed)
smbd_addr_changed: smbd: kernel (AF_NETLINK) dropped ip 192.168.121.111 on if_index 2 (not dynamic)
[2026/09/17 22:06:13.281803, 10, pid=453297, effective(0, 0), real(0, 0)] ../../source3/smbd/server.c:2291(smbd_addr_changed)
smbd_addr_changed: smbd: kernel (AF_NETLINK) added ip 192.168.121.111 on if_index 2 (not dynamic)
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16235
Signed-off-by: Martin Schwenke <mschwenke at ddn.com>
Reviewed-by: Volker Lendecke <vl at samba.org>
(cherry picked from commit bd63602ebc7ca25fb48a4cfb9ebe3f3554cd7230)
- - - - -
fe799e15 by Martin Schwenke at 2026-10-14T20:57:18+00:00
smbd: Make smbd_open_one_socket() return errno on failure
Callers can then do finer grained error handling.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16235
Signed-off-by: Martin Schwenke <mschwenke at ddn.com>
Reviewed-by: Volker Lendecke <vl at samba.org>
(cherry picked from commit a4dc320c004bfe6394a65c598a06759b72cf3fd7)
- - - - -
3849e35f by Martin Schwenke at 2026-10-14T20:57:18+00:00
smbd: Have smbd_open_one_socket() only ignore bind error on request
Currently, all callers still ignore the error.
smbd_open_one_socket() used to ignore all errors on bind(2). The
behaviour was changed long ago but was quickly restored by commit
3ee1acdc8eea0a84131066eaca927dc2ffa238bb. The reason is unclear, so
try to maintain the current behaviour for original callers. Perhaps
this has something to do with avoiding noise because bind(2) fails on
IPv6 addresses before Duplicate Address Detection (DAD) completes.
That seems unlikely because there was no dynamic interface address
handling.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16235
Signed-off-by: Martin Schwenke <mschwenke at ddn.com>
Reviewed-by: Volker Lendecke <vl at samba.org>
(cherry picked from commit b62ef3401d3f557a224f9caaf9e307e18ebba3fd)
- - - - -
b5eeb11b by Martin Schwenke at 2026-10-14T20:57:18+00:00
smbd: Have smbd_open_socket_for_ip() return an int
This can allow special error handling via a negative return.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16235
Signed-off-by: Martin Schwenke <mschwenke at ddn.com>
Reviewed-by: Volker Lendecke <vl at samba.org>
(cherry picked from commit c69a1d21b3682727c54f560dbdb689907d143d15)
- - - - -
6538a30b by Martin Schwenke at 2026-10-14T20:57:18+00:00
smbd: Have smbd_open_socket_for_ip() ignore bind errors on request
When not ignoring errors, return on the first failure.
Currently, all callers still ignore the error.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16235
Signed-off-by: Martin Schwenke <mschwenke at ddn.com>
Reviewed-by: Volker Lendecke <vl at samba.org>
(cherry picked from commit 2a4e95ccee8d11240d6c2594fef861e611ea07e2)
- - - - -
77e52f52 by Martin Schwenke at 2026-10-14T20:57:18+00:00
smbd: Add retry for dynamic interface IPv4 address handling
Work around a bug where notification of an address being added appears
to be received before an IPv4 address is actually assigned by the
kernel.
Errors from bind(2) are not longer ignored for dynamic interface
address addition.
The behaviour for IPv4 and IPv6 is quite different:
* For IPv4, EADDRNOTAVAIL triggers a retry, with a limit of 10
attempts.
The first attempt is delayed by 20µs to try to avoid the race
completely. This is small because the window appears to be small
when the race is observed: a successful bind(2) followed a
notification by ~16µs, while an unsuccessful bind(2) followed a
notification by ~9µs. Adding 20µs to the natural delay should
hopefully avoid the race in most circumstances.
Retries are delayed by 1ms (1000µs).
* For IPv6, EADDRNOTAVAIL is expected before IPv6 Duplicate Address
Detection (DAD) completes, so turn down the debug level for this
failure. An additional notification is sent when DAD completes so
bind(2) should always succeed from that notification.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16235
Signed-off-by: Martin Schwenke <mschwenke at ddn.com>
Reviewed-by: Volker Lendecke <vl at samba.org>
Autobuild-User(master): Volker Lendecke <vl at samba.org>
Autobuild-Date(master): Wed Oct 7 12:26:40 UTC 2026 on atb-devel-224
(cherry picked from commit 1d2ffe9968913612afa8338f99a0b4accd5a4bcb)
- - - - -
c09543f7 by Priyanka Soni at 2026-10-14T22:02:24+00:00
lib/util: accept fractional sizes in conv_str_size_error()
Sizes like "2.2T" failed to parse, so "fruit:time machine max size"
was silently ignored when given a fractional value.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=15324
Signed-off-by: Priyanka Soni <priysoni at redhat.com>
Reviewed-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Autobuild-User(master): Volker Lendecke <vl at samba.org>
Autobuild-Date(master): Sun Oct 11 16:06:58 UTC 2026 on atb-devel-224
(cherry picked from commit c617f334fb974e157d2a450b24cfcdd43f935b7b)
Autobuild-User(v4-25-test): Björn Jacke <bjacke at samba.org>
Autobuild-Date(v4-25-test): Wed Oct 14 22:02:24 UTC 2026 on atb-devel-224
- - - - -
cdff986c by Anoop C S at 2026-10-23T13:21:13+00:00
s3:tests: Add acl_xattr listxattr regression test
Exercise empty and nonempty attribute lists using vfstest with
acl_xattr over xattr_tdb.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16287
Pair-Programmed-With: Volker Lendecke <vl at samba.org>
Signed-off-by: Anoop C S <anoopcs at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
(cherry picked from commit ef92707ad7de631572d325213a03f9f6128d53a4)
- - - - -
7ae230c4 by Anoop C S at 2026-10-23T13:21:13+00:00
vfs_acl_xattr: Handle listxattr size queries
Size-only queries do not populate listbuf. Return the backend
size before scanning the buffer to avoid a NULL dereference.
The unfiltered size is a safe upper bound for the subsequent
filtered list.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16287
Signed-off-by: Anoop C S <anoopcs at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Autobuild-User(master): Volker Lendecke <vl at samba.org>
Autobuild-Date(master): Thu Oct 22 16:57:45 UTC 2026 on atb-devel-224
(cherry picked from commit eb679b76beaad9e31fd1c0a07aee890f3948abe9)
- - - - -
f8cc668c by Anoop C S at 2026-10-23T13:21:13+00:00
CVE-2026-109411: s4:torture/smb2: Test case-insensitive open access check
Add a regression test which verifies that a second user is denied an
open of another user's restricted file when it is addressed using a
different case, for both read and write access. This exercises the
case-insensitive open path on case-preserving backends.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16276
Signed-off-by: Anoop C S <anoopcs at samba.org>
- - - - -
97f30760 by Vinit Agnihotri at 2026-10-23T14:38:23+00:00
CVE-2026-109411: vfs_ceph_rgw: Open the name resolved by the VFS layer in openat
openat() built the object path from fsp->fsp_name->base_name, ignoring
the case-corrected smb_fname passed in by the caller. A differently
cased open thus retried the wrong name, failed, and fell through to the
create path, skipping the access check on the existing object and
letting a user read or overwrite another user's file.
Build the path from dirfsp and smb_fname instead, so the resolved name
is honoured and the proper access check runs.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16276
Reported-by: hataehoon
Pair-Programmed-With: Anoop C S <anoopcs at samba.org>
Signed-off-by: Vinit Agnihotri <vagnihot at redhat.com>
Reviewed-by: Anoop C S <anoopcs at samba.org>
Autobuild-User(v4-25-test): Björn Jacke <bjacke at samba.org>
Autobuild-Date(v4-25-test): Fri Oct 23 14:38:23 UTC 2026 on atb-devel-224
- - - - -
5a8f01a6 by Björn Jacke at 2026-10-23T17:26:48+02:00
WHATSNEW: Add release notes for Samba 4.25.1.
Signed-off-by: Bjoern Jacke <bjacke at samba.org>
- - - - -
02e8e3f9 by Björn Jacke at 2026-10-23T17:27:14+02:00
VERSION: Disable GIT_SNAPSHOT for the 4.25.1 release.
Signed-off-by: Bjoern Jacke <bjacke at samba.org>
- - - - -
553f88ea by Michael Tokarev at 2026-10-23T18:53:57+03:00
New upstream version 4.25.1+dfsg
- - - - -
b0670454 by Michael Tokarev at 2026-10-23T18:54:13+03:00
Update upstream source from tag 'upstream/4.25.1+dfsg'
Update to upstream version '4.25.1+dfsg'
with Debian dir a94535a005f895a2bf2bf1085d54d75c772a1b9d
- - - - -
3a42a290 by Michael Tokarev at 2026-10-23T18:57:05+03:00
update changelog; upload version 4.25.1+dfsg-1 to unstable
- - - - -
48 changed files:
- VERSION
- WHATSNEW.txt
- buildtools/wafsamba/samba_autoconf.py
- ctdb/.gitignore
- ctdb/client/client_control_sync.c
- ctdb/client/client_sync.h
- ctdb/config/functions
- ctdb/protocol/protocol_api.h
- ctdb/protocol/protocol_client.c
- ctdb/server/ctdb_daemon.c
- ctdb/server/ctdb_persistent.c
- ctdb/server/ctdb_recoverd.c
- ctdb/server/ctdb_traverse.c
- + ctdb/tests/INTEGRATION/database/push_record.0001.lmaster_disabled.sh
- ctdb/tests/INTEGRATION/database/scripts/local.bash
- + ctdb/tests/INTEGRATION/database/transaction.005.ptrans_lmaster.sh
- ctdb/tests/INTEGRATION/database/vacuum.001.fast.sh
- ctdb/tests/INTEGRATION/database/vacuum.002.full.sh
- ctdb/tests/INTEGRATION/database/vacuum.003.recreate.sh
- ctdb/tests/INTEGRATION/database/vacuum.030.locked.sh
- ctdb/tests/INTEGRATION/database/vacuum.031.locked.sh
- ctdb/tests/INTEGRATION/database/vacuum.032.locked.sh
- ctdb/tests/INTEGRATION/database/vacuum.033.locked.sh
- ctdb/tests/INTEGRATION/database/vacuum.034.locked.sh
- + ctdb/tests/UNIT/eventscripts/10.interface.releaseip.003.sh
- + ctdb/tests/UNIT/eventscripts/10.interface.updateip.002.sh
- ctdb/tests/UNIT/eventscripts/stubs/ip
- ctdb/tools/ctdb.c
- debian/changelog
- debian/ctdb.service
- debian/patches/ctdb-create-piddir.patch
- docs-xml/manpages/vfs_fruit.8.xml
- lib/util/debug.c
- lib/util/genrand_util.c
- lib/util/statvfs.c
- lib/util/tests/str.c
- lib/util/util_str.c
- python/samba/tests/libsmb-basic.py
- source3/lib/g_lock.c
- source3/lib/smbconf/smbconf_reg.c
- source3/modules/vfs_acl_xattr.c
- source3/modules/vfs_ceph_rgw.c
- + source3/script/tests/vfstest-acl-xattr/run.sh
- source3/selftest/tests.py
- source3/smbd/server.c
- source3/smbd/smb2_reply.c
- source4/libcli/wscript_build
- source4/torture/smb2/create.c
The diff was not included because it is too large.
View it on GitLab: https://salsa.debian.org/samba-team/samba/-/compare/039b365d8cf7ae64414bff694c2348db7390d961...3a42a29008456acf30bf4be83dca6362df63ae11
--
View it on GitLab: https://salsa.debian.org/samba-team/samba/-/compare/039b365d8cf7ae64414bff694c2348db7390d961...3a42a29008456acf30bf4be83dca6362df63ae11
You're receiving this email because of your account on salsa.debian.org. Manage all notifications: https://salsa.debian.org/-/profile/notifications | Help: https://salsa.debian.org/help
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/pkg-samba-maint/attachments/20261023/47a871ce/attachment-0001.htm>
More information about the Pkg-samba-maint
mailing list