亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? isoapp.cpp

?? ISO 8583 implementation.
?? CPP
?? 第 1 頁 / 共 3 頁
字號:
		   // (COMPARE FIRST CHARACTER (RANGE "80".."89"
		   ( ((memcmp((PBYTE)&chMsg[iOffset], _B24_OPCODE_AUT_PAYMENT_SRVCS_, 1) == 0)  			  
		     )
			  && IsValidFromAccountType( iOffset )
			  && IsValidToAccountType( iOffset ) 
		   )
		  );
}

EXPORT BOOL APPMSG::IsATMOthersMsgs(void)			// Otros mensajes
{
	// UserTrxCode P-3
	if(!IsValidField(3)) 
		return (FALSE);

	int iOffset = FieldOffset(3);
	// Message-Type-Identifier [12..15=4]    	
	return(((memcmp((PBYTE)&chMsg[12], CISO_MSGTYPE_FINANCIAL_RQST, 4) == 0) ||
			(memcmp((PBYTE)&chMsg[12], CISO_MSGTYPE_REVERSAL, 4) == 0)       ||
			(memcmp((PBYTE)&chMsg[12], CISO_MSGTYPE_REVERSAL_REP, 4) == 0)   ||
			(memcmp((PBYTE)&chMsg[12], CISO_MSGTYPE_FINANCIAL_ADV, 4) == 0)  ||
			(memcmp((PBYTE)&chMsg[12], CISO_MSGTYPE_FINANCIAL_ADV_REP, 4) == 0) )
			&&
		   // UserTrxCode [xxyyzz=6] : xx=trx_code,yy=from_acct_type,zz=to_acct_type
		   // COMPARE FIRST CHARACTER, RANGE  "90" .. "99"
		   ( ((memcmp((PBYTE)&chMsg[iOffset], _B24_OPCODE_MSG_TO_INSTITUTION_, 1) == 0) ) 
		      && IsValidFromAccountType( iOffset )
			  && IsValidToAccountType( iOffset ) 
		   )
		  );
}

EXPORT BOOL APPMSG::IsValidReversal(void) // Reverso ?
{
	return ( IsValid420() || IsValid421() );  
}


EXPORT BOOL APPMSG::IsATMLastMovInquiry(void)
{
	// UserTrxCode P-3
	if(!IsValidField(3)) 
		return (FALSE);

	int iOffset = FieldOffset(3);
	// Message-Type-Identifier [12..15=4]    	
	return((memcmp((PBYTE)&chMsg[12], CISO_MSGTYPE_FINANCIAL_RQST, 4) == 0) 
		   &&		  
		   // UserTrxCode [x..y=6]
	       ((memcmp((PBYTE)&chMsg[iOffset], _B24_OPCODE_QUERY_LAST_MOVEMENTS_, 2) == 0)    
		      && IsValidFromAccountType( iOffset )
			  && IsValidToAccountType( iOffset ) 
			)
		  );
}

EXPORT BOOL APPMSG::IsATMPinChange(void)
{
	// UserTrxCode P-3
	if(!IsValidField(3)) 
		return (FALSE);

	int iOffset = FieldOffset(3);
	// Message-Type-Identifier [12..15=4]    	
	return((memcmp((PBYTE)&chMsg[12], CISO_MSGTYPE_FINANCIAL_RQST, 4) == 0) 
		   &&		  
		   // UserTrxCode [x..y=6]
	       ((memcmp((PBYTE)&chMsg[iOffset], _B24_OPCODE_PIN_CHANGE_, 2) == 0)    
		      && IsValidFromAccountType( iOffset )
			  && IsValidToAccountType( iOffset ) 
			)
		  );
}

