--------------- src/libs/plugins/backends/aqhbci/banking/user.c --------------- index 1b6b04c4..2e1c5d18 100644 @@ -2135,6 +2135,7 @@ int AH_User_VerifyInitialKey(GWEN_CRYPT_TOKEN *ct, uint32_t keyHashLen; char hashString[1024]; int rv; + int i; /* check if NOTEPAD contained a key hash */ @@ -2227,9 +2228,14 @@ int AH_User_VerifyInitialKey(GWEN_CRYPT_TOKEN *ct, GWEN_Buffer_free(keyBuffer); } + memset(hashString, 0, 1024); + for (i=0; ihbciVersion=210; xdlg->rdhVersion=0; + xdlg->cryptMode = AH_CryptMode_Rdh; /* done */ return dlg; @@ -873,7 +874,8 @@ int AH_NewKeyFileDialog_DoIt(GWEN_DIALOG *dlg) AH_User_SetTokenType(u, "ohbci"); AH_User_SetTokenName(u, AH_NewKeyFileDialog_GetFileName(dlg)); AH_User_SetTokenContextId(u, 1); - AH_User_SetCryptMode(u, AH_CryptMode_Rdh); + //AH_User_SetCryptMode(u, AH_CryptMode_Rdh); + AH_User_SetCryptMode(u, xdlg->cryptMode); AH_User_SetStatus(u, AH_UserStatusPending); AH_User_SetHbciVersion(u, xdlg->hbciVersion); AH_User_SetRdhType(u, xdlg->rdhVersion); @@ -1301,6 +1303,7 @@ int AH_NewKeyFileDialog_HandleActivatedSpecial(GWEN_DIALOG *dlg) else { xdlg->hbciVersion=AH_RdhSpecialDialog_GetHbciVersion(dlg2); xdlg->rdhVersion=AH_RdhSpecialDialog_GetRdhVersion(dlg2); + xdlg->cryptMode=AH_RdhSpecialDialog_GetCryptMode(dlg2); xdlg->flags=AH_RdhSpecialDialog_GetFlags(dlg2); } --------- src/libs/plugins/backends/aqhbci/dialogs/dlg_newkeyfile_p.h --------- index 4827d076..18e7f6da 100644 @@ -33,6 +33,7 @@ struct AH_NEWKEYFILE_DIALOG { int hbciVersion; int rdhVersion; + int cryptMode; uint32_t flags;