Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

tTransactionalContext (agnos.h)

tADFList (selection.h)

Code Block
typedef struct {
/** If bTRUE, TAC/IAC default processing is skipped if unable to go online*/
	tBoolean				mSkipTACIACDefault;
	/** If bTRUE, TAC processing is performed*/
	tBoolean				mTAC;
	/** If bTRUE, Floor Limit Checking is performed*/
	tBoolean				mFloorLimitChecking;
	/** If bTRUE, RTS is performed*/
	tBoolean				mRandomTransactionSelection;
	/** If bTRUE, Velocity Checking is performed*/
	tBoolean				mVelocityChecking;
	/** If bTRUE, Default TDOL is supported*/
	tBoolean				mDefaultTDOL;
	/** TDOL length*/
	tByte mNumberOfADF;
tADF mList[MAX_SUPPORTED_ADF];
tBoolean mEliminatedADF[MAX_SUPPORTED_ADF];
tBoolean mCardBlocked;
tBoolean mAnyBlockedApplication;
tByte mSelectionIndex;
} tADFList;

tADF (selection.h)

Code Block

// AID information - alias ADF - kept in the ICC as per semantic's EMVCo proposal
typedef struct {
	tByte		mADFName[MAX_AID_LENGTH]; 		//0x4F
	tByte		mADFLen;
	tByte		mLabel[MAX_AID_LENGTH]; 		//0x50
	tByte		mLabelLen;
	tByte		mPreferredName[MAX_AID_LENGTH]; //0x9F12
	tByte		mPreferredNameLen;
	tByte		mPriorityIndicator; 			//0x87
	tByte		mLangagePreference[8]; 			//0x5F2D
	tByte		mLangagePreferenceLen;
	tByte		mIssuerCodeTableIndex; 			//0x9F11
	tByte		mRemainingFCI[200]; 								mDefaultTDOLLen;
	/**Tag 0x97*/
	tByte					mDefaultTDOLValue[TDOL_MAX_LENGTH];
	/** If bTRUE, Default DDOL is supported*/
	tBoolean				mDefaultDDOL;
	/** DDOL length*/
	tByte					mDefaultDDOLLen;
	/**Tag 0x9F49 or 0x9F69 (UDOL for contactless)*/
	tByte					mDefaultDDOLValue[DDOL_MAX_LENGTH];
	/**Terminal Action Code - Denial*/
	tTVR 					mTACDenial; 
	/**Terminal Action Code - Online*/
	tTVR 					mTACOnline; 
	/**Terminal Action Code - Default*/
	tTVR 					mTACDefault;
	/**Tag 0x9F1B*/
	tAmount		 			mTerminalFloorLimit;
	/**See EMV Book III, TRM section - Random Transaction Selection*/
	tPercentage  			mTargetPercentage;
	/**See EMV Book III, TRM section - Random Transaction Selection. Same transaction currency exponent as 0x9F02*/
	tAmount		  			mThresholdValue;
	/**See EMV Book III, TRM section - Random Transaction Selection*/
	tPercentage  			mMaxTargetPercentage;
	/**if bTRUE, pin may be bypassed when requested*/
	tBoolean				mPINByPass;
	/**bTRUE when merchant manually requested transaction to go online*/
	tBoolean				mForcedOnline;

	/**Tag 0x9A*/
	tNumericDate			mTransactionDate[3];
	/**Tag 0x9F21*/
	tNumericDate			mTransactionTime[3];
	/**Tag 0x9F35*/
	tTerminalType			mTerminalType;
	/** Transaction language*/
	tByte					mLanguage;
	/** PIN entry delay in second*/
	tCounter				mPinTimeOut;
	/** CDAMode1, CDAMode2 and CDAMode3 only*/
	tCDAType				mCDAType;
	/**if bTRUE, Terminal Risk Management is performed even if ICC doesn't request it*/
	tBoolean				mForceTRM;

	/**Tag 0x5F57*/
	tByte					mAccountType;
	/**Tag 0x9F39*/
	tByte					mPOSEntryMode;
	/**Tag 0x9F41*/
	tCounter				mTransactionSequenceCounter;
	/**Tag 0x9F1D*/
	tByte					mTerminalRiskManagementData[8];
	/**Tag 0x9F3A*/
	tAmount					mAmountReferenceCurrency;
	/**Tag 0x9F3C*/
	tByte					mTransactionReferenceCurrencyCode[2];
	/**Tag 0x9F3D*/
	tByte					mTransactionReferenceCurrencyExponent;
	/**Tag 0x9F1A*/
	tByte 					mTerminalCountryCode[2];
	/**Tag 0x5F2A*/
	tByte 					mTransactionCurrencyCode[2];
	/**Tag 0x5F36*/
	tByte 					mTransactionCurrencyExponent;
	/**Tag 0x9F33*/
	tByte 					mTerminalCapabilities[3];
	/**Tag 0x9F40*/
	tByte 					mAdditionalTerminalCapabilities[5];
	/**Tag 0x9F09*/
	tByte 					mApplicationVersionNumber[2];
	/**Tag 0x9C*/
	tByte					mTxnType;
	/**Tag 0x9F1C*/
	tByte					mTerminalIdentification[8];
	/**Tag 0x9F1E*/
	tByte					mIFDSerialNumber[8];
	/**Tag 0x9F01*/
	tByte					mAcquirerIdentifier[6];
} tTransactionalContext;

tADFList (selection.h)

Code Block
languagecpp
typedef struct {
tByte mNumberOfADF;
tADF mList[MAX_SUPPORTED_ADF];
tBoolean mEliminatedADF[MAX_SUPPORTED_ADF];
tBoolean mCardBlocked;
tBoolean mAnyBlockedApplication;
tByte mSelectionIndex;
} tADFList;

tADF (selection.h)

Code Block
typedef struct {
tByte mADFName[MAX_AID_LENGTH];//0x4F
tByte mADFLen;
tByte mLabel[MAX_AID_LENGTH];//0x50
tByte mLabelLen;
tByte mPreferredName[MAX_AID_LENGTH];//0x9F12
tByte mPreferredNameLen;
tByte mPriorityIndicator;//0x87
tByte mLangagePreference[8];//0x5F2D
tByte mLangagePreferenceLen;
tByte mIssuerCodeTableIndex;//0x9F11
tByte mRemainingFCI[200];//0xBF0C. May contain Issuer Country Code 5F56 AND/OR Application Selection Flag DF62
	tByte		 mRemainingFCILen;
	tByte		 mBlocked;
	tByte		 mCorrespondingAIDOrderNumber;	// Order of the ADF in the AID list (application supported by terminal)

	// Extension to support PPSE
	tByte		mKernelIdentifier[8];			//0x9F2A
	tByte		mKernelIdentifierLen;
	tByte		mRequestedKernelId;
	tByte		mExtendedSelection[MAX_AID_LENGTH];			//0x9F29
	tByte		mExtendedSelectionLen;
} tADF;

...