EXPORT BOOL APPMSG::IsATMAssignHomeBankUser(void)
{
	// UserTrxCode P-3
	if(!IsValidField(3)) 
		return (FALSE);

	int iOffset = FieldOffset(3);
	// Message-Type-Identifier [12..15=4]    	
	return((memcmp((PBYTE)&chMsg[12], CISO_MSGTYPE_FINANCIAL_RQST, 4) == 0) 
		   &&		  
		   // UserTrxCode [x..y=6]
	       ((memcmp((PBYTE)&chMsg[iOffset], _B24_OPCODE_HBANK_USER_, 2) == 0)    
		      && IsValidFromAccountType( iOffset )
			  && IsValidToAccountType( iOffset ) 
			)
		  );
}

EXPORT BOOL APPMSG::IsATMExchangeRateInquiry(void)
{
	// UserTrxCode P-3
	if(!IsValidField(3)) 
		return (FALSE);

	int iOffset = FieldOffset(3);
	// Message-Type-Identifier [12..15=4]    	
	return((memcmp((PBYTE)&chMsg[12], CISO_MSGTYPE_FINANCIAL_RQST, 4) == 0) 
		   &&		  
		   // UserTrxCode [x..y=6]
	       ((memcmp((PBYTE)&chMsg[iOffset], _B24_OPCODE_INQUIRY_EXCH_RATE_, 2) == 0)    
		      && IsValidFromAccountType( iOffset )
			  && IsValidToAccountType( iOffset ) 
			)
		  );
}

EXPORT BOOL APPMSG::IsFinancialAdvice(void)	  // Forzado (0220,0221)
{
	return ( IsValid220() || IsValid221() );
}

EXPORT BOOL APPMSG::IsReversalOrAdviceRepeat(void)	  // Repeticion de Forzado-Reverso (0221,0421)
{
	return ( IsValid221() || IsValid421() );
}

