Blame SOURCES/0019-Issue-51144-dsctl-fails-with-instance-names-that-con.patch

a26cad
From 2844d4ad90cbbd23ae75309e50ae4d7145586bb7 Mon Sep 17 00:00:00 2001
a26cad
From: Mark Reynolds <mreynolds@redhat.com>
a26cad
Date: Wed, 10 Jun 2020 14:07:24 -0400
a26cad
Subject: [PATCH] Issue 51144 - dsctl fails with instance names that contain
a26cad
 slapd-
a26cad
a26cad
Bug Description:  If an instance name contains 'slapd-' the CLI breaks:
a26cad
a26cad
                      slapd-test-slapd
a26cad
a26cad
Fix Description:  Only strip off "slapd-" from the front of the instance
a26cad
                  name.
a26cad
a26cad
relates: https://pagure.io/389-ds-base/issue/51144
a26cad
a26cad
Reviewed by: firstyear(Thanks!)
a26cad
---
a26cad
 src/lib389/lib389/__init__.py | 2 +-
a26cad
 src/lib389/lib389/dseldif.py  | 3 ++-
a26cad
 2 files changed, 3 insertions(+), 2 deletions(-)
a26cad
a26cad
diff --git a/src/lib389/lib389/__init__.py b/src/lib389/lib389/__init__.py
a26cad
index 0ff1ab173..63d44b60a 100644
a26cad
--- a/src/lib389/lib389/__init__.py
a26cad
+++ b/src/lib389/lib389/__init__.py
a26cad
@@ -710,7 +710,7 @@ class DirSrv(SimpleLDAPObject, object):
a26cad
         # Don't need a default value now since it's set in init.
a26cad
         if serverid is None and hasattr(self, 'serverid'):
a26cad
             serverid = self.serverid
a26cad
-        elif serverid is not None:
a26cad
+        elif serverid is not None and serverid.startswith('slapd-'):
a26cad
             serverid = serverid.replace('slapd-', '', 1)
a26cad
 
a26cad
         if self.serverid is None:
a26cad
diff --git a/src/lib389/lib389/dseldif.py b/src/lib389/lib389/dseldif.py
a26cad
index 96c9af9d1..f2725add9 100644
a26cad
--- a/src/lib389/lib389/dseldif.py
a26cad
+++ b/src/lib389/lib389/dseldif.py
a26cad
@@ -40,7 +40,8 @@ class DSEldif(DSLint):
a26cad
         if serverid:
a26cad
             # Get the dse.ldif from the instance name
a26cad
             prefix = os.environ.get('PREFIX', ""),
a26cad
-            serverid = serverid.replace("slapd-", "")
a26cad
+            if serverid.startswith("slapd-"):
a26cad
+                serverid = serverid.replace("slapd-", "", 1)
a26cad
             self.path = "{}/etc/dirsrv/slapd-{}/dse.ldif".format(prefix[0], serverid)
a26cad
         else:
a26cad
             ds_paths = Paths(self._instance.serverid, self._instance)
a26cad
-- 
a26cad
2.26.2
a26cad