[Samba] Samba 3.0.0 RC1: Unable to find a suitable server

Gerald (Jerry) Carter jerry at samba.org
Fri Sep 5 16:10:56 GMT 2003


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On Fri, 5 Sep 2003, Axel Suppantschitsch wrote:

> Just updated and recompiled my cvs version. "net ads join" is working
> now, the samba server is added to "Active Directory Users and Computers"
> without any error. Anyway, I didn't get any Kerberos credentials during
> the join, so klist shows nothing afterwards. "smbclient -k" won't work,
> throwing "session setup failed: NT_STATUS_OK".

The kerberos signing requires the MIT krb5 1.3.1 libs from what I 
understand.  It doesn't work with Heimdal yet i don't think.

>   Added domain MYGROUP
>   ads_connect for domain MYGROUP failed: No such file or directory
>   scanning trusted domain list

Patch attached. 





cheers, jerry
 ----------------------------------------------------------------------
 Hewlett-Packard            ------------------------- http://www.hp.com
 SAMBA Team                 ---------------------- http://www.samba.org
 GnuPG Key                  ---- http://www.plainjoe.org/gpg_public.asc
 "You can never go home again, Oatman, but I guess you can shop there."  
                            --John Cusack - "Grosse Point Blank" (1997)

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.1 (GNU/Linux)
Comment: For info see http://quantumlab.net/pine_privacy_guard/

iD8DBQE/WLWQIR7qMdg1EfYRAiuWAJ493kq3FDVPOkYk63W9I3TWtSHTUQCdFdik
NdP5DeLvL8KPZB/cv8oIIgc=
=LIwi
-----END PGP SIGNATURE-----
-------------- next part --------------
Index: nsswitch/winbindd_util.c
===================================================================
RCS file: /data/cvs/samba/source/nsswitch/winbindd_util.c,v
retrieving revision 1.73.2.33
diff -u -r1.73.2.33 winbindd_util.c
--- nsswitch/winbindd_util.c	27 Aug 2003 22:05:52 -0000	1.73.2.33
+++ nsswitch/winbindd_util.c	5 Sep 2003 16:10:27 -0000
@@ -81,6 +81,13 @@
 {
 	struct winbindd_domain *domain;
 	char *contact_name;
+	char *alternative_name = NULL;
+	
+	/* ignore alt_name if we are not in an AD domain */
+	
+	if ( (lp_security() == SEC_ADS) && alt_name && *alt_name) {
+		alternative_name = alt_name;
+	}
         
 	/* We can't call domain_list() as this function is called from
 	   init_domain_list() and we'll get stuck in a loop. */
@@ -89,9 +96,9 @@
 		    strcasecmp(domain_name, domain->alt_name) == 0) {
 			return domain;
 		}
-		if (alt_name && *alt_name) {
-			if (strcasecmp(alt_name, domain->name) == 0 ||
-			    strcasecmp(alt_name, domain->alt_name) == 0) {
+		if (alternative_name && *alternative_name) {
+			if (strcasecmp(alternative_name, domain->name) == 0 ||
+			    strcasecmp(alternative_name, domain->alt_name) == 0) {
 				return domain;
 			}
 		}
@@ -108,13 +115,13 @@
 	ZERO_STRUCTP(domain);
 
 	/* prioritise the short name */
-	if (strchr_m(domain_name, '.') && alt_name && *alt_name) {
-		fstrcpy(domain->name, alt_name);
+	if (strchr_m(domain_name, '.') && alternative_name && *alternative_name) {
+		fstrcpy(domain->name, alternative_name);
 		fstrcpy(domain->alt_name, domain_name);
 	} else {
 		fstrcpy(domain->name, domain_name);
-		if (alt_name) {
-			fstrcpy(domain->alt_name, alt_name);
+		if (alternative_name) {
+			fstrcpy(domain->alt_name, alternative_name);
 		}
 	}
 
@@ -261,7 +268,7 @@
 
 	/* Add ourselves as the first entry */
 	
-	domain = add_trusted_domain( lp_workgroup(), NULL, &cache_methods, NULL);
+	domain = add_trusted_domain( lp_workgroup(), lp_realm(), &cache_methods, NULL);
 	
 	if (!secrets_fetch_domain_sid(domain->name, &domain->sid)) {
 		DEBUG(1, ("Could not fetch sid for our domain %s\n",


More information about the samba mailing list