⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 common.cpp

📁 七号信令解码器
💻 CPP
📖 第 1 页 / 共 5 页
字号:
BYTE  IT_FieldCrit[8][4]=
// DLR				SLR				PCLSS		  	 OPT	  	       P(S)          M
{{11,0,0xfe,6}, {12,0,0xfe,6},  {13,0,4,1},  {14,0,4,1},    {15,0,0xff,1},{16,0,0xff,1},
// P(R)          CREDT
  {17,0,0xff,1},{18,0,0xff,2}};

char  XUDT_Field[32][10]=   //XUDT
//  1           2          3          4          5          6          7          8          9           10
  {"PCLSS",    "OPT",    "JUMPC",   "PTR1",    "PTR2",    "PTR3",    "PTR4",   "CLDPALI",  "CLDADDRIN", "CLDDPC",
	"CLDSSN",   "CLDTTYPE","CLDENCOD","CLDNUPL","CLDNATAI","CLDADDR", "CLGPALI","CLGADDRIN","CLGDPC",    "CLGSSN",
	"CLGTTYPE", "CLGENCOD","CLGNUPL", "CLGNATAI","CLGADDR","DATALI",  "DATA",   "SEGMTN",   "SEGMTLI",   "SEGMTIN",
	"SEGMT",    "EOP"};
BYTE  XUDT_FieldCrit[32][4]=
// PCLSS		  	   OPT	  	    JUMPC		    PTR1		    	 PTR2		   	PTR3
{{ 11,0,4,1},   {12,0,4,1},    {13,0,0xff,4}, {14,0,0xff,4},{15,0,0xff,4},{16,0,0xff,4},
// PTR4 			   CLDPALI      CLDADDRIN	  	 CLDDPC	  	    CLDSSN			CLDTTYPE
	{17,0,0xff,4},{18,0,0xff,4},{19,0,8,1},    {20,0,0xfe,6},{21,0,8,2},   {22,0,8,1},
// CLDENCOD      	CLDNUPL      CLDNATAI		 CLDADDR        CLGPALI	  	   CLGADDRIN
	{23,0,4,1},   {24,0,4,1},   {25,0,8,1},    {26,0,0xee,3},{27,0,0xff,4},{28,0,8,1},
// CLGDPC         CLGSSN       CLGTTYPE       CLGENCOD       CLGNUPL		  	CLGNATAI
	{29,0,0xfe,6},{30,0,8,2},   {31,0,8,1},    {32,0,4,1},   {33,0,4,1},   {34,0,8,1},
// CLGADDR        DATALI        DATA           SEGMTN			SEGMTLI			SEGMTIN
	{35,0,0xee,3},{36,0,0xff,4},{0x40,0,0xff,2},{37,0,0xff,2},{38,0,0xff,4},{39,0,0xff,1},
// SEGMT			  EOP
  {40,0,0xff,2}, {41,0,0xff,2}};

char  XUDTS_Field[31][10]=   //XUDTS
//  1           2          3          4          5          6          7          8          9          10
  {"RETCS",   "JUMPC",   "PTR1",    "PTR2",    "PTR3",    "PTR4",   "CLDPALI",  "CLDADDRIN","CLDDPC",  "CLDSSN",
	"CLDTTYPE","CLDENCOD","CLDNUPL", "CLDNATAI","CLDADDR", "CLGPALI","CLGADDRIN","CLGDPC",   "CLGSSN",  "CLGTTYPE",
	"CLGENCOD","CLGNUPL", "CLGNATAI","CLGADDR", "DATALI",  "DATA",   "SEGMTN",   "SEGMTLI",  "SEGMTIN", "SEGMT",
	"EOP"};
