s3: clients: Use netlogon_creds_cli_close_global_db() in all normal exit paths.
authorJeremy Allison <jra@samba.org>
Mon, 24 Jul 2017 23:12:45 +0000 (16:12 -0700)
committerKarolin Seeger <kseeger@samba.org>
Thu, 17 Aug 2017 08:38:22 +0000 (10:38 +0200)
BUG: https://bugzilla.samba.org/show_bug.cgi?id=12932

Signed-off-by: Jeremy Allison <jra@samba.org>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
(cherry picked from commit dbd32932463935cd47c55a9e1afdaccd7f6daf4d)

source3/include/includes.h
source3/lib/netapi/netapi.c
source3/rpcclient/rpcclient.c
source3/smbd/server_exit.c
source3/winbindd/winbindd.c

index e82bfad4147bea6fe456e55b132b25b243c010a5..58bfaa719a1b0920b862e67ef4c334b9b4533714 100644 (file)
@@ -317,6 +317,7 @@ typedef char fstring[FSTRING_LEN];
 
 #include "../libcli/util/ntstatus.h"
 #include "../libcli/util/error.h"
+#include "../libcli/auth/netlogon_creds_cli.h"
 #include "../lib/util/charset/charset.h"
 #include "dynconfig/dynconfig.h"
 #include "locking.h"
index 3ed7295282116481c166c0232ade8b5dd63e25d3..093348baefa6ad19835006e923fea0d8d199d327 100644 (file)
@@ -184,6 +184,8 @@ NET_API_STATUS libnetapi_free(struct libnetapi_ctx *ctx)
 
        secrets_shutdown();
 
+       netlogon_creds_cli_close_global_db();
+
        if (ctx == stat_ctx) {
                stat_ctx = NULL;
        }
index 0f3dcc6cb1a3098cf9493fe0025403e33625a1f8..3203df24c07196cf88978b3cfaca3a9dc995a23d 100644 (file)
@@ -1254,6 +1254,7 @@ done:
                cli_shutdown(cli);
        }
        popt_free_cmdline_auth_info();
+       netlogon_creds_cli_close_global_db();
        TALLOC_FREE(rpcclient_msg_ctx);
        TALLOC_FREE(ev_ctx);
        TALLOC_FREE(frame);
index bf50394f4bfc067feb2de2544b327b6b04f802cb..74ddd70bd3a1b3701bac887fff08ec2f03ed69a5 100644 (file)
@@ -46,6 +46,7 @@
 #include "messages.h"
 #include "../lib/util/pidfile.h"
 #include "smbprofile.h"
+#include "libcli/auth/netlogon_creds_cli.h"
 
 static struct files_struct *log_writeable_file_fn(
        struct files_struct *fsp, void *private_data)
@@ -226,6 +227,7 @@ static void exit_server_common(enum server_exit_reason how,
        sconn = NULL;
        xconn = NULL;
        client = NULL;
+       netlogon_creds_cli_close_global_db();
        TALLOC_FREE(global_smbXsrv_client);
        smbprofile_dump();
        server_messaging_context_free();
index 58e4d89e4af59050b9702759335552e7aaef8775..f24451649b6112f2788a10a328b124cc13761f5a 100644 (file)
@@ -44,6 +44,7 @@
 #include "lib/param/param.h"
 #include "lib/async_req/async_sock.h"
 #include "libsmb/samlogon_cache.h"
+#include "libcli/auth/netlogon_creds_cli.h"
 
 #undef DBGC_CLASS
 #define DBGC_CLASS DBGC_WINBIND
@@ -245,6 +246,8 @@ static void terminate(bool is_parent)
 
        gencache_stabilize();
 
+       netlogon_creds_cli_close_global_db();
+
 #if 0
        if (interactive) {
                TALLOC_CTX *mem_ctx = talloc_init("end_description");