[SCM] Samba Shared Repository - branch master updated

[email protected] (Andreas Schneider)
Newsgroups gmane.network.samba.cvs
Message-ID <[email protected]>
The branch, master has been updated
       via  134ab45 lib: Remove a used-once variable
       via  44cf177 lib: Fix a comment
       via  519211f lib: Avoid includes.h in samlogon_cache.c
       via  7aef87b lib: Replace use of deprecated talloc_destroy
       via  17c42bc lib: Avoid fstring in samlogon_cache.c
       via  a55bd7e lib: Add samlogon_cache.h
       via  df63288 lib: Fix netsamlogon_cache_have for README.Coding
       via  7143246 lib: Delete unused netsamlogon_cache_shutdown
       via  e9bc05d lib: Delete an orphaned piece of code in samlogon_cache.c
       via  42f65b6 lib: Avoid includes.h in bitmap.c
       via  0ab3159 selftest: Do not include system krb5.conf in selftest
       via  4ef772b s3:libads: Include system /etc/krb5.conf if we use MIT Kerberos
       via  f464f69 s3:param: Add an 'include system krb5 conf' option
      from  7275e0c ctdb-tests: Use a separate directory for each local daemon

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


- Log -----------------------------------------------------------------
commit 134ab456be01539b74499c520dbb1b9298643c4a
Author: Volker Lendecke <[email protected]>
Date:   Tue Nov 29 16:11:59 2016 +0000

    lib: Remove a used-once variable
    
    Signed-off-by: Volker Lendecke <[email protected]>
    Reviewed-by: Andreas Schneider <[email protected]>
    
    Autobuild-User(master): Andreas Schneider <[email protected]>
    Autobuild-Date(master): Fri Dec  2 13:31:59 CET 2016 on sn-devel-144

commit 44cf17719ca29ec3df61e3b99a925f78f3d3fed3
Author: Volker Lendecke <[email protected]>
Date:   Tue Nov 29 16:01:58 2016 +0000

    lib: Fix a comment
    
    Signed-off-by: Volker Lendecke <[email protected]>
    Reviewed-by: Andreas Schneider <[email protected]>

commit 519211fe9340341ff0c6e1999a73ba4a1ee4b00e
Author: Volker Lendecke <[email protected]>
Date:   Tue Nov 29 15:59:21 2016 +0000

    lib: Avoid includes.h in samlogon_cache.c
    
    Signed-off-by: Volker Lendecke <[email protected]>
    Reviewed-by: Andreas Schneider <[email protected]>

commit 7aef87b59844137c732965d32c94245fe688092f
Author: Volker Lendecke <[email protected]>
Date:   Tue Nov 29 15:56:19 2016 +0000

    lib: Replace use of deprecated talloc_destroy
    
    Signed-off-by: Volker Lendecke <[email protected]>
    Reviewed-by: Andreas Schneider <[email protected]>

commit 17c42bc8b749b8b8cb3276a938c1cad03c7a8ca8
Author: Volker Lendecke <[email protected]>
Date:   Tue Nov 29 15:52:29 2016 +0000

    lib: Avoid fstring in samlogon_cache.c
    
    Signed-off-by: Volker Lendecke <[email protected]>
    Reviewed-by: Andreas Schneider <[email protected]>

commit a55bd7e42481adb6ce8ff557704c3fbe700f30c3
Author: Volker Lendecke <[email protected]>
Date:   Tue Nov 29 15:41:27 2016 +0000

    lib: Add samlogon_cache.h
    
    Move prototypes into its own header file
    
    Signed-off-by: Volker Lendecke <[email protected]>
    Reviewed-by: Andreas Schneider <[email protected]>

commit df63288d3a6c36b7713b977c7217f18d60afea01
Author: Volker Lendecke <[email protected]>
Date:   Tue Nov 29 15:20:14 2016 +0000

    lib: Fix netsamlogon_cache_have for README.Coding
    
    "False" should have gone long ago
    
    Signed-off-by: Volker Lendecke <[email protected]>
    Reviewed-by: Andreas Schneider <[email protected]>

