summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexander Bokovoy <abokovoy@redhat.com>2013-09-27 14:00:22 +0200
committerMartin Kosek <mkosek@redhat.com>2013-10-04 10:26:35 +0200
commit0cd79231fb6ab93c08414255644f088c6bc837d7 (patch)
tree88f8616fc3a0415314cbe577e3671a49267214e2
parentc6a6f97bb8861db2fdf9af2c5d212144ef930f34 (diff)
downloadfreeipa.git-0cd79231fb6ab93c08414255644f088c6bc837d7.tar.gz
freeipa.git-0cd79231fb6ab93c08414255644f088c6bc837d7.tar.xz
freeipa.git-0cd79231fb6ab93c08414255644f088c6bc837d7.zip
ipasam: for subdomains pick up defaults for missing values
We don't store trust type, attributes, and direction for subdomains of the existing trust. Since trust is always forest level, these parameters can be added as defaults when they are missing.
-rw-r--r--daemons/ipa-sam/ipa_sam.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/daemons/ipa-sam/ipa_sam.c b/daemons/ipa-sam/ipa_sam.c
index a535c0f6..59ddcef2 100644
--- a/daemons/ipa-sam/ipa_sam.c
+++ b/daemons/ipa-sam/ipa_sam.c
@@ -2026,6 +2026,10 @@ static bool fill_pdb_trusted_domain(TALLOC_CTX *mem_ctx,
if (!res) {
return false;
}
+ if (td->trust_direction == 0) {
+ /* attribute wasn't present, set default value */
+ td->trust_direction = LSA_TRUST_DIRECTION_INBOUND | LSA_TRUST_DIRECTION_OUTBOUND;
+ }
res = get_uint32_t_from_ldap_msg(ldap_state, entry,
LDAP_ATTRIBUTE_TRUST_ATTRIBUTES,
@@ -2033,6 +2037,10 @@ static bool fill_pdb_trusted_domain(TALLOC_CTX *mem_ctx,
if (!res) {
return false;
}
+ if (td->trust_attributes == 0) {
+ /* attribute wasn't present, set default value */
+ td->trust_attributes = LSA_TRUST_ATTRIBUTE_FOREST_TRANSITIVE;
+ }
res = get_uint32_t_from_ldap_msg(ldap_state, entry,
LDAP_ATTRIBUTE_TRUST_TYPE,
@@ -2040,6 +2048,10 @@ static bool fill_pdb_trusted_domain(TALLOC_CTX *mem_ctx,
if (!res) {
return false;
}
+ if (td->trust_type == 0) {
+ /* attribute wasn't present, set default value */
+ td->trust_type = LSA_TRUST_TYPE_UPLEVEL;
+ }
td->trust_posix_offset = talloc_zero(td, uint32_t);
if (td->trust_posix_offset == NULL) {