The EVP_PKEY_save_parameters() function in crypt/evp/p_lib.c
presumably provides a set/get interface to the EVP_PKEY "save_parameters"
variable for DSA keys.
It sets the variable (if mode >= 0), and returns the previous value.
But by code inspection, you can see that it always sets
the variable, regardless of the value of mode,
and always returns the new value.

To fix, change crypt/evp/p_lib.c line 102 from
                int ret=pkey->save_parameters=mode;
to
                int ret=pkey->save_parameters;

Cheers,

--
Ken Lalonde
System Architect, Torus Inc.
______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
Development Mailing List                       [EMAIL PROTECTED]
Automated List Manager                           [EMAIL PROTECTED]

Reply via email to