File rtslib-disallow-upper-case-iqn-names.patch of Package python-rtslib.2496

diff -aurp rtslib-2.2.orig/rtslib/target.py rtslib-2.2/rtslib/target.py
--- rtslib-2.2.orig/rtslib/target.py	2016-04-27 15:43:36.324000000 -0700
+++ rtslib-2.2/rtslib/target.py	2016-04-27 15:44:20.900000000 -0700
@@ -1208,10 +1208,9 @@ class Target(CFSNode):
 
         self.wwn = wwn
         self._path = "%s/%s" % (self.fabric_module.path, self.wwn)
-        if not self:
-            if not self.fabric_module.is_valid_wwn(self.wwn):
-                raise RTSLibError("Invalid %s wwn: %s"
-                                  % (self.wwn_type, self.wwn))
+        if not self.fabric_module.is_valid_wwn(self.wwn):
+            raise RTSLibError("Invalid %s wwn: %s"
+                              % (self.wwn_type, self.wwn))
         self._create_in_cfs_ine(mode)
 
     def _list_tpgs(self):
diff -aurp rtslib-2.2.orig/rtslib/utils.py rtslib-2.2/rtslib/utils.py
--- rtslib-2.2.orig/rtslib/utils.py	2016-04-27 15:43:36.380000000 -0700
+++ rtslib-2.2/rtslib/utils.py	2016-04-27 15:44:20.904000000 -0700
@@ -557,7 +557,8 @@ def is_valid_wwn(wwn_type, wwn, wwn_list
     elif wwn_type == 'iqn' \
        and re.match("iqn\.[0-9]{4}-[0-1][0-9]\..*\..*", wwn) \
        and not re.search(' ', wwn) \
-       and not re.search('_', wwn):
+       and not re.search('_', wwn) \
+       and not re.search('[A-Z]', wwn):
         return True
     elif wwn_type == 'naa' \
             and re.match("naa\.[0-9A-Fa-f]{16}$", wwn):
openSUSE Build Service is sponsored by