From: Volker Lendecke Date: Sat, 19 Feb 2011 16:44:48 +0000 (+0100) Subject: s3: Make QueryDispInfo and QueryInfo match for guest X-Git-Tag: tevent-0.9.11~478 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=351b672426dfba61b7994e59350f4ee3c6d49bc0;p=thirdparty%2Fsamba.git s3: Make QueryDispInfo and QueryInfo match for guest --- diff --git a/source3/passdb/pdb_ads.c b/source3/passdb/pdb_ads.c index bcb803b3967..0dc39fd308d 100644 --- a/source3/passdb/pdb_ads.c +++ b/source3/passdb/pdb_ads.c @@ -1956,6 +1956,7 @@ static bool pdb_ads_search_filter(struct pdb_methods *m, for (i=0; ientries[sstate->num_entries]; @@ -1966,18 +1967,30 @@ static bool pdb_ads_search_filter(struct pdb_methods *m, } sid_peek_rid(&sid, &e->rid); e->acct_flags = ACB_NORMAL; - e->account_name = tldap_talloc_single_attribute( - users[i], "samAccountName", sstate->entries); + + if (e->rid == DOMAIN_RID_GUEST) { + /* + * Guest is specially crafted in s3. Make + * QueryDisplayInfo match QueryUserInfo + */ + e->account_name = lp_guestaccount(); + e->fullname = lp_guestaccount(); + e->description = ""; + e->acct_flags = ACB_NORMAL; + } else { + e->account_name = tldap_talloc_single_attribute( + users[i], "samAccountName", sstate->entries); + e->fullname = tldap_talloc_single_attribute( + users[i], "displayName", sstate->entries); + e->description = tldap_talloc_single_attribute( + users[i], "description", sstate->entries); + } if (e->account_name == NULL) { return false; } - e->fullname = tldap_talloc_single_attribute( - users[i], "displayName", sstate->entries); if (e->fullname == NULL) { e->fullname = ""; } - e->description = tldap_talloc_single_attribute( - users[i], "description", sstate->entries); if (e->description == NULL) { e->description = ""; }