/////////////////////////////////////////////////////////////////////////////////////////////////////////
// Expand variable fields to fix-size full format
WORD APPMSG::ExpandFields( APPFIELDS &isoExternFields)
{
    WORD    wLen     = 0;
    PBYTE   pbBuffer = NULL;
	/*****************************/
	char	achHeader[16] = {0x00}  ;
	/*****************************/

    // Inicializar los campos extractados del mensaje ISO
    memset( &isoFields, ' ', sizeof isoFields);
    // Senal de carga a falso
    isoFields.bLoaded = is_false;


    // Extract andExpand each useful field from the message
    // From the SECONDARY-BITMAP, field #1 up to #127
    for(short iIndex=2; iIndex < 128; iIndex++)
    {
        switch(iIndex)
        {        
		case 2 : pbBuffer = (PBYTE)&isoFields.field2; wLen = sizeof(isoFields.field2); break; /* 2005.08.24,mdc */
        case 3 : pbBuffer = (PBYTE)&isoFields.field3; wLen = sizeof(isoFields.field3); break;
        case 4 : pbBuffer = (PBYTE)&isoFields.field4; wLen = sizeof(isoFields.field4); break;
        case 5 : pbBuffer = (PBYTE)&isoFields.field5; wLen = sizeof(isoFields.field5); break;
        case 6 : pbBuffer = (PBYTE)&isoFields.field6; wLen = sizeof(isoFields.field6); break;
        case 7 : pbBuffer = (PBYTE)&isoFields.field7; wLen = sizeof(isoFields.field7); break;
        case 8 : pbBuffer = (PBYTE)&isoFields.field8; wLen = sizeof(isoFields.field8); break;
        case 9 : pbBuffer = (PBYTE)&isoFields.field9; wLen = sizeof(isoFields.field9); break;
        case 10: pbBuffer = (PBYTE)&isoFields.field10; wLen = sizeof(isoFields.field10); break;
        case 11: pbBuffer = (PBYTE)&isoFields.field11; wLen = sizeof(isoFields.field11); break;
        case 12: pbBuffer = (PBYTE)&isoFields.field12; wLen = sizeof(isoFields.field12); break;
        case 13: pbBuffer = (PBYTE)&isoFields.field13; wLen = sizeof(isoFields.field13); break;
        case 14: pbBuffer = (PBYTE)&isoFields.field14; wLen = sizeof(isoFields.field14); break;
        case 15: pbBuffer = (PBYTE)&isoFields.field15; wLen = sizeof(isoFields.field15); break;
        case 16: pbBuffer = (PBYTE)&isoFields.field16; wLen = sizeof(isoFields.field16); break;
        case 17: pbBuffer = (PBYTE)&isoFields.field17; wLen = sizeof(isoFields.field17); break;
        case 18: pbBuffer = (PBYTE)&isoFields.field18; wLen = sizeof(isoFields.field18); break;
        case 19: pbBuffer = (PBYTE)&isoFields.field19; wLen = sizeof(isoFields.field19); break;
        case 20: pbBuffer = (PBYTE)&isoFields.field20; wLen = sizeof(isoFields.field20); break;
        case 21: pbBuffer = (PBYTE)&isoFields.field21; wLen = sizeof(isoFields.field21); break;
        case 22: pbBuffer = (PBYTE)&isoFields.field22; wLen = sizeof(isoFields.field22); break;
        case 23: pbBuffer = (PBYTE)&isoFields.field23; wLen = sizeof(isoFields.field23); break;
        case 24: pbBuffer = (PBYTE)&isoFields.field24; wLen = sizeof(isoFields.field24); break;
        case 25: pbBuffer = (PBYTE)&isoFields.field25; wLen = sizeof(isoFields.field25); break;
        case 26: pbBuffer = (PBYTE)&isoFields.field26; wLen = sizeof(isoFields.field26); break;
        case 27: pbBuffer = (PBYTE)&isoFields.field27; wLen = sizeof(isoFields.field27); break;
        case 28: pbBuffer = (PBYTE)&isoFields.field28; wLen = sizeof(isoFields.field28); break;
        case 29: pbBuffer = (PBYTE)&isoFields.field29; wLen = sizeof(isoFields.field29); break;
        case 30: pbBuffer = (PBYTE)&isoFields.field30; wLen = sizeof(isoFields.field30); break;
        case 31: pbBuffer = (PBYTE)&isoFields.field31; wLen = sizeof(isoFields.field31); break;
        case 32: pbBuffer = (PBYTE)&isoFields.field32; wLen = sizeof(isoFields.field32); break;
        case 33: pbBuffer = (PBYTE)&isoFields.field33; wLen = sizeof(isoFields.field33); break;
        case 34: pbBuffer = (PBYTE)&isoFields.field34; wLen = sizeof(isoFields.field34); break;
        case 35: pbBuffer = (PBYTE)&isoFields.field35; wLen = sizeof(isoFields.field35); break;
        case 36: pbBuffer = (PBYTE)&isoFields.field36; wLen = sizeof(isoFields.field36); break;
        case 37: pbBuffer = (PBYTE)&isoFields.field37; wLen = sizeof(isoFields.field37); break;
        case 38: pbBuffer = (PBYTE)&isoFields.field38; wLen = sizeof(isoFields.field38); break;
        case 39: pbBuffer = (PBYTE)&isoFields.field39; wLen = sizeof(isoFields.field39); break;
        case 40: pbBuffer = (PBYTE)&isoFields.field40; wLen = sizeof(isoFields.field40); break;
        case 41: pbBuffer = (PBYTE)&isoFields.field41; wLen = sizeof(isoFields.field41); break;
        case 42: pbBuffer = (PBYTE)&isoFields.field42; wLen = sizeof(isoFields.field42); break;
        case 43: pbBuffer = (PBYTE)&isoFields.field43; wLen = sizeof(isoFields.field43); break;
        case 44: pbBuffer = (PBYTE)&isoFields.field44; wLen = sizeof(isoFields.field44); break;
        case 45: pbBuffer = (PBYTE)&isoFields.field45; wLen = sizeof(isoFields.field45); break;
        case 46: pbBuffer = (PBYTE)&isoFields.field46; wLen = sizeof(isoFields.field46); break;
        case 47: pbBuffer = (PBYTE)&isoFields.field47; wLen = sizeof(isoFields.field47); break;
        case 48: pbBuffer = (PBYTE)&isoFields.field48; wLen = sizeof(isoFields.field48); break;
        case 49: pbBuffer = (PBYTE)&isoFields.field49; wLen = sizeof(isoFields.field49); break;
        case 50: pbBuffer = (PBYTE)&isoFields.field50; wLen = sizeof(isoFields.field50); break;
        case 51: pbBuffer = (PBYTE)&isoFields.field51; wLen = sizeof(isoFields.field51); break;
        case 52: pbBuffer = (PBYTE)&isoFields.field52; wLen = sizeof(isoFields.field52); break;
        case 53: pbBuffer = (PBYTE)&isoFields.field53; wLen = sizeof(isoFields.field53); break;
        case 54: pbBuffer = (PBYTE)&isoFields.field54; wLen = sizeof(isoFields.field54); break;
        case 55: pbBuffer = (PBYTE)&isoFields.field55; wLen = sizeof(isoFields.field55); break;
        case 56: pbBuffer = (PBYTE)&isoFields.field56; wLen = sizeof(isoFields.field56); break;
        case 57: pbBuffer = (PBYTE)&isoFields.field57; wLen = sizeof(isoFields.field57); break;
        case 58: pbBuffer = (PBYTE)&isoFields.field58; wLen = sizeof(isoFields.field58); break;
        case 59: pbBuffer = (PBYTE)&isoFields.field59; wLen = sizeof(isoFields.field59); break;
        case 60: pbBuffer = (PBYTE)&isoFields.field60; wLen = sizeof(isoFields.field60); break;
        case 61: pbBuffer = (PBYTE)&isoFields.field61; wLen = sizeof(isoFields.field61); break;
        case 62: pbBuffer = (PBYTE)&isoFields.field62; wLen = sizeof(isoFields.field62); break;
        case 63: pbBuffer = (PBYTE)&isoFields.field63; wLen = sizeof(isoFields.field63); break;
        case 64: pbBuffer = (PBYTE)&isoFields.field64; wLen = sizeof(isoFields.field64); break;
        case 90: pbBuffer = (PBYTE)&isoFields.field90; wLen = sizeof(isoFields.field90); break;
        case 95: pbBuffer = (PBYTE)&isoFields.field95; wLen = sizeof(isoFields.field95); break;
        case 99: pbBuffer = (PBYTE)&isoFields.field99; wLen = sizeof(isoFields.field99); break;
        case 100: pbBuffer = (PBYTE)&isoFields.field100; wLen = sizeof(isoFields.field100); break;
        case 102: pbBuffer = (PBYTE)&isoFields.field102; wLen = sizeof(isoFields.field102); break;
        case 103: pbBuffer = (PBYTE)&isoFields.field103; wLen = sizeof(isoFields.field103); break;
        case 120: pbBuffer = (PBYTE)&isoFields.field120; wLen = sizeof(isoFields.field120); break;
        case 122: pbBuffer = (PBYTE)&isoFields.field122; wLen = sizeof(isoFields.field122); break;
        case 123: pbBuffer = (PBYTE)&isoFields.field123; wLen = sizeof(isoFields.field123); break;
	    case 124: pbBuffer = (PBYTE)&isoFields.field124; wLen = sizeof(isoFields.field124); break;
        case 125: pbBuffer = (PBYTE)&isoFields.field125; wLen = sizeof(isoFields.field125); break;
        case 126: pbBuffer = (PBYTE)&isoFields.field126; wLen = sizeof(isoFields.field126); break;
        case 127: pbBuffer = (PBYTE)&isoFields.field127; wLen = sizeof(isoFields.field127); break;
        default: wLen = 0; pbBuffer = NULL; break;
        }
        
        if(!GetField( iIndex, &wLen, pbBuffer, wLen ))
        {
			/* Oooooppssss must do something ? */
        }
    }
    // Flag to TRUE
    isoFields.bLoaded = is_true;

	/**************************************************************************/
	// ISO8583 PRODUCT INDICATOR	
	isoFields.chPRODUCT = _ISO8583_FORMAT_FOR_ATM_;  // PRODUCT ATM BY DEFAULT
	GetHeader( achHeader, sizeof(achHeader) );
	// SAVE PRODUCT IN BINARY FORMAT, CONVERT TO DECIMAL
	if( isdigit(achHeader[3]) && isdigit( achHeader[4]) )
		isoFields.chPRODUCT = ((achHeader[3]-'0') * 10) + (achHeader[4]-'0') ;
	/**************************************************************************/
	// Values are :
	// 00-GENERIC Base/Propietary
	// 01-B24 ATM
	// 02-B24 POS
	// 03-B24 Teller
	// 08-From Host Maintenance
	// 11-B24 EMS
	// 12-B24 EFTPOS	
	/**************************************************************************/

	/* External Copy */
	isoExternFields = isoFields;

    // Ok, APROBADO por default
    return 0;
}

