[SCM] Samba Shared Repository - branch v4-13-stable updated
Karolin Seeger
kseeger at samba.org
Tue Nov 3 12:35:17 UTC 2020
The branch, v4-13-stable has been updated
via ffef4e947a6 VERSION: Disable GIT_SNAPSHOT for the 4.13.2 release.
via c2df37320aa WHATSNEW: Add relase notes for Samba 4.13.2.
via 2599b6bd3ef s3: modules: vfs_glusterfs: Fix leak of char **lines onto mem_ctx on return.
via 3d5be93eea8 s3-vfs_glusterfs: refuse connection when write-behind xlator is present
via 8079e2a9116 docs-xml/manpages: Add warning about write-behind translator for vfs_glusterfs
via dbba939ce50 s4:torture: Pass buffer correctly to write()
via e424e1d65e4 DNS Resolver: support both dnspython before and after 2.0.0
via 6521b0ff5e2 ctdb-common: Avoid aliasing errors during code optimization
via d9d661993d4 vfs_zfsacl: only grant DELETE_CHILD if ACL tag is special
via c64c277b607 vfs_zfsacl: use a helper variable in zfs_get_nt_acl_common()
via 2a6c27d63b7 vfs_zfsacl: README.Coding fix
via 50bb50341df vfs_zfsacl: Add new parameter to stop automatic addition of special entries
via 1b03a345231 vfs_zfsacl: use handle based facl() call to query ZFS filesytem ACL
via bca2f0e92c2 libndr: Avoid assigning duplicate versions to symbols
via 1b6b85304d3 smb.conf.5: add clarification how configuration changes reflected by Samba
via 05aa0b4b3d5 VERSION: Bump version up to 4.13.2.
via c2fef893ca7 Merge tag 'samba-4.13.1' into v4-13-test
via c4938561a97 daemons: report status to systemd even when running in foreground
via ff781ba4682 docs: fix default value of spoolss:architecture
via 24ae26cb49e provision: BIND 9.17.x is not supported
via a831cc5799b provision: Add support for BIND 9.16.x
via f6b6867d549 bind9-dlz: Add support for BIND 9.16.x
via 34513738155 provision: BIND 9.15.x is not supported
via 4e65cc6058e provision: Add support for BIND 9.14.x
via 63d94da74a6 bind9-dlz: Add support for BIND 9.14.x
via b5bc60e77d3 provision: BIND 9.13.x is not supported
via 8e2ef3cda23 bind9-dlz: Bind 9.13.x switched to using bool as isc_boolean_t instead of int.
via 61cd114be10 examples:auth: Do not install example plugin
via b5b7a958ef6 s3:modules: Do not install vfs modules only used for testing
via cfd5b368d42 unittests: Mark test binaries for selftest
via a4c241736bc buildtools: Do not install binaries which are for selftest
via fe28ffc4a7e s3:script: Fix test_dfree_quota.sh
via d76e1b43e2d third_party: Update resolv_wrapper to version 1.1.7
via 995478c9378 testprogs: Fix and improve upgradeprovision-oldrelease test
via e51a5e8aea4 testprogs: Fix and improve dbcheck-oldrelease test
via 7357ddefe33 testprogs: Fix and improve functionalprep test
via 7b2c975a88b testprogs: Fix and improve dbcheck-links test
via 2aad79378ad testprogs: Fix and improve runtime-links test
via 62e97089a88 testprogs: Fix and improve tombstones-expunge test
via 33b116da10a testprogs: Fix and improve demote-saveddb test
via daeada8e48e testprogs: Add remove_directory to common test functions
via 069c5acc4b6 python: Create targetdir recursively
via 15e15f7c21b nsswitch/nsstest.c: Avoid nss function conflicts with glibc nss.h
via b15f35b5738 s4:dsdb:acl_read: Implement "List Object" mode feature
via 0918966f9d5 s4:dsdb:util: add dsdb_do_list_object() helper
via 160a2d6a5f9 s4:dsdb:acl_read: defer LDB_ERR_NO_SUCH_OBJECT
via ee5b2e3be90 s4:dsdb:acl_read: make use of aclread_check_object_visible() for the search base
via 24e0a440a93 s4:dsdb:acl_read: fully set up 'struct aclread_context' before the search base acl check
via 540cd43baf2 s4:dsdb:acl_read: introduce aclread_check_object_visible() helper
via f92b61ec826 s4:dsdb:tests: add AclVisibiltyTests
via a89a78aa609 python/tests: add DynamicTestCase setUpDynamicTestCases() infrastructure
via e759ecdae11 ctdb-tests: Strengthen node state checking in ctdb disable/enable test
via 710b287bdc9 ctdb-recoverd: Drop unnecessary and broken code
via 895bc9a7c2a ctdb-recoverd: Drop unnecessary code
via a6606369e2c vfs_shadow_copy2: Avoid closing snapsdir twice
via a9bf4f90260 winbind: Fix a memleak
via e32a1f1bd25 WHATSNEW: Fix release notes.
via cbcc754bc36 VERSION: Bump version up to 4.13.1...
from 9e9941a843f VERSION: Disable GIT_SNAPSHOT for the 4.13.1 release.
https://git.samba.org/?p=samba.git;a=shortlog;h=v4-13-stable
- Log -----------------------------------------------------------------
-----------------------------------------------------------------------
Summary of changes:
VERSION | 2 +-
WHATSNEW.txt | 117 +++++++-
buildtools/wafsamba/samba_third_party.py | 2 +-
buildtools/wafsamba/wafsamba.py | 6 +-
ctdb/common/system_socket.c | 31 +-
ctdb/server/ctdb_recoverd.c | 61 ----
.../failover/pubips.030.disable_enable.sh | 4 +-
docs-xml/manpages/nmbd.8.xml | 10 +-
docs-xml/manpages/smb.conf.5.xml | 30 ++
docs-xml/manpages/smbd.8.xml | 13 +-
docs-xml/manpages/vfs_glusterfs.8.xml | 22 ++
docs-xml/manpages/vfs_zfsacl.8.xml | 20 ++
docs-xml/manpages/winbindd.8.xml | 7 +-
.../smbdotconf/printing/spoolssarchitecture.xml | 4 +-
examples/auth/wscript_build | 3 +-
librpc/wscript_build | 2 +-
nsswitch/nsstest.c | 16 +-
python/samba/dnsresolver.py | 68 +++++
python/samba/netcmd/domain.py | 2 +-
python/samba/provision/sambadns.py | 17 +-
python/samba/tests/__init__.py | 27 ++
source3/modules/vfs_glusterfs.c | 91 ++++++
source3/modules/vfs_shadow_copy2.c | 7 +
source3/modules/vfs_zfsacl.c | 206 ++++++++++---
source3/modules/wscript_build | 12 +-
source3/nmbd/nmbd.c | 4 +-
source3/script/tests/test_dfree_quota.sh | 2 +-
source3/smbd/server.c | 4 +-
source3/winbindd/winbindd.c | 5 +-
source3/winbindd/winbindd_ads.c | 1 +
source4/dns_server/dlz_minimal.h | 24 +-
source4/dns_server/wscript_build | 20 ++
source4/dsdb/samdb/ldb_modules/acl_read.c | 185 +++++++++---
source4/dsdb/samdb/ldb_modules/util.c | 21 ++
source4/dsdb/tests/python/acl.py | 321 ++++++++++++++++++++-
source4/scripting/bin/samba_dnsupdate | 5 +-
source4/selftest/tests.py | 2 +-
source4/setup/named.conf.dlz | 6 +
source4/smbd/server.c | 4 +-
source4/torture/basic/denytest.c | 2 +-
testprogs/blackbox/common-links.sh | 16 +-
testprogs/blackbox/common_test_fns.inc | 11 +
testprogs/blackbox/dbcheck-links.sh | 160 +++++-----
testprogs/blackbox/dbcheck-oldrelease.sh | 240 +++++++--------
testprogs/blackbox/demote-saveddb.sh | 75 +++--
testprogs/blackbox/functionalprep.sh | 77 ++---
testprogs/blackbox/runtime-links.sh | 65 +++--
testprogs/blackbox/tombstones-expunge.sh | 94 +++---
testprogs/blackbox/upgradeprovision-oldrelease.sh | 254 ++++++++--------
testsuite/unittests/wscript | 6 +-
third_party/resolv_wrapper/resolv_wrapper.c | 4 +-
third_party/resolv_wrapper/wscript | 2 +-
52 files changed, 1705 insertions(+), 685 deletions(-)
create mode 100644 python/samba/dnsresolver.py
Changeset truncated at 500 lines:
diff --git a/VERSION b/VERSION
index d00b775c7c0..17232cb0574 100644
--- a/VERSION
+++ b/VERSION
@@ -25,7 +25,7 @@
########################################################
SAMBA_VERSION_MAJOR=4
SAMBA_VERSION_MINOR=13
-SAMBA_VERSION_RELEASE=1
+SAMBA_VERSION_RELEASE=2
########################################################
# If a official release has a serious bug #
diff --git a/WHATSNEW.txt b/WHATSNEW.txt
index 994b54221e8..a3ce5cc3dd5 100644
--- a/WHATSNEW.txt
+++ b/WHATSNEW.txt
@@ -1,3 +1,112 @@
+ ==============================
+ Release Notes for Samba 4.13.2
+ November 03, 2020
+ ==============================
+
+
+This is the latest stable release of the Samba 4.13 release series.
+
+Major enhancements include:
+ o BUG 14537: ctdb-common: Avoid aliasing errors during code optimization.
+ o BUG 14486: vfs_glusterfs: Avoid data corruption with the write-behind
+ translator.
+
+
+=======
+Details
+=======
+
+The GlusterFS write-behind performance translator, when used with Samba, could
+be a source of data corruption. The translator, while processing a write call,
+immediately returns success but continues writing the data to the server in the
+background. This can cause data corruption when two clients relying on Samba to
+provide data consistency are operating on the same file.
+
+The write-behind translator is enabled by default on GlusterFS.
+The vfs_glusterfs plugin will check for the presence of the translator and
+refuse to connect if detected. Please disable the write-behind translator for
+the GlusterFS volume to allow the plugin to connect to the volume.
+
+
+Changes since 4.13.1
+--------------------
+
+o Jeremy Allison <jra at samba.org>
+ * BUG 14486: s3: modules: vfs_glusterfs: Fix leak of char
+ **lines onto mem_ctx on return.
+
+o Ralph Boehme <slow at samba.org>
+ * BUG 14471: RN: vfs_zfsacl: Only grant DELETE_CHILD if ACL tag is special.
+
+o Alexander Bokovoy <ab at samba.org>
+ * BUG 14538: smb.conf.5: Add clarification how configuration changes
+ reflected by Samba.
+ * BUG 14552: daemons: Report status to systemd even when running in
+ foreground.
+ * BUG 14553: DNS Resolver: Support both dnspython before and after 2.0.0.
+
+o Günther Deschner <gd at samba.org>
+ * BUG 14486: s3-vfs_glusterfs: Refuse connection when write-behind xlator is
+ present.
+
+o Amitay Isaacs <amitay at gmail.com>
+ * BUG 14487: provision: Add support for BIND 9.16.x.
+ * BUG 14537: ctdb-common: Avoid aliasing errors during code optimization.
+ * BUG 14541: libndr: Avoid assigning duplicate versions to symbols.
+
+o Björn Jacke <bjacke at samba.org>
+ * BUG 14522: docs: Fix default value of spoolss:architecture.
+
+o Laurent Menase <laurent.menase at hpe.com>
+ * BUG 14388: winbind: Fix a memleak.
+
+o Stefan Metzmacher <metze at samba.org>
+ * BUG 14531: s4:dsdb:acl_read: Implement "List Object" mode feature.
+
+o Sachin Prabhu <sprabhu at redhat.com>
+ * BUG 14486: docs-xml/manpages: Add warning about write-behind translator for
+ vfs_glusterfs.
+
+o Khem Raj <raj.khem at gmail.com>
+ * nsswitch/nsstest.c: Avoid nss function conflicts with glibc nss.h.
+
+o Anoop C S <anoopcs at samba.org>
+ * BUG 14530: vfs_shadow_copy2: Avoid closing snapsdir twice.
+
+o Andreas Schneider <asn at samba.org>
+ * BUG 14547: third_party: Update resolv_wrapper to version 1.1.7.
+ * BUG 14550: examples:auth: Do not install example plugin.
+
+o Martin Schwenke <martin at meltin.net>
+ * BUG 14513: ctdb-recoverd: Drop unnecessary and broken code.
+
+o Andrew Walker <awalker at ixsystems.com>
+ * BUG 14471: RN: vfs_zfsacl: Only grant DELETE_CHILD if ACL tag is special.
+
+
+#######################################
+Reporting bugs & Development Discussion
+#######################################
+
+Please discuss this release on the samba-technical mailing list or by
+joining the #samba-technical IRC channel on irc.freenode.net.
+
+If you do report problems then please try to send high quality
+feedback. If you don't provide vital information to help us track down
+the problem then you will probably be ignored. All bug reports should
+be filed under the Samba 4.1 and newer product in the project's Bugzilla
+database (https://bugzilla.samba.org/).
+
+
+======================================================================
+== Our Code, Our Bugs, Our Responsibility.
+== The Samba Team
+======================================================================
+
+
+Release notes for older releases follow:
+----------------------------------------
+
==============================
Release Notes for Samba 4.13.1
October 29, 2020
@@ -88,8 +197,8 @@ database (https://bugzilla.samba.org/).
======================================================================
-Release notes for older releases follow:
-----------------------------------------
+----------------------------------------------------------------------
+
==============================
Release Notes for Samba 4.13.0
@@ -177,9 +286,6 @@ REMOVED FEATURES
The deprecated "ldap ssl ads" smb.conf option has been removed.
-The deprecated "server schannel" smb.conf option will very likely
-removed in the final 4.13.0 release.
-
smb.conf changes
================
@@ -195,7 +301,6 @@ smb.conf changes
client NTLMv2 auth Deprecated yes
client lanman auth Deprecated no
client use spnego Deprecated yes
- server schannel To be removed in 4.13.0
server require schannel:COMPUTER Added
diff --git a/buildtools/wafsamba/samba_third_party.py b/buildtools/wafsamba/samba_third_party.py
index 318da4f4eff..bc2b21f2a55 100644
--- a/buildtools/wafsamba/samba_third_party.py
+++ b/buildtools/wafsamba/samba_third_party.py
@@ -34,7 +34,7 @@ Build.BuildContext.CHECK_NSS_WRAPPER = CHECK_NSS_WRAPPER
@conf
def CHECK_RESOLV_WRAPPER(conf):
- return conf.CHECK_BUNDLED_SYSTEM_PKG('resolv_wrapper', minversion='1.1.6')
+ return conf.CHECK_BUNDLED_SYSTEM_PKG('resolv_wrapper', minversion='1.1.7')
Build.BuildContext.CHECK_RESOLV_WRAPPER = CHECK_RESOLV_WRAPPER
@conf
diff --git a/buildtools/wafsamba/wafsamba.py b/buildtools/wafsamba/wafsamba.py
index 7827d374654..25fed671e5b 100644
--- a/buildtools/wafsamba/wafsamba.py
+++ b/buildtools/wafsamba/wafsamba.py
@@ -365,8 +365,10 @@ def SAMBA_BINARY(bld, binname, source,
for_selftest=False):
'''define a Samba binary'''
- if for_selftest and not bld.CONFIG_GET('ENABLE_SELFTEST'):
- enabled=False
+ if for_selftest:
+ install=False
+ if not bld.CONFIG_GET('ENABLE_SELFTEST'):
+ enabled=False
if not enabled:
SET_TARGET_TYPE(bld, binname, 'DISABLED')
diff --git a/ctdb/common/system_socket.c b/ctdb/common/system_socket.c
index af297f8608b..bb513508353 100644
--- a/ctdb/common/system_socket.c
+++ b/ctdb/common/system_socket.c
@@ -67,16 +67,19 @@
/*
uint16 checksum for n bytes
*/
-static uint32_t uint16_checksum(uint16_t *data, size_t n)
+static uint32_t uint16_checksum(uint8_t *data, size_t n)
{
uint32_t sum=0;
+ uint16_t value;
+
while (n>=2) {
- sum += (uint32_t)ntohs(*data);
- data++;
+ memcpy(&value, data, 2);
+ sum += (uint32_t)ntohs(value);
+ data += 2;
n -= 2;
}
if (n == 1) {
- sum += (uint32_t)ntohs(*(uint8_t *)data);
+ sum += (uint32_t)ntohs(*data);
}
return sum;
}
@@ -117,13 +120,13 @@ bool ctdb_sys_have_ip(ctdb_sock_addr *_addr)
/*
* simple TCP checksum - assumes data is multiple of 2 bytes long
*/
-static uint16_t ip_checksum(uint16_t *data, size_t n, struct ip *ip)
+static uint16_t ip_checksum(uint8_t *data, size_t n, struct ip *ip)
{
uint32_t sum = uint16_checksum(data, n);
uint16_t sum2;
- sum += uint16_checksum((uint16_t *)&ip->ip_src, sizeof(ip->ip_src));
- sum += uint16_checksum((uint16_t *)&ip->ip_dst, sizeof(ip->ip_dst));
+ sum += uint16_checksum((uint8_t *)&ip->ip_src, sizeof(ip->ip_src));
+ sum += uint16_checksum((uint8_t *)&ip->ip_dst, sizeof(ip->ip_dst));
sum += ip->ip_p + n;
sum = (sum & 0xFFFF) + (sum >> 16);
sum = (sum & 0xFFFF) + (sum >> 16);
@@ -135,22 +138,22 @@ static uint16_t ip_checksum(uint16_t *data, size_t n, struct ip *ip)
return sum2;
}
-static uint16_t ip6_checksum(uint16_t *data, size_t n, struct ip6_hdr *ip6)
+static uint16_t ip6_checksum(uint8_t *data, size_t n, struct ip6_hdr *ip6)
{
uint16_t phdr[3];
uint32_t sum = 0;
uint16_t sum2;
uint32_t len;
- sum += uint16_checksum((uint16_t *)(void *)&ip6->ip6_src, 16);
- sum += uint16_checksum((uint16_t *)(void *)&ip6->ip6_dst, 16);
+ sum += uint16_checksum((uint8_t *)&ip6->ip6_src, 16);
+ sum += uint16_checksum((uint8_t *)&ip6->ip6_dst, 16);
len = htonl(n);
phdr[0] = len & UINT16_MAX;
phdr[1] = (len >> 16) & UINT16_MAX;
/* ip6_nxt is only 8 bits, so fits comfortably into a uint16_t */
phdr[2] = htons(ip6->ip6_nxt);
- sum += uint16_checksum(phdr, sizeof(phdr));
+ sum += uint16_checksum((uint8_t *)phdr, sizeof(phdr));
sum += uint16_checksum(data, n);
@@ -316,7 +319,7 @@ static int ip6_na_build(uint8_t *buffer,
sizeof(struct nd_opt_hdr));
memcpy(ea, hwaddr, ETH_ALEN);
- nd_na->nd_na_cksum = ip6_checksum((uint16_t *)nd_na,
+ nd_na->nd_na_cksum = ip6_checksum((uint8_t *)nd_na,
ntohs(ip6->ip6_plen),
ip6);
@@ -556,7 +559,7 @@ static int tcp4_build(uint8_t *buf,
ip4pkt->tcp.th_off = sizeof(ip4pkt->tcp)/sizeof(uint32_t);
/* this makes it easier to spot in a sniffer */
ip4pkt->tcp.th_win = htons(1234);
- ip4pkt->tcp.th_sum = ip_checksum((uint16_t *)&ip4pkt->tcp,
+ ip4pkt->tcp.th_sum = ip_checksum((uint8_t *)&ip4pkt->tcp,
sizeof(ip4pkt->tcp),
&ip4pkt->ip);
@@ -609,7 +612,7 @@ static int tcp6_build(uint8_t *buf,
ip6pkt->tcp.th_off = sizeof(ip6pkt->tcp)/sizeof(uint32_t);
/* this makes it easier to spot in a sniffer */
ip6pkt->tcp.th_win = htons(1234);
- ip6pkt->tcp.th_sum = ip6_checksum((uint16_t *)&ip6pkt->tcp,
+ ip6pkt->tcp.th_sum = ip6_checksum((uint8_t *)&ip6pkt->tcp,
sizeof(ip6pkt->tcp),
&ip6pkt->ip6);
diff --git a/ctdb/server/ctdb_recoverd.c b/ctdb/server/ctdb_recoverd.c
index f825427e7a3..856fcbb72c8 100644
--- a/ctdb/server/ctdb_recoverd.c
+++ b/ctdb/server/ctdb_recoverd.c
@@ -2667,67 +2667,6 @@ static void main_loop(struct ctdb_context *ctdb, struct ctdb_recoverd *rec,
}
}
- /*
- * Update node flags obtained from each active node. This ensure we have
- * up-to-date information for all the nodes.
- */
- for (j=0; j<nodemap->num; j++) {
- if (nodemap->nodes[j].pnn == ctdb->pnn) {
- continue;
- }
- if (nodemap->nodes[j].flags & NODE_FLAGS_INACTIVE) {
- continue;
- }
- nodemap->nodes[j].flags = remote_nodemaps[j]->nodes[j].flags;
- }
-
- for (j=0; j<nodemap->num; j++) {
- if (nodemap->nodes[j].pnn == ctdb->pnn) {
- continue;
- }
- if (nodemap->nodes[j].flags & NODE_FLAGS_INACTIVE) {
- continue;
- }
-
- /* verify the flags are consistent
- */
- for (i=0; i<nodemap->num; i++) {
- if (nodemap->nodes[i].flags & NODE_FLAGS_DISCONNECTED) {
- continue;
- }
-
- if (nodemap->nodes[i].flags != remote_nodemaps[j]->nodes[i].flags) {
- DEBUG(DEBUG_ERR, (__location__ " Remote node:%u has different flags for node %u. It has 0x%02x vs our 0x%02x\n",
- nodemap->nodes[j].pnn,
- nodemap->nodes[i].pnn,
- remote_nodemaps[j]->nodes[i].flags,
- nodemap->nodes[i].flags));
- if (i == j) {
- DEBUG(DEBUG_ERR,("Use flags 0x%02x from remote node %d for cluster update of its own flags\n", remote_nodemaps[j]->nodes[i].flags, j));
- update_flags_on_all_nodes(
- rec,
- nodemap->nodes[i].pnn,
- remote_nodemaps[j]->nodes[i].flags);
- ctdb_set_culprit(rec, nodemap->nodes[j].pnn);
- do_recovery(rec, mem_ctx, pnn, nodemap,
- vnnmap);
- return;
- } else {
- DEBUG(DEBUG_ERR,("Use flags 0x%02x from local recmaster node for cluster update of node %d flags\n", nodemap->nodes[i].flags, i));
- update_flags_on_all_nodes(
- rec,
- nodemap->nodes[i].pnn,
- nodemap->nodes[i].flags);
- ctdb_set_culprit(rec, nodemap->nodes[j].pnn);
- do_recovery(rec, mem_ctx, pnn, nodemap,
- vnnmap);
- return;
- }
- }
- }
- }
-
-
/* count how many active nodes there are */
num_lmasters = 0;
for (i=0; i<nodemap->num; i++) {
diff --git a/ctdb/tests/INTEGRATION/failover/pubips.030.disable_enable.sh b/ctdb/tests/INTEGRATION/failover/pubips.030.disable_enable.sh
index c0bb62d1991..0b8425b2556 100755
--- a/ctdb/tests/INTEGRATION/failover/pubips.030.disable_enable.sh
+++ b/ctdb/tests/INTEGRATION/failover/pubips.030.disable_enable.sh
@@ -21,10 +21,10 @@ select_test_node_and_ips
echo "Disabling node $test_node"
try_command_on_node 1 $CTDB disable -n $test_node
-wait_until_node_has_status $test_node disabled
+wait_until_node_has_status $test_node disabled 30 all
wait_until_node_has_no_ips "$test_node"
echo "Re-enabling node $test_node"
try_command_on_node 1 $CTDB enable -n $test_node
-wait_until_node_has_status $test_node enabled
+wait_until_node_has_status $test_node enabled 30 all
wait_until_node_has_some_ips "$test_node"
diff --git a/docs-xml/manpages/nmbd.8.xml b/docs-xml/manpages/nmbd.8.xml
index c145e820770..4ece42f3ca6 100644
--- a/docs-xml/manpages/nmbd.8.xml
+++ b/docs-xml/manpages/nmbd.8.xml
@@ -244,7 +244,15 @@
directory (or the <filename>var/locks</filename> directory configured
under wherever Samba was configured to install itself). This will also
cause <command>nmbd</command> to dump out its server database in
- the <filename>log.nmb</filename> file.</para>
+ the <filename>log.nmb</filename> file. Additionally, the signal will
+ cause reloading <command>nmbd</command> configuration.</para>
+
+ <para>
+ Instead of sending a SIGHUP signal, a request to dump namelists
+ into the file and reload a configuration file may be sent using
+ <citerefentry><refentrytitle>smbcontrol</refentrytitle>
+ <manvolnum>1</manvolnum></citerefentry> program.
+ </para>
<para>The debug log level of nmbd may be raised or lowered
using <citerefentry><refentrytitle>smbcontrol</refentrytitle>
diff --git a/docs-xml/manpages/smb.conf.5.xml b/docs-xml/manpages/smb.conf.5.xml
index f72833c003f..c4387187ecc 100644
--- a/docs-xml/manpages/smb.conf.5.xml
+++ b/docs-xml/manpages/smb.conf.5.xml
@@ -27,6 +27,36 @@
</para>
</refsect1>
+<refsect1>
+ <title>HOW CONFIGURATION CHANGES ARE APPLIED</title>
+
+ <para>
+ The Samba suite includes a number of different programs. Some of them operate in a client mode, others are
+ server daemons that provide various services to its clients. The <filename moreinfo="none">smb.conf
+ </filename> file is processed in the following way:
+ </para>
+
+ <itemizedlist>
+ <listitem><para>
+ The Samba suite's client applications read their configuration only once. Any changes made after start aren't
+ reflected in the context of already running client code.
+ </para></listitem>
+
+ <listitem><para>
+ The Samba suite's server daemons reload their configuration when requested. However, already active connections
+ do not change their configuration. More detailed information can be found in
+ <citerefentry><refentrytitle>smbd</refentrytitle><manvolnum>8</manvolnum></citerefentry> and <citerefentry>
+ <refentrytitle>winbindd</refentrytitle><manvolnum>8</manvolnum></citerefentry> manual pages.
+ </para></listitem>
+ </itemizedlist>
+
+ <para>
+ To request Samba server daemons to refresh their configuration, please use
+ <citerefentry><refentrytitle>smbcontrol</refentrytitle><manvolnum>1</manvolnum></citerefentry> utility.
+ </para>
+
+</refsect1>
+
<refsect1 id="FILEFORMATSECT">
<title>FILE FORMAT</title>
diff --git a/docs-xml/manpages/smbd.8.xml b/docs-xml/manpages/smbd.8.xml
index deba2cad9e2..73d808c70b7 100644
--- a/docs-xml/manpages/smbd.8.xml
+++ b/docs-xml/manpages/smbd.8.xml
@@ -68,11 +68,18 @@
the copy of the server for that client terminates.</para>
<para>The configuration file, and any files that it includes,
- are automatically reloaded every minute, if they change. You
- can force a reload by sending a SIGHUP to the server. Reloading
+ are automatically reloaded every three minutes, if they change.
+ One can force a reload by sending a SIGHUP to the server. Reloading
the configuration file will not affect connections to any service
that is already established. Either the user will have to
- disconnect from the service, or <command>smbd</command> killed and restarted.</para>
+ disconnect from the service, or <command>smbd</command> killed and restarted.
+ </para>
+
+ <para>Instead of sending a SIGHUP signal, a request to reload configuration
+ file may be sent using <citerefentry><refentrytitle>smbcontrol</refentrytitle>
+ <manvolnum>1</manvolnum></citerefentry> program.
+ </para>
+
</refsect1>
<refsect1>
diff --git a/docs-xml/manpages/vfs_glusterfs.8.xml b/docs-xml/manpages/vfs_glusterfs.8.xml
index cf3b8e5e384..7a4da1af919 100644
--- a/docs-xml/manpages/vfs_glusterfs.8.xml
+++ b/docs-xml/manpages/vfs_glusterfs.8.xml
@@ -161,6 +161,28 @@
</refsect1>
+<refsect1>
+ <title>CAVEATS</title>
+
+ <para>
+ The GlusterFS write-behind performance translator, when used
+ with Samba, could be a source of data corruption. The
+ translator, while processing a write call, immediately returns
+ success but continues writing the data to the server in the
+ background. This can cause data corruption when two clients
+ relying on Samba to provide data consistency are operating on
+ the same file.
+ </para>
+ <para>
+ The write-behind translator is enabled by default on GlusterFS.
+ The vfs_glusterfs plugin will check for the presence of the
+ translator and refuse to connect if detected.
+ Please disable the write-behind translator for the GlusterFS
+ volume to allow the plugin to connect to the volume.
+ </para>
+</refsect1>
+
+
<refsect1>
<title>VERSION</title>
diff --git a/docs-xml/manpages/vfs_zfsacl.8.xml b/docs-xml/manpages/vfs_zfsacl.8.xml
index ae583409fe1..1ac954b9429 100644
--
Samba Shared Repository
More information about the samba-cvs
mailing list