<feed xmlns='http://www.w3.org/2005/Atom'>
<title>samba.git/source3/param, branch master</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.</subtitle>
<link rel='alternate' type='text/html' href='https://git.exis.tech/samba.git/'/>
<entry>
<title>s3:loadparm: return NULL upon memalloc failure in lp_idmap_backend</title>
<updated>2026-04-23T20:53:10+00:00</updated>
<author>
<name>Shachar Sharon</name>
<email>ssharon@redhat.com</email>
</author>
<published>2026-04-23T09:49:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.exis.tech/samba.git/commit/?id=33f516c06756e12a9d11f50e2bf309171cdf5c88'/>
<id>33f516c06756e12a9d11f50e2bf309171cdf5c88</id>
<content type='text'>
Return NULL instead of valid-but-misleading cast from 'false' to
pointer.

Signed-off-by: Shachar Sharon &lt;ssharon@redhat.com&gt;
Reviewed-by: Noel Power &lt;npower@samba.org&gt;
Reviewed-by: Anoop C S &lt;anoopcs@samba.org&gt;

Autobuild-User(master): Anoop C S &lt;anoopcs@samba.org&gt;
Autobuild-Date(master): Thu Apr 23 20:53:10 UTC 2026 on atb-devel-224
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Return NULL instead of valid-but-misleading cast from 'false' to
pointer.

Signed-off-by: Shachar Sharon &lt;ssharon@redhat.com&gt;
Reviewed-by: Noel Power &lt;npower@samba.org&gt;
Reviewed-by: Anoop C S &lt;anoopcs@samba.org&gt;

Autobuild-User(master): Anoop C S &lt;anoopcs@samba.org&gt;
Autobuild-Date(master): Thu Apr 23 20:53:10 UTC 2026 on atb-devel-224
</pre>
</div>
</content>
</entry>
<entry>
<title>s3:loadparm: fix NULL pointer dereference in volume_label()</title>
<updated>2026-04-15T00:07:12+00:00</updated>
<author>
<name>Jeremy Allison</name>
<email>jallison@ciq.com</email>
</author>
<published>2026-04-10T21:24:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.exis.tech/samba.git/commit/?id=14bc301ed512369c0053b3301faa374f7ea38d08'/>
<id>14bc301ed512369c0053b3301faa374f7ea38d08</id>
<content type='text'>
volume_label() calls lp_servicename() as a fallback when lp_volume()
returns an empty string. lp_servicename() is a FN_LOCAL_SUBSTITUTED_STRING
that falls back to sDefault.szService when the service is invalid. Since
sDefault.szService is initialized to NULL and is never set by
init_globals(), the substitution returns NULL, and the subsequent
strlen() call crashes with a segmentation fault.

Add a NULL guard so volume_label() returns an empty string instead
of crashing.

Remove knownfail.

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

Co-Authored-By: Claude Opus 4.6 (1M context) &lt;noreply@anthropic.com&gt;

Signed-off-by: Jeremy Allison &lt;jra@samba.org&gt;
Reviewed-by: David Mulder &lt;dmulder@samba.org&gt;

Autobuild-User(master): Jeremy Allison &lt;jra@samba.org&gt;
Autobuild-Date(master): Wed Apr 15 00:07:12 UTC 2026 on atb-devel-224
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
volume_label() calls lp_servicename() as a fallback when lp_volume()
returns an empty string. lp_servicename() is a FN_LOCAL_SUBSTITUTED_STRING
that falls back to sDefault.szService when the service is invalid. Since
sDefault.szService is initialized to NULL and is never set by
init_globals(), the substitution returns NULL, and the subsequent
strlen() call crashes with a segmentation fault.

Add a NULL guard so volume_label() returns an empty string instead
of crashing.

Remove knownfail.

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

Co-Authored-By: Claude Opus 4.6 (1M context) &lt;noreply@anthropic.com&gt;

Signed-off-by: Jeremy Allison &lt;jra@samba.org&gt;
Reviewed-by: David Mulder &lt;dmulder@samba.org&gt;

Autobuild-User(master): Jeremy Allison &lt;jra@samba.org&gt;
Autobuild-Date(master): Wed Apr 15 00:07:12 UTC 2026 on atb-devel-224
</pre>
</div>
</content>
</entry>
<entry>
<title>s3:loadparm: guard free_service_byindex() in lp_servicenumber() with snum_in_use check</title>
<updated>2026-04-14T23:04:37+00:00</updated>
<author>
<name>Jeremy Allison</name>
<email>jallison@ciq.com</email>
</author>
<published>2026-04-10T21:19:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.exis.tech/samba.git/commit/?id=de74e24314ebfbd37d14b8fce21f7382cc6b76db'/>
<id>de74e24314ebfbd37d14b8fce21f7382cc6b76db</id>
<content type='text'>
lp_servicenumber() calls free_service_byindex() to destroy usershare
services when usershare_exists() returns false or when the usershare
file has been modified. This is unsafe because active connections may
still hold the service number — the destroyed service leaves a NULL
ServicePtrs[] entry that causes a NULL pointer dereference when the
connection subsequently calls lp_servicename() or similar functions.

