signed int dialogHashIdDisplay()
{
signed int tout;
signed int rc;
int rcCAPMMISession;
int thisTickStart;
int MsgBoxTitle;
int MsgBoxSubtitle;
int MsgBoxBottom;
int rcMMI;
BOOL isFingerPrintActive;
char hashid[16];
int CA_QC_HASH_ID;
int CA_QC_UNK;
unsigned __int8 HashIDSize;
char *ptrHashID;
memset(hashid, 0, 0xFu);
print_verbose(45, "dialogHashIdDisplay() - entry\r\n");
CA_QC_UNK = 0xE0222003;
CA_QC_HASH_ID = 0xE58D2A8C;
HashIDSize = 0xF;
ptrHashID = hashid;
tout = 800;
if ( CA_TASK_QueryControl(0, 0xBu, (int)&CA_QC_HASH_ID) )
{
print_error(45, "dialogHashIdDisplay - CA_TASK_QueryControl CA_QC_HASH_ID fail\r\n");
rc = -1;
}
else
{
rcCAPMMISession = CAP_MMISessionOpen();
if ( rcCAPMMISession )
{
print_error(45, "dialogHashIdDisplay() - open mmi failed\r\n");
CAP_MMISessionClose();
rc = rcCAPMMISession;
}
else
{
hashid[HashIDSize] = 0;
print_uart_verbose(0x2Du, 5, (int)"dialogHashIdDisplay() - HashID: ", (int)hashid, HashIDSize);
thisTickStart = TickGet();
do
{
MsgBoxTitle = CAP_LoadStr(126);
MsgBoxSubtitle = CAP_LoadStr(200);
MsgBoxBottom = CAP_LoadStr(131);
rcMMI = CAP_MMIMsgBox(MsgBoxTitle, MsgBoxSubtitle, MsgBoxBottom, (int)hashid, 0, 0, 0, 10 * tout);
tout = 800 - ((unsigned __int64)TickGet() - thisTickStart);
if ( (unsigned int)tout > 800 )
tout = 0;
if ( rcMMI )
isFingerPrintActive = 0;
else
isFingerPrintActive = tout > 0;
}
while ( isFingerPrintActive );
print_notice(45, "dialogHashIdDisplay() - exit FingerPrint Dialog, rc=0x%x, choice=%d\r\n", rcMMI, 1);
rc = 0;
}
}
return rc;
}