Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE:Evergreen:11.2
engine_pkcs11
fix-pin-memory-corruption.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File fix-pin-memory-corruption.patch of Package engine_pkcs11
Index: engine_pkcs11-0.1.5/src/engine_pkcs11.c =================================================================== --- engine_pkcs11-0.1.5.orig/src/engine_pkcs11.c +++ engine_pkcs11-0.1.5/src/engine_pkcs11.c @@ -157,7 +157,7 @@ int pkcs11_finish(ENGINE * engine) ctx = NULL; } if (pin != NULL) { - OPENSSL_cleanse(pin, MAX_PIN_LENGTH); + OPENSSL_cleanse(pin, strlen(pin)); free(pin); pin = NULL; } @@ -181,7 +181,7 @@ int pkcs11_init(ENGINE * engine) int pkcs11_rsa_finish(RSA * rsa) { if (pin) { - OPENSSL_cleanse(pin, MAX_PIN_LENGTH); + OPENSSL_cleanse(pin, strlen(pin)); free(pin); pin = NULL; } @@ -685,7 +685,7 @@ static EVP_PKEY *pkcs11_load_key(ENGINE /* Free the PIN if it has already been assigned (i.e, cached by get_pin) */ if (pin != NULL) { - OPENSSL_cleanse(pin, MAX_PIN_LENGTH); + OPENSSL_cleanse(pin, strlen(pin)); free(pin); pin = NULL; } @@ -695,7 +695,7 @@ static EVP_PKEY *pkcs11_load_key(ENGINE fail("Could not allocate memory for PIN"); } if (!get_pin(ui_method, callback_data) ) { - OPENSSL_cleanse(pin, MAX_PIN_LENGTH); + OPENSSL_cleanse(pin, strlen(pin)); free(pin); pin = NULL; fail("No pin code was entered"); @@ -706,7 +706,7 @@ static EVP_PKEY *pkcs11_load_key(ENGINE if (PKCS11_login(slot, 0, pin)) { /* Login failed, so free the PIN if present */ if (pin != NULL) { - OPENSSL_cleanse(pin, MAX_PIN_LENGTH); + OPENSSL_cleanse(pin, strlen(pin)); free(pin); pin = NULL; }
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor