if (strchr("Cc",answer[0]) == 0)
if (ok == -2) ok = 1; else if(ok != 0) ok = -1; else if (answer[0] == 'c' || answer[0] == 'C')
static int hwcrhk_insert_card(const char *prompt_info,		      const char *wrong_info,		      HWCryptoHook_PassphraseContext *ppctx,		      HWCryptoHook_CallerContext *cactx)        {        int ok = 1;        UI *ui;	void *callback_data = NULL;        UI_METHOD *ui_method = NULL;        if (cactx)                {                if (cactx->ui_method)                        ui_method = cactx->ui_method;		if (cactx->callback_data)			callback_data = cactx->callback_data;                }	if (ppctx)		{                if (ppctx->ui_method)                        ui_method = ppctx->ui_method;		if (ppctx->callback_data)			callback_data = ppctx->callback_data;		}	if (ui_method == NULL)		{		ENGINEerr(ENGINE_F_HWCRHK_INSERT_CARD,ENGINE_R_NO_CALLBACK);		return -1;		}        ui = UI_new_method(ui_method);        if (ui)                {                char answer[10];                char buf[BUFSIZ];                if (wrong_info)                        BIO_snprintf(buf, sizeof(buf)-1,                                "Current card: \"%s\"\n", wrong_info);                ok = UI_dup_info_string(ui, buf);                if (ok == 0 && prompt_info)                        {                        BIO_snprintf(buf, sizeof(buf)-1,                                "Insert card \"%s\"\n then hit <enter> or C<enter> to cancel\n", prompt_info);                        ok = UI_dup_input_string(ui, buf, 1,                                answer, 0, sizeof(answer)-1);                        }                UI_add_user_data(ui, callback_data);                if (ok == 0)                        ok = UI_process(ui);                UI_free(ui);                if (strchr("Cc",answer[0]) == 0)                        ok = 1;                }        if (ok == 0)                return 0;        return -1;        }