// pointofservicedriverinterface.h
typedef struct _MSR_DATA_RECEIVED {
MsrCardType CardType;
unsigned char Track1EncryptedDataLength;
unsigned char Track2EncryptedDataLength;
unsigned char Track3EncryptedDataLength;
unsigned char Track4EncryptedDataLength;
unsigned char Track1EncryptedData[MSR_TRACK_SIZE];
unsigned char Track2EncryptedData[MSR_TRACK_SIZE];
unsigned char Track3EncryptedData[MSR_TRACK_SIZE];
unsigned char Track4EncryptedData[MSR_TRACK_SIZE];
unsigned char Track1MaskedDataLength;
unsigned char Track2MaskedDataLength;
unsigned char Track3MaskedDataLength;
unsigned char Track4MaskedDataLength;
unsigned char Track1MaskedData[MSR_TRACK_SIZE];
unsigned char Track2MaskedData[MSR_TRACK_SIZE];
unsigned char Track3MaskedData[MSR_TRACK_SIZE];
unsigned char Track4MaskedData[MSR_TRACK_SIZE];
unsigned char Track1DiscretionaryDataLength;
unsigned char Track2DiscretionaryDataLength;
unsigned char Track1DiscretionaryData[MSR_TRACK_SIZE];
unsigned char Track2DiscretionaryData[MSR_TRACK_SIZE];
unsigned char CardAuthenicationDataLength;
unsigned char CardAuthenticationDataAbsoluteLength;
unsigned char CardAuthenicationData[MSR_CARD_AUTHENTICATION_DATA_SIZE];
unsigned char AdditionalSecurityInformationLength;
unsigned char AdditionalSecurityInformation[MSR_ADDITIONAL_SECURITY_INFORMATION_SIZE];
} MSR_DATA_RECEIVED, *PMSR_DATA_RECEIVED;
View the official Windows Driver Kit DDI referenceNo description available.
This structure contains the data read from a swiped magnetic stripe card.
CardTypeType of card that was swiped.
Track1EncryptedDataLengthThe amount of encrypted track 1 data, in bytes, that is stored in Track1EncryptedData[MSR_TRACK_SIZE].
Track2EncryptedDataLengthThe amount of encrypted track 2 data, in bytes, that is stored in Track2EncryptedData[MSR_TRACK_SIZE].
Track3EncryptedDataLengthThe amount of encrypted track 3 data, in bytes, that is stored in Track3EncryptedData[MSR_TRACK_SIZE].
Track4EncryptedDataLengthThe amount of encrypted track 4 data, in bytes, that is stored in Track4EncryptedData[MSR_TRACK_SIZE].
Track1EncryptedDataThe encrypted data read from track 1 of the swiped card.
Track2EncryptedDataThe encrypted data read from track 2 of the swiped card.
Track3EncryptedDataThe encrypted data read from track 3 of the swiped card.
Track4EncryptedDataThe encrypted data read from track 4 of the swiped card.
Track1MaskedDataLengthThe amount of masked track 1 data, in bytes, that is stored in Track1MaskedData[MSR_TRACK_SIZE].
Track2MaskedDataLengthThe amount of masked track 2 data, in bytes, that is stored in Track2MaskedData[MSR_TRACK_SIZE].
Track3MaskedDataLengthThe amount of masked track 3 data, in bytes, that is stored in Track3MaskedData[MSR_TRACK_SIZE].
Track4MaskedDataLengthThe amount of masked track 4 data, in bytes, that is stored in Track4MaskedData[MSR_TRACK_SIZE].
Track1MaskedDataThe masked data read from track 1 of the swiped card.
Track2MaskedDataThe masked data read from track 2 of the swiped card.
Track3MaskedDataThe masked data read from track 3 of the swiped card.
Track4MaskedDataThe masked data read from track 4 of the swiped card.
Track1DiscretionaryDataLengthThe amount of discretionary track 1 data, in bytes, that is stored in Track1DiscretionaryData[MSR_TRACK_SIZE].
Track2DiscretionaryDataLengthThe amount of discretionary track 2 data, in bytes, that is stored in Track2DiscretionaryData[MSR_TRACK_SIZE].
Track1DiscretionaryDataThe amount of discretionary track 1 data, in bytes, that is stored in Track1DiscretionaryData[MSR_TRACK_SIZE].
Track2DiscretionaryDataThe amount of discretionary track 2 data, in bytes, that is stored in Track1DiscretionaryData[MSR_TRACK_SIZE].
CardAuthenicationDataLengthThe amount of encrypted card authentication data, in bytes, that is stored in CardAuthenicationData[MSR_CARD_AUTHENTICATION_DATA_SIZE]. May include padding.
CardAuthenticationDataAbsoluteLengthThe amount of card authentication data, in bytes, before encryption. This value may be used to remove padding on decryption.
CardAuthenicationDataAuthentication data read from the swiped card.
AdditionalSecurityInformationLengthThe amount of additional security information, in bytes, stored in AdditionalSecurityInformation[MSR_ADDITIONAL_SECURITY_INFORMATION_SIZE].
AdditionalSecurityInformationAdditional security information read from the swiped card.