The crash path is:
  get_referred_path() -&gt; lp_servicenumber() -&gt; usershare_exists()
  fails (e.g. EACCES) -&gt; free_service_byindex() destroys service -&gt;
  later request on same connection -&gt; volume_label() -&gt;
  lp_servicename() -&gt; FN_LOCAL_SUBSTITUTED_STRING falls back to
  sDefault.szService (NULL) -&gt; strlen(NULL) -&gt; SIGSEGV

Guard both free_service_byindex() call sites with the snum_in_use
callback registered in the previous commit. When the service is in
use by an active connection, skip the destruction and let the
periodic load_usershare_shares() mark-and-sweep handle cleanup
safely via its conn_snum_used() check.

When snum_in_use is NULL (non-smbd programs), the original behaviour
is preserved — services are freed immediately since no connections
can exist.

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

Co-Authored-By: Claude Opus 4.6 (1M context) &lt;noreply@anthropic.com&gt;

Signed-off-by: Jeremy Allison &lt;jra@samba.org&gt;
Reviewed-by: David Mulder &lt;dmulder@samba.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
lp_servicenumber() calls free_service_byindex() to destroy usershare
services when usershare_exists() returns false or when the usershare
file has been modified. This is unsafe because active connections may
still hold the service number — the destroyed service leaves a NULL
ServicePtrs[] entry that causes a NULL pointer dereference when the
connection subsequently calls lp_servicename() or similar functions.

The crash path is:
  get_referred_path() -&gt; lp_servicenumber() -&gt; usershare_exists()
  fails (e.g. EACCES) -&gt; free_service_byindex() destroys service -&gt;
  later request on same connection -&gt; volume_label() -&gt;
  lp_servicename() -&gt; FN_LOCAL_SUBSTITUTED_STRING falls back to
  sDefault.szService (NULL) -&gt; strlen(NULL) -&gt; SIGSEGV

Guard both free_service_byindex() call sites with the snum_in_use
callback registered in the previous commit. When the service is in
use by an active connection, skip the destruction and let the
periodic load_usershare_shares() mark-and-sweep handle cleanup
safely via its conn_snum_used() check.

When snum_in_use is NULL (non-smbd programs), the original behaviour
is preserved — services are freed immediately since no connections
can exist.

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

Co-Authored-By: Claude Opus 4.6 (1M context) &lt;noreply@anthropic.com&gt;

Signed-off-by: Jeremy Allison &lt;jra@samba.org&gt;
Reviewed-by: David Mulder &lt;dmulder@samba.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>s3:loadparm: add lp_register_snum_in_use_fn() callback registration</title>
<updated>2026-04-14T23:04:37+00:00</updated>
<author>
<name>Jeremy Allison</name>
<email>jallison@ciq.com</email>
</author>
<published>2026-04-10T21:15:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.exis.tech/samba.git/commit/?id=9a4f9666d14d8b4d96181ecc15d9047d29b66ccb'/>
<id>9a4f9666d14d8b4d96181ecc15d9047d29b66ccb</id>
<content type='text'>
Add a mechanism for smbd to register a callback that checks whether
a service number is currently in use by any active connection.

This will be used by subsequent commits to guard free_service_byindex()
calls in lp_servicenumber() and other sites that currently destroy
services without checking if they are in use, which can leave active
connections holding stale service numbers that lead to NULL pointer
dereferences.

The callback is registered by smbd during smbd_process() startup via
connections_snum_used. Non-smbd programs (testparm, net, etc.) leave the
callback as NULL, meaning no connections exist and it is always safe
to free services.

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

Co-Authored-By: Claude Opus 4.6 (1M context) &lt;noreply@anthropic.com&gt;

Signed-off-by: Jeremy Allison &lt;jra@samba.org&gt;
Reviewed-by: David Mulder &lt;dmulder@samba.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Add a mechanism for smbd to register a callback that checks whether
a service number is currently in use by any active connection.

This will be used by subsequent commits to guard free_service_byindex()
calls in lp_servicenumber() and other sites that currently destroy
services without checking if they are in use, which can leave active
connections holding stale service numbers that lead to NULL pointer
dereferences.

The callback is registered by smbd during smbd_process() startup via
connections_snum_used. Non-smbd programs (testparm, net, etc.) leave the
callback as NULL, meaning no connections exist and it is always safe
to free services.

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

Co-Authored-By: Claude Opus 4.6 (1M context) &lt;noreply@anthropic.com&gt;

