From f31d73b79aaa1746f7d32576658fcd4136870115 Mon Sep 17 00:00:00 2001 From: Martin Basti Date: Feb 10 2017 13:03:04 +0000 Subject: py3: upgradeinstance: open dse.ldif in textual mode ldap ldif parser requires to have input file opened in textual mode https://fedorahosted.org/freeipa/ticket/4985 Reviewed-By: Jan Cholasta --- diff --git a/ipaserver/install/upgradeinstance.py b/ipaserver/install/upgradeinstance.py index 8e28436..b244898 100644 --- a/ipaserver/install/upgradeinstance.py +++ b/ipaserver/install/upgradeinstance.py @@ -124,7 +124,7 @@ class IPAUpgrade(service.Service): def __save_config(self): shutil.copy2(self.filename, self.savefilename) - with open(self.filename, "rb") as in_file: + with open(self.filename, "r") as in_file: parser = GetEntryFromLDIF(in_file, entries_dn=["cn=config"]) parser.parse() try: @@ -156,8 +156,8 @@ class IPAUpgrade(service.Service): def __enable_ds_global_write_lock(self): ldif_outfile = "%s.modified.out" % self.filename - with open(ldif_outfile, "wb") as out_file: - with open(self.filename, "rb") as in_file: + with open(ldif_outfile, "w") as out_file: + with open(self.filename, "r") as in_file: parser = installutils.ModifyLDIF(in_file, out_file) parser.replace_value( @@ -172,8 +172,8 @@ class IPAUpgrade(service.Service): global_lock = self.restore_state('nsslapd-global-backend-lock') ldif_outfile = "%s.modified.out" % self.filename - with open(ldif_outfile, "wb") as out_file: - with open(self.filename, "rb") as in_file: + with open(ldif_outfile, "w") as out_file: + with open(self.filename, "r") as in_file: parser = installutils.ModifyLDIF(in_file, out_file) if port is not None: @@ -194,8 +194,8 @@ class IPAUpgrade(service.Service): def __disable_listeners(self): ldif_outfile = "%s.modified.out" % self.filename - with open(ldif_outfile, "wb") as out_file: - with open(self.filename, "rb") as in_file: + with open(ldif_outfile, "w") as out_file: + with open(self.filename, "r") as in_file: parser = installutils.ModifyLDIF(in_file, out_file) parser.replace_value("cn=config", "nsslapd-port", ["0"]) parser.replace_value("cn=config", "nsslapd-security", ["off"])