BYTE  XUDTS_FieldCrit[31][4]=
// RETCS		  	   JUMPC		     PTR1		    PTR2		   	PTR3          PTR4
{  {11,0,4,1},   {12,0,0xff,4}, {13,0,0xff,4},{14,0,0xff,4},{15,0,0xff,4},{16,0,0xff,4},
// CLDPALI       CLDADDRIN	  	  CLDDPC	  	    CLDSSN			CLDTTYPE      CLDENCOD
	{17,0,0xff,4},{18,0,8,1},    {19,0,0xfe,6},{20,0,8,2},   {21,0,8,1},   {22,0,4,1},
// CLDNUPL       CLDNATAI		  CLDADDR       CLGPALI	  	   CLGADDRIN     CLGDPC
	{23,0,4,1},   {24,0,8,1},    {25,0,0xee,3},{26,0,0xff,4},{27,0,8,1},   {28,0,0xfe,6},
//  CLGSSN       CLGTTYPE       CLGENCOD      CLGNUPL		   CLGNATAI      CLGADDR
	{29,0,8,2},   {30,0,8,1},    {31,0,4,1},   {32,0,4,1},   {33,0,8,1},   {34,0,0xee,3},
//  DATALI        DATA          SEGMTN			  SEGMTLI		SEGMTIN       SEGMT
	{35,0,0xff,4},{0x40,0,0xff,2},{36,0,0xff,2},{37,0,0xff,4},{38,0,0xff,1},{39,0,0xff,2},
//  EOP
	{40,0,0xff,2}};

//TCAP
char     TCAPMsg[TCAPMSG_NUM+1][8]=
 { "", "UNI",  "BEG", "END", "CON", "ABO"};
BYTE    TCAPMT[TCAPMSG_NUM+1]=
 { 0,   0x61,  0x62,   0x64,  0x65,  0x67};


char  UNI_Field[12][8]=   //UNI
//  1        2       3       4       5         6        7          8        9        10
  {"TCAPMT","MLEN", "DPTAG", "DPLI", "EXTAG", "EXTLI", "DIALOG", "CPTAG",   "CPLI",  "CTTAG",
	"CTLI", 	"CPNT"};
BYTE  UNI_FieldCrit[12][4]=
// TCAPMT          MLEN		  	     DPTAG	  	       DPLI		     	  EXTAG		       EXTLI
{ {0x41,0,8,2},   {0x42,0,0xff,4}, {0x50,0,0xff,2},{0x51,0,0xff,4},{0x52,0,0xff,2},  {0x53,0,0xff,4},
// DIALOG          CPTAG	  	     CPLI	  	      CTTAG			    CTLI       	 CPNT
  {0x54,0,0xff,2},{0xd0,0,0xff,2}, {0xd1,0,0xff,4},{0xd2,0,8,2},  {0xd3,0,0xff,4},{0xd4,0,0xff,2}};

char  BEG_Field[15][8]=   //BEG
//  1        2       3       4       5         6        7          8        9        10
 {"TCAPMT","MLEN","OTIDTAG","OTIDLI","OTID",  "DPTAG", "DPLI", "EXTAG", "EXTLI", "DIALOG",
	"CPTAG","CPLI",  "CTTAG","CTLI",  "CPNT"};
BYTE  BEG_FieldCrit[15][4]=
// TCAPMT          MLEN		  	    OTIDTAG          OTIDLI          OTID            DPTAG
{ {0x41,0,8,2},   {0x42,0,0xff,4},{0x43,0,0xff,2},{0x44,0,0xff,4},{0x45,0,0xff,2},{0x50,0,0xff,2},
// DPLI		    	 EXTAG		    EXTLI            DIALOG          CPTAG	  	     CPLI
  {0x51,0,0xff,4},{0x52,0,0xff,2},{0x53,0,0xff,4},{0x54,0,0xff,2},{0xd0,0,0xff,2},{0xd1,0,0xff,4},
// CTTAG			    CTLI       	 CPNT
  {0xd2,0,8,2},  {0xd3,0,0xff,4},{0xd4,0,0xff,2}};

