Exemple #1
0
 def gen_key_pair_priv_cb(data, ctx):
     if not data:
         warning('keymanagement: Could not generate a key pair\n')
         cb(None, None)
     else:
         xrun([self.sslname, 'rsa', '-pubout'], gen_key_pair_pub_cb,
             data, data)
Exemple #2
0
    def gen_key_pair(self, keysize, cb):
        """ Generates asymmetric key pair.
            First generate private key and test if it succeeded.
            Then use private key to generate public key.
            If everything went well, call GUI's generate_keys_cb with
            the key pair, else call it with (None,None) """

        def gen_key_pair_pub_cb(data, ctx):
            if not data:
                warning('keymanagement: Could not generate a key pair\n')
                cb(None, None)
            else:
                cb(ctx, data)

        def gen_key_pair_priv_cb(data, ctx):
            if not data:
                warning('keymanagement: Could not generate a key pair\n')
                cb(None, None)
            else:
                xrun([self.sslname, 'rsa', '-pubout'], gen_key_pair_pub_cb,
                    data, data)

        return xrun([self.sslname, 'genrsa', str(keysize)],
            gen_key_pair_priv_cb, None)