Signed-off-by: Jeremy Allison &lt;jra@samba.org&gt;
Reviewed-by: David Mulder &lt;dmulder@samba.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>lib: Remove the "getwd cache"</title>
<updated>2026-03-01T20:19:35+00:00</updated>
<author>
<name>Volker Lendecke</name>
<email>vl@samba.org</email>
</author>
<published>2026-02-16T16:40:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.exis.tech/samba.git/commit/?id=5368789646793730f97b3759810c2f7a3510a95f'/>
<id>5368789646793730f97b3759810c2f7a3510a95f</id>
<content type='text'>
No longer needed

Signed-off-by: Volker Lendecke &lt;vl@samba.org&gt;
Reviewed-by: Anoop C S &lt;anoopcs@samba.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
No longer needed

Signed-off-by: Volker Lendecke &lt;vl@samba.org&gt;
Reviewed-by: Anoop C S &lt;anoopcs@samba.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>param: Simplify check_ad_dc_required_mods()</title>
<updated>2026-02-15T10:42:34+00:00</updated>
<author>
<name>Volker Lendecke</name>
<email>vl@samba.org</email>
</author>
<published>2026-02-09T12:00:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.exis.tech/samba.git/commit/?id=8fbb3d2cece34e7e21919e902b8613c0c3ca9f0a'/>
<id>8fbb3d2cece34e7e21919e902b8613c0c3ca9f0a</id>
<content type='text'>
Signed-off-by: Volker Lendecke &lt;vl@samba.org&gt;
Reviewed-by: Anoop C S &lt;anoopcs@samba.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Volker Lendecke &lt;vl@samba.org&gt;
Reviewed-by: Anoop C S &lt;anoopcs@samba.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>lib: Move a variable declaration closer to its use</title>
<updated>2026-01-20T11:53:35+00:00</updated>
<author>
<name>Volker Lendecke</name>
<email>vl@samba.org</email>
</author>
<published>2026-01-07T11:46:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.exis.tech/samba.git/commit/?id=4450a4e6a83b0b3d6cd7a569f4a546836c223653'/>
<id>4450a4e6a83b0b3d6cd7a569f4a546836c223653</id>
<content type='text'>
Signed-off-by: Volker Lendecke &lt;vl@samba.org&gt;
Reviewed-by: Anoop C S &lt;anoopcs@samba.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Volker Lendecke &lt;vl@samba.org&gt;
Reviewed-by: Anoop C S &lt;anoopcs@samba.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>loadparm: Simplify canonicalize_servicename()</title>
<updated>2026-01-20T11:53:34+00:00</updated>
<author>
<name>Volker Lendecke</name>
<email>vl@samba.org</email>
</author>
<published>2026-01-07T11:56:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.exis.tech/samba.git/commit/?id=dca79456db3b759348ca702b0caadd3f6bbe6e65'/>
<id>dca79456db3b759348ca702b0caadd3f6bbe6e65</id>
<content type='text'>
We have strlower_talloc()

Signed-off-by: Volker Lendecke &lt;vl@samba.org&gt;
Reviewed-by: Anoop C S &lt;anoopcs@samba.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
We have strlower_talloc()

Signed-off-by: Volker Lendecke &lt;vl@samba.org&gt;
Reviewed-by: Anoop C S &lt;anoopcs@samba.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>loadparm: Modernize DEBUGs</title>
<updated>2026-01-20T11:53:34+00:00</updated>
<author>
<name>Volker Lendecke</name>
<email>vl@samba.org</email>
</author>
<published>2026-01-07T11:52:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.exis.tech/samba.git/commit/?id=7fb0b00a71f0fb05f973876a7ff50df7e2378ac6'/>
<id>7fb0b00a71f0fb05f973876a7ff50df7e2378ac6</id>
<content type='text'>
Signed-off-by: Volker Lendecke &lt;vl@samba.org&gt;
Reviewed-by: Anoop C S &lt;anoopcs@samba.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Volker Lendecke &lt;vl@samba.org&gt;
Reviewed-by: Anoop C S &lt;anoopcs@samba.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>loadparm: add "kdc require canonicalization"</title>
<updated>2026-01-15T01:48:37+00:00</updated>
<author>
<name>Douglas Bagnall</name>
<email>douglas.bagnall@catalyst.net.nz</email>
</author>
<published>2025-11-26T03:48:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.exis.tech/samba.git/commit/?id=d803e2055b168b1c807325b0da54d3bbf6e5570a'/>
<id>d803e2055b168b1c807325b0da54d3bbf6e5570a</id>
<content type='text'>
Has no effect yet.

Signed-off-by: Douglas Bagnall &lt;douglas.bagnall@catalyst.net.nz&gt;
Reviewed-by: Gary Lockyer &lt;gary@catalyst.net.nz&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Has no effect yet.

Signed-off-by: Douglas Bagnall &lt;douglas.bagnall@catalyst.net.nz&gt;
Reviewed-by: Gary Lockyer &lt;gary@catalyst.net.nz&gt;
</pre>
</div>
</content>
</entry>
</feed>
