summaryrefslogtreecommitdiff
path: root/source3/passdb
diff options
context:
space:
mode:
authorSumit Bose <sbose@redhat.com>2010-09-02 18:13:38 +0200
committerGünther Deschner <gd@samba.org>2011-02-16 11:44:06 +0100
commitd638f4a3b8243317541e10a6014d6de631ddee37 (patch)
treec48d66f4db0888cc8e6519963be7f8597669e318 /source3/passdb
parent92ea55e84e3137a331814cc45d7ac9d4e2100904 (diff)
downloadsamba-d638f4a3b8243317541e10a6014d6de631ddee37.tar.gz
samba-d638f4a3b8243317541e10a6014d6de631ddee37.tar.bz2
samba-d638f4a3b8243317541e10a6014d6de631ddee37.zip
s3-lsa: Implement lsaRSetForestTrustInformation
Signed-off-by: Günther Deschner <gd@samba.org>
Diffstat (limited to 'source3/passdb')
-rw-r--r--source3/passdb/pdb_ipa.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/source3/passdb/pdb_ipa.c b/source3/passdb/pdb_ipa.c
index 9e166fbfe0..3daa06e2a8 100644
--- a/source3/passdb/pdb_ipa.c
+++ b/source3/passdb/pdb_ipa.c
@@ -33,6 +33,7 @@
#define LDAP_ATTRIBUTE_TRUST_AUTH_OUTGOING "sambaTrustAuthOutgoing"
#define LDAP_ATTRIBUTE_TRUST_AUTH_INCOMING "sambaTrustAuthIncoming"
#define LDAP_ATTRIBUTE_SECURITY_IDENTIFIER "sambaSecurityIdentifier"
+#define LDAP_ATTRIBUTE_TRUST_FOREST_TRUST_INFO "sambaTrustForestTrustInfo"
#define LDAP_OBJ_KRB_PRINCIPAL "krbPrincipal"
#define LDAP_OBJ_KRB_PRINCIPAL_AUX "krbPrincipalAux"
@@ -328,6 +329,10 @@ static bool fill_pdb_trusted_domain(TALLOC_CTX *mem_ctx,
return false;
}
+ get_data_blob_from_ldap_msg(td, ldap_state, entry,
+ LDAP_ATTRIBUTE_TRUST_FOREST_TRUST_INFO,
+ &td->trust_forest_trust_info);
+
*_td = td;
return true;
@@ -517,6 +522,16 @@ static NTSTATUS ipasam_set_trusted_domain(struct pdb_methods *methods,
}
}
+ if (td->trust_forest_trust_info.data != NULL) {
+ res = smbldap_make_mod_blob(priv2ld(ldap_state), entry,
+ &mods,
+ LDAP_ATTRIBUTE_TRUST_FOREST_TRUST_INFO,
+ td->trust_forest_trust_info);
+ if (!res) {
+ return NT_STATUS_UNSUCCESSFUL;
+ }
+ }
+
talloc_autofree_ldapmod(talloc_tos(), mods);
trusted_dn = trusted_domain_dn(ldap_state, domain);