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ý <[email protected]>
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ý <[email protected]>
    Reviewed-by: Ralph Boehme <[email protected]>
    Reviewed-by: Andreas Schneider <[email protected]>
    
    Autobuild-User(master): Ralph Böhme <[email protected]>
    Autobuild-Date(master): Tue Oct 12 09:30:02 UTC 2021 on sn-devel-184

commit b92589c31f0eb3eaf2b3b1867e10b759f6a2edda
Author: Pavel Filipenský <[email protected]>
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ý <[email protected]>
    Reviewed-by: Ralph Boehme <[email protected]>
    Reviewed-by: Andreas Schneider <[email protected]>

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

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-&lt;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

Reply via email to