[SCM] Samba Shared Repository - branch master updated

Ralph Böhme slow at samba.org
Tue Oct 12 09:31:01 UTC 2021


The branch, master has been updated
       via  12d04d9a928 docs-xml: Update winbindd(8) manpage
       via  b92589c31f0 s3:winbindd: Fix winbindd child logfile name handling
      from  4fe96583624 s3: smbd: Ensure when we change security context we delete any $cwd cache.

https://git.samba.org/?p=samba.git;a=shortlog;h=master


- Log -----------------------------------------------------------------
commit 12d04d9a9288a9358d5f5aebaec126cc610952b1
Author: Pavel Filipenský <pfilipen at redhat.com>
Date:   Fri Oct 8 13:16:05 2021 +0200

    docs-xml: Update winbindd(8) manpage
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=14852
    
    Signed-off-by: Pavel Filipenský <pfilipen at redhat.com>
    Reviewed-by: Ralph Boehme <slow at samba.org>
    Reviewed-by: Andreas Schneider <asn at samba.org>
    
    Autobuild-User(master): Ralph Böhme <slow at samba.org>
    Autobuild-Date(master): Tue Oct 12 09:30:02 UTC 2021 on sn-devel-184

commit b92589c31f0eb3eaf2b3b1867e10b759f6a2edda
Author: Pavel Filipenský <pfilipen at redhat.com>
Date:   Thu Oct 7 12:08:22 2021 +0200

    s3:winbindd: Fix winbindd child logfile name handling
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=14852
    
    Handling of logfile name for main and child winbindd must ensure:
    
    1) Log directory is selected in this order:
      * -l option of winbindd
      * "log file" parameter in smb.conf
      * compile time value '/usr/local/samba/var'
    
    2) Log filename pattern
      * parent process uses log.winbindd
      * child uses log.wb-<name>
    
    3) Log reopen works for both parent and child (i.e. log filename is not changed)
      * kill -HUP <pid>
      * smbcontrol <pid> reload-config
    
    This commit removes 3 calls of is_default_dyn_LOGFILEBASE() to make sure that:
      - 1st removal: child uses log.wb-<name> after the fork
      - 2nd removal: child after HUP signal, does not switch to log.winbindd
      - 3rd removal: child after smbcontrol reload-config, does not switch to
        log.winbindd
    
    Interesting commits: bfa1b2a8 1484b7f3 3b015a4c d1f7a371
    
    Signed-off-by: Pavel Filipenský <pfilipen at redhat.com>
    Reviewed-by: Ralph Boehme <slow at samba.org>
    Reviewed-by: Andreas Schneider <asn at samba.org>

-----------------------------------------------------------------------

Summary of changes:
 docs-xml/manpages/winbindd.8.xml | 20 +++++++++++++++++++-
 source3/winbindd/winbindd_dual.c | 11 ++++++-----
 2 files changed, 25 insertions(+), 6 deletions(-)


Changeset truncated at 500 lines:

diff --git a/docs-xml/manpages/winbindd.8.xml b/docs-xml/manpages/winbindd.8.xml
index 3b7487c1b1c..7a643b8879c 100644
--- a/docs-xml/manpages/winbindd.8.xml
+++ b/docs-xml/manpages/winbindd.8.xml
@@ -195,7 +195,25 @@ hosts:		files wins
 		</para></listitem>
 		</varlistentry>
 
-		&cmdline.common.samba.server;
+		&cmdline.common.debug.server;
+		&cmdline.common.config.server;
+		&cmdline.common.option;
+
+		<varlistentry>
+			<term>-l|--log-basename=logdirectory</term>
+			<listitem>
+				<para>
+					Base directory name for log/debug files. The parent process
+					uses filename log.winbindd, the child process uses filename
+					log.wb-<name>. The log file is never removed by winbindd.
+				</para>
+			</listitem>
+		</varlistentry>
+
+		&cmdline.common.samba.leakreport;
+		&cmdline.common.samba.leakreportfull;
+		&cmdline.version;
+
 		&popt.autohelp;
 
 	</variablelist>
diff --git a/source3/winbindd/winbindd_dual.c b/source3/winbindd/winbindd_dual.c
index e19dfafc52f..b275dfb128c 100644
--- a/source3/winbindd/winbindd_dual.c
+++ b/source3/winbindd/winbindd_dual.c
@@ -1544,15 +1544,16 @@ NTSTATUS winbindd_reinit_after_fork(const struct winbindd_child *myself,
 
 	close_conns_after_fork();
 
-	if (is_default_dyn_LOGFILEBASE() && logfilename) {
+	if (logfilename != NULL) {
 		lp_set_logfile(logfilename);
 		reopen_logs();
 	}
 
-	if (!winbindd_setup_sig_term_handler(false))
+	if (!winbindd_setup_sig_term_handler(false)) {
 		return NT_STATUS_NO_MEMORY;
-	if (!winbindd_setup_sig_hup_handler(
-		    !is_default_dyn_LOGFILEBASE() ? NULL : logfilename)) {
+	}
+
+	if (!winbindd_setup_sig_hup_handler(logfilename)) {
 		return NT_STATUS_NO_MEMORY;
 	}
 
@@ -1777,7 +1778,7 @@ static bool fork_domain_child(struct winbindd_child *child)
 			   winbind_msg_disconnect_dc);
 	messaging_register(
 		global_messaging_context(),
-		!is_default_dyn_LOGFILEBASE() ? NULL : child->logfilename,
+		child->logfilename,
 		MSG_SMB_CONF_UPDATED,
 		winbindd_msg_reload_services_child);
 


-- 
Samba Shared Repository



More information about the samba-cvs mailing list