diff options
Diffstat (limited to 'source3')
-rw-r--r-- | source3/libads/ldap.c | 3 | ||||
-rw-r--r-- | source3/nsswitch/winbindd_cm.c | 3 |
2 files changed, 5 insertions, 1 deletions
diff --git a/source3/libads/ldap.c b/source3/libads/ldap.c index 970311d5ca..6c3ab75340 100644 --- a/source3/libads/ldap.c +++ b/source3/libads/ldap.c @@ -393,8 +393,9 @@ got_connection: return ADS_ERROR(LDAP_OPERATIONS_ERROR); } - /* cache the successful connection */ + /* cache the successful connection for workgroup and realm */ saf_store( ads->server.workgroup, inet_ntoa(ads->ldap_ip)); + saf_store( ads->server.realm, inet_ntoa(ads->ldap_ip)); ldap_set_option(ads->ld, LDAP_OPT_PROTOCOL_VERSION, &version); diff --git a/source3/nsswitch/winbindd_cm.c b/source3/nsswitch/winbindd_cm.c index ce4e3cae18..efee477c0d 100644 --- a/source3/nsswitch/winbindd_cm.c +++ b/source3/nsswitch/winbindd_cm.c @@ -363,6 +363,9 @@ static NTSTATUS cm_prepare_connection(const struct winbindd_domain *domain, /* cache the server name for later connections */ saf_store( domain->name, (*cli)->desthost ); + if (domain->alt_name) { + saf_store( domain->alt_name, (*cli)->desthost ); + } if (!cli_send_tconX(*cli, "IPC$", "IPC", "", 0)) { |