#ifndef _ISO8583_H
#define _ISO8583_H
#include "ToppayDef.h"
#define LEN_OF_MAX_BUFFER 2048 /*定义ISO_data结构中最长的缓冲区*/
#define LEN_OF_ISO8583 64 /*定义ISO_data的长度*/
#define UNUSED 0
#define L_BCD 1 /*左对齐BCD码*/
#define L_ASC 2 /*左对齐ASC码*/
#define R_BCD 3
#define R_ASC 4
#define D_BIN 5
#define OVER 6
#define FIX_LEN 1 /*(FIX_LEN是指由ISO_8583中的长度决定该域的长度)*/
#define LLVAR_LEN 2 /*(LLVAR_LEN 00~99)*/
#define LLLVAR_LEN 3 /*(LLLVAR_LEN 00~999)*/
#define LEN_FIELD0 4
#define LEN_FIELD1 8
#define LEN_FIELD2 32
#define LEN_FIELD3 6
#define LEN_FIELD4 12
#define LEN_FIELD11 6
#define LEN_FIELD12 6
#define LEN_FIELD13 4
#define LEN_FIELD14 4
#define LEN_FIELD15 4
#define LEN_FIELD22 3
#define LEN_FIELD23 3
#define LEN_FIELD25 2
#define LEN_FIELD26 2
#define LEN_FIELD32 99
#define LEN_FIELD35 48
#define LEN_FIELD36 112
#define LEN_FIELD37 12
#define LEN_FIELD38 6
#define LEN_FIELD39 2
#define LEN_FIELD41 8
#define LEN_FIELD42 15
#define LEN_FIELD44 25
#define LEN_FIELD46 999
#define LEN_FIELD47 999
#define LEN_FIELD48 322
#define LEN_FIELD49 3
#define LEN_FIELD52 8
#define LEN_FIELD53 16
#define LEN_FIELD54 20
#define LEN_FIELD55 255
#define LEN_FIELD58 100
#define LEN_FIELD59 999
#define LEN_FIELD60 999
#define LEN_FIELD61 999
#define LEN_FIELD62 512
#define LEN_FIELD63 163
#define LEN_FIELD64 8
typedef struct {
uint8 field0[LEN_FIELD0];
uint8 field1[LEN_FIELD1];
uint8 field2[LEN_FIELD2];
uint8 field3[LEN_FIELD3];
uint8 field4[LEN_FIELD4];
uint8 field11[LEN_FIELD11];
uint8 field12[LEN_FIELD12];
uint8 field13[LEN_FIELD13];
uint8 field14[LEN_FIELD14];
uint8 field15[LEN_FIELD15];
uint8 field22[LEN_FIELD22];
uint8 field23[LEN_FIELD23];
uint8 field25[LEN_FIELD25];
uint8 field26[LEN_FIELD26];
uint8 field32[LEN_FIELD32];
uint8 field35[LEN_FIELD35];
uint8 field36[LEN_FIELD36];
uint8 field37[LEN_FIELD37];
uint8 field38[LEN_FIELD38];
uint8 field39[LEN_FIELD39];
uint8 field41[LEN_FIELD41];
uint8 field42[LEN_FIELD42];
uint8 field44[LEN_FIELD44];
uint8 field46[LEN_FIELD46];
uint8 field47[LEN_FIELD47];
uint8 field48[LEN_FIELD48];
uint8 field49[LEN_FIELD49];
uint8 field52[LEN_FIELD52];
uint8 field53[LEN_FIELD53];
uint8 field54[LEN_FIELD54];
uint8 field55[LEN_FIELD55];
uint8 field58[LEN_FIELD58];
uint8 field59[LEN_FIELD59];
uint8 field60[LEN_FIELD60];
uint8 field61[LEN_FIELD61];
uint8 field62[LEN_FIELD62];
uint8 field63[LEN_FIELD63];
uint8 field64[LEN_FIELD64];
}FIELDS;
typedef struct {
uint16 len_max;
uint8 len_type;
uint8 field_type;
uint16 field_len;
puint8 field;
}ISO8583_ATTR;
uint16 IsoToStr(puint8 dest_send);
void StrToIso(puint8 src_rece, uint16 src_len);
uint16 LenOfIso8583();
void ClearIso8583();
#endif
#ifndef _ISO8583_C
#define _ISO8583_C
#include "ToppayDef.h"
#include "ToppayProt.h"
#include "ISO8583.h"
#include "PacketProc.h"
#define LEN_LEN 2
#define TPDU_LEN 5
#define TPDU_ID 1
#define TPDU_ADDR_DEST 2
#define TPDU_ADDR_SRC 2
#define PACKET_HEADER_LEN 6
#define PACKET_HEADER_APP_TYPE 1
#define PACKET_HEADER_STANDARD &nb
#define _ISO8583_H
#include "ToppayDef.h"
#define LEN_OF_MAX_BUFFER 2048 /*定义ISO_data结构中最长的缓冲区*/
#define LEN_OF_ISO8583 64 /*定义ISO_data的长度*/
#define UNUSED 0
#define L_BCD 1 /*左对齐BCD码*/
#define L_ASC 2 /*左对齐ASC码*/
#define R_BCD 3
#define R_ASC 4
#define D_BIN 5
#define OVER 6
#define FIX_LEN 1 /*(FIX_LEN是指由ISO_8583中的长度决定该域的长度)*/
#define LLVAR_LEN 2 /*(LLVAR_LEN 00~99)*/
#define LLLVAR_LEN 3 /*(LLLVAR_LEN 00~999)*/
#define LEN_FIELD0 4
#define LEN_FIELD1 8
#define LEN_FIELD2 32
#define LEN_FIELD3 6
#define LEN_FIELD4 12
#define LEN_FIELD11 6
#define LEN_FIELD12 6
#define LEN_FIELD13 4
#define LEN_FIELD14 4
#define LEN_FIELD15 4
#define LEN_FIELD22 3
#define LEN_FIELD23 3
#define LEN_FIELD25 2
#define LEN_FIELD26 2
#define LEN_FIELD32 99
#define LEN_FIELD35 48
#define LEN_FIELD36 112
#define LEN_FIELD37 12
#define LEN_FIELD38 6
#define LEN_FIELD39 2
#define LEN_FIELD41 8
#define LEN_FIELD42 15
#define LEN_FIELD44 25
#define LEN_FIELD46 999
#define LEN_FIELD47 999
#define LEN_FIELD48 322
#define LEN_FIELD49 3
#define LEN_FIELD52 8
#define LEN_FIELD53 16
#define LEN_FIELD54 20
#define LEN_FIELD55 255
#define LEN_FIELD58 100
#define LEN_FIELD59 999
#define LEN_FIELD60 999
#define LEN_FIELD61 999
#define LEN_FIELD62 512
#define LEN_FIELD63 163
#define LEN_FIELD64 8
typedef struct {
uint8 field0[LEN_FIELD0];
uint8 field1[LEN_FIELD1];
uint8 field2[LEN_FIELD2];
uint8 field3[LEN_FIELD3];
uint8 field4[LEN_FIELD4];
uint8 field11[LEN_FIELD11];
uint8 field12[LEN_FIELD12];
uint8 field13[LEN_FIELD13];
uint8 field14[LEN_FIELD14];
uint8 field15[LEN_FIELD15];
uint8 field22[LEN_FIELD22];
uint8 field23[LEN_FIELD23];
uint8 field25[LEN_FIELD25];
uint8 field26[LEN_FIELD26];
uint8 field32[LEN_FIELD32];
uint8 field35[LEN_FIELD35];
uint8 field36[LEN_FIELD36];
uint8 field37[LEN_FIELD37];
uint8 field38[LEN_FIELD38];
uint8 field39[LEN_FIELD39];
uint8 field41[LEN_FIELD41];
uint8 field42[LEN_FIELD42];
uint8 field44[LEN_FIELD44];
uint8 field46[LEN_FIELD46];
uint8 field47[LEN_FIELD47];
uint8 field48[LEN_FIELD48];
uint8 field49[LEN_FIELD49];
uint8 field52[LEN_FIELD52];
uint8 field53[LEN_FIELD53];
uint8 field54[LEN_FIELD54];
uint8 field55[LEN_FIELD55];
uint8 field58[LEN_FIELD58];
uint8 field59[LEN_FIELD59];
uint8 field60[LEN_FIELD60];
uint8 field61[LEN_FIELD61];
uint8 field62[LEN_FIELD62];
uint8 field63[LEN_FIELD63];
uint8 field64[LEN_FIELD64];
}FIELDS;
typedef struct {
uint16 len_max;
uint8 len_type;
uint8 field_type;
uint16 field_len;
puint8 field;
}ISO8583_ATTR;
uint16 IsoToStr(puint8 dest_send);
void StrToIso(puint8 src_rece, uint16 src_len);
uint16 LenOfIso8583();
void ClearIso8583();
#endif
#ifndef _ISO8583_C
#define _ISO8583_C
#include "ToppayDef.h"
#include "ToppayProt.h"
#include "ISO8583.h"
#include "PacketProc.h"
#define LEN_LEN 2
#define TPDU_LEN 5
#define TPDU_ID 1
#define TPDU_ADDR_DEST 2
#define TPDU_ADDR_SRC 2
#define PACKET_HEADER_LEN 6
#define PACKET_HEADER_APP_TYPE 1
#define PACKET_HEADER_STANDARD &nb