1
0
mirror of https://github.com/samba-team/samba.git synced 2024-12-24 21:34:56 +03:00

winbindd: handle trusted domains without sid.

Guenther
(This used to be commit 0c1efc6c89)
This commit is contained in:
Günther Deschner 2008-07-29 12:08:47 +02:00
parent 4356a45682
commit 3bdfcbac5c
2 changed files with 17 additions and 4 deletions

View File

@ -1241,13 +1241,21 @@ static NTSTATUS trusted_domains(struct winbindd_domain *domain,
(*names)[ret_count] = CONST_DISCARD(char *, trusts.array[i].netbios_name);
(*alt_names)[ret_count] = CONST_DISCARD(char *, trusts.array[i].dns_name);
sid_copy(&(*dom_sids)[ret_count], trusts.array[i].sid);
if (trusts.array[i].sid) {
sid_copy(&(*dom_sids)[ret_count], trusts.array[i].sid);
} else {
sid_copy(&(*dom_sids)[ret_count], &global_sid_NULL);
}
/* add to the trusted domain cache */
fstrcpy( d.name, trusts.array[i].netbios_name);
fstrcpy( d.alt_name, trusts.array[i].dns_name);
sid_copy( &d.sid, trusts.array[i].sid);
if (trusts.array[i].sid) {
sid_copy( &d.sid, trusts.array[i].sid);
} else {
sid_copy(&(*dom_sids)[ret_count], &global_sid_NULL);
}
if ( domain->primary ) {
DEBUG(10,("trusted_domains(ads): Searching "

View File

@ -2072,7 +2072,9 @@ static NTSTATUS trusted_domains(struct winbindd_domain *domain,
for (i=0; i<(*num_domains); i++) {
(*names)[i] = centry_string(centry, mem_ctx);
(*alt_names)[i] = centry_string(centry, mem_ctx);
centry_sid(centry, mem_ctx, &(*dom_sids)[i]);
if (!centry_sid(centry, mem_ctx, &(*dom_sids)[i])) {
sid_copy(&(*dom_sids)[i], &global_sid_NULL);
}
}
status = centry->status;
@ -3543,8 +3545,11 @@ static bool add_wbdomain_to_tdc_array( struct winbindd_domain *new_dom,
list[idx].domain_name = talloc_strdup( list, new_dom->name );
list[idx].dns_name = talloc_strdup( list, new_dom->alt_name );
if ( !is_null_sid( &new_dom->sid ) )
if ( !is_null_sid( &new_dom->sid ) ) {
sid_copy( &list[idx].sid, &new_dom->sid );
} else {
sid_copy(&list[idx].sid, &global_sid_NULL);
}
if ( new_dom->domain_flags != 0x0 )
list[idx].trust_flags = new_dom->domain_flags;