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

Reply via email to