commit 7143246eccf3f1251fa0f470e481216ad8476ce1
Author: Volker Lendecke <[email protected]>
Date:   Tue Nov 29 14:58:51 2016 +0000

    lib: Delete unused netsamlogon_cache_shutdown
    
    Signed-off-by: Volker Lendecke <[email protected]>
    Reviewed-by: Andreas Schneider <[email protected]>

commit e9bc05d09b55a48f6bf7f21eb06a2bd20d454087
Author: Volker Lendecke <[email protected]>
Date:   Tue Nov 29 14:55:47 2016 +0000

    lib: Delete an orphaned piece of code in samlogon_cache.c
    
    Signed-off-by: Volker Lendecke <[email protected]>
    Reviewed-by: Andreas Schneider <[email protected]>

commit 42f65b6d068a007d555b8a73f215118c65f7c669
Author: Volker Lendecke <[email protected]>
Date:   Sat Nov 26 15:55:38 2016 +0100

    lib: Avoid includes.h in bitmap.c
    
    Signed-off-by: Volker Lendecke <[email protected]>
    Reviewed-by: Andreas Schneider <[email protected]>

commit 0ab31594d8663a5a88b6b5ff74a06e683940ea49
Author: Andreas Schneider <[email protected]>
Date:   Thu Dec 1 08:18:58 2016 +0100

    selftest: Do not include system krb5.conf in selftest
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=12441
    
    Signed-off-by: Andreas Schneider <[email protected]>
    Reviewed-by: Alexander Bokovoy <[email protected]>

commit 4ef772be3a7259b48253643392574fab28c37916
Author: Andreas Schneider <[email protected]>
Date:   Wed Nov 23 14:40:42 2016 +0100

    s3:libads: Include system /etc/krb5.conf if we use MIT Kerberos
    
    The system /etc/krb5.conf defines some defaults like:
    
        default_ccache_name = KEYRING:persistent:%{uid}
    
    We need to respect that so should include it in our own created
    krb5.conf file.
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=12441
    
    Signed-off-by: Andreas Schneider <[email protected]>
    Reviewed-by: Alexander Bokovoy <[email protected]>

commit f464f69b33b40c81d6ee57bebf9d59837431739b
Author: Andreas Schneider <[email protected]>
Date:   Wed Nov 23 14:39:47 2016 +0100

    s3:param: Add an 'include system krb5 conf' option
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=12441
    
    Signed-off-by: Andreas Schneider <[email protected]>
    Reviewed-by: Alexander Bokovoy <[email protected]>

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

Summary of changes:
 .../smbdotconf/winbind/includesystemkrb5conf.xml   | 15 +++++
 lib/util/bitmap.c                                  |  5 +-
 python/samba/tests/docs.py                         |  3 +-
 selftest/selftest.pl                               |  1 +
 selftest/target/Samba3.pm                          |  1 +
 source3/auth/auth_domain.c                         |  1 +
 source3/include/proto.h                            |  9 ---
 source3/libads/kerberos.c                          | 25 +++++++--
 source3/libsmb/samlogon_cache.c                    | 64 ++++++----------------
 .../server_id_watch.h => libsmb/samlogon_cache.h}  | 29 ++++++----
 source3/param/loadparm.c                           |  1 +
 source3/winbindd/winbindd.c                        |  1 +
 source3/winbindd/winbindd_ads.c                    |  1 +
 source3/winbindd/winbindd_cache.c                  |  1 +
 source3/winbindd/winbindd_creds.c                  |  1 +
 source3/winbindd/winbindd_msrpc.c                  |  1 +
 source3/winbindd/winbindd_pam.c                    |  1 +
 source3/winbindd/winbindd_util.c                   |  1 +
 18 files changed, 86 insertions(+), 75 deletions(-)
 create mode 100644 docs-xml/smbdotconf/winbind/includesystemkrb5conf.xml
 copy source3/{lib/server_id_watch.h => libsmb/samlogon_cache.h} (50%)


