version 1.48, 2020/03/06 18:14:13 |
version 1.49, 2020/03/13 04:16:27 |
|
|
(pin != NULL) ? strlen(pin) : 0); |
(pin != NULL) ? strlen(pin) : 0); |
if (pin != NULL) |
if (pin != NULL) |
freezero(pin, strlen(pin)); |
freezero(pin, strlen(pin)); |
if (rv != CKR_OK && rv != CKR_USER_ALREADY_LOGGED_IN) { |
|
error("C_Login failed: %lu", rv); |
switch (rv) { |
return (-1); |
case CKR_OK: |
|
case CKR_USER_ALREADY_LOGGED_IN: |
|
/* success */ |
|
break; |
|
case CKR_PIN_LEN_RANGE: |
|
error("PKCS#11 login failed: PIN length out of range"); |
|
return -1; |
|
case CKR_PIN_INCORRECT: |
|
error("PKCS#11 login failed: PIN incorrect"); |
|
return -1; |
|
case CKR_PIN_LOCKED: |
|
error("PKCS#11 login failed: PIN locked"); |
|
return -1; |
|
default: |
|
error("PKCS#11 login failed: error %lu", rv); |
|
return -1; |
} |
} |
si->logged_in = 1; |
si->logged_in = 1; |
return (0); |
return (0); |