summaryrefslogtreecommitdiff
path: root/source3/winbindd/winbindd_util.c
diff options
context:
space:
mode:
authorMichael Adam <obnox@samba.org>2008-01-25 16:40:17 +0100
committerMichael Adam <obnox@samba.org>2008-01-25 16:43:21 +0100
commit3ca606731b99754493ab5a8d761225c637bc82dd (patch)
tree166c84383b9d82dd0cdaba1469a55416b35ef0db /source3/winbindd/winbindd_util.c
parent05ff7fd46e19d9c1aab8524495c9b926290927c7 (diff)
downloadsamba-3ca606731b99754493ab5a8d761225c637bc82dd.tar.gz
samba-3ca606731b99754493ab5a8d761225c637bc82dd.tar.bz2
samba-3ca606731b99754493ab5a8d761225c637bc82dd.zip
Fix winbindd_can_contact_domain() on a samba DC.
The check for inbound trusts is invalid when samba is a DC and has a trust with an active directory domain. This effectively prevented tusts with an AD domain on a samba DC from working (unless using "winbindd rpc only"), because an ads_connect() was never performed. Only the rpc-based winbindd methods were working properly. Jerry: Please check! Michael (This used to be commit dcd42a1e0642c69348adfaeecef7f7f2f074ac30)
Diffstat (limited to 'source3/winbindd/winbindd_util.c')
-rw-r--r--source3/winbindd/winbindd_util.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/source3/winbindd/winbindd_util.c b/source3/winbindd/winbindd_util.c
index 3d9ede3cdf..d16b7423a1 100644
--- a/source3/winbindd/winbindd_util.c
+++ b/source3/winbindd/winbindd_util.c
@@ -1398,10 +1398,13 @@ bool winbindd_can_contact_domain( struct winbindd_domain *domain )
if ( domain->domain_flags & DS_DOMAIN_IN_FOREST )
return True;
- /* We cannot contact the domain if it is running AD and
- we have no inbound trust */
+ /*
+ * On a _member_ server, we cannot contact the domain if it
+ * is running AD and we have no inbound trust.
+ */
- if ( domain->active_directory &&
+ if ( !IS_DC &&
+ domain->active_directory &&
((domain->domain_flags&DS_DOMAIN_DIRECT_INBOUND) != DS_DOMAIN_DIRECT_INBOUND) )
{
DEBUG(10, ("Domain is an AD domain and we have no inbound "