Yair Zaslavsky has uploaded a new change for review. Change subject: tools: Fixing adding/editting domains bug Due to fix of https://bugzilla.redhat.com/show_bug.cgi?id=871591 a regression was introduced. There was an attempt to read the domain from an improper place, thus ending in DNS srv queries to an "empty domain" ......................................................................
tools: Fixing adding/editting domains bug Due to fix of https://bugzilla.redhat.com/show_bug.cgi?id=871591 a regression was introduced. There was an attempt to read the domain from an improper place, thus ending in DNS srv queries to an "empty domain" Bug-Url: https://bugzilla.redhat.com/883074 Change-Id: Iebfc85569ba1aa8bd840f7239f83b7f921a4bd87 Signed-off-by: Yair Zaslavsky <yzasl...@redhat.com> --- M backend/manager/modules/utils/src/main/java/org/ovirt/engine/core/utils/kerberos/DomainsConfigurationEntry.java M backend/manager/modules/utils/src/main/java/org/ovirt/engine/core/utils/kerberos/ManageDomains.java 2 files changed, 17 insertions(+), 38 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/83/9683/1 diff --git a/backend/manager/modules/utils/src/main/java/org/ovirt/engine/core/utils/kerberos/DomainsConfigurationEntry.java b/backend/manager/modules/utils/src/main/java/org/ovirt/engine/core/utils/kerberos/DomainsConfigurationEntry.java index ed636a3..e5256bf 100644 --- a/backend/manager/modules/utils/src/main/java/org/ovirt/engine/core/utils/kerberos/DomainsConfigurationEntry.java +++ b/backend/manager/modules/utils/src/main/java/org/ovirt/engine/core/utils/kerberos/DomainsConfigurationEntry.java @@ -14,7 +14,6 @@ public DomainsConfigurationEntry(String entry, String domainSeperator, String valueSeperator) { this.domainSeperator = domainSeperator; this.valueSeperator = valueSeperator; - if (entry != null && !entry.isEmpty()) { String[] domainValuePairs = entry.split(domainSeperator); diff --git a/backend/manager/modules/utils/src/main/java/org/ovirt/engine/core/utils/kerberos/ManageDomains.java b/backend/manager/modules/utils/src/main/java/org/ovirt/engine/core/utils/kerberos/ManageDomains.java index 1dd0f1f..46e6e7c 100644 --- a/backend/manager/modules/utils/src/main/java/org/ovirt/engine/core/utils/kerberos/ManageDomains.java +++ b/backend/manager/modules/utils/src/main/java/org/ovirt/engine/core/utils/kerberos/ManageDomains.java @@ -197,8 +197,6 @@ getConfigValue(engineConfigExecutable, engineConfigProperties, ConfigValues.LDAPSecurityAuthentication); - ldapDnsResult = validateLdapServers(domainName); - validateKdcServers(ldapSecurityAuthentication,domainName); String adUserPassword = getConfigValue(engineConfigExecutable, engineConfigProperties, ConfigValues.AdUserPassword); String adUserId = getConfigValue(engineConfigExecutable, engineConfigProperties, ConfigValues.AdUserId); @@ -281,15 +279,9 @@ } if (actionType.equals(ActionType.add)) { - addDomain(parser.getArg(Arguments.domain.name()).toLowerCase(), - parser.getArg(Arguments.user.name()), - getPasswordInput(parser), - getLdapProviderType(parser)); + addDomain(parser); } else if (actionType.equals(ActionType.edit)) { - editDomain(parser.getArg(Arguments.domain.name()).toLowerCase(), - parser.getArg(Arguments.user.name()), - getPasswordInput(parser), - null, parser.hasArg(Arguments.provider.name()) ? getLdapProviderType(parser) : null); + editDomain(parser); } else if (actionType.equals(ActionType.delete)) { deleteDomain(parser.getArg(Arguments.domain.name()).toLowerCase()); } else if (actionType.equals(ActionType.validate)) { @@ -429,19 +421,18 @@ } } - public void addDomain(String domainName, - String userName, - String password, - LdapProviderType ldapProviderType) throws ManageDomainsResult { + public void addDomain(CLIParser parser) throws ManageDomainsResult { String authMode = LdapAuthModeEnum.GSSAPI.name(); String currentDomains = configurationProvider.getConfigValue(ConfigValues.DomainName); DomainsConfigurationEntry domainNameEntry = new DomainsConfigurationEntry(currentDomains, DOMAIN_SEPERATOR, null); + String domainName = parser.getArg(Arguments.domain.toString()); if (domainNameEntry.doesDomainExist(domainName)) { throw new ManageDomainsResult(ManageDomainsResultEnum.DOMAIN_ALREADY_EXISTS_IN_CONFIGURATION, domainName); } - + ldapDnsResult = validateLdapServers(domainName); + validateKdcServers(authMode,domainName); domainNameEntry.setValueForDomain(domainName, null); String currentAdUserNameEntry = configurationProvider.getConfigValue(ConfigValues.AdUserName); @@ -464,8 +455,9 @@ DomainsConfigurationEntry ldapProviderTypesEntry = new DomainsConfigurationEntry(currentLDAPProviderTypes, DOMAIN_SEPERATOR, VALUE_SEPERATOR); - adUserNameEntry.setValueForDomain(domainName, userName); - adUserPasswordEntry.setValueForDomain(domainName, password); + LdapProviderType ldapProviderType = getLdapProviderType(parser); + adUserNameEntry.setValueForDomain(domainName, parser.getArg(Arguments.user.toString())); + adUserPasswordEntry.setValueForDomain(domainName, getPasswordInput(parser)); authModeEntry.setValueForDomain(domainName, authMode); ldapProviderTypesEntry.setValueForDomain(domainName, ldapProviderType.name()); @@ -530,24 +522,14 @@ } } - public void editDomain(String domainName, - String userName, - String password, - String mode, - LdapProviderType ldapProviderType) throws ManageDomainsResult { + public void editDomain(CLIParser parser) throws ManageDomainsResult { String authMode; - if (mode == null) { - authMode = getDomainAuthMode(domainName); - } else { - authMode = DEFAULT_AUTH_MODE; - if (mode.equalsIgnoreCase(LdapModeEnum.LOCAL.name())) { - authMode = LdapAuthModeEnum.SIMPLE.name(); - } else if (mode.equalsIgnoreCase(LdapModeEnum.REMOTE.name())) { - authMode = LdapAuthModeEnum.GSSAPI.name(); - } - } - + String domainName = parser.getArg(Arguments.domain.toString()).toLowerCase(); + authMode = getDomainAuthMode(domainName); + ldapDnsResult = validateLdapServers(domainName); + validateKdcServers(authMode,domainName); String currentDomains = configurationProvider.getConfigValue(ConfigValues.DomainName); + String userName = parser.getArg(Arguments.user.toString()); DomainsConfigurationEntry domainNameEntry = new DomainsConfigurationEntry(currentDomains, DOMAIN_SEPERATOR, null); @@ -581,17 +563,15 @@ if (userName != null) { adUserNameEntry.setValueForDomain(domainName, userName); } + String password = getPasswordInput(parser); if (password != null) { adUserPasswordEntry.setValueForDomain(domainName, password); - } - - if (mode != null) { - authModeEntry.setValueForDomain(domainName, authMode); } if (authMode.equalsIgnoreCase(LdapAuthModeEnum.SIMPLE.name())) { ldapServersEntry.setValueForDomain(domainName, utilityConfiguration.getLocalHostEntry()); } + LdapProviderType ldapProviderType = getLdapProviderType(parser); if (ldapProviderType != null) { ldapProviderTypeEntry.setValueForDomain(domainName, ldapProviderType.name()); } -- To view, visit http://gerrit.ovirt.org/9683 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Iebfc85569ba1aa8bd840f7239f83b7f921a4bd87 Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Yair Zaslavsky <yzasl...@redhat.com> _______________________________________________ Engine-patches mailing list Engine-patches@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-patches