X-Git-Url: http://git.onelab.eu/?p=sfa.git;a=blobdiff_plain;f=sfa%2Ftrust%2Fcertificate.py;fp=sfa%2Ftrust%2Fcertificate.py;h=e05d3a1c30e1019b5aaf0e9cd9b41e87254c3784;hp=651bbc648ca2d779a338e1ff493d482b077553b0;hb=847e5b53e0030190f9d16ccfa52597eeb9a260ef;hpb=7b9570ffd6bd802bf931c853ec31b0c5cecec696 diff --git a/sfa/trust/certificate.py b/sfa/trust/certificate.py index 651bbc64..e05d3a1c 100644 --- a/sfa/trust/certificate.py +++ b/sfa/trust/certificate.py @@ -182,7 +182,7 @@ class Keypair: # @param filename name of file to store the keypair in def save_to_file(self, filename): - with open(filename, 'w') as output: + with open(filename, 'wb') as output: output.write(self.as_pem()) self.filename = filename @@ -191,6 +191,7 @@ class Keypair: # public key. def load_from_file(self, filename): + logger.info(f"opening {filename} from certficate.load_from_file") self.filename = filename buffer = open(filename, 'r').read() self.load_from_string(buffer) @@ -678,6 +679,11 @@ class Certificate: # raise "Cannot add extension {} which had val {} with new val {}"\ # .format(name, oldExtVal, value) + if isinstance(name, str): + name = name.encode() + if isinstance(value, str): + value = value.encode() + ext = OpenSSL.crypto.X509Extension(name, critical, value) self.x509.add_extensions([ext])