|
Lines 271-278
pkcs11_login_slot(struct pkcs11_provider *provider, struct pkcs11_slotinfo *si,
Link Here
|
| 271 |
(pin != NULL) ? strlen(pin) : 0); |
271 |
(pin != NULL) ? strlen(pin) : 0); |
| 272 |
if (pin != NULL) |
272 |
if (pin != NULL) |
| 273 |
freezero(pin, strlen(pin)); |
273 |
freezero(pin, strlen(pin)); |
|
|
274 |
if (rv == CKR_PIN_LEN_RANGE) { |
| 275 |
error("Login to PKCS#11 token failed: PIN too long or too short"); |
| 276 |
return (-1); |
| 277 |
} |
| 278 |
if (rv == CKR_PIN_INCORRECT) { |
| 279 |
error("Login to PKCS#11 token failed: Incorrect PIN"); |
| 280 |
return (-1); |
| 281 |
} |
| 282 |
if (rv == CKR_PIN_LOCKED) { |
| 283 |
error("Login to PKCS#11 token failed: PIN locked"); |
| 284 |
return (-1); |
| 285 |
} |
| 274 |
if (rv != CKR_OK && rv != CKR_USER_ALREADY_LOGGED_IN) { |
286 |
if (rv != CKR_OK && rv != CKR_USER_ALREADY_LOGGED_IN) { |
| 275 |
error("C_Login failed: %lu", rv); |
287 |
error("Login to PKCS#11 token failed with return code %lu", rv); |
| 276 |
return (-1); |
288 |
return (-1); |
| 277 |
} |
289 |
} |
| 278 |
si->logged_in = 1; |
290 |
si->logged_in = 1; |
| 279 |
- |
|
|