Michael Tokarev [Sat, 29 Mar 2025 04:24:47 +0000 (07:24 +0300)]
Merge samba (2:4.22.0+dfsg-2) import into refs/heads/workingbranch
Ralph Boehme [Sat, 22 Mar 2025 15:59:07 +0000 (16:59 +0100)]
smbd: fix handling of directory leases and oplock levels
From
4b3f45e13f9c11920924c034a457ea2cb8e15e18 Mon Sep 17 00:00:00 2001
Origin: upstream, https://bugzilla.samba.org/show_bug.cgi?id=15836
Forwarded: yes
Bug-Debian: https://bugs.debian.org/
1100604
BUG: https://bugzilla.samba.org/show_bug.cgi?id=15836
Signed-off-by: Ralph Boehme <slow@samba.org>
Reviewed-by: Stefan Metzmacher <metze@samba.org>
Autobuild-User(master): Ralph Böhme <slow@samba.org>
Autobuild-Date(master): Fri Mar 28 07:53:25 UTC 2025 on atb-devel-224
Gbp-Pq: Name smbd-fix-handling-of-directory-leases-and-oplock-lev.patch
Michael Tokarev [Fri, 7 Feb 2025 07:04:37 +0000 (10:04 +0300)]
replace: use __xpg_strerror_r if available
Forwarded: no
In order to avoid linking libreplace, use __xpg_strerror_r
instead of rep_strerror_r
Gbp-Pq: Name replace-xpg-strerror.patch
Michael Tokarev [Thu, 6 Feb 2025 15:11:02 +0000 (18:11 +0300)]
Revert "ldb: User hexchars_upper from replace.h"
Forwarded: not-needed
Debian-Specific: yes
This reverts commit
542cf01bfe530a83dfbc8a606d182c0a5a622059.
This commit switched ldb code to use hexchars_upper from libreplace,
introducing circular dependency between libraries. Restore the status-quo.
Gbp-Pq: Name revert-ldb-use-hexchars_upper-from-replace.h.patch
Michael Tokarev [Fri, 2 Dec 2022 08:45:01 +0000 (11:45 +0300)]
ctdb: use /run/ctdb instead of /var/run/ctdb
Forwarded: not-needed
Whole upstream path assignment needs a review.
Gbp-Pq: Name ctdb-use-run-instead-of-var-run.patch
Michael Tokarev [Fri, 2 Dec 2022 08:08:27 +0000 (11:08 +0300)]
print meaningful error message if python3-markdown is not installed
Updated: Mon, 08 Apr 2024 14:14:38 +0300
Debian-Specific: yes
Forwarded: not-needed
Gbp-Pq: Name meaningful-error-if-no-python3-markdown.patch
Michael Tokarev [Fri, 2 Dec 2022 07:54:31 +0000 (10:54 +0300)]
print meaningful error message if samba-ad-provision is not installed
Updated: Thu, 03 Aug 2023 17:06:24 +0300
Debian-Specific: yes
Forwarded: not-needed
Gbp-Pq: Name meaningful-error-if-no-samba-ad-provision.patch
Michael Tokarev [Tue, 26 Apr 2022 13:11:48 +0000 (16:11 +0300)]
move msg.sock from /var/lib/samba to /run/samba
Move socket directory from /var/lib/samba to /run/samba,
exactly like msg.lock. This directory is only used by various
samba components to communicate with each other (smbcontrol),
there's no place for it in /var/lib.
Also remove msg.sock subdir in various tests.
It'd be nice to also move ntp socket and similar somewhere to
/run/samba too, but this is a bit more difficult since it is
used in other software.
https://lists.samba.org/archive/samba-technical/2022-April/137322.html
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
Gbp-Pq: Name move-msg.sock-from-var-lib-samba-to-run-samba.patch
Michael Tokarev [Fri, 8 Apr 2022 08:50:21 +0000 (11:50 +0300)]
disable setuid configure checks
Forwarded: not-needed
For some strange reason, when running reprotest test on salsa-ci,
which apparently is running as root, - on the *second* build only
the configure fails (after successfully built package the first
time). The configure test tries to change gid and verifies it
actually changed (not that the syscall exist), - and that fails.
Since it is extremely uncommon to configure the build process as
root, salsa-ci test environment details are quite deep down the line,
and we know the syscall actually works, just disable the probe,
pretending we are not root.
For upstream, this probably should be done by removing a *lot* of
configure-time checks which are useless these days.
Gbp-Pq: Name disable-setuid-confchecks.patch
Michael Tokarev [Sun, 3 Apr 2022 04:57:38 +0000 (07:57 +0300)]
silence uselib_local warning produced by waf
During config/build process in verbose mode, waf produces
about 2k repetitions of this warning:
compat: "uselib_local" is deprecated, replace by "use"
which clutters the build log.
Comment this warning out for now until it will be
fixed properly.
Gbp-Pq: Name silence-waf-uselib_local.diff
Michael Tokarev [Fri, 9 Sep 2022 09:49:55 +0000 (12:49 +0300)]
create ctdb pid directory
(which is /run/ctdb/). Create it in the systemd service
file (using RuntimeDirectory directive) and in the sysv-init
script.
Gbp-Pq: Name ctdb-create-piddir.patch
Michael Tokarev [Sat, 2 Apr 2022 14:49:38 +0000 (17:49 +0300)]
fix pathname for ctdb_etcd_lock
Forwarded: not-needed
Specify the actual installation path for this helper script.
This is a quick hack, this issue should be addressed
upstream in a more generic way.
Gbp-Pq: Name ctdb_etcd_lock-path.patch
Debian Samba Maintainers [Sat, 29 Mar 2025 04:24:47 +0000 (07:24 +0300)]
use bzero() instead of memset_s()
lib/replace/replace.h header defines ZERO_STRUCT macro
which uses memset_s() function (which is similar to
memset() but can not be optimized out by the compiler).
Glibc has bzero() with similar property, while memset_s()
have is implemented in lib/replace/replace.c, - this way,
some binaries needlessly link with libreplace-samba4 just
to get rep_memset_s() symbol. By using bzero() instead,
this endless linkage is eliminated, so we can package,
for example, libldb (which uses ZERO_STRUCT) without it
linking to libreplace-samba4.
Note: actually using explicit_bzero() so it is not optimized
out by the compiler - this is the original goal of using
memset_s().
Gbp-Pq: Name use-bzero-instead-of-memset_s.diff
Rafael David Tinoco [Sat, 29 Mar 2025 04:24:47 +0000 (07:24 +0300)]
ctdb-config: enable syslog by default
Bug-Debian: https://bugs.debian.org/929931
Bug-Ubuntu: https://bugs.launchpad.net/bugs/722201
Last-Update: 2022-03-24
Forwarded: not-needed
CTDB uses /var/log/ctdb/ directory for the default log files. With
syslog disabled, systemd journal is not able to correctly inform
errors happening during service initialization.
Upstream community creates generic config files to be used by different
distributions, so this change makes no big difference to be accepted by
upstream.
With this patch the end user will be able to identify initialization
errors by executing:
systemctl status ctdb.service
or to follow ctdb logs by executing:
journalctl -f -u ctdb
Signed-off-by: Rafael David Tinoco <rafaeldtinoco@ubuntu.com>
Gbp-Pq: Name ctdb-config-enable-syslog-by-default.patch
Rafael David Tinoco [Sat, 29 Mar 2025 04:24:47 +0000 (07:24 +0300)]
fix nfs related service names
Upstream defines nfs related service names based on the Linux
distribution. This patch fixes the names for Debian and derivatives.
Update by Andreas Hasenack <andreas@canonical.com> (LP: #
1961840):
Use nfsconf(8) if it's available, instead of parsing the old config
files in /etc/default/nfs-*
Bug-Debian: https://bugs.debian.org/929931
Bug-Ubuntu: https://bugs.launchpad.net/bugs/722201
Last-Update: 2024-07-30
Gbp-Pq: Name fix-nfs-service-name-to-nfs-kernel-server.patch
Michael Tokarev [Wed, 27 Nov 2024 18:51:50 +0000 (21:51 +0300)]
drop "replace" dependency from libldb
Forwarded: not-needed
When building as a sub-library within samba, where
libreplace is a private library, libldb.so will
have rpath pointing to the private samba dir. Since
ldb actually does not use anything from libreplace,
just remove the dependency.
Gbp-Pq: Name ldb-no-replace.diff
Jeroen Dekkers [Sat, 29 Mar 2025 04:24:47 +0000 (07:24 +0300)]
Add so version number to private libraries for dpkg-shlibdeps
We also want dpkg-shlibdeps to generate correct dependency information
for the private libraries in our binary packages, but dpkg-shlibdeps
only works when the library has a version number.
Origin: vendor
Forwarded: not-needed
Gbp-Pq: Name add-so-version-to-private-libraries
Brian May [Sat, 29 Mar 2025 04:24:47 +0000 (07:24 +0300)]
Patch in symbol table from rfc3454, for Heimdal scripts
Forwarded: not-needed
Status: cherry-picked from heimdal package
Gbp-Pq: Name heimdal-rfc3454.txt
mathiaz@ubuntu.com [Sat, 29 Mar 2025 04:24:47 +0000 (07:24 +0300)]
Enable net usershares by default at build time
Enable net usershares by default at build time, with a limit of 100, and update
the corresponding documentation.
Bug-Debian: http://bugs.debian.org/443230
Bug-Ubuntu: https://bugs.launchpad.net/ubuntu/+source/samba/+bug/128548
Forwarded: not-needed
Gbp-Pq: Name usershare.patch
Steve Langasek [Sat, 29 Mar 2025 04:24:47 +0000 (07:24 +0300)]
Use the pager alternative as pager is PAGER is undefined
Bug-Debian: http://bugs.debian.org/135603
Forwarded: not-needed
Gbp-Pq: Name smbclient-pager.patch
Christian Perrier [Sat, 29 Mar 2025 04:24:47 +0000 (07:24 +0300)]
Mention smbldap-tools package in examples/LDAP/README
Bug-Debian: http://bugs.debian.org/341934
Forwarded: not-needed
Gbp-Pq: Name README_nosmbldap-tools.patch
Michael Tokarev [Thu, 3 Nov 2022 17:49:33 +0000 (20:49 +0300)]
hurd compatibility changes
Hurd does not define PIPE_BUF, so lib/tevent/testsuite.c fails to compile
(yes, this file is used as part of *samba* testsuite, not tevent testsuite).
Define it to a safe minimal value like 512 bytes.
Hurd does not provide SA_NOCLDWAIT define, so lib/util/tests/tfork.c does
not compile. This is only needed during testing to omit zombie process
generation, which has only cosmetic effect. Define it to be 0.
Based on prior work and ideas by Samuel Thibault.
Gbp-Pq: Name hurd-compat.patch
Jelmer Vernooij [Sat, 29 Mar 2025 04:24:47 +0000 (07:24 +0300)]
Provide public symbol tdb_logging_function removed upstream without major version change. (bug #511011)
Status: Not forwarded upstream
Gbp-Pq: Name tdb_logging_func.diff
Michael Tokarev [Tue, 26 Nov 2024 14:28:51 +0000 (17:28 +0300)]
force tdb to be standalone
Forwarded: not-needed
Upstream ships contents of lib/tdb/ as a separate
source of tdb. Since we build samba anyway, there's
no need to have separate tdb source package, it's
enough to build it during samba build.
Always build tdb as stand-alone library
(instead of being samba-private if in a subdir).
When building as a sub-library within samba,
where libreplace is a private library, libtdb.so
will have rpath pointing to the private samba
dir. Since tdb actually does not use anything
from libreplace, just remove the dependency.
Gbp-Pq: Name tdb-standalone.diff
Michael Tokarev [Tue, 26 Nov 2024 14:28:51 +0000 (17:28 +0300)]
force tevent to be standalone
Forwarded: not-needed
Upstream ships contents of lib/tevent/ as a separate
source of tevent. Since we build samba anyway, there's
no need to have separate tevent source package, it's
enough to build it during samba build.
Always build tevent as stand-alone library
(instead of being samba-private if in a subdir).
When building as a sub-library within samba, where
libreplace is a private library, libtevent.so will
have rpath pointing to the private samba dir. Since
tevent actually does not use anything from libreplace,
just remove the dependency.
Gbp-Pq: Name tevent-standalone.diff
Michael Tokarev [Tue, 26 Nov 2024 14:28:51 +0000 (17:28 +0300)]
force talloc to be standalone
Forwarded: not-needed
Upstream ships contents of lib/talloc/ as a separate
source of talloc. Since we build samba anyway, there's
no need to have separate talloc source package, it's
enough to build it during samba build.
Always build talloc as stand-alone library
(instead of being samba-private if in a subdir).
When building as a sub-library within samba, where
libreplace is a private library, libtalloc.so will
have rpath pointing to the private samba dir. Since
talloc actually does not use anything from libreplace,
just remove the dependency.
Gbp-Pq: Name talloc-standalone.diff
Michael Tokarev [Sat, 2 Apr 2022 16:01:55 +0000 (19:01 +0300)]
ensure libsmbclient.h is being used with LFS enabled
Bug-Debian: https://bugs.debian.org/221618
Forwarded: not-needed
We build samba with LFS (Large File Support) even on 32bits.
This means some types like off_t are 64-bit wide, again,
even on a 32bit host. libsmbclient.h uses off_t in function
prototypes, and thes prototypes muct match those which were
used at samba compile time - if some other source includes
libsmbclient.h without LFS, it'll get wrong prototypes and
the resulting binary will most likely crash when using
libsmbclient functions.
Detect and error-out this at compile time.
We can not do anything with this in the public header since
it is alredy too late to redefine things, since we can't
guarantee we're the first header a program #includes, and
at the time this libsmbclient.h is included, off_t can
already be defined so our (re)define of _FILE_OFFSET_BITS
does nothing already.
Patching libsmbclient.h to use off64_t means client program
should change their off_t to off64_t too when storing
file offsets returning from libsmbclient, so this is not
an option too.
With this change, we will error out even if the user source
does not use any off_t-related functions. Namely, it was ok
to #include <libsmbclient.h> and use smbc_open/smbc_read/
smbc_write/smbc_close without _F_O_B=64, - neither of these
functions uses off_t. smbc_lseek and others doesn't work,
but if a program does not use them anyway, whole thing will
just work even without enabling LFS. Ideally we can probably
check each individual function which is being affected, by
replacing it with #error if sizeof(off_t) < 8. But this
requires quite some hackery...
Gbp-Pq: Name libsmbclient-ensure-lfs-221618.patch
Michael Tokarev [Sat, 29 Mar 2025 04:24:47 +0000 (07:24 +0300)]
samba (2:4.22.0+dfsg-2) unstable; urgency=medium
* smbd-fix-handling-of-directory-leases-and-oplock-lev.patch
(Closes: #
1100604)
[dgit import unpatched samba 2:4.22.0+dfsg-2]
Michael Tokarev [Sat, 29 Mar 2025 04:24:47 +0000 (07:24 +0300)]
Import samba_4.22.0+dfsg-2.debian.tar.xz
[dgit import tarball samba 2:4.22.0+dfsg-2 samba_4.22.0+dfsg-2.debian.tar.xz]
Michael Tokarev [Thu, 6 Mar 2025 21:02:26 +0000 (00:02 +0300)]
Merge samba (2:4.22.0+dfsg-1) import into refs/heads/workingbranch
Michael Tokarev [Thu, 6 Mar 2025 21:02:26 +0000 (00:02 +0300)]
Import samba_4.22.0+dfsg.orig.tar.xz
[dgit import orig samba_4.22.0+dfsg.orig.tar.xz]
Michael Tokarev [Fri, 7 Feb 2025 07:04:37 +0000 (10:04 +0300)]
replace: use __xpg_strerror_r if available
Forwarded: no
In order to avoid linking libreplace, use __xpg_strerror_r
instead of rep_strerror_r
Gbp-Pq: Name replace-xpg-strerror.patch
Michael Tokarev [Thu, 6 Feb 2025 15:11:02 +0000 (18:11 +0300)]
Revert "ldb: User hexchars_upper from replace.h"
Forwarded: not-needed
Debian-Specific: yes
This reverts commit
542cf01bfe530a83dfbc8a606d182c0a5a622059.
This commit switched ldb code to use hexchars_upper from libreplace,
introducing circular dependency between libraries. Restore the status-quo.
Gbp-Pq: Name revert-ldb-use-hexchars_upper-from-replace.h.patch
Michael Tokarev [Fri, 2 Dec 2022 08:45:01 +0000 (11:45 +0300)]
ctdb: use /run/ctdb instead of /var/run/ctdb
Forwarded: not-needed
Whole upstream path assignment needs a review.
Gbp-Pq: Name ctdb-use-run-instead-of-var-run.patch
Michael Tokarev [Fri, 2 Dec 2022 08:08:27 +0000 (11:08 +0300)]
print meaningful error message if python3-markdown is not installed
Updated: Mon, 08 Apr 2024 14:14:38 +0300
Debian-Specific: yes
Forwarded: not-needed
Gbp-Pq: Name meaningful-error-if-no-python3-markdown.patch
Michael Tokarev [Fri, 2 Dec 2022 07:54:31 +0000 (10:54 +0300)]
print meaningful error message if samba-ad-provision is not installed
Updated: Thu, 03 Aug 2023 17:06:24 +0300
Debian-Specific: yes
Forwarded: not-needed
Gbp-Pq: Name meaningful-error-if-no-samba-ad-provision.patch
Michael Tokarev [Tue, 26 Apr 2022 13:11:48 +0000 (16:11 +0300)]
move msg.sock from /var/lib/samba to /run/samba
Move socket directory from /var/lib/samba to /run/samba,
exactly like msg.lock. This directory is only used by various
samba components to communicate with each other (smbcontrol),
there's no place for it in /var/lib.
Also remove msg.sock subdir in various tests.
It'd be nice to also move ntp socket and similar somewhere to
/run/samba too, but this is a bit more difficult since it is
used in other software.
https://lists.samba.org/archive/samba-technical/2022-April/137322.html
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
Gbp-Pq: Name move-msg.sock-from-var-lib-samba-to-run-samba.patch
Michael Tokarev [Fri, 8 Apr 2022 08:50:21 +0000 (11:50 +0300)]
disable setuid configure checks
Forwarded: not-needed
For some strange reason, when running reprotest test on salsa-ci,
which apparently is running as root, - on the *second* build only
the configure fails (after successfully built package the first
time). The configure test tries to change gid and verifies it
actually changed (not that the syscall exist), - and that fails.
Since it is extremely uncommon to configure the build process as
root, salsa-ci test environment details are quite deep down the line,
and we know the syscall actually works, just disable the probe,
pretending we are not root.
For upstream, this probably should be done by removing a *lot* of
configure-time checks which are useless these days.
Gbp-Pq: Name disable-setuid-confchecks.patch
Michael Tokarev [Sun, 3 Apr 2022 04:57:38 +0000 (07:57 +0300)]
silence uselib_local warning produced by waf
During config/build process in verbose mode, waf produces
about 2k repetitions of this warning:
compat: "uselib_local" is deprecated, replace by "use"
which clutters the build log.
Comment this warning out for now until it will be
fixed properly.
Gbp-Pq: Name silence-waf-uselib_local.diff
Michael Tokarev [Fri, 9 Sep 2022 09:49:55 +0000 (12:49 +0300)]
create ctdb pid directory
(which is /run/ctdb/). Create it in the systemd service
file (using RuntimeDirectory directive) and in the sysv-init
script.
Gbp-Pq: Name ctdb-create-piddir.patch
Michael Tokarev [Sat, 2 Apr 2022 14:49:38 +0000 (17:49 +0300)]
fix pathname for ctdb_etcd_lock
Forwarded: not-needed
Specify the actual installation path for this helper script.
This is a quick hack, this issue should be addressed
upstream in a more generic way.
Gbp-Pq: Name ctdb_etcd_lock-path.patch
Debian Samba Maintainers [Thu, 6 Mar 2025 21:02:26 +0000 (00:02 +0300)]
use bzero() instead of memset_s()
lib/replace/replace.h header defines ZERO_STRUCT macro
which uses memset_s() function (which is similar to
memset() but can not be optimized out by the compiler).
Glibc has bzero() with similar property, while memset_s()
have is implemented in lib/replace/replace.c, - this way,
some binaries needlessly link with libreplace-samba4 just
to get rep_memset_s() symbol. By using bzero() instead,
this endless linkage is eliminated, so we can package,
for example, libldb (which uses ZERO_STRUCT) without it
linking to libreplace-samba4.
Note: actually using explicit_bzero() so it is not optimized
out by the compiler - this is the original goal of using
memset_s().
Gbp-Pq: Name use-bzero-instead-of-memset_s.diff
Rafael David Tinoco [Thu, 6 Mar 2025 21:02:26 +0000 (00:02 +0300)]
ctdb-config: enable syslog by default
Bug-Debian: https://bugs.debian.org/929931
Bug-Ubuntu: https://bugs.launchpad.net/bugs/722201
Last-Update: 2022-03-24
Forwarded: not-needed
CTDB uses /var/log/ctdb/ directory for the default log files. With
syslog disabled, systemd journal is not able to correctly inform
errors happening during service initialization.
Upstream community creates generic config files to be used by different
distributions, so this change makes no big difference to be accepted by
upstream.
With this patch the end user will be able to identify initialization
errors by executing:
systemctl status ctdb.service
or to follow ctdb logs by executing:
journalctl -f -u ctdb
Signed-off-by: Rafael David Tinoco <rafaeldtinoco@ubuntu.com>
Gbp-Pq: Name ctdb-config-enable-syslog-by-default.patch
Rafael David Tinoco [Thu, 6 Mar 2025 21:02:26 +0000 (00:02 +0300)]
fix nfs related service names
Upstream defines nfs related service names based on the Linux
distribution. This patch fixes the names for Debian and derivatives.
Update by Andreas Hasenack <andreas@canonical.com> (LP: #
1961840):
Use nfsconf(8) if it's available, instead of parsing the old config
files in /etc/default/nfs-*
Bug-Debian: https://bugs.debian.org/929931
Bug-Ubuntu: https://bugs.launchpad.net/bugs/722201
Last-Update: 2024-07-30
Gbp-Pq: Name fix-nfs-service-name-to-nfs-kernel-server.patch
Michael Tokarev [Wed, 27 Nov 2024 18:51:50 +0000 (21:51 +0300)]
drop "replace" dependency from libldb
Forwarded: not-needed
When building as a sub-library within samba, where
libreplace is a private library, libldb.so will
have rpath pointing to the private samba dir. Since
ldb actually does not use anything from libreplace,
just remove the dependency.
Gbp-Pq: Name ldb-no-replace.diff
Jeroen Dekkers [Thu, 6 Mar 2025 21:02:26 +0000 (00:02 +0300)]
Add so version number to private libraries for dpkg-shlibdeps
We also want dpkg-shlibdeps to generate correct dependency information
for the private libraries in our binary packages, but dpkg-shlibdeps
only works when the library has a version number.
Origin: vendor
Forwarded: not-needed
Gbp-Pq: Name add-so-version-to-private-libraries
Brian May [Thu, 6 Mar 2025 21:02:26 +0000 (00:02 +0300)]
Patch in symbol table from rfc3454, for Heimdal scripts
Forwarded: not-needed
Status: cherry-picked from heimdal package
Gbp-Pq: Name heimdal-rfc3454.txt
mathiaz@ubuntu.com [Thu, 6 Mar 2025 21:02:26 +0000 (00:02 +0300)]
Enable net usershares by default at build time
Enable net usershares by default at build time, with a limit of 100, and update
the corresponding documentation.
Bug-Debian: http://bugs.debian.org/443230
Bug-Ubuntu: https://bugs.launchpad.net/ubuntu/+source/samba/+bug/128548
Forwarded: not-needed
Gbp-Pq: Name usershare.patch
Steve Langasek [Thu, 6 Mar 2025 21:02:26 +0000 (00:02 +0300)]
Use the pager alternative as pager is PAGER is undefined
Bug-Debian: http://bugs.debian.org/135603
Forwarded: not-needed
Gbp-Pq: Name smbclient-pager.patch
Christian Perrier [Thu, 6 Mar 2025 21:02:26 +0000 (00:02 +0300)]
Mention smbldap-tools package in examples/LDAP/README
Bug-Debian: http://bugs.debian.org/341934
Forwarded: not-needed
Gbp-Pq: Name README_nosmbldap-tools.patch
Michael Tokarev [Thu, 3 Nov 2022 17:49:33 +0000 (20:49 +0300)]
hurd compatibility changes
Hurd does not define PIPE_BUF, so lib/tevent/testsuite.c fails to compile
(yes, this file is used as part of *samba* testsuite, not tevent testsuite).
Define it to a safe minimal value like 512 bytes.
Hurd does not provide SA_NOCLDWAIT define, so lib/util/tests/tfork.c does
not compile. This is only needed during testing to omit zombie process
generation, which has only cosmetic effect. Define it to be 0.
Based on prior work and ideas by Samuel Thibault.
Gbp-Pq: Name hurd-compat.patch
Jelmer Vernooij [Thu, 6 Mar 2025 21:02:26 +0000 (00:02 +0300)]
Provide public symbol tdb_logging_function removed upstream without major version change. (bug #511011)
Status: Not forwarded upstream
Gbp-Pq: Name tdb_logging_func.diff
Michael Tokarev [Tue, 26 Nov 2024 14:28:51 +0000 (17:28 +0300)]
force tdb to be standalone
Forwarded: not-needed
Upstream ships contents of lib/tdb/ as a separate
source of tdb. Since we build samba anyway, there's
no need to have separate tdb source package, it's
enough to build it during samba build.
Always build tdb as stand-alone library
(instead of being samba-private if in a subdir).
When building as a sub-library within samba,
where libreplace is a private library, libtdb.so
will have rpath pointing to the private samba
dir. Since tdb actually does not use anything
from libreplace, just remove the dependency.
Gbp-Pq: Name tdb-standalone.diff
Michael Tokarev [Tue, 26 Nov 2024 14:28:51 +0000 (17:28 +0300)]
force tevent to be standalone
Forwarded: not-needed
Upstream ships contents of lib/tevent/ as a separate
source of tevent. Since we build samba anyway, there's
no need to have separate tevent source package, it's
enough to build it during samba build.
Always build tevent as stand-alone library
(instead of being samba-private if in a subdir).
When building as a sub-library within samba, where
libreplace is a private library, libtevent.so will
have rpath pointing to the private samba dir. Since
tevent actually does not use anything from libreplace,
just remove the dependency.
Gbp-Pq: Name tevent-standalone.diff
Michael Tokarev [Tue, 26 Nov 2024 14:28:51 +0000 (17:28 +0300)]
force talloc to be standalone
Forwarded: not-needed
Upstream ships contents of lib/talloc/ as a separate
source of talloc. Since we build samba anyway, there's
no need to have separate talloc source package, it's
enough to build it during samba build.
Always build talloc as stand-alone library
(instead of being samba-private if in a subdir).
When building as a sub-library within samba, where
libreplace is a private library, libtalloc.so will
have rpath pointing to the private samba dir. Since
talloc actually does not use anything from libreplace,
just remove the dependency.
Gbp-Pq: Name talloc-standalone.diff
Michael Tokarev [Sat, 2 Apr 2022 16:01:55 +0000 (19:01 +0300)]
ensure libsmbclient.h is being used with LFS enabled
Bug-Debian: https://bugs.debian.org/221618
Forwarded: not-needed
We build samba with LFS (Large File Support) even on 32bits.
This means some types like off_t are 64-bit wide, again,
even on a 32bit host. libsmbclient.h uses off_t in function
prototypes, and thes prototypes muct match those which were
used at samba compile time - if some other source includes
libsmbclient.h without LFS, it'll get wrong prototypes and
the resulting binary will most likely crash when using
libsmbclient functions.
Detect and error-out this at compile time.
We can not do anything with this in the public header since
it is alredy too late to redefine things, since we can't
guarantee we're the first header a program #includes, and
at the time this libsmbclient.h is included, off_t can
already be defined so our (re)define of _FILE_OFFSET_BITS
does nothing already.
Patching libsmbclient.h to use off64_t means client program
should change their off_t to off64_t too when storing
file offsets returning from libsmbclient, so this is not
an option too.
With this change, we will error out even if the user source
does not use any off_t-related functions. Namely, it was ok
to #include <libsmbclient.h> and use smbc_open/smbc_read/
smbc_write/smbc_close without _F_O_B=64, - neither of these
functions uses off_t. smbc_lseek and others doesn't work,
but if a program does not use them anyway, whole thing will
just work even without enabling LFS. Ideally we can probably
check each individual function which is being affected, by
replacing it with #error if sizeof(off_t) < 8. But this
requires quite some hackery...
Gbp-Pq: Name libsmbclient-ensure-lfs-221618.patch
Michael Tokarev [Thu, 6 Mar 2025 21:02:26 +0000 (00:02 +0300)]
samba (2:4.22.0+dfsg-1) unstable; urgency=medium
* new upstream release
* samba-libs: provide libndr5 too (with a compat symlink)
* add libsamba-security-private.so link for freeipa testsuite
(Closes: #
1099340)
* d/samba-vfs-ceph.install: install also ceph_new vfs module
(Closes: #
1098670)
* d/*.install: s@/*/@/${DEB_HOST_MULTIARCH}/@
* d/source/lintian-overrides: add dh-exec-useless-usage *DEB_HOST_MULTIARCH*
[dgit import unpatched samba 2:4.22.0+dfsg-1]
Michael Tokarev [Thu, 6 Mar 2025 21:02:26 +0000 (00:02 +0300)]
Import samba_4.22.0+dfsg-1.debian.tar.xz
[dgit import tarball samba 2:4.22.0+dfsg-1 samba_4.22.0+dfsg-1.debian.tar.xz]
Michael Tokarev [Sun, 12 Jan 2025 20:16:00 +0000 (23:16 +0300)]
Merge samba (2:4.21.3+dfsg-6) import into refs/heads/workingbranch
Michael Tokarev [Mon, 6 Jan 2025 19:38:32 +0000 (22:38 +0300)]
ctdb/failover/statd_callout.c: add PATH_MAX workaround
Gbp-Pq: Name ctdb-failover-statd_callout-PATH_MAX-workaround.patch
Michael Tokarev [Fri, 29 Nov 2024 06:34:42 +0000 (09:34 +0300)]
include <grp.h> for setgroups in a few places
setgroups(), unlike getgroups(), is not in <unistd.h> but in <grp.h>.
Recent compilers require function declaration before using a function
(or more and more distributions treat lack of declaration as error),
so all configure-time tests fails with source3/lib/util_sec.c:
source3/../lib/util/setid.c: In function 'samba_setgroups':
source3/../lib/util/setid.c:244:16: error: implicit declaration of function \
'setgroups'; did you mean 'getgroups'? [-Wimplicit-function-declaration]
244 | return setgroups(setlen, gidset);
Add the missing include so configuration finds the existing system
functions instead of failing.
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
Gbp-Pq: Name include-grp.h-for-setgroups-in-a-few-places.patch
Michael Tokarev [Fri, 1 Mar 2024 13:16:20 +0000 (16:16 +0300)]
lower dns lookup mismatch messages
Forwarded: https://gitlab.com/samba-team/samba/-/merge_requests/3872
There's just too much useless noise in the logs,
especially when the PTR record just doesn't exist.
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
Gbp-Pq: Name lower-dns-lookup-mismatch-messages.patch
Michael Tokarev [Mon, 26 Feb 2024 12:35:35 +0000 (15:35 +0300)]
passchange: error message fix
Forwarded: https://gitlab.com/samba-team/samba/-/merge_requests/3872
Missing space and newline.
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
Gbp-Pq: Name passchange-error-message.patch
Michael Tokarev [Mon, 26 Feb 2024 11:15:00 +0000 (14:15 +0300)]
Minimal EDNS0 support for built-in DNS client
Forwarded: yes
Bug: https://bugzilla.samba.org/show_bug.cgi?id=15536
Currently, samba built-in DNS client is UDP-only (it does
support TCP mode, but not all components use it). In
particular, when winbind queries list of AD DCs (SRV
record) which can be quite large, it uses UDP-only query.
And at the same time, samba DNS client does not support
EDNS0 at all, so the reply is limited to standard DNS
packet size which is 512 bytes.
Add minimal EDNS0 OPT record to ADDITIONAL section when
sending a DNS request out, indicating we can accept
DNS packets up to 4Kb in size.
Since DNSSEC is in wide use today and DNSSEC requires
EDNS0, it is okay to assume ENDS0 is widely supported
these days, so there should be no regressions when
enabling EDNS0.
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
Gbp-Pq: Name edns0.patch
Michael Tokarev [Wed, 14 Feb 2024 12:26:29 +0000 (15:26 +0300)]
silence "Can not convert group sid" warnings in the log
Forwarded: https://gitlab.com/samba-team/samba/-/merge_requests/3872
/var/log/samba/log.winbind is full of messages like:
[2024/02/09 06:25:04.788182, 1, pid=74620] source3/winbindd/winbindd_getgroups.c:259(winbindd_getgroups_recv)
Could not convert sid S-0-0: NT_STATUS_NONE_MAPPED
On a busy server these are logged several 1000s times per minute,
making any other messages basically invisible.
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
Gbp-Pq: Name silence-can-not-convert-group-sid.diff
Michael Tokarev [Fri, 2 Dec 2022 08:45:01 +0000 (11:45 +0300)]
ctdb: use /run/ctdb instead of /var/run/ctdb
Forwarded: not-needed
Whole upstream path assignment needs a review.
Gbp-Pq: Name ctdb-use-run-instead-of-var-run.patch
Michael Tokarev [Fri, 2 Dec 2022 08:08:27 +0000 (11:08 +0300)]
print meaningful error message if python3-markdown is not installed
Updated: Mon, 08 Apr 2024 14:14:38 +0300
Debian-Specific: yes
Forwarded: not-needed
Gbp-Pq: Name meaningful-error-if-no-python3-markdown.patch
Michael Tokarev [Fri, 2 Dec 2022 07:54:31 +0000 (10:54 +0300)]
print meaningful error message if samba-ad-provision is not installed
Updated: Thu, 03 Aug 2023 17:06:24 +0300
Debian-Specific: yes
Forwarded: not-needed
Gbp-Pq: Name meaningful-error-if-no-samba-ad-provision.patch
Michael Tokarev [Thu, 17 Nov 2022 20:51:03 +0000 (23:51 +0300)]
fruit: disable useless size_t overflow check
Bug-Debian: http://bugs.debian.org/974868
Forwarded: https://gitlab.com/samba-team/samba/-/merge_requests/3872
As has been said several times in
https://bugzilla.samba.org/show_bug.cgi?id=13622 ,
the check 'bandsize > SIZE_MAX/nbands' is useless. But it
is also wrong, in 2 ways: first, nbands might be 0 (when
no bands has been allocated yet), and second, there's no
point in comparing this with SIZE_MAX, since size_t on 32bit
platforms is a 32bit integer, while bandsize is off_t which
is 64bits (samba always enables LFS).
This check causes the module to fail when bandsize*nbands
exceeds 32bits, which has been reported for example at
https://bugs.debian.org/974868 .
Whole thing can't overflow because it is already guarded
by time_machine_max_size. Or at the very least, by current
disk sizes... :)
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
Gbp-Pq: Name fruit-disable-useless-size_t-overflow-check.patch
Michael Tokarev [Thu, 19 May 2022 17:37:21 +0000 (20:37 +0300)]
specify some deps on private libs actually used directly
Updated: Thu, 28 Nov 2024 11:59:58 +0300
Forwarded: https://gitlab.com/samba-team/samba/-/merge_requests/3872
Lots of samba libraries has incomplete dependencies listed
in wscript files. This usually is not a problem since the
link line includes dependencies of their dependencies of
their dependencies, and somewhere down that line all immediate
dependencies which are missing are actually present. But
sometimes this becomes a problem when a library does not
declare direct dependency on at least one private library
which it actually uses: in case no private library is
listed as direct dependency, private library directory is
not put into RUNPATH of the resulting binary, so the binary
can not find its own dependencies.
Fix a few such places, including some libraries which are
a part of public abi (libsmbldap, libndr).
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
Gbp-Pq: Name add-missing-libs-deps.diff
Michael Tokarev [Tue, 26 Apr 2022 13:14:38 +0000 (16:14 +0300)]
testparm: do not fail if /run/samba does not exist
Forwarded: https://gitlab.com/samba-team/samba/-/merge_requests/3872
testparm explicitly fails if $piddir or $lockdir does not exist.
However, the daemons which actually use these directories, will
create it on demand, there is no need to fail even simple testparm
operations if the dirs are not there.
This change lets to (pre)configure samba without bothering to
pre-create the directories which are overwise needed only to fulfil
testparm criteria.
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
Gbp-Pq: Name testparm-do-not-fail-if-pid-dir-does-not-exist.patch
Michael Tokarev [Tue, 26 Apr 2022 13:11:48 +0000 (16:11 +0300)]
move msg.sock from /var/lib/samba to /run/samba
Move socket directory from /var/lib/samba to /run/samba,
exactly like msg.lock. This directory is only used by various
samba components to communicate with each other (smbcontrol),
there's no place for it in /var/lib.
Also remove msg.sock subdir in various tests.
It'd be nice to also move ntp socket and similar somewhere to
/run/samba too, but this is a bit more difficult since it is
used in other software.
https://lists.samba.org/archive/samba-technical/2022-April/137322.html
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
Gbp-Pq: Name move-msg.sock-from-var-lib-samba-to-run-samba.patch
Michael Tokarev [Fri, 8 Apr 2022 08:50:21 +0000 (11:50 +0300)]
disable setuid configure checks
Forwarded: not-needed
For some strange reason, when running reprotest test on salsa-ci,
which apparently is running as root, - on the *second* build only
the configure fails (after successfully built package the first
time). The configure test tries to change gid and verifies it
actually changed (not that the syscall exist), - and that fails.
Since it is extremely uncommon to configure the build process as
root, salsa-ci test environment details are quite deep down the line,
and we know the syscall actually works, just disable the probe,
pretending we are not root.
For upstream, this probably should be done by removing a *lot* of
configure-time checks which are useless these days.
Gbp-Pq: Name disable-setuid-confchecks.patch
Michael Tokarev [Sun, 3 Apr 2022 04:57:38 +0000 (07:57 +0300)]
silence uselib_local warning produced by waf
During config/build process in verbose mode, waf produces
about 2k repetitions of this warning:
compat: "uselib_local" is deprecated, replace by "use"
which clutters the build log.
Comment this warning out for now until it will be
fixed properly.
Gbp-Pq: Name silence-waf-uselib_local.diff
Michael Tokarev [Fri, 9 Sep 2022 09:49:55 +0000 (12:49 +0300)]
create ctdb pid directory
(which is /run/ctdb/). Create it in the systemd service
file (using RuntimeDirectory directive) and in the sysv-init
script.
Gbp-Pq: Name ctdb-create-piddir.patch
Michael Tokarev [Sat, 2 Apr 2022 14:49:38 +0000 (17:49 +0300)]
fix pathname for ctdb_etcd_lock
Forwarded: not-needed
Specify the actual installation path for this helper script.
This is a quick hack, this issue should be addressed
upstream in a more generic way.
Gbp-Pq: Name ctdb_etcd_lock-path.patch
Debian Samba Maintainers [Sun, 12 Jan 2025 20:16:00 +0000 (23:16 +0300)]
use bzero() instead of memset_s()
lib/replace/replace.h header defines ZERO_STRUCT macro
which uses memset_s() function (which is similar to
memset() but can not be optimized out by the compiler).
Glibc has bzero() with similar property, while memset_s()
have is implemented in lib/replace/replace.c, - this way,
some binaries needlessly link with libreplace-samba4 just
to get rep_memset_s() symbol. By using bzero() instead,
this endless linkage is eliminated, so we can package,
for example, libldb (which uses ZERO_STRUCT) without it
linking to libreplace-samba4.
Note: actually using explicit_bzero() so it is not optimized
out by the compiler - this is the original goal of using
memset_s().
Gbp-Pq: Name use-bzero-instead-of-memset_s.diff
Rafael David Tinoco [Sun, 12 Jan 2025 20:16:00 +0000 (23:16 +0300)]
ctdb-config: enable syslog by default
Bug-Debian: https://bugs.debian.org/929931
Bug-Ubuntu: https://bugs.launchpad.net/bugs/722201
Last-Update: 2022-03-24
Forwarded: not-needed
CTDB uses /var/log/ctdb/ directory for the default log files. With
syslog disabled, systemd journal is not able to correctly inform
errors happening during service initialization.
Upstream community creates generic config files to be used by different
distributions, so this change makes no big difference to be accepted by
upstream.
With this patch the end user will be able to identify initialization
errors by executing:
systemctl status ctdb.service
or to follow ctdb logs by executing:
journalctl -f -u ctdb
Signed-off-by: Rafael David Tinoco <rafaeldtinoco@ubuntu.com>
Gbp-Pq: Name ctdb-config-enable-syslog-by-default.patch
Rafael David Tinoco [Sun, 12 Jan 2025 20:16:00 +0000 (23:16 +0300)]
fix nfs related service names
Upstream defines nfs related service names based on the Linux
distribution. This patch fixes the names for Debian and derivatives.
Update by Andreas Hasenack <andreas@canonical.com> (LP: #
1961840):
Use nfsconf(8) if it's available, instead of parsing the old config
files in /etc/default/nfs-*
Bug-Debian: https://bugs.debian.org/929931
Bug-Ubuntu: https://bugs.launchpad.net/bugs/722201
Last-Update: 2024-07-30
Gbp-Pq: Name fix-nfs-service-name-to-nfs-kernel-server.patch
Michael Tokarev [Wed, 27 Nov 2024 18:51:50 +0000 (21:51 +0300)]
drop "replace" dependency from libldb
Forwarded: not-needed
When building as a sub-library within samba, where
libreplace is a private library, libldb.so will
have rpath pointing to the private samba dir. Since
ldb actually does not use anything from libreplace,
just remove the dependency.
Gbp-Pq: Name ldb-no-replace.diff
Jeroen Dekkers [Sun, 12 Jan 2025 20:16:00 +0000 (23:16 +0300)]
Add so version number to private libraries for dpkg-shlibdeps
We also want dpkg-shlibdeps to generate correct dependency information
for the private libraries in our binary packages, but dpkg-shlibdeps
only works when the library has a version number.
Origin: vendor
Forwarded: not-needed
Gbp-Pq: Name add-so-version-to-private-libraries
Brian May [Sun, 12 Jan 2025 20:16:00 +0000 (23:16 +0300)]
Patch in symbol table from rfc3454, for Heimdal scripts
Forwarded: not-needed
Status: cherry-picked from heimdal package
Gbp-Pq: Name heimdal-rfc3454.txt
mathiaz@ubuntu.com [Sun, 12 Jan 2025 20:16:00 +0000 (23:16 +0300)]
Enable net usershares by default at build time
Enable net usershares by default at build time, with a limit of 100, and update
the corresponding documentation.
Bug-Debian: http://bugs.debian.org/443230
Bug-Ubuntu: https://bugs.launchpad.net/ubuntu/+source/samba/+bug/128548
Forwarded: not-needed
Gbp-Pq: Name usershare.patch
Steve Langasek [Sun, 12 Jan 2025 20:16:00 +0000 (23:16 +0300)]
Use the pager alternative as pager is PAGER is undefined
Bug-Debian: http://bugs.debian.org/135603
Forwarded: not-needed
Gbp-Pq: Name smbclient-pager.patch
Christian Perrier [Sun, 12 Jan 2025 20:16:00 +0000 (23:16 +0300)]
Mention smbldap-tools package in examples/LDAP/README
Bug-Debian: http://bugs.debian.org/341934
Forwarded: not-needed
Gbp-Pq: Name README_nosmbldap-tools.patch
Michael Tokarev [Thu, 3 Nov 2022 17:49:33 +0000 (20:49 +0300)]
hurd compatibility changes
Hurd does not define PIPE_BUF, so lib/tevent/testsuite.c fails to compile
(yes, this file is used as part of *samba* testsuite, not tevent testsuite).
Define it to a safe minimal value like 512 bytes.
Hurd does not provide SA_NOCLDWAIT define, so lib/util/tests/tfork.c does
not compile. This is only needed during testing to omit zombie process
generation, which has only cosmetic effect. Define it to be 0.
Based on prior work and ideas by Samuel Thibault.
Gbp-Pq: Name hurd-compat.patch
Jelmer Vernooij [Sun, 12 Jan 2025 20:16:00 +0000 (23:16 +0300)]
Provide public symbol tdb_logging_function removed upstream without major version change. (bug #511011)
Status: Not forwarded upstream
Gbp-Pq: Name tdb_logging_func.diff
Michael Tokarev [Tue, 26 Nov 2024 14:28:51 +0000 (17:28 +0300)]
force tdb to be standalone
Forwarded: not-needed
Upstream ships contents of lib/tdb/ as a separate
source of tdb. Since we build samba anyway, there's
no need to have separate tdb source package, it's
enough to build it during samba build.
Always build tdb as stand-alone library
(instead of being samba-private if in a subdir).
When building as a sub-library within samba,
where libreplace is a private library, libtdb.so
will have rpath pointing to the private samba
dir. Since tdb actually does not use anything
from libreplace, just remove the dependency.
Gbp-Pq: Name tdb-standalone.diff
Michael Tokarev [Tue, 26 Nov 2024 14:28:51 +0000 (17:28 +0300)]
force tevent to be standalone
Forwarded: not-needed
Upstream ships contents of lib/tevent/ as a separate
source of tevent. Since we build samba anyway, there's
no need to have separate tevent source package, it's
enough to build it during samba build.
Always build tevent as stand-alone library
(instead of being samba-private if in a subdir).
When building as a sub-library within samba, where
libreplace is a private library, libtevent.so will
have rpath pointing to the private samba dir. Since
tevent actually does not use anything from libreplace,
just remove the dependency.
Gbp-Pq: Name tevent-standalone.diff
Michael Tokarev [Tue, 26 Nov 2024 14:28:51 +0000 (17:28 +0300)]
force talloc to be standalone
Forwarded: not-needed
Upstream ships contents of lib/talloc/ as a separate
source of talloc. Since we build samba anyway, there's
no need to have separate talloc source package, it's
enough to build it during samba build.
Always build talloc as stand-alone library
(instead of being samba-private if in a subdir).
When building as a sub-library within samba, where
libreplace is a private library, libtalloc.so will
have rpath pointing to the private samba dir. Since
talloc actually does not use anything from libreplace,
just remove the dependency.
Gbp-Pq: Name talloc-standalone.diff
Michael Tokarev [Sat, 2 Apr 2022 16:01:55 +0000 (19:01 +0300)]
ensure libsmbclient.h is being used with LFS enabled
Bug-Debian: https://bugs.debian.org/221618
Forwarded: not-needed
We build samba with LFS (Large File Support) even on 32bits.
This means some types like off_t are 64-bit wide, again,
even on a 32bit host. libsmbclient.h uses off_t in function
prototypes, and thes prototypes muct match those which were
used at samba compile time - if some other source includes
libsmbclient.h without LFS, it'll get wrong prototypes and
the resulting binary will most likely crash when using
libsmbclient functions.
Detect and error-out this at compile time.
We can not do anything with this in the public header since
it is alredy too late to redefine things, since we can't
guarantee we're the first header a program #includes, and
at the time this libsmbclient.h is included, off_t can
already be defined so our (re)define of _FILE_OFFSET_BITS
does nothing already.
Patching libsmbclient.h to use off64_t means client program
should change their off_t to off64_t too when storing
file offsets returning from libsmbclient, so this is not
an option too.
With this change, we will error out even if the user source
does not use any off_t-related functions. Namely, it was ok
to #include <libsmbclient.h> and use smbc_open/smbc_read/
smbc_write/smbc_close without _F_O_B=64, - neither of these
functions uses off_t. smbc_lseek and others doesn't work,
but if a program does not use them anyway, whole thing will
just work even without enabling LFS. Ideally we can probably
check each individual function which is being affected, by
replacing it with #error if sizeof(off_t) < 8. But this
requires quite some hackery...
Gbp-Pq: Name libsmbclient-ensure-lfs-221618.patch
Michael Tokarev [Sun, 12 Jan 2025 20:16:00 +0000 (23:16 +0300)]
samba (2:4.21.3+dfsg-6) unstable; urgency=medium
* d/genshlibs: remove the special-case for libsmbclient0 since
we expand t64:Provides in d/control directly
* d/control: add ${t64:Provides} comments
* d/control: more t64 work: for libtevent0t64, break libtevent0
not <<${source:Version} but <<${binary:Version}, because source
is samba not tevent (Closes: #
1092881)
[dgit import unpatched samba 2:4.21.3+dfsg-6]
Michael Tokarev [Sun, 12 Jan 2025 20:16:00 +0000 (23:16 +0300)]
Import samba_4.21.3+dfsg-6.debian.tar.xz
[dgit import tarball samba 2:4.21.3+dfsg-6 samba_4.21.3+dfsg-6.debian.tar.xz]
Michael Tokarev [Mon, 6 Jan 2025 18:20:31 +0000 (21:20 +0300)]
Merge samba (2:4.21.3+dfsg-1) import into refs/heads/workingbranch
Michael Tokarev [Mon, 6 Jan 2025 18:20:31 +0000 (21:20 +0300)]
Import samba_4.21.3+dfsg.orig.tar.xz
[dgit import orig samba_4.21.3+dfsg.orig.tar.xz]
Michael Tokarev [Fri, 29 Nov 2024 06:34:42 +0000 (09:34 +0300)]
include <grp.h> for setgroups in a few places
setgroups(), unlike getgroups(), is not in <unistd.h> but in <grp.h>.
Recent compilers require function declaration before using a function
(or more and more distributions treat lack of declaration as error),
so all configure-time tests fails with source3/lib/util_sec.c:
source3/../lib/util/setid.c: In function 'samba_setgroups':
source3/../lib/util/setid.c:244:16: error: implicit declaration of function \
'setgroups'; did you mean 'getgroups'? [-Wimplicit-function-declaration]
244 | return setgroups(setlen, gidset);
Add the missing include so configuration finds the existing system
functions instead of failing.
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
Gbp-Pq: Name include-grp.h-for-setgroups-in-a-few-places.patch
Michael Tokarev [Fri, 1 Mar 2024 13:16:20 +0000 (16:16 +0300)]
lower dns lookup mismatch messages
Forwarded: https://gitlab.com/samba-team/samba/-/merge_requests/3872
There's just too much useless noise in the logs,
especially when the PTR record just doesn't exist.
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
Gbp-Pq: Name lower-dns-lookup-mismatch-messages.patch
Michael Tokarev [Mon, 26 Feb 2024 12:35:35 +0000 (15:35 +0300)]
passchange: error message fix
Forwarded: https://gitlab.com/samba-team/samba/-/merge_requests/3872
Missing space and newline.
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
Gbp-Pq: Name passchange-error-message.patch
Michael Tokarev [Mon, 26 Feb 2024 11:15:00 +0000 (14:15 +0300)]
Minimal EDNS0 support for built-in DNS client
Forwarded: yes
Bug: https://bugzilla.samba.org/show_bug.cgi?id=15536
Currently, samba built-in DNS client is UDP-only (it does
support TCP mode, but not all components use it). In
particular, when winbind queries list of AD DCs (SRV
record) which can be quite large, it uses UDP-only query.
And at the same time, samba DNS client does not support
EDNS0 at all, so the reply is limited to standard DNS
packet size which is 512 bytes.
Add minimal EDNS0 OPT record to ADDITIONAL section when
sending a DNS request out, indicating we can accept
DNS packets up to 4Kb in size.
Since DNSSEC is in wide use today and DNSSEC requires
EDNS0, it is okay to assume ENDS0 is widely supported
these days, so there should be no regressions when
enabling EDNS0.
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
Gbp-Pq: Name edns0.patch
Michael Tokarev [Wed, 14 Feb 2024 12:26:29 +0000 (15:26 +0300)]
silence "Can not convert group sid" warnings in the log
Forwarded: https://gitlab.com/samba-team/samba/-/merge_requests/3872
/var/log/samba/log.winbind is full of messages like:
[2024/02/09 06:25:04.788182, 1, pid=74620] source3/winbindd/winbindd_getgroups.c:259(winbindd_getgroups_recv)
Could not convert sid S-0-0: NT_STATUS_NONE_MAPPED
On a busy server these are logged several 1000s times per minute,
making any other messages basically invisible.
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
Gbp-Pq: Name silence-can-not-convert-group-sid.diff