-^samba3\.wbinfo_user_info\.name_to_sid\.upn\.testdenied_upn.ad_member
-^samba3\.wbinfo_user_info\.user_info\.upn\.testdenied_upn.ad_member
^samba3\.wbinfo_user_info\.user_info\.domain\.alice.fl2008r2dc
^samba3\.wbinfo_user_info\.user_info\.upn\.alice.fl2008r2dc
^samba3\.wbinfo_user_info\.user_info\.domain\.jane.fl2008r2dc
if (!try_lookup) {
const struct lsa_TrustDomainInfoInfoEx *tdo = NULL;
- const struct lsa_ForestTrustDomainInfo *di = NULL;
if (state->routing_table == NULL) {
status = dsdb_trust_routing_table_load(policy_state->sam_ldb,
}
}
- tdo = dsdb_trust_domain_by_name(state->routing_table,
- item->hints.namespace,
- &di);
+ if (item->hints.domain != item->hints.namespace) {
+ /*
+ * This means the client asked for an UPN,
+ * we need to find the domain by toplevel
+ * name in order to handle uPNSuffixes too.
+ */
+ tdo = dsdb_trust_routing_by_name(state->routing_table,
+ item->hints.namespace);
+ } else {
+ tdo = dsdb_trust_domain_by_name(state->routing_table,
+ item->hints.namespace,
+ NULL);
+ }
if (tdo == NULL) {
/*
* The name is not resolvable at all...