char  END_Field[15][8]=   // END
//  1        2       3       4       5         6        7          8        9        10
 {"TCAPMT","MLEN","DTIDTAG","DTIDLI","DTID",  "DPTAG", "DPLI", "EXTAG", "EXTLI", "DIALOG",
	"CPTAG","CPLI",  "CTTAG","CTLI",  "CPNT"};
BYTE  END_FieldCrit[15][4]=
// TCAPMT          MLEN		  	    DTIDTAG          DTIDLI          DTID            DPTAG
{ {0x41,0,8,2},   {0x42,0,0xff,4},{0x43,0,0xff,2},{0x44,0,0xff,4},{0x45,0,0xff,2},{0x50,0,0xff,2},
// DPLI		    	 EXTAG		    EXTLI            DIALOG          CPTAG	  	     CPLI
  {0x51,0,0xff,4},{0x52,0,0xff,2},{0x53,0,0xff,4},{0x54,0,0xff,2},{0xd0,0,0xff,2},{0xd1,0,0xff,4},
// CTTAG			    CTLI       	 CPNT
  {0xd2,0,8,2},  {0xd3,0,0xff,4},{0xd4,0,0xff,2}};

char  CON_Field[18][8]=   //CON
//  1        2       3       4       5         6        7          8        9        10
 {"TCAPMT","MLEN","OTIDTAG","OTIDLI","OTID",  "DTIDTAG","DTIDLI","DTID", "DPTAG", "DPLI",
  "EXTAG", "EXTLI", "DIALOG","CPTAG","CPLI",  "CTTAG", "CTLI",  "CPNT"};
BYTE  CON_FieldCrit[18][4]=
// TCAPMT          MLEN		  	    OTIDTAG          OTIDLI          OTID           DTIDTAG
{ {0x41,0,8,2},   {0x42,0,0xff,4},{0x43,0,0xff,2},{0x44,0,0xff,4},{0x45,0,0xff,2},{0x46,0,0xff,2},
// DTIDLI          DTID            DPTAG           DPLI		    	 EXTAG		    EXTLI
  {0x47,0,0xff,4},{0x48,0,0xff,2},{0x50,0,0xff,2},{0x51,0,0xff,4},{0x52,0,0xff,2},{0x53,0,0xff,4},
// DIALOG          CPTAG	  	    CPLI 				CTTAG		       CTLI       	  CPNT
  {0x54,0,0xff,2},{0xd0,0,0xff,2},{0xd1,0,0xff,4},{0xd2,0,8,2},   {0xd3,0,0xff,4},{0xd4,0,0xff,2}};

char  ABO_Field[13][8]=   //ABO
//  1        2       3       4       5         6        7          8        9        10
 {"TCAPMT","MLEN","OTIDTAG","OTIDLI","OTID",  "PACTAG","PACLI",   "PAC",  "DPTAG", "DPLI",
  "EXTAG", "EXTLI","DIALOG"};
BYTE  ABO_FieldCrit[13][4]=
// TCAPMT          MLEN		  	    OTIDTAG          OTIDLI          OTID           PACTAG
{ {0x41,0,8,2},   {0x42,0,0xff,4},{0x43,0,0xff,2},{0x44,0,0xff,4},{0x45,0,0xff,2},{0x46,0,0xff,2},
// PACLI           PAC            DPTAG            DPLI		    	 EXTAG		    EXTLI
  {0x47,0,0xff,4},{0x48,0,0xff,2},{0x50,0,0xff,2},{0x51,0,0xff,4},{0x52,0,0xff,2},   {0x53,0,0xff,4},
// DIALOG
  {0x54,0,0xff,2}};

//COMPONET
char     CPNTMsg[TCAPCPNT_NUM+1][8]=
 { "", "INV",  "RR_L", "RE", "RJ", "RR_NL"};
BYTE    CPNTMT[TCAPCPNT_NUM+1]=
 { 0,   0xA1,  0xA2,   0xA3,  0xA4,  0xA7};