Changeset truncated at 500 lines:

diff --git a/docs-xml/smbdotconf/winbind/includesystemkrb5conf.xml b/docs-xml/smbdotconf/winbind/includesystemkrb5conf.xml
new file mode 100644
index 0000000..3e53292
--- /dev/null
+++ b/docs-xml/smbdotconf/winbind/includesystemkrb5conf.xml
@@ -0,0 +1,15 @@
+<samba:parameter name="include system krb5 conf"
+                 context="G"
+                 type="boolean"
+                 xmlns:samba="http://www.samba.org/samba/DTD/samba-doc">
+<description>
+	<para>
+		Setting this parameter to <value type="example">no</value> will prevent
+		winbind to include the system /etc/krb5.conf file into the krb5.conf file
+		it creates. See also <smbconfoption name="create krb5 conf"/>. This option
+		only applies to Samba built with MIT Kerberos.
+	</para>
+
+</description>
+<value type="default">yes</value>
+</samba:parameter>
diff --git a/lib/util/bitmap.c b/lib/util/bitmap.c
index 77de55a..6396335 100644
--- a/lib/util/bitmap.c
+++ b/lib/util/bitmap.c
@@ -17,8 +17,11 @@
    along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */
 
-#include "includes.h"
+#include "replace.h"
+#include <talloc.h>
 #include "lib/util/bitmap.h"
+#include "lib/util/debug.h"
+#include "lib/util/fault.h"
 
 struct bitmap {
 	unsigned int n;
diff --git a/python/samba/tests/docs.py b/python/samba/tests/docs.py
index 238b5c7..22e0225 100644
--- a/python/samba/tests/docs.py
+++ b/python/samba/tests/docs.py
@@ -107,7 +107,8 @@ class SmbDotConfTests(TestCase):
                          'queuepause command','lpresume command', 'lppause command',
                          'lprm command', 'lpq command', 'print command', 'template homedir',
                          'spoolss: os_major', 'spoolss: os_minor', 'spoolss: os_build',
-                         'max open files', 'fss: prune stale', 'fss: sequence timeout'])
+                         'max open files', 'fss: prune stale', 'fss: sequence timeout',
+                         'include system krb5 conf'])
 
     def setUp(self):
         super(SmbDotConfTests, self).setUp()
diff --git a/selftest/selftest.pl b/selftest/selftest.pl
index 015a684..7d71013 100755
--- a/selftest/selftest.pl
+++ b/selftest/selftest.pl
@@ -595,6 +595,7 @@ sub write_clientconf($$$)
 	tls cafile = ${cacert}
 	tls crlfile = ${cacrl_pem}
 	tls verify peer = no_check
+	include system krb5 conf = no
 ";
 	close(CF);
 }
diff --git a/selftest/target/Samba3.pm b/selftest/target/Samba3.pm
index 3746d53..f94494b 100755
--- a/selftest/target/Samba3.pm
+++ b/selftest/target/Samba3.pm
@@ -1467,6 +1467,7 @@ sub provision($$$$$$$$)
 	winbind enum users = yes
 	winbind enum groups = yes
 	winbind separator = /
+	include system krb5 conf = no
 
 #	min receivefile size = 4000
 
diff --git a/source3/auth/auth_domain.c b/source3/auth/auth_domain.c
index 1a8cd91..d663923 100644
--- a/source3/auth/auth_domain.c
+++ b/source3/auth/auth_domain.c
@@ -28,6 +28,7 @@
 #include "passdb.h"
 #include "libsmb/libsmb.h"
 #include "libcli/auth/netlogon_creds_cli.h"
+#include "libsmb/samlogon_cache.h"
 
 #undef DBGC_CLASS
 #define DBGC_CLASS DBGC_AUTH
diff --git a/source3/include/proto.h b/source3/include/proto.h
index 33e3f6c..53a2d6a 100644
--- a/source3/include/proto.h
+++ b/source3/include/proto.h
@@ -839,15 +839,6 @@ NTSTATUS remote_password_change(const char *remote_machine, const char *user_nam
 				const char *old_passwd, const char *new_passwd,
 				char **err_str);
 
