Maybe even just create public key upon import and generate? Then export also can deal with public key only.
On 15 Dec 2022, at 03:18, Hans Leidekker (@hans) wine@gitlab.winehq.org wrote:
Hans Leidekker (@hans) commented about dlls/bcrypt/gnutls.c:
if ((ret = pgnutls_pubkey_init( &pubkey )))
{
pgnutls_perror( ret );
return STATUS_INTERNAL_ERROR;
}
if ((ret = pgnutls_pubkey_import_privkey( pubkey, key_data(params->key)->a.privkey, 0, 0 )))
{
pgnutls_perror( ret );
pgnutls_pubkey_deinit( pubkey );
return STATUS_INTERNAL_ERROR;
}
- }
- ret = pgnutls_pubkey_encrypt_data(pubkey, 0, &d, &e);
- if (pubkey != key_data(params->key)->a.pubkey)
pgnutls_pubkey_deinit( pubkey );
Why not store the public key? That would be more efficient if key_asymmetric_encrypt() is called more than once.
-- https://gitlab.winehq.org/wine/wine/-/merge_requests/1820#note_19671