//////////////////////////////////////////////////////

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
激情成人综合网| 精品国产免费视频| 久久新电视剧免费观看| 亚洲欧洲一区二区在线播放| 日本91福利区| 精品视频在线免费看| 国产精品欧美一区喷水| 免费高清不卡av| 4hu四虎永久在线影院成人| 亚洲欧洲日韩在线| 国产成人精品网址| 精品福利一区二区三区 | 国产二区国产一区在线观看| 在线免费不卡电影| 亚洲欧美综合另类在线卡通| 国产真实乱偷精品视频免| 欧美一区二区三区视频在线| 一区二区三区精品视频| 国产麻豆精品theporn| 欧美一区二区三区精品| 午夜在线成人av| 欧美久久久久久久久中文字幕| 亚洲视频网在线直播| 成人综合婷婷国产精品久久 | 亚洲欧洲国产日韩| 高潮精品一区videoshd| 久久综合99re88久久爱| 精品一区二区三区欧美| 久久亚洲一区二区三区四区| 另类中文字幕网| 欧美tickling挠脚心丨vk| 强制捆绑调教一区二区| 日韩欧美激情一区| 国产在线麻豆精品观看| 久久精品视频在线看| 国产一区二区日韩精品| 国产欧美日韩视频一区二区 | 日本美女一区二区| 日韩欧美激情一区| 国产精品一卡二卡| 国产精品麻豆视频| 欧洲激情一区二区| 日本一道高清亚洲日美韩| 日韩一级免费观看| 国内成人精品2018免费看| 国产日韩欧美一区二区三区乱码| 国产成人免费av在线| 国产精品国产三级国产aⅴ入口 | 欧美三区免费完整视频在线观看| 亚洲成人久久影院| 日韩精品一区二区三区视频| 国内精品视频一区二区三区八戒| 国产精品免费视频观看| 日本黄色一区二区| 麻豆精品久久久| 国产欧美一区二区三区鸳鸯浴| av一区二区三区黑人| 亚洲国产一区视频| 久久综合久久综合久久| 色综合天天天天做夜夜夜夜做| 亚洲国产日韩综合久久精品| 精品国产制服丝袜高跟| 91亚洲精品乱码久久久久久蜜桃| 亚洲国产一区二区在线播放| 亚洲精品在线电影| 色哟哟精品一区| 毛片基地黄久久久久久天堂| 国产精品久久久久久久久久久免费看| 欧美在线免费观看视频| 精品中文av资源站在线观看| 亚洲天堂久久久久久久| 精品国产青草久久久久福利| 色婷婷精品大在线视频| 国产永久精品大片wwwapp| 亚洲欧美欧美一区二区三区| 精品乱码亚洲一区二区不卡| 91精彩视频在线观看| 国产精品一二三区在线| 亚洲超碰精品一区二区| 中文字幕中文字幕在线一区| 日韩一区二区三区视频在线| 在线国产亚洲欧美| 成人国产免费视频| 麻豆91在线播放| 亚洲制服丝袜一区| 国产精品久久久久久妇女6080| 欧美一区二区三区在线视频| 在线观看91视频| av亚洲精华国产精华| 久久99国产精品尤物| 五月天中文字幕一区二区| 亚洲色图制服丝袜| 国产精品国产自产拍在线| 欧美zozo另类异族| 日韩一区二区电影网| 欧美日韩中文字幕精品| 91福利视频网站| 成人福利视频在线| 成人免费观看视频| 国产成人欧美日韩在线电影| 久88久久88久久久| 日本aⅴ精品一区二区三区| 图片区日韩欧美亚洲| 一区二区不卡在线视频 午夜欧美不卡在| 国产欧美精品区一区二区三区| 日韩午夜在线观看视频| 日韩一级片网站| 日韩亚洲欧美高清| 精品国产自在久精品国产| 日韩三级在线观看| 日韩一区二区电影| 日韩女同互慰一区二区| 欧美一区二区视频在线观看 | 国产成人福利片| 国产露脸91国语对白| 国产一区二区三区精品欧美日韩一区二区三区 | 久久精品国产亚洲a| 日本美女一区二区三区视频| 免费看日韩a级影片| 久久av老司机精品网站导航| 久久99国产精品麻豆| 久久福利视频一区二区| 精品一区二区综合| 国产福利91精品一区| 成人黄色国产精品网站大全在线免费观看| 国产精品亚洲综合一区在线观看| 国产a级毛片一区| 99久久国产综合精品色伊| 一本色道亚洲精品aⅴ| 欧美日韩aaaaaa| 日韩三级电影网址| 国产欧美日韩综合| 亚洲欧美偷拍另类a∨色屁股| 亚洲国产综合91精品麻豆| 免费在线观看一区二区三区| 国产在线精品一区二区| 99视频国产精品| 欧美理论片在线| 精品处破学生在线二十三| 国产精品午夜久久| 亚洲一区电影777| 久久成人18免费观看| 懂色av中文一区二区三区| 91行情网站电视在线观看高清版| 67194成人在线观看| 久久久久久久国产精品影院| ㊣最新国产の精品bt伙计久久| 亚洲国产aⅴ天堂久久| 国内精品在线播放| 一本大道久久a久久综合| 日韩一区二区三区视频在线 | 97se亚洲国产综合自在线| 欧美日韩国产中文| 日本一区二区三区国色天香| 一区二区视频免费在线观看| 狠狠色丁香婷婷综合久久片| 色综合天天综合网天天狠天天| 欧美成人aa大片| 亚洲精品ww久久久久久p站| 久久国产人妖系列| 欧美日韩一区国产| 国产精品成人免费在线| 激情综合亚洲精品| 欧美精品 国产精品| 亚洲国产精品av| 久久99国产精品久久99果冻传媒| 在线中文字幕不卡| 国产欧美日韩三级| 久久99精品国产.久久久久| 欧美性大战久久久| 亚洲欧美偷拍另类a∨色屁股| 国产精品对白交换视频| 粉嫩aⅴ一区二区三区四区五区| 欧美福利一区二区| 国产精品欧美一级免费| 日本午夜一本久久久综合| 欧美专区亚洲专区| 亚洲欧美成人一区二区三区| 国产精品12区| 久久欧美一区二区| 久草这里只有精品视频| 欧美高清dvd| 午夜日韩在线电影| 一本久久综合亚洲鲁鲁五月天| 国产亚洲一区二区三区四区 | 一区二区三区四区中文字幕| 国产电影精品久久禁18| 2024国产精品| 黄色资源网久久资源365| 欧美一区二区视频免费观看| 亚洲高清在线视频| 欧美日韩亚洲另类| 亚洲国产精品综合小说图片区| 色婷婷狠狠综合| 亚洲卡通欧美制服中文| av一区二区三区在线| 亚洲三级在线观看| 色综合天天综合网国产成人综合天 | 日本在线观看不卡视频| 欧美福利电影网|