char  CPT_INV_Field[12][9]=   //CON
//  1          2         3          4         5          6          7          8        9        10
 {"INVIDTAG","INVIDLI","INVID",    "LKIDTAG","LKIDLI","LKID",      "OCTAG", "OCLI",    "OC",    "PARATAG",
  "PARALI",  "PARA"};
BYTE  CPT_INV_FieldCrit[12][4]=
// INVIDTAG        INVIDLI         INVID          LKIDTAG          LKIDLI          LKID
{ {0xd4,0,0xff,2},{0xd5,0,0xff,4},{0xd6,0,0xff,2},{0xd7,0,0xff,2},{0xd8,0,0xff,4},{0xd9,0,0xff,2},
// OCTAG           OCLI		    	  OC		        PARATAG          PARALI		     PARA
  {0xda,0,0xff,2},{0xdb,0,0xff,4},{0xdc,0,0xff,4},{0xe6,0,0xff,2},{0xe7,0,0xff,4},{0xe8,0,0xff,2}};

char  CPT_RR_L_Field[11][9]=   //CON
//  1          2         3          4         5          6          7        8        9        10
 {"INVIDTAG","INVIDLI","INVID",    "SEQTAG",  "SEQLI",  "OCTAG", "OCLI",    "OC",    "PARATAG", "PARALI",
  "PARA"};
BYTE  CPT_RR_L_FieldCrit[11][4]=
// INVIDTAG        INVIDLI         INVID          SEQTAG           SEQLI            OCTAG
{ {0xd4,0,0xff,2},{0xd5,0,0xff,4},{0xd6,0,0xff,2},{0xdd,0,0xff,2},{0xde,0,0xff,4}, {0xda,0,0xff,2},
//  OCLI		    	  OC		        PARATAG          PARALI		     PARA
  {0xdb,0,0xff,4},{0xdc,0,0xff,4},{0xe6,0,0xff,2},{0xe7,0,0xff,4},{0xe8,0,0xff,2}};

char  CPT_RE_Field[9][9]=   //CON
//  1          2         3          4         5          6          7        8        9        10
 {"INVIDTAG","INVIDLI","INVID",   "ERRCTAG", "ERRCLI",  "ERRC",   "PARATAG","PARALI", "PARA"};
BYTE  CPT_RE_FieldCrit[9][4]=
// INVIDTAG        INVIDLI         INVID           ERRCTAG           ERRCLI	    	 ERRC
{ {0xd4,0,0xff,2},{0xd5,0,0xff,4},{0xd6,0,0xff,2},{0xe0,0,0xff,2},  {0xe1,0,0xff,4},{0xe2,0,0xff,4},
// PARATAG          PARALI		     PARA
  {0xe6,0,0xff,2},{0xe7,0,0xff,4},{0xe8,0,0xff,2}};

char  CPT_RJ_Field[6][9]=   //CON
//  1          2         3          4         5          6          7        8        9        10
 {"INVIDTAG","INVIDLI","INVID",   "PROCTAG", "PROCLI",  "PROC"};
BYTE  CPT_RJ_FieldCrit[6][4]=
// INVIDTAG        INVIDLI         INVID           PROCTAG           PROCLI	    	 PROC
{ {0xd4,0,0xff,2},{0xd5,0,0xff,4},{0xd6,0,0xff,2},{0xe3,0,0xff,2},  {0xe4,0,0xff,4},{0xe5,0,0xff,2}};

char  CPT_RR_NL_Field[11][9]=   //CON
//  1          2         3          4         5          6          7        8        9        10
 {"INVIDTAG","INVIDLI","INVID",    "SEQTAG",  "SEQLI",  "OCTAG", "OCLI",    "OC",    "PARATAG", "PARALI",
  "PARA"};
BYTE  CPT_RR_NL_FieldCrit[11][4]=
// INVIDTAG        INVIDLI         INVID          SEQTAG           SEQLI            OCTAG
{ {0xd4,0,0xff,2},{0xd5,0,0xff,4},{0xd6,0,0xff,2},{0xdd,0,0xff,2},{0xde,0,0xff,4}, {0xda,0,0xff,2},
//  OCLI		    	  OC		        PARATAG          PARALI		     PARA
  {0xdb,0,0xff,4},{0xdc,0,0xff,4},{0xe6,0,0xff,2},{0xe7,0,0xff,4},{0xe8,0,0xff,2}};

