File rtslib-fix-iqn-wwn.patch of Package python-rtslib.1545

Index: rtslib-2.2/rtslib/target.py
===================================================================
--- rtslib-2.2.orig/rtslib/target.py
+++ rtslib-2.2/rtslib/target.py
@@ -1195,6 +1195,7 @@ class Target(CFSNode):
 
         if wwn is not None:
             wwn = str(wwn).strip()
+            wwn = wwn.replace("_","-")
         elif fabric_module.spec['wwn_list']:
             existing_wwns = set([child.wwn for child in fabric_module.targets])
             free_wwns = fabric_module.spec['wwn_list'] - existing_wwns
Index: rtslib-2.2/rtslib/utils.py
===================================================================
--- rtslib-2.2.orig/rtslib/utils.py
+++ rtslib-2.2/rtslib/utils.py
@@ -521,7 +521,8 @@ def generate_wwn(wwn_type):
     if wwn_type == 'unit_serial':
         return str(uuid.uuid4())
     elif wwn_type == 'iqn':
-        localname = socket.gethostname().split(".")[0]
+        localname_raw = socket.gethostname().split(".")[0]
+        localname = localname_raw.replace("_","-")
         localarch = os.uname()[4].replace("_","")
         prefix = "iqn.2003-01.org.linux-iscsi.%s.%s" % (localname, localarch)
         prefix = prefix.strip().lower()
openSUSE Build Service is sponsored by