From f505b3ad161ed16b742c09303671270bd81a76ff Mon Sep 17 00:00:00 2001 From: Jarrod Johnson Date: Thu, 4 Jun 2020 10:27:55 -0400 Subject: [PATCH] Fix grub hash bytes In python3, need to coerce the strings to str or else end up with invalid grub password. --- confluent_server/confluent/config/configmanager.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/confluent_server/confluent/config/configmanager.py b/confluent_server/confluent/config/configmanager.py index 5f6e02ed..382cf3dd 100644 --- a/confluent_server/confluent/config/configmanager.py +++ b/confluent_server/confluent/config/configmanager.py @@ -495,6 +495,10 @@ def grub_hashcrypt_value(value): crypted = hexlify(hashlib.pbkdf2_hmac(algo, value, salt, rounds)) crypted = crypted.upper() salt = hexlify(salt).upper() + if not isinstance(salt, str): + salt = salt.decode('utf8') + if not isinstance(crypted, str): + crypted = crypted.decode('utf8') ret = 'grub.pbkdf2.{0}.{1}.{2}.{3}'.format(algo, rounds, salt, crypted) return ret