//SCMG
char     SCMGMsg[SCMGMSG_NUM+1][8]=
 { "", "SSA",  "SSP", "SST", "SOR", "SOG"};
BYTE    SCMGMT[SCMGMSG_NUM+1]=
 { 0,   0x01,  0x02,   0x03,  0x04,  0x05};

char  SSA_Field[4][8]=   //UNI
//  1        2       3       4       5         6        7          8        9        10
  {"SCMGMT","SSN",  "PC",   "SMI"};

BYTE  SSA_FieldCrit[4][4]=
// SCMGMT          SSN		  	   PC	  	          SMI
{ {0x41,0,8,2},   {0x42,0,8,2}, {0x43,0,0xfe,6},{0x44,0,0xff,1}};

char  SSP_Field[4][8]=   //UNI
//  1        2       3       4       5         6        7          8        9        10
  {"SCMGMT","SSN",  "PC",   "SMI"};

BYTE  SSP_FieldCrit[4][4]=
// SCMGMT          SSN		  	   PC	  	          SMI
{ {0x41,0,8,2},   {0x42,0,8,2}, {0x43,0,0xfe,6},{0x44,0,0xff,1}};

char  SST_Field[4][8]=   //UNI
//  1        2       3       4       5         6        7          8        9        10
  {"SCMGMT","SSN",  "PC",   "SMI"};

BYTE  SST_FieldCrit[4][4]=
// SCMGMT          SSN		  	   PC	  	          SMI
{ {0x41,0,8,2},   {0x42,0,8,2}, {0x43,0,0xfe,6},{0x44,0,0xff,1}};

char  SOR_Field[4][8]=   //UNI
//  1        2       3       4       5         6        7          8        9        10
  {"SCMGMT","SSN",  "PC",   "SMI"};

BYTE  SOR_FieldCrit[4][4]=
// SCMGMT          SSN		  	   PC	  	          SMI
{ {0x41,0,8,2},   {0x42,0,8,2}, {0x43,0,0xfe,6},{0x44,0,0xff,1}};

char  SOG_Field[4][8]=   //UNI
//  1        2       3       4       5         6        7          8        9        10
  {"SCMGMT","SSN",  "PC",   "SMI"};

BYTE  SOG_FieldCrit[4][4]=
// SCMGMT          SSN		  	   PC	  	          SMI
{ {0x41,0,8,2},   {0x42,0,8,2}, {0x43,0,0xfe,6},{0x44,0,0xff,1}};


///TUP
char  IAM_Field[4][8]={"CAT",  "MIN",    "NOA",   "ADDR"};

BYTE  IAM_FieldCrit[4][4]={{11,0,0xff,1}, {12,0,0xff,1}, {13,0,0xff,2}, {14,0,0xee,3}};//??

char  IAI_Field[16][8]=
 //  0      1      2       3        4        5        6      7       8      9
  {"CAT", "MIN",  "BNOA", "BADDR", "IN1",   "NATUS", "CUG", "STY1", "STY2", "AAIN",
	"ANOA","AADDR","OAIN", "ONOA",  "OADDR", "STY3"};

BYTE  IAI_FieldCrit[16][4]=   //??
  { {11,0,0xff,1}, {12,0,0xff,1},{13,0,0xff,2}, {14,0,0xee,3},{15,0,0xff,1}, {16,0,0xff,1},
	 {17,0,0xff,2}, {18,0,0xff,2},{19,0,0xff,2}, {20,0,0xff,1},
	 {21,0,0xff,2}, {22,0,0xee,3},{23,0,0xff,1}, {24,0,0xff,2}, {25,0,0xee,3},
	 {26,0,0xff,2}};

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -