const char *pinfile;
int ret = GNUTLS_E_PKCS11_PIN_ERROR;
- if (pin) {
- *pin = NULL;
-
- /* First check for pin-value field */
- pinfile = p11_kit_uri_get_pin_value(info);
+ *pin = NULL;
+
+ /* First check for pin-value field */
+ pinfile = p11_kit_uri_get_pin_value(info);
+ if (pinfile != NULL) {
+ _gnutls_debug_log("p11: Using pin-value to retrieve PIN\n");
+ *pin = p11_kit_pin_new_for_string(pinfile);
+ if (*pin != NULL)
+ ret = 0;
+ } else { /* try pin-source */
+ /* Check if a pinfile is specified, and use that if possible */
+ pinfile = p11_kit_uri_get_pin_source(info);
if (pinfile != NULL) {
- _gnutls_debug_log("p11: Using pin-value to retrieve PIN\n");
- *pin = p11_kit_pin_new_for_string(pinfile);
- if (*pin != NULL)
- ret = 0;
- } else { /* try pin-source */
- /* Check if a pinfile is specified, and use that if possible */
- pinfile = p11_kit_uri_get_pin_source(info);
- if (pinfile != NULL) {
- _gnutls_debug_log("p11: Using pin-source to retrieve PIN\n");
- ret =
- retrieve_pin_from_source(pinfile, token_info, attempts,
- user_type, pin);
- }
+ _gnutls_debug_log("p11: Using pin-source to retrieve PIN\n");
+ ret =
+ retrieve_pin_from_source(pinfile, token_info, attempts,
+ user_type, pin);
}
}