<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
<html lang="en" style='--code-editor-font: var(--default-mono-font, "GitLab Mono"), JetBrains Mono, Menlo, DejaVu Sans Mono, Liberation Mono, Consolas, Ubuntu Mono, Courier New, andale mono, lucida console, monospace;'>
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
<title>
GitLab
</title>
<style data-premailer="ignore" type="text/css">
a { color: #1068bf; }
</style>
<style>img {
max-width: 100%; height: auto;
}
body {
font-size: .875rem;
}
body {
-webkit-text-shadow: hsla(0,0%,100%,.01) 0 0 1px;
}
body {
font-family: "GitLab Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Noto Sans",Ubuntu,Cantarell,"Helvetica Neue",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji"; font-size: inherit;
}
</style>
</head>
<body style='font-size: inherit; -webkit-text-shadow: hsla(0,0%,100%,.01) 0 0 1px; font-family: "GitLab Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Noto Sans",Ubuntu,Cantarell,"Helvetica Neue",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";'>
<div class="content">
<h3 style="margin-top: 20px; margin-bottom: 10px;">
Michael Tokarev pushed to branch upstream_4.25 at <a href="https://salsa.debian.org/samba-team/samba">Debian Samba Team / samba</a>
</h3>
<h4 style="margin-top: 10px; margin-bottom: 10px;">
Commits:
</h4>
<ul>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/0601b5cab51959d0124789e34def8a9ab550b24b">0601b5ca</a></strong>
<div>
<span> by Vinit Agnihotri </span> <i> at 2026-08-11T19:22:20+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>vfs_ceph_rgw: add flistxattrs method
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16218
Signed-off-by: Vinit Agnihotri <vagnihot@redhat.com>
Reviewed-by: Shachar Sharon <ssharon@redhat.com>
Reviewed-by: Anoop C S <anoopcs@samba.org>
Reviewed-by: Guenther Deschner <gd@samba.org>
(cherry picked from commit 9867d4d99c9337a3e820b07f3e0f7d9b756524f6)
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/6b8676194f60051246af618a43376890eb84214b">6b867619</a></strong>
<div>
<span> by Vinit Agnihotri </span> <i> at 2026-08-11T19:22:20+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>vfs_ceph_rgw: Add fs_capabilities method
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16218
Signed-off-by: Vinit Agnihotri <vagnihot@redhat.com>
Reviewed-by: Shachar Sharon <ssharon@redhat.com>
Reviewed-by: Anoop C S <anoopcs@samba.org>
Reviewed-by: Guenther Deschner <gd@samba.org>
(cherry picked from commit 3796c788ac879bae0a66e3d7f44b94e68f251b02)
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/f73e0f70ff72ea062c8c8f0a1e0c096a9e475b05">f73e0f70</a></strong>
<div>
<span> by Vinit Agnihotri </span> <i> at 2026-08-11T20:24:11+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>vfs_ceph_rgw: Return ENOATTR for non-existing xattr
In case of existing xattr, rgw_getxattrs() API executes callback and returns 0
on success. We then determine number of bytes to return from callback.
In case of non-existing xattr, rgw_getxattrs() API does not execute callback
but returns 0.
Upper layer expect NT_STATUS_OBJECT_NAME_NOT_FOUND in case of non-existing xattr.
Since we were returning 0, upper layer treats it as missing data and flags as error.
This fix allows module to handle this situation by returning -ENOATTR for
non-existing xattr, thereby providing correct information for upper layer.
Additional changes:
- rgw_getxattrs() do not set errno, thus relevant handling is removed.
- Added error handling for special names to get/set/rm xattr calls.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16218
Signed-off-by: Vinit Agnihotri <vagnihot@redhat.com>
Reviewed-by: Shachar Sharon <ssharon@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 Aug 11 06:06:14 UTC 2026 on atb-devel-224
(cherry picked from commit e39f85d383ba15dffc0b8fd109b361cfb89afee7)
Autobuild-User(v4-25-test): Björn Jacke <bjacke@samba.org>
Autobuild-Date(v4-25-test): Tue Aug 11 20:24:11 UTC 2026 on atb-devel-224
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/73382bcce3e88b756e51c7c9ee0820f86a561965">73382bcc</a></strong>
<div>
<span> by Björn Jacke </span> <i> at 2026-08-12T14:26:10+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>VERSION: Bump version up to Samba 4.25.0rc2...
and re-enable GIT_SNAPSHOT.
Signed-off-by: Bjoern Jacke <bjacke@samba.org>
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/64bf27775a4b71862e28f9aa1b952ace8501e28b">64bf2777</a></strong>
<div>
<span> by Stefan Metzmacher </span> <i> at 2026-08-12T15:32:33+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>s3:wscript_build: let samba-cluster-support depend on ndr-samba
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16219
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Ralph Boehme <slow@samba.org>
Autobuild-User(master): Stefan Metzmacher <metze@samba.org>
Autobuild-Date(master): Tue Aug 11 17:37:54 UTC 2026 on atb-devel-224
(cherry picked from commit 1cc0c6047e4d927c847174fbc1d370255e25cd1c)
Autobuild-User(v4-25-test): Björn Jacke <bjacke@samba.org>
Autobuild-Date(v4-25-test): Wed Aug 12 15:32:33 UTC 2026 on atb-devel-224
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/980de7dd837ef369248caca55e7d6719b07d8bb5">980de7dd</a></strong>
<div>
<span> by Jennifer Sutton </span> <i> at 2026-08-27T14:16:50+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>libcli/dns: Do not pass NULL pointer to memcpy()
To do so is to invoke undefined behaviour.
Signed-off-by: Jennifer Sutton <jennifersutton@catalyst.net.nz>
Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
(cherry picked from commit 4e0d3953e9c6974c4c4fe3fe0ee76d86042d9c37)
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16225
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/f88a20bd7dc26e483d237aa73b31d4d82560e601">f88a20bd</a></strong>
<div>
<span> by Stefan Metzmacher </span> <i> at 2026-08-27T14:16:50+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>script/autobuild.py: also add .stderr output including backtraces
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16194
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Björn Jacke <bjacke@samba.org>
(cherry picked from commit 51cf4209d83272f550029412d0e960a16d7ffdaf)
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/6f6d5efa4e018e70615bceb70ab2992a73a4a6d5">6f6d5efa</a></strong>
<div>
<span> by Stefan Metzmacher </span> <i> at 2026-08-27T14:16:50+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>s4:rpc_server/common: turn lpcfg_dcerpc_server_info() into an inline function
This makes it easier to use without linking problems.
While there fix talloc problems.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16223
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
(cherry picked from commit 8f17d9a89e22d074e6894cc1530ea626d60a080f)
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/f12dd28268c19867ac44328dbd701c828c21a467">f12dd282</a></strong>
<div>
<span> by Stefan Metzmacher </span> <i> at 2026-08-27T14:16:50+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>s4:dns_server: add dns_server_scavenging_interval()
We currently have two options used in different locations:
dnsserver:scavenging_interval =>
the value is in seconds and is used in kccsrv_dns_zone_scavenging()
dnsserver:ScavengingInterval =>
the value is in hours and is used in dnsserver_init_serverinfo()
In order to have this just once with a consistent default,
we have dns_server_scavenging_interval() now.
The value of dnsserver:ScavengingInterval was only
ever used to fill the response of 'samba-tool dns serverinfo',
so we prefer dnsserver:scavenging_interval is set.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16223
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
(cherry picked from commit c239af3b4d55705b96cf371cc1c34910249b2379)
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/f45e23c381b6d23629f0c8d2098c295a1a0ec5f4">f45e23c3</a></strong>
<div>
<span> by Stefan Metzmacher </span> <i> at 2026-08-27T14:16:50+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>s4:kcc: let kccsrv_dns_zone_scavenging() use dns_server_scavenging_interval()
It means we have the parameter logic just once
and a value of 0 means scavenging is disabled.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16223
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
(cherry picked from commit 03caa23a6d98fb7c252590de9ffc909407b8bdc8)
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/ee95e7af9b01063a34c9faa04bbde587d0bcb7f8">ee95e7af</a></strong>
<div>
<span> by Stefan Metzmacher </span> <i> at 2026-08-27T14:16:50+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>s4:rpc_server/dnsserver: let dnsserver_init_serverinfo() use dns_server_scavenging_interval()
It means we have the parameter logic just once.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16223
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
(cherry picked from commit 312da01ed1d9c0d0b30bc4db8262e6d01b307252)
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/ec6a582202dd081bb18c9e8902c0198165218f69">ec6a5822</a></strong>
<div>
<span> by Stefan Metzmacher </span> <i> at 2026-08-27T14:16:50+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>s4:rpc_server/dnsserver: define DNS_SERVER_DEFAULT_[NO_]REFRESH_INTERVAL as 24 * 7
These are the defaults Windows is also using...
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16223
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
(cherry picked from commit 9919ae52ef611423205a140e32900d84242fc01d)
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/9ca6c0e526c511040c2805d035baadb0b5a73cc6">9ca6c0e5</a></strong>
<div>
<span> by Stefan Metzmacher </span> <i> at 2026-08-27T14:16:50+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>s4:rpc_server/dnsserver: let dnsserver_init_zoneinfo() fallback to serverinfo->dwDefault[No]RefreshInterval
And disable fAging if the values are still 0.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16223
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
(cherry picked from commit fdcda85ac611e2e12ab895674fed76347b5ed6d0)
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/2ba4e2055cf1c86f7c6853cf364ab9dc34ef948e">2ba4e205</a></strong>
<div>
<span> by Stefan Metzmacher </span> <i> at 2026-08-27T14:16:50+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>s4:dns_server: let dns_get_zone_properties() initialize zoneinfo completely.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16223
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
(cherry picked from commit 9fe99c5760a1dc22a57e7bf6338a1b2244e4da6d)
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/a4b9c50ffa52a9eb7c01ac51034a5405e7e0703a">a4b9c50f</a></strong>
<div>
<span> by Stefan Metzmacher </span> <i> at 2026-08-27T14:16:50+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>s4:dns_server: move rpc_server/dnsserver/dnsutils.c to dns_server/dnsserver_utils.c
This will avoid linking problems in the following commits.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16223
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
(cherry picked from commit 3f97ac62727137a2b56555a821a2f1ab5113fac2)
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/81059f726fc973fcbf9d80232dc1962167235c18">81059f72</a></strong>
<div>
<span> by Stefan Metzmacher </span> <i> at 2026-08-27T14:16:50+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>s4:dns_server: let dns_get_zone_properties() fallback to serverinfo->dwDefault[No]RefreshInterval
And disable fAging if the values are still 0.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16223
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
(cherry picked from commit 1146df4c532834481a67cbcf5c7bc8142dfe9875)
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/d285e69988f8cf438ea8aff8ce2717eaf0825ee4">d285e699</a></strong>
<div>
<span> by Stefan Metzmacher </span> <i> at 2026-08-27T14:16:50+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>s4:kcc: let dns_tombstone_records_zone() skip if fAging is not 1
This means we only do scavenging if the dw[No]RefreshInterval related
logic in dns_common_replace() is triggered and dwTimeStamp has
a chance to be updated before.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16223
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Autobuild-User(master): Stefan Metzmacher <metze@samba.org>
Autobuild-Date(master): Tue Aug 25 12:14:04 UTC 2026 on atb-devel-224
(cherry picked from commit 2cf29c3c95aa4c6bdd645e34fdf521f9bcb91538)
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/af3fa1f79964b26d377b6f681a8877b09f722584">af3fa1f7</a></strong>
<div>
<span> by Stefan Metzmacher </span> <i> at 2026-08-27T14:16:50+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>s4:dns_server: make it more obvious that the DNS over TCP length hdr is u16
This is no functional change, it just makes it easier to understand.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=15988
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
(cherry picked from commit 778ac9fdc18d56281d9aea88efd04a6dbdd0bdbd)
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/20914734fcc5f6304dbf062008faa54d32c2dbda">20914734</a></strong>
<div>
<span> by Stefan Metzmacher </span> <i> at 2026-08-27T14:16:50+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>s4:dns_server: avoid layer violation for truncated udp responses.
No caller should every look into the state of a subreq!
BUG: https://bugzilla.samba.org/show_bug.cgi?id=15988
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
(cherry picked from commit f4bf6e101f2eda31cbe7fa78eba05e0f70b1075d)
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/120f1c8de80c868381375306541e4ffa68fc5aca">120f1c8d</a></strong>
<div>
<span> by Stefan Metzmacher </span> <i> at 2026-08-27T14:16:50+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>python:tests/dns: use tcp for the CVE-2018-14629 regression tests
These go over the limit of 512 bytes for udp, so
they would break with the next commit.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=15988
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
(cherry picked from commit 3085a69e6fd223fea31d8e7645b31673d84bc267)
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/825c1030d2f3315f5502e70c0b70e8b4435581dc">825c1030</a></strong>
<div>
<span> by Stefan Metzmacher </span> <i> at 2026-08-27T15:20:15+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>s4:dns_server: change DNS_MAX_UDP_PACKET_LENGTH to 512
This is what RFC 1035 specifies, and we don't support
EDNS(0)/RFC 2671 yet.
I've seen udp responses being dropped, which were
a bit more than 800 bytes.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=15988
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
(cherry picked from commit 0e0ebd1d982477255b9f4bcba3316cd2ff054678)
Autobuild-User(v4-25-test): Björn Jacke <bjacke@samba.org>
Autobuild-Date(v4-25-test): Thu Aug 27 15:20:15 UTC 2026 on atb-devel-224
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/e0fafab4c52fc91e2350154abc3f1c0e55f34b46">e0fafab4</a></strong>
<div>
<span> by Stefan Metzmacher </span> <i> at 2026-09-03T22:34:41+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>python/tests: add tests for samba-tool dns zoneoptions on a zone without dNSProperty values
Currently they fail with WERR_INTERNAL_DB_ERROR.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16226
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
(cherry picked from commit b179abed6757ece911d58e562a2045edf2225a91)
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/e36aee8ca6385dbb9a73c27a9623c70e5ad664ba">e36aee8c</a></strong>
<div>
<span> by Stefan Metzmacher </span> <i> at 2026-09-03T22:34:41+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>s4:rpc_server/dnsserver: fix talloc hierarchy in dnsserver_db_do_reset_dword()
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16226
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
(cherry picked from commit 3ae706be815952a20ecfef427ab98f540fa6b8ac)
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/0b00baf153fb503a238d18e61125c8aa1955bd7a">0b00baf1</a></strong>
<div>
<span> by Stefan Metzmacher </span> <i> at 2026-09-04T00:18:39+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>s4:rpc_server/dnsserver: allow dnsserver_db_do_reset_dword() to add new dNSProperty values
On a zone without "dNSProperty" values at all, or without
a value for the new property, we failed with WERR_INTERNAL_DB_ERROR.
If there's no value stored for the property, we just need to
add a new value.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16226
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Autobuild-User(master): Stefan Metzmacher <metze@samba.org>
Autobuild-Date(master): Thu Aug 27 17:36:53 UTC 2026 on atb-devel-224
(cherry picked from commit 731e541a0ef4fda598a1480e66aff9d26641d9da)
Autobuild-User(v4-25-test): Björn Jacke <bjacke@samba.org>
Autobuild-Date(v4-25-test): Fri Sep 4 00:18:39 UTC 2026 on atb-devel-224
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/00317d9bd333a354eea636f0b5dd308a4fe94e7a">00317d9b</a></strong>
<div>
<span> by Björn Jacke </span> <i> at 2026-09-06T17:08:40+02:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>WHATSNEW: Add release notes for Samba 4.25.0rc2.
Signed-off-by: Bjoern Jacke <bjacke@samba.org>
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/b5923e8d9563bcee569eb3f3ecc712a2a3761c1c">b5923e8d</a></strong>
<div>
<span> by Björn Jacke </span> <i> at 2026-09-06T17:09:32+02:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>VERSION: Disable GIT_SNAPSHOT for the 4.25.0rc2 release.
Signed-off-by: Bjoern Jacke <bjacke@samba.org>
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/8b301ed39dbbd40f29d05995eb0cbf03ea0ed779">8b301ed3</a></strong>
<div>
<span> by Björn Jacke </span> <i> at 2026-09-06T17:14:24+02:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>VERSION: Bump version up to Samba 4.25.0rc2...
and re-enable GIT_SNAPSHOT.
Signed-off-by: Bjoern Jacke <bjacke@samba.org>
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/f6b8c2d576ed1f6f3c89d516b4be308af252abce">f6b8c2d5</a></strong>
<div>
<span> by Anoop C S </span> <i> at 2026-09-07T21:17:20+02:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>WHATSNEW: Add a note about vfs_ceph_rgw module
Signed-off-by: Anoop C S <anoopcs@samba.org>
Signed-off-by: Vinit Agnihotri <vagnihot@redhat.com>
Reviewed-by: Anoop C S <anoopcs@samba.org>
Reviewed-by: Guenther Deschner <gd@samba.org>
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/fc973f7fac40bb20118ea61a958a888de08ab26c">fc973f7f</a></strong>
<div>
<span> by Volker Lendecke </span> <i> at 2026-09-08T17:57:56+02:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>WHATSNEW: Mention removal of parameter "getwd cache"
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16233
Signed-off-by: Volker Lendecke <vl@samba.org>
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/63fdcb00e559914ed20385658e138022f1c9938f">63fdcb00</a></strong>
<div>
<span> by Stefan Metzmacher </span> <i> at 2026-09-16T16:46:17+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>libcli/smb: add smb2cli_session_check_reauth() helper
That checks that the last session setup response of a reauth
is correctly signed by the server.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=15962
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
(cherry picked from commit 2df8022bdc82e216973d8037e053821fe97c224a)
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/9f3b75bc7654b85e3719c6c6664fdc4c50b6b75a">9f3b75bc</a></strong>
<div>
<span> by Stefan Metzmacher </span> <i> at 2026-09-16T16:46:17+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>s3:torture: let SMB2-SESSION_REAUTH use smb2cli_session_check_reauth()
BUG: https://bugzilla.samba.org/show_bug.cgi?id=15962
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
(cherry picked from commit 4ecb6b83e55bfb62440c1b309bbaa18fd19bb202)
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/a635a1ac27e03e7ced5c2a22be8f41380f664115">a635a1ac</a></strong>
<div>
<span> by Stefan Metzmacher </span> <i> at 2026-09-16T16:46:17+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>s4:libcli/smb2: let smb2_session_setup_spnego_both_ready() call smb2cli_session_check_reauth()
BUG: https://bugzilla.samba.org/show_bug.cgi?id=15962
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
(cherry picked from commit 5f0a2fec20fa71ccd75bb3d9aaa92cd1233a60db)
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/3d45224be030a208c3583e5ba647519494bb1526">3d45224b</a></strong>
<div>
<span> by Stefan Metzmacher </span> <i> at 2026-09-16T16:46:17+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>s4:torture/smb2: There's no need to use smb2cli_session_require_signed_response()
This is now handled by smb2cli_session_check_reauth().
BUG: https://bugzilla.samba.org/show_bug.cgi?id=15962
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
(cherry picked from commit 8ae9253241c311fa3bbe65a98a8c97d9ec0c649b)
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/40afaa5caa13c631f42232a4687bb882e4b53f26">40afaa5c</a></strong>
<div>
<span> by Stefan Metzmacher </span> <i> at 2026-09-16T16:46:17+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>libcli/smb: don't reset state->smb2.require_signed_response without NT_STATUS_OK
We no longer use this for reauth tests, so that reset is no longer
needed.
We could remove smb2cli_session_require_signed_response() completely,
but I think it can be useful for other tests in future.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=15962
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
(cherry picked from commit f6790404d6fa04d438b952b6b8f908b6ab4f5d9b)
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/f76880fac1e3ba40ab28aee7cc6e70145238e7b7">f76880fa</a></strong>
<div>
<span> by Stefan Metzmacher </span> <i> at 2026-09-16T16:46:17+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>s3:smb2_server: make it possible to sign responses even with encryption
Final session setup responses should always be signed, even if
they are wrapped with encryption.
This fixed setups where encryption is required and
a session is expired.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=15962
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Autobuild-User(master): Volker Lendecke <vl@samba.org>
Autobuild-Date(master): Fri Sep 11 17:38:18 UTC 2026 on atb-devel-224
(cherry picked from commit 235658e3ecc1d971e7f963edbeba828748871d1c)
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/e83f62cc9a1f1956d72c3b98a83ea702a07c9415">e83f62cc</a></strong>
<div>
<span> by Kopylov Pavel </span> <i> at 2026-09-16T16:46:17+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>lib:param: Fix uppercase "0X" prefix in kdc default domain enctypes
handle_kdc_default_domain_supported_enctypes() decides whether an
enctype token is written in hexadecimal by looking for a leading
"0x" / "0X". The test contained a typo:
if (bitstr[0] == '0' &&
(bitstr[1] == 'x' || bitstr[2] == 'X'))
The second comparison indexes bitstr[2] instead of bitstr[1]. Two
consequences follow:
* A value written with an uppercase prefix, e.g. "0X1F", is not
recognised as hexadecimal. It is then parsed with base 10 using
smb_strtoul(..., SMB_STR_FULL_STR_CONV), which fails on the "X" and
the whole value is rejected with a warning and silently dropped.
Lowercase "0x1f" happened to work only by accident.
* For a bare "0" token, bitstr[1] is the NUL terminator, so the
short-circuit falls through to bitstr[2], a one-byte read past the
end of the two-byte buffer "0\0" (out-of-bounds read).
Compare bitstr[1] against 'X' as intended. This makes uppercase hex
values work and removes the out-of-bounds read. The value is parsed from
admin-controlled smb.conf, so there is no remote exposure.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16239
RN: Fix parsing of uppercase "0X" hex values in the "kdc default domain
supported enctypes" smb.conf parameter.
Signed-off-by: Kopylov Pavel <pkopylov@cloudlinux.com>
Reviewed-by: Jennifer Sutton <jennifersutton@catalyst.net.nz>
Reviewed-by: Volker Lendecke <vl@samba.org>
(cherry picked from commit 608afbe571a6314adfd191e2b069ac3ff66f7c93)
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/cb8236db7ab1c030b807cce818f88855e34ced52">cb8236db</a></strong>
<div>
<span> by Kopylov Pavel </span> <i> at 2026-09-16T16:46:17+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>lib:param: Fix uppercase "0X" prefix in kdc supported enctypes
handle_kdc_supported_enctypes() carries the same typo the previous
commit fixed in handle_kdc_default_domain_supported_enctypes():
if (bitstr[0] == '0' &&
(bitstr[1] == 'x' || bitstr[2] == 'X'))
The second comparison indexes bitstr[2] instead of bitstr[1], with the
same two consequences:
* A value written with an uppercase prefix, e.g. "0X1C", is not
recognised as hexadecimal. It is then parsed with base 10 using
smb_strtoul(..., SMB_STR_FULL_STR_CONV), which fails on the "X" and
the whole value is rejected with a warning and silently dropped.
Lowercase "0x1c" happened to work only by accident.
* For a bare "0" token, bitstr[1] is the NUL terminator, so the
short-circuit falls through to bitstr[2], reading one byte past the
end of the string allocated by str_list_make(). valgrind on
"kdc supported enctypes = 0" reports:
Invalid read of size 1
at handle_kdc_supported_enctypes (loadparm.c:1931)
by set_variable (loadparm.c:1969)
by lpcfg_do_global_parameter (loadparm.c:2028)
Address 0x939cd52 is 0 bytes after a block of size 98 alloc'd
by talloc_strndup (talloc.c:2479)
by str_list_make (util_strlist.c:101)
by handle_kdc_supported_enctypes (loadparm.c:1899)
Compare bitstr[1] against 'X' as intended. This makes uppercase hex
values work and removes the out-of-bounds read. The value is parsed from
admin-controlled smb.conf, so there is no remote exposure.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16239
RN: Fix parsing of uppercase "0X" hex values in the "kdc supported
enctypes" smb.conf parameter.
Signed-off-by: Kopylov Pavel <pkopylov@cloudlinux.com>
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Reviewed-by: Jennifer Sutton <jennifersutton@catalyst.net.nz>
Reviewed-by: Volker Lendecke <vl@samba.org>
(cherry picked from commit 27c87a723ba3e2e9d36df8736641d3c191bf4aa2)
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/a3a440d34b4b32c41ee73ccbdd74190fc6acb7dc">a3a440d3</a></strong>
<div>
<span> by Kopylov Pavel </span> <i> at 2026-09-16T16:46:17+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>tests/param: Test hex and decimal enctype bitmask parsing
Cover both "kdc supported enctypes" and "kdc default domain supported
enctypes" with lowercase and uppercase "0x" / "0X" prefixes. The
uppercase spellings were rejected outright before the preceding two
commits.
The bare "0" cases exercise the token that made the old code read past
the end of the string. They pass either way in a plain build and only
fail under a memory checker, but keep that input covered.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16239
Signed-off-by: Kopylov Pavel <pkopylov@cloudlinux.com>
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Reviewed-by: Jennifer Sutton <jennifersutton@catalyst.net.nz>
Reviewed-by: Volker Lendecke <vl@samba.org>
(cherry picked from commit a1979f9b976a9f0f0505068ce2b4fa057eb7072c)
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/6b36081c83a58d8f838e38ade34261899a333031">6b36081c</a></strong>
<div>
<span> by Kopylov Pavel </span> <i> at 2026-09-16T16:46:17+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>lib:param: Log the right parameter in handle_kdc_supported_enctypes()
The warning emitted for an unparsable token names "kdc default domain
supported enctypes", the parameter handled by the neighbouring
handle_kdc_default_domain_supported_enctypes(). An admin with a bad
value in "kdc supported enctypes" is pointed at the wrong smb.conf
line:
handle_kdc_supported_enctypes: WARNING: Ignoring invalid value '0Xzz'
for parameter 'kdc default domain supported enctypes'
Name the parameter the handler actually parses.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16239
Signed-off-by: Kopylov Pavel <pkopylov@cloudlinux.com>
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Reviewed-by: Jennifer Sutton <jennifersutton@catalyst.net.nz>
Reviewed-by: Volker Lendecke <vl@samba.org>
Autobuild-User(master): Volker Lendecke <vl@samba.org>
Autobuild-Date(master): Fri Sep 11 16:10:09 UTC 2026 on atb-devel-224
(cherry picked from commit b54246e258dd3dbd94a112ac460318b27de1d6fd)
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/fc3f65f458a2bafb30a61f15eeb7a04cbdee2466">fc3f65f4</a></strong>
<div>
<span> by Ralph Boehme </span> <i> at 2026-09-16T18:28:49+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>WHATSNEW: fix Persistent Handles stuff
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16234
Signed-off-by: Ralph Boehme <slow@samba.org>
Autobuild-User(v4-25-test): Björn Jacke <bjacke@samba.org>
Autobuild-Date(v4-25-test): Wed Sep 16 18:28:49 UTC 2026 on atb-devel-224
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/e95fb568fa2f4f7718cf4b0ba41db539489f0b79">e95fb568</a></strong>
<div>
<span> by Ralph Boehme </span> <i> at 2026-09-20T18:38:26+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>CI: upload the autobuild logs also for failed jobs
The artifacts section of .shared_template had no 'when:' key, so gitlab
defaults to 'when: on_success' and nothing was uploaded for a failed
job. That's exactly when the logs are most useful.
Upload logs.tar.gz instead of the raw *.stdout/*.stderr files.
autobuild.py bundles them into that tarball on both the success and
the failure path, which keeps the upload small. Note that on success
autobuild.py removes the raw files again, so the *.stdout/*.stderr
globs only ever matched something for jobs that failed.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16237
Signed-off-by: Ralph Boehme <slow@samba.org>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
(cherry picked from commit d8394e0401b9f81f3fb81ccf513cc169d8b849e9)
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/60a6ab74034a4b8b16d586e7505a7fbbc2456239">60a6ab74</a></strong>
<div>
<span> by Ralph Boehme </span> <i> at 2026-09-20T18:38:26+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>CI: upload the test environment logs for failed jobs
The samba daemons started by selftest log into files below the selftest
prefix, which autobuild.py places in the testbase ($testbase/$task/bin/ab)
and not in the git checkout. Gitlab can only collect artifacts from
CI_PROJECT_DIR, so pack the log files into a tarball in the checkout from
after_script.
This depends upon CI passing --nocleanup to autobuild.py, so the testbase is
still around when after_script runs.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16237
Signed-off-by: Ralph Boehme <slow@samba.org>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Autobuild-User(master): Ralph Böhme <slow@samba.org>
Autobuild-Date(master): Sun Sep 13 12:21:11 UTC 2026 on atb-devel-224
(cherry picked from commit d02de39769101d11ca7183a6de1fbec50a53c165)
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/009455ff992dcf1440f291314572326b455afdec">009455ff</a></strong>
<div>
<span> by Ralph Boehme </span> <i> at 2026-09-20T18:38:26+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>smbtorture: fix the ctdb node restart cleanup in the persistent-open tests
test_persistent_reconnect_contended_do_one() and
test_persistent_failover_reconnect() stop a ctdb node in the middle of
the test and restart it again at the end. Both restarted it from two
places, on the success path and in the cleanup block:
if (stopped) {
ret = torture_start_ctdb_node(tctx, _tree, pnn);
torture_assert_goto(tctx, ret, ret, done, "...");
stopped = false;
}
...
done:
if (stopped) {
ret = torture_start_ctdb_node(tctx, _tree, pnn);
...
That has two problems: stopped is only cleared after the assert, so when the
restart on the success path failed, the jump to done: found the flag still set
and attempted the start a second time. One failure therefore got reported twice,
which makes the test output rather confusing to read:
Starting ctdbd on node 0...
WARNING!: ../../source4/torture/smb2/util.c:1134: status was \
NT_STATUS_IO_TIMEOUT, expected NT_STATUS_OK: torture_smb2_testdir failed
Starting ctdbd on node 0...
WARNING!: ../../source4/torture/smb2/durable_v2_open.c:6684: \
Expression `ret' failed: torture_ctdb_start_node failed
WARNING!: ../../source4/torture/smb2/util.c:1134: status was \
NT_STATUS_IO_TIMEOUT, expected NT_STATUS_OK: torture_smb2_testdir failed
Worse, the cleanup block assigns the restart result to ret. A test that
failed in its body arrives at done: with ret = false, and if the restart
then succeeds ret is turned back into true and the test returns success.
The failure is not lost from the report, torture_assert_goto() has
already recorded it via torture_result(), which is why it shows up as a
WARNING rather than as the failure of the run. But
test_persistent_reconnect_contended_do_table() only stops iterating on a
false return, so it happily continues with the next table entry after a
failed one.
Restart the node in the cleanup block only and keep the result in a local
variable so it cannot overwrite the result of the test itself.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16237
Signed-off-by: Ralph Boehme <slow@samba.org>
Reviewed-by: Martin Schwenke <mschwenke@ddn.com>
(cherry picked from commit eba6cf1b46985228692e4d969bc17115f6beee85)
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/dcfc4b3452712ffbf55293098a7008e4fba2b410">dcfc4b34</a></strong>
<div>
<span> by Ralph Boehme </span> <i> at 2026-09-20T18:38:26+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>selftest: wait for the cluster to settle in stop_node.sh/start_node.sh
The two helpers behind smbd:FSCTL_SMBTORTURE ran "ctdb stop" resp.
"ctdb continue" and returned immediately, leaving the caller to guess when
the cluster was usable again.
Both commands call wait_for_flags() and ipreallocate(), so the
node flag has propagated across the cluster and the takeover run has
finished when they return. What they do not wait for is the recovery that
the flag change triggers. A node in recovery mode has an invalid
generation, so ctdb_input_pkt() drops record migrations and pushes.
Generate both scripts from a template that polls "ctdb status"
until it reports a finished recovery and the correct node count:
one node less after a stop, all nodes after a continue.
After a stop the node itself is useless as a source of truth, so ask any
other node. After a continue the node itself is back in the cluster and
can answer.
The wait is bounded at 30s, dumps "ctdb status" and exits non-zero on
expiry. Two reasons not to wait forever: the script runs synchronously
inside smbrun() in smbd, so the wait counts against the client side SMB
request timeout of 60 seconds (SMB_REQUEST_TIMEOUT), and
wait_for_flags() in the ctdb tool is itself already an unbounded
"while (1)" that this wrapper should not add to without bound.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16237
Signed-off-by: Ralph Boehme <slow@samba.org>
Reviewed-by: Martin Schwenke <mschwenke@ddn.com>
(cherry picked from commit 44b5555db874566c1997f572f9fa6af715557b89)
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/ebde77f10ba39b9dc0b97722bb7f94122f182a8e">ebde77f1</a></strong>
<div>
<span> by Ralph Boehme </span> <i> at 2026-09-20T18:38:26+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>smbtorture: let the path-contention benchmark optionally use persistent opens
Add a "persistent" torture option:
smbtorture ... --option=torture:persistent=yes smb2.create.bench-path-contention-shared
It defaults to off, so the benchmark behaves as before unless it is asked for.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16237
Signed-off-by: Ralph Boehme <slow@samba.org>
Reviewed-by: Martin Schwenke <mschwenke@ddn.com>
(cherry picked from commit 837cd37cabc778ba8c03cbd184d2c0db3e31e5d9)
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/b29c95a101a1582823ef23e2712d8ea97026429a">b29c95a1</a></strong>
<div>
<span> by Ralph Boehme </span> <i> at 2026-09-20T18:38:26+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>ctdb-daemon: fix talloc leak in ctdb_control_push_record()
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16237
Signed-off-by: Ralph Boehme <slow@samba.org>
Reviewed-by: Martin Schwenke <mschwenke@ddn.com>
(cherry picked from commit 39cb72fe63bac3e1cb6d2f88bb43d283b6fda7c7)
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/f6eaa077f8e87b2df7014563335286db36cbaf3e">f6eaa077</a></strong>
<div>
<span> by Ralph Boehme </span> <i> at 2026-09-20T18:38:26+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>ctdb-daemon: don't potentially block the main daemon in PUSH_RECORD and ignore stale pushes
ctdb_control_push_record() called ctdb_ltdb_store() without holding the
record's chainlock, so tdb_storev() acquired it itself and could block
while doing so. CTDB_CONTROL_PUSH_RECORD is dispatched synchronously
from ctdb_request_control() in the main event loop, so the whole daemon
stalls for as long as any process on the node holds that chainlock.
Avoid this by going through ctdb_ltdb_lock_requeue(), which uses
tdb_chainlock_nonblock() and requeues the packet when the chain is
currently locked.
This avoids the following deadlock: with per-record persistency,
db_ctdb_storev() holds the chainlock while calling db_ctdb_push_record(), which
starts with a blocking ctdbd_generation() (CTDB_CONTROL_GETVNNMAP)
request. Hence:
smbd holds chainlock(K), waits for a reply from ctdbd
ctdbd blocked in tdb_storev(K), waits for chainlock(K)
Observed in a 3 node cluster running smbtorture3
test_persistent_reconnect_contended against a clustered environment with "smb3
persistent handles = yes":
16:14:04 node.1 ctdbd: Vacuuming took 0.001 seconds ... <- last sign of life
...
16:14:32 node.0 ctdbd: dead count reached for node 1
16:48:35 node.1 ctdbd: Handling event took 2070 seconds!
Note this change gives up a guarantee: Samba's per-record persistency
relies on the transaction on the persistent database as a sequence
point, and that works because trans3_commit sends its per-node
CTDB_CONTROL_UPDATE_RECORD over the same connections that carried the
push, so a node processes the push before its persistent write. A
deferred push leaves that packet order, so a node can ack the persistent
write with the push still pending, and a node dying in that window can
be left with a volatile copy older than the committed persistent record.
In practice the risk is very small: the push is a broadcast, so any
surviving node that did apply it holds the newer record, and as the
recovery merges volatile copies by highest RSN, that copy wins. It only
bites when no survivor applied the push, as the recovery discards the
still deferred one.
When it does bite though, the record is gone. The persistent backup db
does not cover this: it is only read back into the volatile db by
db_ctdb_migrate_persistent_recs(), at db open time and only when the
migration marker is missing, ie after the whole cluster has restarted.
A subsequent commit will eliminate the small risk by turning the pushes
themselves into a sequence point that aren't just fire and forget controls but
wait for the ACKs from all nodes, a bit like RAFT without the majority twist.
CTDB_CONTROL_PUSH_RECORD writes the pushed ctdb_ltdb_header, including
its dmaster field, into the local database unconditionally. The only
guard is a vnn_map generation check.
The control is an unsequenced NOREPLY broadcast, sent while the sender
is the dmaster, and it travels a completely different path than the
CTDB_REQ_CALL / CTDB_REQ_DMASTER traffic that migrates the record.
It is therefore possible for a push to be processed on a node after the
record has already been migrated further on. The push then reinstalls
the old dmaster. The result is a broken dmaster chain in which no node
considers itself the dmaster, and ctdb_call_send_redirect() bounces the
request between the lmaster and the stale dmaster forever. Observed
running smbtorture test_persistent_reconnect_contended():
High hopcount 96 dbid:locking.tdb key:0x82574ec8 reqid=0004696d \
pnn:0 src:0 lmaster:0 header->dmaster:2 dst:2
High hopcount 97 dbid:locking.tdb key:0x82574ec8 reqid=0004696d \
pnn:2 src:0 lmaster:0 header->dmaster:1 dst:0
Node 0 is the lmaster and believes the dmaster is node 2, node 2
believes it is node 1.
To address this, detect stale pushes by reading the local header under
the chainlock and drop the push if it isn't newer (has a higher RSN).
A persistent store deliberately writes two different RSNs:
prepare_local_header_for_push_record() bumps the RSN of the copy stored
locally, while the push carries the un-bumped one, so that the dmaster
keeps the strictly highest RSN as ctdb vacuuming requires.
The RSN alone is not enough though. A recovery repoints the dmaster
field of every record at the recovery node but preserves the RSN, so no
RSN comparison can detect one. A recovery also does not flush pending
pushes: nothing tears down the transport, so a push still sitting in a
receive buffer is dispatched whenever the event loop reaches it.
Say the dmaster pushes RSN 5 and goes inactive before the recovery pulls
the databases, so its own copy at RSN 6 never enters the recovery merge,
while the push is still undelivered on a node that holds the old RSN 4.
The merge keeps 4 and repoints dmaster at the recovery node. When the
delayed push is finally processed it carries RSN 5, higher than the
local 4, so the RSN test passes it and the dead push sender is
reinstated as dmaster of a record. Only the generation check can reject
this, hence the generation check remains necessary.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16237
Signed-off-by: Ralph Boehme <slow@samba.org>
Reviewed-by: Martin Schwenke <mschwenke@ddn.com>
(cherry picked from commit 265f738c9b6d7ac28a7081bb7874afe95c5b1258)
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/5675e3214d74a64c8a0a1f7aff44a75d9936e182">5675e321</a></strong>
<div>
<span> by Ralph Boehme </span> <i> at 2026-09-20T18:38:26+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>ctdb-daemon: add CTDB_CONTROL_PUSH_RECORD_STORE
CTDB_CONTROL_PUSH_RECORD is going to become a fan-out control: the node
holding a record asks its own daemon to push it, and the daemon sends the
actual per node store to the other nodes and collects their replies.
The new control is daemon to daemon only. ctdb_daemon_send_control()
builds the raw struct ctdb_req_control_old and ctdb_request_control()
hands the payload back untouched, so it needs no entry in the
ctdb_req_control_data marshalling used by the client library. It reuses
the existing struct ctdb_push_record_data payload.
ctdb_control_push_record() is about to become just the worker side of
the fan-out, so rename it accordingly and register it for the new
CTDB_CONTROL_PUSH_RECORD_STORE opcode.
Both opcodes dispatch to it for now, so the behaviour is unchanged. The
next commit turns CTDB_CONTROL_PUSH_RECORD into the fan-out.
NUM_CONTROLS in protocol_ctdb_test.c is the highest opcode plus one and
the test loops run over every opcode below it, so it has to be bumped for
the new control to be covered at all. Nothing else is needed there: the
payload is the existing struct ctdb_push_record_data, which
protocol_types_test.c already tests, and with no
ctdb_req_control_data entry the round trip for this opcode is just the
control header with an empty body.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16237
Signed-off-by: Ralph Boehme <slow@samba.org>
Reviewed-by: Martin Schwenke <mschwenke@ddn.com>
(cherry picked from commit 32a51613ba876c577021effaada3cf9e7e2894fb)
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/0c3e58a6556380b83d2e91b70f4a428e1e902fbb">0c3e58a6</a></strong>
<div>
<span> by Ralph Boehme </span> <i> at 2026-09-20T18:38:26+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>ctdb-daemon: fan out push-record and wait for the acks
CTDB_CONTROL_PUSH_RECORD was an unsequenced NOREPLY broadcast, records
could be applied on the other nodes at an arbitrary later point, or not
at all: a recovery in between makes the receiver drop it on the
generation check, and since the push is what distributes the record to
the volatile databases, losing it may loose the record when pushing
nodes fails and no push receiver has applied it. The persistent backup
db does not help, it is only replayed on a cluster wide restart.
Turn the control into a fan-out with ACK: the node holding the record
sends CTDB_CONTROL_PUSH_RECORD to its own daemon, which sends
CTDB_CONTROL_PUSH_RECORD_STORE to each of the other active nodes, counts
the replies and answers once they are all in. The caller then knows the
record is on every node when the control returns, instead of having to
reason about an unsequenced broadcast.
The generation check in the worker now fails the control instead of
returning success. This is deliberate and should trigger a retry in the
pusher.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16237
Signed-off-by: Ralph Boehme <slow@samba.org>
Reviewed-by: Martin Schwenke <mschwenke@ddn.com>
(cherry picked from commit e0f976430f4f879248714b096792b73806c6878e)
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/d0bc90e86b79693c3acf9073b816cc8e9c732bdd">d0bc90e8</a></strong>
<div>
<span> by Ralph Boehme </span> <i> at 2026-09-20T18:38:26+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>dbwrap_ctdb: zero-initialise struct db_ctdb_ctx
db_open_ctdb_ex() allocates the context with talloc() and then assigns the
fields one by one, but two of them are only assigned conditionally:
- pdb is set in db_ctdb_open_per_rec_persistent_db(), which returns early
unless the database was opened with DBWRAP_FLAG_PER_REC_PERSISTENT
- lock_ctx is set only when allow_transactions is true
This is harmless today because nothing reads them on those paths, but it
is a landmine: a NULL check on either field does not do what it looks
like it does.
Use talloc_zero().
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16237
Signed-off-by: Ralph Boehme <slow@samba.org>
Reviewed-by: Martin Schwenke <mschwenke@ddn.com>
(cherry picked from commit d193506c7f8ab12b98071808f556632f7ffff462)
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/25598e40dba8cc3618fe446718c68760f39c7a68">25598e40</a></strong>
<div>
<span> by Ralph Boehme </span> <i> at 2026-09-20T18:38:26+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>dbwrap_ctdb: remove uneeded arg from db_ctdb_can_use_local_copy()
There's only one caller that passes false. The value is then forwarded to
db_ctdb_can_use_local_hdr(). Passing false directly we can drop the argument.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16237
Signed-off-by: Ralph Boehme <slow@samba.org>
Reviewed-by: Martin Schwenke <mschwenke@ddn.com>
(cherry picked from commit cd00a78e5c189ca24bc57f66ed126df23da5a8e0)
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/870efa927b20a39e2fc403f915b701c2b82e1db9">870efa92</a></strong>
<div>
<span> by Ralph Boehme </span> <i> at 2026-09-20T18:38:26+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>dbwrap_ctdb: fix handling of stale PERSISTENT_IN_PROGRESS records
While a store with DBWRAP_STORE_PERSISTENT is in progress, the record
value in the volatile database is prefixed with the storing process'
server_id and the ctdb record header carries
CTDB_REC_FLAG_PERSISTENT_IN_PROGRESS. If that process dies in the middle
of the store, db_ctdb_can_use_local_hdr() lets the next accessor adopt
the record and used to strip the prefix like this:
memmove(data.dptr,
data.dptr + SERVER_ID_BUF_LENGTH,
data.dsize - SERVER_ID_BUF_LENGTH);
data.dsize -= SERVER_ID_BUF_LENGTH;
This is wrong in three ways:
1. "data" is passed by value, so the corrected dsize is discarded. Both
callers keep the original length and end up handing out a value with
24 bytes of trailing garbage.
2. In the local parse case the buffer is the tdb mmap itself:
tdb_parse_record() hands the parser a pointer into map_ptr, and it
only holds an F_RDLCK on the chain. The memmove therefore modifies
the database under a read lock.
3. Because only the value is shifted and the header keeps the
PERSISTENT_IN_PROGRESS flag, the next reader repeats the exercise: it
reads whatever now sits in the first 24 bytes as a server_id, finds
no such process and shifts the record another 24 bytes to the left.
Every read of such a record corrupts it further.
Don't touch the record at all. Instead widen the existing
persistent_in_progress out boolean: it is now set whenever the record
carries the marker, not only when another process is still working on
it. Combined with the return value it tells the caller what to do: back
off and retry when we return false, skip the server_id prefix when we
return true.
db_ctdb_parse_record_parser_nonpersistent() clears the flag again once
it has skipped the prefix, so that the retry loops in
db_ctdb_parse_record() and db_ctdb_parse_record_done() keep seeing it
with its original meaning and don't spin on a record they just parsed
successfully.
While at it, drop CTDB_REC_FLAG_PERSISTENT_IN_PROGRESS from the header
db_ctdb_migrate_locked() hands out. Otherwise fetch_locked_internal()
returns a header claiming a server_id prefix that is no longer part of
the value it returns.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16237
Signed-off-by: Ralph Boehme <slow@samba.org>
Reviewed-by: Martin Schwenke <mschwenke@ddn.com>
(cherry picked from commit 6ab32458759c958f3de84d03642b20b7f062294e)
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/a7019c4d2031a8095ff0fdcd629f55986ee50000">a7019c4d</a></strong>
<div>
<span> by Ralph Boehme </span> <i> at 2026-09-20T18:38:26+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>dbwrap_ctdb: strip the in-progress prefix in traverse_read_callback()
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16237
Signed-off-by: Ralph Boehme <slow@samba.org>
Reviewed-by: Martin Schwenke <mschwenke@ddn.com>
(cherry picked from commit b4a79dcb3a437d5fb4a2a4ac9a4bff7bbd6d692d)
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/24de6f84588e19c77284983a21d0c123aac49459">24de6f84</a></strong>
<div>
<span> by Ralph Boehme </span> <i> at 2026-09-20T18:38:26+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>dbwrap_ctdb: release the persistent record on db_ctdb_storev() errors
While at it, fix the log message for a failed db_ctdb_delete_transaction.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16237
Signed-off-by: Ralph Boehme <slow@samba.org>
Reviewed-by: Martin Schwenke <mschwenke@ddn.com>
(cherry picked from commit c4b20fec036916361f429009246ebd1757e3c415)
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/7a91758f2425006dad711e3d06c0af813d926b0f">7a91758f</a></strong>
<div>
<span> by Ralph Boehme </span> <i> at 2026-09-20T18:38:26+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>dbwrap_ctdb: keep the chainlock balanced on db_ctdb_storev() errors
db_ctdb_storev() is called with the record's tdb chainlock held, taken
by db_ctdb_migrate_locked(), and the record destructor
db_ctdb_record_destr() unlocks it again when the caller frees the
record.
For a store with DBWRAP_STORE_PERSISTENT - and for the reverse
operation, dropping the persistency of a record - the chainlock has to
be dropped in the middle of the store, because the transaction on the
persistent backup database would otherwise deadlock against a ctdb
recovery. It is retaken afterwards by db_ctdb_migrate_locked().
Between those two points there are error paths that just return. Later,
when the caller then frees the record. db_ctdb_record_destr() unlocks a
chain we do not hold.
Track whether the record's chainlock is actually taken in struct db_ctdb_rec and
skip the unlock in the record destructor if we're not holding the lock.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16237
Signed-off-by: Ralph Boehme <slow@samba.org>
Reviewed-by: Martin Schwenke <mschwenke@ddn.com>
(cherry picked from commit 570ce5a1eb117eb667e048d12f02ed7cea733cc6)
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/3bc35752a9ecd5a9438ee852547d28a34fcb500f">3bc35752</a></strong>
<div>
<span> by Ralph Boehme </span> <i> at 2026-09-20T18:38:26+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>dbwrap_ctdb: don't hold the chainlock across the push-record
db_ctdb_storev() held the record's tdb chainlock across
db_ctdb_push_record(), which starts with a blocking ctdbd_generation()
(CTDB_CONTROL_GETVNNMAP) request to the local ctdbd. Waiting for a reply
from a single threaded daemon while holding a lock that same daemon may
need is a deadlock waiting to happen, and it did happen: before ctdbd
learned to defer CTDB_CONTROL_PUSH_RECORD instead of taking a blocking
record lock, a fetch-locked from another node for the same key was enough to
wedge the node.
This specific deadlock version is gone, but the code still invites the
next one: a client should not be holding a record chainlock while it
waits on the daemon, if only because holding it also prevents a ctdb
recovery from freezing the databases. So drop the chainlock first and
push afterwards. Sending the push is safe without the chainlock: the
record is protected by the server_id and the
CTDB_REC_FLAG_PERSISTENT_IN_PROGRESS marker that the local store wrote
while the chainlock was still held. That marker travels with the record
on migration, so other nodes back off as well.
The trade-off is a wider window in which the record can be migrated away
before the push is sent. In that case the push carries an outdated
dmaster and RSN and every node that matters discards it - the previous
commits taught ctdbd to compare RSNs for exactly this reason.
Note that db_ctdb_migrate_persistent_recs() and
migrate_persistent_traverse_fn() still call db_ctdb_push_record() with
the chainlock held. Those records carry no in-progress marker, so
deferring the push there needs more thought and a
db_ctdb_push_record() that does not take a struct db_record.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16237
Signed-off-by: Ralph Boehme <slow@samba.org>
Reviewed-by: Martin Schwenke <mschwenke@ddn.com>
(cherry picked from commit 96fb5cfec1a4fd329703efab6077f44d6405e67e)
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/1daaa03b6ef77c63a3310f5ae08d7b471700929d">1daaa03b</a></strong>
<div>
<span> by Ralph Boehme </span> <i> at 2026-09-20T18:38:26+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>dbwrap_ctdb: pass a TALLOC_CTX to db_ctdb_push_record()
Prepares for removing the rec argument in a subsequent commit, which is
currently used as TALLOC_CTX inside db_ctdb_push_record().
While at it, add explicit TALLOC_FREE()s to all talloc memory allocated inside
of db_ctdb_push_record().
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16237
Signed-off-by: Ralph Boehme <slow@samba.org>
Reviewed-by: Martin Schwenke <mschwenke@ddn.com>
(cherry picked from commit 46fb2a905ac4a01e6afbd0af3caf70e43fed4426)
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/e3f0ed4090b50b957341a13d9fae50f756ae0d47">e3f0ed40</a></strong>
<div>
<span> by Ralph Boehme </span> <i> at 2026-09-20T18:38:26+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>dbwrap_ctdb: let db_ctdb_push_record() take header, key and value
db_ctdb_push_record() took a struct db_record and took the ctdb context,
the record header and the key out of it. That ties it to a record the
caller still holds, and therefore to a held chainlock, which is exactly
what the callers in the restore path need to get rid of.
Additionally pass a TALLOC_CTX that can be used for temporary memory
allocations.
No functional change: all three callers pass exactly the values they
passed via the record before.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16237
Signed-off-by: Ralph Boehme <slow@samba.org>
Reviewed-by: Martin Schwenke <mschwenke@ddn.com>
(cherry picked from commit fbba86a1a8a6fa20a6148b7de7a721d5927a8c18)
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/1eeea33519e5cabb8be08acf4a9e9489448ea980">1eeea335</a></strong>
<div>
<span> by Ralph Boehme </span> <i> at 2026-09-20T18:38:26+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>dbwrap_ctdb: drop the chainlock before pushing the record in the recovery traverse
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16237
Signed-off-by: Ralph Boehme <slow@samba.org>
Reviewed-by: Martin Schwenke <mschwenke@ddn.com>
(cherry picked from commit c371f5645571b6b06a6b1603db24795496c92ded)
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/ca4a2cb4b2924b350060bc0d67cbe57170848823">ca4a2cb4</a></strong>
<div>
<span> by Ralph Boehme </span> <i> at 2026-09-20T18:38:26+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>dbwrap_ctdb: wait for the push-record to reach all nodes
db_ctdb_push_record() broadcast CTDB_CONTROL_PUSH_RECORD with
CTDB_CTRL_FLAG_NOREPLY and returned immediately, so "the push succeeded"
only ever meant "the control was written to the socket".
ctdbd now fans the per node store out itself and answers once every
active node has stored the record, so send the control to our own node
and wait for that answer. Returning from db_ctdb_push_record() now means
the record is on all nodes.
This removes the reasoning the previous code depended on. The transaction
on the persistent db was a sequence point only because trans3_commit
sends its per node CTDB_CONTROL_UPDATE_RECORD over the same connections
that carried the push, so a node processed the push before the persistent
write - an ordering that a deferred push can silently leave.
What does not go away is the RSN test in the worker. The chainlock is
dropped before pushing, as holding it across a synchronous cluster wide
control deadlocks against another node's smbd waiting for the record, so
the record can still migrate while the push is in flight and
Like db_ctdb_transaction_commit() the operation can fail when a recovery ran
concurrently, so push-record employs the same retry mechanism as that.
Repeating a push is harmless, a node that already stored the
record discards the duplicate on its RSN test.
The generation has to be re-read on every attempt. It is part of the
pushed payload and the receiving nodes reject a push that does not carry
the current one, so a retry that reuses the old generation would be
rejected. The retry therefore starts before ctdbd_generation()
rather than before the control.
This also activates the new push-record control in ctdb.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16237
Signed-off-by: Ralph Boehme <slow@samba.org>
Reviewed-by: Martin Schwenke <mschwenke@ddn.com>
(cherry picked from commit 31b6ea8e5c41ff0db3c896fdb1d5d86502175100)
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/b09be1b7eef43ab7d75c3ddbc7dca31a155ecca7">b09be1b7</a></strong>
<div>
<span> by Ralph Boehme </span> <i> at 2026-09-20T18:38:26+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>CI: reenable test samba3.clustered.smb2.persistent-open-reconnect-contended
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16237
Signed-off-by: Ralph Boehme <slow@samba.org>
Reviewed-by: Martin Schwenke <mschwenke@ddn.com>
(cherry picked from commit 25c0ad5968fba32942aedfc641c491ea9c697bf8)
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/a25e319bea5b2d8a54c723a82ba7072dd6a5a6ec">a25e319b</a></strong>
<div>
<span> by Ralph Boehme </span> <i> at 2026-09-20T18:38:26+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>docs-xml: add "persistent handles durability"
Maintaining the persistent backup database for SMB3 Persistent Handles is
not free: every change to the state of a persistent handle costs a cluster
wide transaction on top of the push that puts the record on all nodes, and
that transaction is written to stable storage on every node, so it costs
an fsync per node as well.
That expense only buys one thing, surviving an outage of every node at the
same time. The push alone already covers any outage that leaves at least
one node running, because the record is then on the surviving nodes and
the recovery merges it back: a node crash, a rolling restart, the loss of
all but one node.
Add a parameter to let sites that do not need the former opt out of the
cost. The default being full_outage.
Not used yet.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16237
Signed-off-by: Ralph Boehme <slow@samba.org>
Reviewed-by: Martin Schwenke <mschwenke@ddn.com>
(cherry picked from commit efe01fef1541d4352794b38096a2a6b51ea62db0)
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/c953c60c2c91c18da96d8db7457ac3023f6196bd">c953c60c</a></strong>
<div>
<span> by Ralph Boehme </span> <i> at 2026-09-20T18:38:26+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>s3: skip the persistent backup db with durability = partial_outage
Honour the new "persistent handles durability" parameter: with
partial_outage, do not open the per record persistent backup database and
do not write to it.
cleanup_ph() returns early as well, but only when clustered. Without
clustering the per record persistent database is a plain tdb that survives
a restart all by itself, so the traverse that re-arms the scavenger for
restored handles is still needed there.
This improves performance quite considerably with our
smb2.bench.path-contention-shared benchmark. Note that the benchmark
hammers a single shared record, so these are worst case numbers:
full_outage: 60.00 second: num/s=11 avslat=0.135
partial_outage: 60.00 second: num/s=131 avslat=0.012
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16237
Signed-off-by: Ralph Boehme <slow@samba.org>
Reviewed-by: Martin Schwenke <mschwenke@ddn.com>
Autobuild-User(master): Ralph Böhme <slow@samba.org>
Autobuild-Date(master): Fri Sep 18 18:53:49 UTC 2026 on atb-devel-224
(cherry picked from commit 094af861f3b5b015243e707d2182d71999906bc2)
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/9ba5b1030a57678762a1f57fdfff727a699a9d0a">9ba5b103</a></strong>
<div>
<span> by Ralph Boehme </span> <i> at 2026-09-20T19:45:06+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>WHATSNEW: mention "persistent handles durability"
Document the new global option in the SMB3 Persistent Handles section and
list it in the smb.conf changes table.
Signed-off-by: Ralph Boehme <slow@samba.org>
Autobuild-User(v4-25-test): Björn Jacke <bjacke@samba.org>
Autobuild-Date(v4-25-test): Sun Sep 20 19:45:06 UTC 2026 on atb-devel-224
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/db2936c7c054836739b6a5dba92b256070c1dae4">db2936c7</a></strong>
<div>
<span> by Ralph Boehme </span> <i> at 2026-09-24T20:23:13+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>s3:brlock: use brl_parse_data() in in brl_forall()
brl_traverse_fn() walked the record itself instead of going through
brl_parse_data(), which stopped being correct when the Persistent Handle series
put a four byte version prefix in front of the array.
brl_traverse_fn() calls brl_parse_data() with a struct byte_range_lock on the
stack, so it grows a mem_ctx argument for the array it allocates.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16253
Signed-off-by: Ralph Boehme <slow@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Autobuild-User(master): Volker Lendecke <vl@samba.org>
Autobuild-Date(master): Mon Sep 21 13:23:18 UTC 2026 on atb-devel-224
(cherry picked from commit 8070be375433503407e1bc07bdd2b89e36a9a66f)
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/b9f663b2c98922fe1e6a793b9d64bae71fc728e1">b9f663b2</a></strong>
<div>
<span> by Stefan Metzmacher </span> <i> at 2026-09-24T20:23:13+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>s3:winbindd: make all struct winbindd_child their own talloc context
Before we had winbindd_child_msg_filter() crashing in this:
struct winbindd_child *child = talloc_get_type_abort(private_data,
struct winbindd_child);
We could just remove talloc_get_type_abort() there, but
the same problem can come back in other places.
So the domain maintains an array of pointers now.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16081
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Ralph Boehme <slow@samba.org>
(cherry picked from commit 613563e6d22adb82bdeacf72014478324631fab0)
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/046314d027b5342c82f9a8390cdde0bf792d79d2">046314d0</a></strong>
<div>
<span> by Anoop C S </span> <i> at 2026-09-24T20:23:13+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>smbd: Fix temporary mkdir name allocation check
Check the talloc_asprintf() result stored in tmp_atname->base_name
instead of rechecking the already validated tmp_atname pointer.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16240
Signed-off-by: Anoop C S <anoopcs@samba.org>
Reviewed-by: Noel Power <noel.power@suse.com>
Reviewed-by: Ralph Boehme <slow@samba.org>
Reviewed-by: Stefan Metzmacher <metze@samba.org>
(cherry picked from commit 523327cce7cf8a977b10c5d57a3477aa2ebac3b8)
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/f5038cd47559f41c975fd7337d09b1db0270c404">f5038cd4</a></strong>
<div>
<span> by Anoop C S </span> <i> at 2026-09-24T20:23:13+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>s4/torture: Add smb2 long mkdir name test
Add a regression test that creates a directory with a 255-byte
component. Mark it as a known failure until smbd stops embedding
the complete client name in its longer internal temporary name.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16240
Signed-off-by: Anoop C S <anoopcs@samba.org>
Reviewed-by: Noel Power <noel.power@suse.com>
Reviewed-by: Ralph Boehme <slow@samba.org>
Reviewed-by: Stefan Metzmacher <metze@samba.org>
(cherry picked from commit b8826db2da7dadf1a56310f523e4cef4374cf98b)
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/e88dc0b79735e7e7f1c12cddebfa7ba91c081305">e88dc0b7</a></strong>
<div>
<span> by Anoop C S </span> <i> at 2026-09-24T21:27:18+00:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>smbd: Use bounded temporary names for mkdir
mkdir_internal() appends the complete client name to the temporary
directory prefix. A valid client name near NAME_MAX therefore becomes
too long after Samba adds its internal prefix, and mkdirat() fails
with ENAMETOOLONG.
Use a fixed size GUID suffix while retaining the server ID needed for
stale name detection. This preserves the existing atomic create, setup
and rename behavior without reducing the filename space available to
clients. Also update the parameter documentation and remove the
regression test from knownfail.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=16240
Signed-off-by: Anoop C S <anoopcs@samba.org>
Reviewed-by: Noel Power <noel.power@suse.com>
Reviewed-by: Ralph Boehme <slow@samba.org>
Reviewed-by: Stefan Metzmacher <metze@samba.org>
Autobuild-User(master): Anoop C S <anoopcs@samba.org>
Autobuild-Date(master): Sun Sep 13 06:08:46 UTC 2026 on atb-devel-224
(cherry picked from commit 86c7c3ed32b4d38cd3aa75b3c5bb065380c0319f)
Autobuild-User(v4-25-test): Björn Jacke <bjacke@samba.org>
Autobuild-Date(v4-25-test): Thu Sep 24 21:27:18 UTC 2026 on atb-devel-224
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/b7b43d2f83e95c5b2633e609d61254607002509e">b7b43d2f</a></strong>
<div>
<span> by Björn Jacke </span> <i> at 2026-09-24T23:50:56+02:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>WHATSNEW: Add release notes for Samba 4.25.0.
Signed-off-by: Bjoern Jacke <bjacke@samba.org>
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/b439e3ec13425de85e03eb4ac394ad15273decf7">b439e3ec</a></strong>
<div>
<span> by Björn Jacke </span> <i> at 2026-09-24T23:53:26+02:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>VERSION: Disable GIT_SNAPSHOT for the 4.25.0 release.
Signed-off-by: Bjoern Jacke <bjacke@samba.org>
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://salsa.debian.org/samba-team/samba/-/commit/861ba660904e275e5394c9538f35036973b0ae87">861ba660</a></strong>
<div>
<span> by Michael Tokarev </span> <i> at 2026-09-25T12:27:47+03:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>New upstream version 4.25.0+dfsg</pre>
</li>
</ul>
<h4 style="margin-top: 10px; margin-bottom: 10px;">
61 changed files:
</h4>
<ul>
<li class="file-stats">
<a href="#7ee2b04ed3decdbe5384823b6bc06e6289a229b4">
.gitlab-ci-main.yml
</a>
</li>
<li class="file-stats">
<a href="#b33892fbddeffc3368077b4904ad0b3d562a7312">
VERSION
</a>
</li>
<li class="file-stats">
<a href="#3277e12b5a9f9ff632d229e2629d34ad21dd93fc">
WHATSNEW.txt
</a>
</li>
<li class="file-stats">
<a href="#5242d600f0c3a261d7c8ebdc01e94a869794cf03">
ctdb/include/ctdb_private.h
</a>
</li>
<li class="file-stats">
<a href="#e46d78be092b917953695e34e3db6d11159adda9">
ctdb/protocol/protocol.h
</a>
</li>
<li class="file-stats">
<a href="#88031c8622763e089a6a7edbcb494fd203037122">
ctdb/protocol/protocol_debug.c
</a>
</li>
<li class="file-stats">
<a href="#7d7149480693865b55b7cff8b1ca975b1e08d0d0">
ctdb/server/ctdb_control.c
</a>
</li>
<li class="file-stats">
<a href="#0a068be5646d4d57e6701c449bd4a36d2d57b2fd">
ctdb/server/ctdb_daemon.c
</a>
</li>
<li class="file-stats">
<a href="#0d61bd190e306eb0e992d4c2e855e8c7193dbedf">
ctdb/tests/src/protocol_ctdb_test.c
</a>
</li>
<li class="file-stats">
<a href="#2e8f808dd0cd5465dad16c95184126309e81a782">
<span class="new-file">
+
docs-xml/smbdotconf/protocol/persistenthandlesdurability.xml
</span>
</a>
</li>
<li class="file-stats">
<a href="#c25a6613c93b552bb6e8830c3c3e4652ed58ae7f">
docs-xml/smbdotconf/vfs/vfsmkdirusetmpname.xml
</a>
</li>
<li class="file-stats">
<a href="#fbb3f1718cad69fee6aae7b7b8aaf112fb9cb234">
lib/param/loadparm.c
</a>
</li>
<li class="file-stats">
<a href="#f102a2237619322833566e5b52d2a5154404713d">
lib/param/loadparm.h
</a>
</li>
<li class="file-stats">
<a href="#70d55393229a9437f3575103542381d064e377b4">
lib/param/param.h
</a>
</li>
<li class="file-stats">
<a href="#67dc7f8e32eab035868dd66ebaa7ee436e395777">
lib/param/param_table.c
</a>
</li>
<li class="file-stats">
<a href="#716d80f7301747945a1f1035af9dd5f856b3bbc0">
libcli/dns/dns.c
</a>
</li>
<li class="file-stats">
<a href="#539418c456f889bc9d19d60ff9020cd8dce0592a">
libcli/smb/smbXcli_base.c
</a>
</li>
<li class="file-stats">
<a href="#d78efc6932063df574a37ecf2fbddb43f797ca46">
libcli/smb/smbXcli_base.h
</a>
</li>
<li class="file-stats">
<a href="#b153c0d0b0801608b23aa55e0d45d1a2808c4998">
python/samba/tests/dns.py
</a>
</li>
<li class="file-stats">
<a href="#9272ec2f236b975d8e2e0b9c15cee6422f97e825">
python/samba/tests/param.py
</a>
</li>
<li class="file-stats">
<a href="#9fb20d4fbe1d566187f0467c00153412b3f3a1ce">
python/samba/tests/samba_tool/dnscmd.py
</a>
</li>
<li class="file-stats">
<a href="#981b2120f786cca0922eb45175f62e3b0c280a5a">
script/autobuild.py
</a>
</li>
<li class="file-stats">
<a href="#77a35b71a2196c5bbc8e5877c894e1fd528cb74e">
selftest/skip
</a>
</li>
<li class="file-stats">
<a href="#527e1033d396107d2be275d0ed231501759e6241">
selftest/target/Samba3.pm
</a>
</li>
<li class="file-stats">
<a href="#7f2ee55d8af9063b3b6d1c5b44ef71cdc7f50766">
source3/lib/dbwrap/dbwrap_ctdb.c
</a>
</li>
<li class="file-stats">
<a href="#f72bcc87a8b6d873116dcc58763d50fff51c5e71">
source3/locking/brlock.c
</a>
</li>
<li class="file-stats">
<a href="#3f50e9292a05668de9f1d2d6cd75855fd70ee008">
source3/modules/vfs_ceph_rgw.c
</a>
</li>
<li class="file-stats">
<a href="#3d03994c429eb178d9848811bb36ea898842970b">
source3/param/loadparm.c
</a>
</li>
<li class="file-stats">
<a href="#cb35322cba274bba745ad976e2f2b6e72579b505">
source3/smbd/open.c
</a>
</li>
<li class="file-stats">
<a href="#6e11d2c1de3ab8d9248906d69f0412e7c22b0375">
source3/smbd/smb2_server.c
</a>
</li>
<li class="file-stats">
<a href="#4f4138b30e8e9b731d87807557bc15e098fb3690">
source3/smbd/smbd_cleanupd.c
</a>
</li>
<li class="file-stats">
<a href="#01c71eb67913c7a9493ec7ca630397c6cd00dd1d">
source3/torture/test_smb2.c
</a>
</li>
<li class="file-stats">
<a href="#ecb88926e519371a03e0d98456ef6a6519915096">
source3/winbindd/winbindd.h
</a>
</li>
<li class="file-stats">
<a href="#58caabcd9a4e99efeba5cefe4b6a3deb0f448a3b">
source3/winbindd/winbindd_domain.c
</a>
</li>
<li class="file-stats">
<a href="#f21fdbf79c4a3c2a401452415b05d5dff4ad93b8">
source3/winbindd/winbindd_dual.c
</a>
</li>
<li class="file-stats">
<a href="#6b78067d2a80f4b9c78b99b8ce1df107ce6b8ffe">
source3/winbindd/winbindd_idmap.c
</a>
</li>
<li class="file-stats">
<a href="#e8d87baf7406757482517667ee0b1ec2f1c48206">
source3/winbindd/winbindd_locator.c
</a>
</li>
<li class="file-stats">
<a href="#00e131b5b59c09d6c14cd7b7b014e29427ab923a">
source3/winbindd/winbindd_ndr.c
</a>
</li>
<li class="file-stats">
<a href="#5b1991b4e9d83cbc66244d16ba87c97835aa12a3">
source3/winbindd/winbindd_proto.h
</a>
</li>
<li class="file-stats">
<a href="#3e088ca6181fe0ec57ad73b496eb4ed4a99a5dc3">
source3/winbindd/winbindd_util.c
</a>
</li>
<li class="file-stats">
<a href="#510083feac7502375645dabcfc775e170f148797">
source3/wscript_build
</a>
</li>
<li class="file-stats">
<a href="#8a9af8a7b4a6cc7f0aabdee45a1f62e503ebfa43">
source4/dns_server/dns_server.c
</a>
</li>
<li class="file-stats">
<a href="#4108b0a25db3a650c7fcaf3633aaa88577f879d2">
source4/dns_server/dns_server.h
</a>
</li>
<li class="file-stats">
<a href="#54f6a863c30ed676508ecddd9d7fa99e6d395dda">
source4/dns_server/dnsserver_common.c
</a>
</li>
<li class="file-stats">
<a href="#a65db99fd4d2110b4b3a6df29682b36fb80ace04">
source4/dns_server/dnsserver_common.h
</a>
</li>
<li class="file-stats">
<a href="#b2a7cc60750c909093022c3f7c0b332deda9c3ce">
source4/rpc_server/dnsserver/dnsutils.c
→
source4/dns_server/dnsserver_utils.c
</a>
</li>
<li class="file-stats">
<a href="#b93bfdfd31430a4da089d607696af201c23f7547">
source4/dns_server/wscript_build
</a>
</li>
<li class="file-stats">
<a href="#ffacc863de2e08949ea315345725a1dee0a54f88">
source4/dsdb/kcc/kcc_periodic.c
</a>
</li>
<li class="file-stats">
<a href="#e76eeda6190325dbd58132e271954c72f0fa11d3">
source4/dsdb/kcc/scavenge_dns_records.c
</a>
</li>
<li class="file-stats">
<a href="#6fb6fd058cc5fd770a131bf18687b491a7f651e6">
source4/libcli/smb2/session.c
</a>
</li>
<li class="file-stats">
<a href="#3a3e23862b5fd7a59084a34941fcbb31ce3e18c2">
source4/rpc_server/common/common.h
</a>
</li>
<li class="file-stats">
<a href="#e6d2a6fc08d27432dabe5afe7a05b915a9ce6223">
<span class="deleted-file">
−
source4/rpc_server/common/loadparm.c
</span>
</a>
</li>
<li class="file-stats">
<a href="#9c372a794cca89a943bfa791b7d11397bb2576e3">
source4/rpc_server/dnsserver/dnsdb.c
</a>
</li>
<li class="file-stats">
<a href="#f651d8bac7ae4eef8d7f708e271053781a809dce">
source4/rpc_server/dnsserver/dnsserver.h
</a>
</li>
<li class="file-stats">
<a href="#c331f3df665ee6a7e4e56f3d61f20c6880e457c5">
source4/rpc_server/tests/rpc_dns_server_dnsutils_test.c
</a>
</li>
<li class="file-stats">
<a href="#4393a8b6817bd4458838504a26bc9e545f94a7c1">
source4/rpc_server/wscript_build
</a>
</li>
<li class="file-stats">
<a href="#2aee8d1aadba688d006247a37769d4a64bfcb26d">
source4/torture/smb2/bench.c
</a>
</li>
<li class="file-stats">
<a href="#6dd08b0bb6175268f73e9e73fb0feacda119a978">
source4/torture/smb2/durable_v2_open.c
</a>
</li>
<li class="file-stats">
<a href="#648b9d32c47c338ac0f2287aea2c6a00f832474e">
source4/torture/smb2/mkdir.c
</a>
</li>
<li class="file-stats">
<a href="#911552681214e3d7ffb5b586f0f61d09dbb2db5b">
source4/torture/smb2/session.c
</a>
</li>
<li class="file-stats">
<a href="#9df4b95c3b7a2ae1a26a0eff2942e353ffb247c4">
source4/torture/smb2/smb2.c
</a>
</li>
</ul>
<h5 style="margin-top: 10px; margin-bottom: 10px; font-size: .875rem;">
The diff was not included because it is too large.
</h5>
</div>
<div class="footer" style="margin-top: 10px;">
<p style="font-size: small; color: #626168;">
—
<br>
<a href="https://salsa.debian.org/samba-team/samba/-/compare/5f684bb74fa546899ddedb0b3b11605388018944...861ba660904e275e5394c9538f35036973b0ae87">View it on GitLab</a>.
<br>
You're receiving this email because of your account on <a target="_blank" rel="noopener noreferrer" href="https://salsa.debian.org">salsa.debian.org</a>. <a href="https://salsa.debian.org/-/profile/notifications" target="_blank" rel="noopener noreferrer" class="mng-notif-link">Manage all notifications</a> · <a href="https://salsa.debian.org/help" target="_blank" rel="noopener noreferrer" class="help-link">Help</a>
<span style="color: transparent; font-size: 0; display: none; overflow: hidden; opacity: 0; width: 0; height: 0; max-width: 0; max-height: 0;">
Notification message regarding https://salsa.debian.org/samba-team/samba/-/compare/5f684bb74fa546899ddedb0b3b11605388018944...861ba660904e275e5394c9538f35036973b0ae87 at 1790329673
</span>
</p>
</div>
</body>
</html>