Tal Nisan has uploaded a new change for review. Change subject: core: Check validity of new storage connection mount options ignoring case ......................................................................
core: Check validity of new storage connection mount options ignoring case When adding a new NFS/Posix storage server connection, the custom mount options should be validated case insensitively Change-Id: Ie5334bdef5955a9b48e266d8dae7ecb339ccc376 Signed-off-by: Tal Nisan <tni...@redhat.com> Bug-Url: https://bugzilla.redhat.com/1141500 --- M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/ConnectStorageToVdsCommand.java M backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/storage/ConnectStorageToVdsCommandTest.java 2 files changed, 11 insertions(+), 3 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/64/33664/1 diff --git a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/ConnectStorageToVdsCommand.java b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/ConnectStorageToVdsCommand.java index f7fb778..ec92f61 100644 --- a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/ConnectStorageToVdsCommand.java +++ b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/ConnectStorageToVdsCommand.java @@ -5,10 +5,10 @@ import java.util.Arrays; import java.util.HashMap; +import java.util.HashSet; import java.util.List; import java.util.Map; import java.util.Set; -import java.util.TreeSet; import org.apache.commons.lang.StringUtils; import org.ovirt.engine.core.bll.Backend; @@ -123,8 +123,11 @@ getConnection().getstorage_type() == StorageType.POSIXFS ? POSIX_MANAGED_OPTIONS : NFS_MANAGED_OPTIONS; Map<String, String> optionsMap = XmlRpcStringUtils.string2Map(mountOptions); - Set<String> optionsKeys = new TreeSet<>(String.CASE_INSENSITIVE_ORDER); - optionsKeys.addAll(optionsMap.keySet()); + Set<String> optionsKeys = new HashSet<>(); + for (String option : optionsMap.keySet()) { + optionsKeys.add(option.toLowerCase()); + } + optionsKeys.retainAll(disallowedOptions); if (!optionsKeys.isEmpty()) { diff --git a/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/storage/ConnectStorageToVdsCommandTest.java b/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/storage/ConnectStorageToVdsCommandTest.java index 6d99853..f4243d0 100644 --- a/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/storage/ConnectStorageToVdsCommandTest.java +++ b/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/storage/ConnectStorageToVdsCommandTest.java @@ -31,6 +31,11 @@ } @Test + public void testNfsConnectionWithInvalidMountOptionsNotLowerCase() { + testConnectionMountOptionsValidations(StorageType.NFS, "TImeo=30, nfsVERS=4", false); + } + + @Test public void testNfsConnectionWithInvalidMountOptions() { testConnectionMountOptionsValidations(StorageType.NFS, "timeo=30, nfsvers=4", false); } -- To view, visit http://gerrit.ovirt.org/33664 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Ie5334bdef5955a9b48e266d8dae7ecb339ccc376 Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: ovirt-engine-3.5 Gerrit-Owner: Tal Nisan <tni...@redhat.com> _______________________________________________ Engine-patches mailing list Engine-patches@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-patches