-/* The following definitions come from libsmb/samlogon_cache.c  */
-
-bool netsamlogon_cache_init(void);
-bool netsamlogon_cache_shutdown(void);
-void netsamlogon_clear_cached_user(const struct dom_sid *user_sid);
-bool netsamlogon_cache_store(const char *username, struct netr_SamInfo3 *info3);
-struct netr_SamInfo3 *netsamlogon_cache_get(TALLOC_CTX *mem_ctx, const struct dom_sid *user_sid);
-bool netsamlogon_cache_have(const struct dom_sid *user_sid);
-
 /* The following definitions come from libsmb/smberr.c  */
 
 const char *smb_dos_err_name(uint8_t e_class, uint16_t num);
diff --git a/source3/libads/kerberos.c b/source3/libads/kerberos.c
index d8765dc..dcb268e 100644
--- a/source3/libads/kerberos.c
+++ b/source3/libads/kerberos.c
@@ -979,6 +979,7 @@ bool create_local_private_krb5_conf_for_domain(const char *realm,
 	char *realm_upper = NULL;
 	bool result = false;
 	char *enctypes = NULL;
+	const char *include_system_krb5 = "";
 	mode_t mask;
 
 	if (!lp_create_krb5_conf()) {
@@ -1034,13 +1035,25 @@ bool create_local_private_krb5_conf_for_domain(const char *realm,
 		goto done;
 	}
 
+#if !defined(SAMBA4_USES_HEIMDAL)
+	if (lp_include_system_krb5_conf()) {
+		include_system_krb5 = "include /etc/krb5.conf";
+	}
+#endif
+
 	file_contents =
-	    talloc_asprintf(fname, "[libdefaults]\n\tdefault_realm = %s\n"
-				   "%s"
-				   "\tdns_lookup_realm = false\n\n"
-				   "[realms]\n\t%s = {\n"
-				   "%s\t}\n",
-			    realm_upper, enctypes, realm_upper, kdc_ip_string);
+	    talloc_asprintf(fname,
+			    "[libdefaults]\n\tdefault_realm = %s\n"
+			    "%s"
+			    "\tdns_lookup_realm = false\n\n"
+			    "[realms]\n\t%s = {\n"
+			    "%s\t}\n"
+			    "%s\n",
+			    realm_upper,
+			    enctypes,
+			    realm_upper,
+			    kdc_ip_string,
+			    include_system_krb5);
 
 	if (!file_contents) {
 		goto done;
diff --git a/source3/libsmb/samlogon_cache.c b/source3/libsmb/samlogon_cache.c
index 7be5479..8131b2b 100644
--- a/source3/libsmb/samlogon_cache.c
+++ b/source3/libsmb/samlogon_cache.c
@@ -21,8 +21,13 @@
    along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */
 
-#include "includes.h"
+#include "replace.h"
+#include "samlogon_cache.h"
 #include "system/filesys.h"
+#include "system/time.h"
+#include "lib/util/debug.h"
+#include "lib/util/talloc_stack.h"
+#include "source3/lib/util_path.h"
 #include "librpc/gen_ndr/ndr_krb5pac.h"
 #include "../libcli/security/security.h"
 #include "util_tdb.h"
@@ -87,27 +92,13 @@ clear:
 	goto again;
 }
 
-
-/***********************************************************************
- Shutdown samlogon_cache database
-***********************************************************************/
-
-bool netsamlogon_cache_shutdown(void)
-{
-	if (netsamlogon_tdb) {
-		return (tdb_close(netsamlogon_tdb) == 0);
-	}
-
-	return true;
-}
-
 /***********************************************************************
  Clear cache getpwnam and getgroups entries from the winbindd cache
 ***********************************************************************/
 
 void netsamlogon_clear_cached_user(const struct dom_sid *user_sid)
 {
-	fstring keystr;
+	char keystr[DOM_SID_STR_BUFLEN];
 
 	if (!netsamlogon_cache_init()) {
 		DEBUG(0,("netsamlogon_clear_cached_user: cannot open "
@@ -117,7 +108,7 @@ void netsamlogon_clear_cached_user(const struct dom_sid *user_sid)
 	}
 
 	/* Prepare key as DOMAIN-SID/USER-RID string */
-	sid_to_fstring(keystr, user_sid);
+	dom_sid_string_buf(user_sid, keystr, sizeof(keystr));
 
 	DEBUG(10,("netsamlogon_clear_cached_user: SID [%s]\n", keystr));
 
@@ -132,10 +123,9 @@ void netsamlogon_clear_cached_user(const struct dom_sid *user_sid)
 bool netsamlogon_cache_store(const char *username, struct netr_SamInfo3 *info3)
 {
 	TDB_DATA data;
-	fstring keystr;
+	char keystr[DOM_SID_STR_BUFLEN];
 	bool result = false;
 	struct dom_sid	user_sid;
-	time_t t = time(NULL);
 	TALLOC_CTX *tmp_ctx = talloc_stackframe();
 	DATA_BLOB blob;
 	enum ndr_err_code ndr_err;
@@ -154,7 +144,7 @@ bool netsamlogon_cache_store(const char *username, struct netr_SamInfo3 *info3)
 	sid_compose(&user_sid, info3->base.domain_sid, info3->base.rid);
 
 	/* Prepare key as DOMAIN-SID/USER-RID string */
-	sid_to_fstring(keystr, &user_sid);
+	dom_sid_string_buf(&user_sid, keystr, sizeof(keystr));
 
 	DEBUG(10,("netsamlogon_cache_store: SID [%s]\n", keystr));
 
@@ -181,7 +171,7 @@ bool netsamlogon_cache_store(const char *username, struct netr_SamInfo3 *info3)
 		info3->base.account_name.string = talloc_strdup(info3, username);
 	}
 
-	r.timestamp = t;
+	r.timestamp = time(NULL);
 	r.info3 = *info3;
 
 	if (DEBUGLEVEL >= 10) {
@@ -210,14 +200,14 @@ bool netsamlogon_cache_store(const char *username, struct netr_SamInfo3 *info3)
 
 /***********************************************************************
  Retrieves a netr_SamInfo3 structure from a tdb.  Caller must
- free the user_info struct (malloc()'d memory)
+ free the user_info struct (talloced memory)
 ***********************************************************************/
 
 struct netr_SamInfo3 *netsamlogon_cache_get(TALLOC_CTX *mem_ctx, const struct dom_sid *user_sid)
 {
 	struct netr_SamInfo3 *info3 = NULL;
 	TDB_DATA data;
-	fstring keystr;
+	char keystr[DOM_SID_STR_BUFLEN];
 	enum ndr_err_code ndr_err;
 	DATA_BLOB blob;
 	struct netsamlogoncache_entry r;
@@ -229,7 +219,7 @@ struct netr_SamInfo3 *netsamlogon_cache_get(TALLOC_CTX *mem_ctx, const struct do
 	}
 
 	/* Prepare key as DOMAIN-SID/USER-RID string */
-	sid_to_fstring(keystr, user_sid);
+	dom_sid_string_buf(user_sid, keystr, sizeof(keystr));
 	DEBUG(10,("netsamlogon_cache_get: SID [%s]\n", keystr));
 	data = tdb_fetch_bystring( netsamlogon_tdb, keystr );
 
@@ -265,25 +255,6 @@ struct netr_SamInfo3 *netsamlogon_cache_get(TALLOC_CTX *mem_ctx, const struct do
 	SAFE_FREE(data.dptr);
 
 	return info3;
-
-#if 0	/* The netsamlogon cache needs to hang around.  Something about
-	   this feels wrong, but it is the only way we can get all of the
-	   groups.  The old universal groups cache didn't expire either.
-	   --jerry */
-	{
-		time_t		now = time(NULL);
-		uint32_t	time_diff;
-
-		/* is the entry expired? */
-		time_diff = now - t;
-
-		if ( (time_diff < 0 ) || (time_diff > lp_winbind_cache_time()) ) {
-			DEBUG(10,("netsamlogon_cache_get: cache entry expired \n"));
-			tdb_delete( netsamlogon_tdb, key );
-			TALLOC_FREE( user );
-		}
-	}
-#endif
 }
 
 bool netsamlogon_cache_have(const struct dom_sid *user_sid)
@@ -292,14 +263,15 @@ bool netsamlogon_cache_have(const struct dom_sid *user_sid)
 	struct netr_SamInfo3 *info3 = NULL;
 	bool result;
 
-	if (!mem_ctx)
-		return False;
+	if (mem_ctx == NULL) {
+		return false;
+	}
 
 	info3 = netsamlogon_cache_get(mem_ctx, user_sid);
 
 	result = (info3 != NULL);
 
-	talloc_destroy(mem_ctx);
+	TALLOC_FREE(mem_ctx);
 
 	return result;
 }
diff --git a/source3/lib/server_id_watch.h b/source3/libsmb/samlogon_cache.h
similarity index 50%
copy from source3/lib/server_id_watch.h
copy to source3/libsmb/samlogon_cache.h
index 917dfeb..0a2fd14 100644
--- a/source3/lib/server_id_watch.h
+++ b/source3/libsmb/samlogon_cache.h
@@ -1,7 +1,11 @@
 /*
  * Unix SMB/CIFS implementation.
- * Wait for process death
- * Copyright (C) Volker Lendecke 2016
+ * Net_sam_logon info3 helpers
+ * Copyright (C) Alexander Bokovoy              2002.
+ * Copyright (C) Andrew Bartlett                2002.
+ * Copyright (C) Gerald Carter			2003.
+ * Copyright (C) Tim Potter			2003.
+ * Copyright (C) Guenther Deschner		2008.
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -17,20 +21,21 @@
  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
  */
 
-#ifndef __LIB_SERVER_ID_WATCH_H__
-#define __LIB_SERVER_ID_WATCH_H__
+#ifndef __LIBSMB_SAMLOGON_CACHE_H__
+#define __LIBSMB_SAMLOGON_CACHE_H__
 
 #include "replace.h"
-#include <tevent.h>
 #include <talloc.h>
-#include "librpc/gen_ndr/server_id.h"
 
-struct messaging_context;
+struct dom_sid;
+struct netr_SamInfo3;
 
-struct tevent_req *server_id_watch_send(TALLOC_CTX *mem_ctx,
-					struct tevent_context *ev,
-					struct messaging_context *msg,
-					struct server_id pid);
-int server_id_watch_recv(struct tevent_req *req, struct server_id *pid);
+bool netsamlogon_cache_init(void);
+void netsamlogon_clear_cached_user(const struct dom_sid *user_sid);
+bool netsamlogon_cache_store(const char *username,
+			     struct netr_SamInfo3 *info3);
+struct netr_SamInfo3 *netsamlogon_cache_get(TALLOC_CTX *mem_ctx,
+					    const struct dom_sid *user_sid);
+bool netsamlogon_cache_have(const struct dom_sid *user_sid);
 
 #endif
diff --git a/source3/param/loadparm.c b/source3/param/loadparm.c
index dc551eb..d8da749 100644
--- a/source3/param/loadparm.c
+++ b/source3/param/loadparm.c
@@ -711,6 +711,7 @@ static void init_globals(struct loadparm_context *lp_ctx, bool reinit_globals)
 	Globals.reset_on_zero_vc = false;
 	Globals.log_writeable_files_on_exit = false;
 	Globals.create_krb5_conf = true;
+	Globals.include_system_krb5_conf = true;
 	Globals._winbind_max_domain_connections = 1;
 
 	/* hostname lookups can be very expensive and are broken on
diff --git a/source3/winbindd/winbindd.c b/source3/winbindd/winbindd.c
index f79dc47..778ee80 100644
--- a/source3/winbindd/winbindd.c
+++ b/source3/winbindd/winbindd.c
@@ -43,6 +43,7 @@
 #include "source4/lib/messaging/messaging.h"
 #include "lib/param/param.h"
 #include "lib/async_req/async_sock.h"
+#include "libsmb/samlogon_cache.h"
 
 #undef DBGC_CLASS
 #define DBGC_CLASS DBGC_WINBIND
diff --git a/source3/winbindd/winbindd_ads.c b/source3/winbindd/winbindd_ads.c
index dc92a4a..fdb6806 100644
--- a/source3/winbindd/winbindd_ads.c
+++ b/source3/winbindd/winbindd_ads.c
@@ -30,6 +30,7 @@
 #include "../libcli/ldap/ldap_ndr.h"
 #include "../libcli/security/security.h"
 #include "../libds/common/flag_mapping.h"
+#include "libsmb/samlogon_cache.h"
 #include "passdb.h"
 
 #ifdef HAVE_ADS
diff --git a/source3/winbindd/winbindd_cache.c b/source3/winbindd/winbindd_cache.c
index 4a9782a..05b356f 100644
--- a/source3/winbindd/winbindd_cache.c
+++ b/source3/winbindd/winbindd_cache.c
@@ -34,6 +34,7 @@
 #include "../libcli/security/security.h"
 #include "passdb/machine_sid.h"
 #include "util_tdb.h"
+#include "libsmb/samlogon_cache.h"
 
 #undef DBGC_CLASS
 #define DBGC_CLASS DBGC_WINBIND
diff --git a/source3/winbindd/winbindd_creds.c b/source3/winbindd/winbindd_creds.c
index 3717641..15cca55 100644
--- a/source3/winbindd/winbindd_creds.c
+++ b/source3/winbindd/winbindd_creds.c
@@ -23,6 +23,7 @@
 #include "winbindd.h"
 #include "../libcli/auth/libcli_auth.h"
 #include "../libcli/security/security.h"
+#include "libsmb/samlogon_cache.h"
 #undef DBGC_CLASS
 #define DBGC_CLASS DBGC_WINBIND
 
diff --git a/source3/winbindd/winbindd_msrpc.c b/source3/winbindd/winbindd_msrpc.c
index 4121747..dff27b4 100644
--- a/source3/winbindd/winbindd_msrpc.c
+++ b/source3/winbindd/winbindd_msrpc.c
@@ -31,6 +31,7 @@
 #include "rpc_client/cli_samr.h"
 #include "rpc_client/cli_lsarpc.h"
 #include "../libcli/security/security.h"
+#include "libsmb/samlogon_cache.h"
 
 #undef DBGC_CLASS
 #define DBGC_CLASS DBGC_WINBIND
diff --git a/source3/winbindd/winbindd_pam.c b/source3/winbindd/winbindd_pam.c
index 9433ad1..741a42f 100644
--- a/source3/winbindd/winbindd_pam.c
+++ b/source3/winbindd/winbindd_pam.c
@@ -42,6 +42,7 @@
 #include "auth/gensec/gensec.h"
 #include "librpc/crypto/gse_krb5.h"
 #include "lib/afs/afs_funcs.h"
+#include "libsmb/samlogon_cache.h"
 
 #undef DBGC_CLASS
 #define DBGC_CLASS DBGC_WINBIND
diff --git a/source3/winbindd/winbindd_util.c b/source3/winbindd/winbindd_util.c
index 217c049..aabaa6a 100644
--- a/source3/winbindd/winbindd_util.c
+++ b/source3/winbindd/winbindd_util.c
@@ -30,6 +30,7 @@
 #include "source4/lib/messaging/messaging.h"
 #include "librpc/gen_ndr/ndr_lsa.h"
 #include "auth/credentials/credentials.h"
+#include "libsmb/samlogon_cache.h"
 
 #undef DBGC_CLASS
 #define DBGC_CLASS DBGC_WINBIND


-- 
Samba Shared Repository
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.