From 5d05d2299983b5d34615cd269b04806bba173c0d Mon Sep 17 00:00:00 2001 From: Jeremy Allison Date: Tue, 28 Jul 2009 11:51:58 -0700 Subject: Added prefer_ipv4 bool parameter to resolve_name(). W2K3 DC's can have IPv6 addresses but won't serve krb5/ldap or cldap on those addresses. Make sure when we're asking for DC's we prefer IPv4. If you have an IPv6-only network this prioritizing code will be a no-op. And if you have a mixed network then you need to prioritize IPv4 due to W2K3 DC's. Jeremy. --- source3/winbindd/winbindd_cm.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'source3/winbindd') diff --git a/source3/winbindd/winbindd_cm.c b/source3/winbindd/winbindd_cm.c index a7c63ea71e..460c7738b3 100644 --- a/source3/winbindd/winbindd_cm.c +++ b/source3/winbindd/winbindd_cm.c @@ -679,7 +679,7 @@ static bool get_dc_name_via_netlogon(struct winbindd_domain *domain, DEBUG(10,("rpccli_netr_GetAnyDCName returned %s\n", dcname)); - if (!resolve_name(dcname, dc_ss, 0x20)) { + if (!resolve_name(dcname, dc_ss, 0x20, true)) { return False; } @@ -1467,7 +1467,7 @@ static NTSTATUS cm_open_connection(struct winbindd_domain *domain, if (*domain->dcname && NT_STATUS_IS_OK(check_negative_conn_cache( domain->name, domain->dcname)) - && (resolve_name(domain->dcname, &domain->dcaddr, 0x20))) + && (resolve_name(domain->dcname, &domain->dcaddr, 0x20, true))) { struct sockaddr_storage *addrs = NULL; int num_addrs = 0; -- cgit