📄 common.cpp
字号:
char SNMMsg[SNMMSG_NUM+1][8]=
// 0 1 2 3 4 5 6 7 8 9
{ "", "COO", "COA", "CBD", "CBA", "ECO", "ECA", "RCT", "TFC", "TFP",
"TFR", "TFA", "RST", "RSR", "LIN", "LUN", "LIA", "LUA", "LID", "LFU",
"LLT", "LRT", "TRA", "DLC", "CSS", "CNS", "CNP", "UPU"};
BYTE SNMH1H0[SNMMSG_NUM+1]=
// 0 1 2 3 4 5 6 7 8 9
{ 0, 0x11, 0x21, 0x51, 0x61, 0x12, 0x22, 0x13, 0x23, 0x14,
0x34, 0x54, 0x15, 0x25, 0x16, 0x26, 0x36, 0x46, 0x56, 0x66,
0x76, 0x86, 0x17, 0x18, 0x28, 0x38, 0x48, 0x1A};
char SCCPMsg[SCCPMSG_NUM+1][8]=
// 0 1 2 3 4 5 6 7 8 9
{ "", "CR", "CC", "CREF", "RLSD", "RLC", "DT1", "DT2", "AK", "UDT",
"UDTS", "ED", "EA", "RSR", "RSC", "ERR", "IT", "XUDT", "XUDTS"};
BYTE SCCPMT[SCCPMSG_NUM+1]=
// 0 1 2 3 4 5 6 7 8 9
{ 0, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09,
0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, 0x10, 0x11, 0x12};
char TUPMsg[TUPMSG_NUM+1][8]=
// 0 1 2 3 4 5 6 7 8 9
{ "", "IAM", "IAI", "SAM", "SAO", "GSM", "COT", "CCF", "GRQ", "ACM",
"CHG", "SEC", "CGC", "NNC", "ADI", "CFL", "SSB", "UNN", "LOS", "SST",
"ACB", "DPN", "EUM", "ANU", "ANC", "ANN", "CBK", "CLF", "RAN", "FOT",
"CCL", "RLG", "BLO", "BLA", "UBL", "UBA", "CCR", "RSC", "MGB", "MBA",
"MGU", "MUA", "HGB", "HBA", "HGU", "HUA", "GRS", "GRA", "SGB", "SBA",
"SGU", "SUA", "ACC", "MPM", "OPR", "SLB", "STB", "MAL"};
BYTE TUPH1H0[TUPMSG_NUM+1]=
// 0 1 2 3 4 5 6 7 8 9
{ 0, 0x11, 0x21, 0x31, 0x41, 0x12, 0x32, 0x42, 0x13, 0x14,
0x24, 0x15, 0x25, 0x35, 0x45, 0x55, 0x65, 0x75, 0x85, 0x95,
0xA5, 0xB5, 0xF5, 0x06, 0x16, 0x26, 0x36, 0x46, 0x56, 0x66,
0x76, 0x17, 0x27, 0x37, 0x47, 0x57, 0x67, 0x77, 0x18, 0x28,
0x38, 0x48, 0x58, 0x68, 0x78, 0x88, 0x98, 0xA8, 0xB8, 0xC8,
0xD8, 0xE8, 0x1A, 0x2C, 0x1D, 0x1E, 0x2E, 0x1F};
///SCCP CR
/* PROTOCOL
TCAP消息类型标签:41H
TCAP消息总长度: 42H
对话部分:50h~9fh
成分部分:a0h~ffh
成分类型标签:a2h
成分长度: a3h
调用ID: A4H~A6H
链接ID: A7H~A9H
操作码: AAH~ACH
序列: ADH~AFH
差错码: B0H~B2H
问题码: B3H~B5H
参数: B6H~B8H
//SCCP TCAP INAP MAP Show MainField in DetailWnd
//SCCP TCAP:Judge the Third field=0xff: not show; else :show
//MAP INAP :judge the second field=1:show =0:not show
*/
char CR_Field[31][10]= //CR
// 1 2 3 4 5 6 7 8 9 10
{"SLR", "PCLSS", "OPT", "PTR1", "PTR2", "CLDPALI", "CLDADDRIN","CLDDPC","CLDSSN","CLDTTYPE",
"CLDENCOD", "CLDNUPL","CLDNATAI","CLDADDR","CREDTN", "CREDTLI", "CREDT", "CLGPAN","CLGPALI","CLGADDRIN",
"CLGDPC", "CLGSSN", "CLGTTYPE","CLGENCOD","CLGNUPL","CLGNATAI","CLGADDR", "DATAN", "DATALI", "DATA",
"EOP"};
BYTE CR_FieldCrit[31][4]=
// SLR PCLSS OPT PTR1 PTR2 CLDPALI
{{11,0,0xfe,6}, {12,0,4,1}, {13,0,0xff,1}, {14,0,0xff,4}, {15,0,0xff,4},{16,0,0xff,4},
// CLDADDRIN CLDDPC CLDSSN CLDTTYPE CLDENCOD CLDNUPL
{17,0,8,1}, {18,0,0xfe,6},{19,0,8,2}, {20,0,8,1}, {21,0,4,1}, {22,0,4,1},
// CLDNATAI CLDADDR CREDTN CREDTLI CREDT CLGPAN
{23,0,8,1}, {24,0,0xee,3},{25,0,0xff,2}, {26,0,0xff,4}, {27,0,0xff,2},{28,0,0xff,2},
// CLGPALI CLGADDRIN CLGDPC CLGSSN CLGTTYPE CLGENCOD
{29,0,0xff,4},{30,0,8,1}, {31,0,0xfe,6}, {32,0,8,2}, {33,0,8,1}, {34,0,4,1},
// CLGNUPL CLGNATAI CLGADDR DATAN DATALI DATA
{35,0,4,1}, {36,0,8,1}, {37,0,0xee,3}, {38,0,0xff,2}, {39,0,0xff,4},{0x40,0,0xff,2},
// EOP
{40,0,0xff,2}};
char CC_Field[22][10]= //CC
// 1 2 3 4 5 6 7 8 9 10
{"DLR", "SLR", "PCLSS", "OPT", "PTR1", "CREDTN", "CREDTLI", "CREDT", "CLDPAN","CLDPALI",
"CLDADDRIN","CLDDPC", "CLDSSN", "CLDTTYPE","CLDENCOD", "CLDNUPL", "CLDNATAI","CLDADDR","DATAN", "DATALI",
"DATA", "EOP"};
BYTE CC_FieldCrit[22][4]=
// DLR SLR PCLSS OPT PTR1 CREDTN
{{11,0,0xfe,6}, {12,0,0xfe,6}, {13,0,4,1}, {14,0,4,1}, {15,0,0xff,4},{16,0,0xff,2},
// CREDTLI CREDT CLDPAN CLDPALI CLDADDRIN CLDDPC
{17,0,0xff,4},{18,0,0xff,2}, {19,0,0xff,2},{20,0,0xff,4},{21,0,8,1}, {22,0,0xfe,6},
// CLDSSN CLDTTYPE CLDENCOD CLDNUPL CLDNATAI CLDADDR
{23,0,8,2}, {24,0,8,1}, {25,0,4,1}, {26,0,4,1}, {27,0,8,1}, {28,0,0xee,3},
// DATAN DATALI DATA EOP
{29,0,0xff,2},{30,0,0xff,1}, {0x40,0,0xff,2},{31,0,0xff,2}};
char CREF_Field[17][10]= //CREF
// 1 2 3 4 5 6 7 8 9 10
{"DLR", "REFCS", "PTR1", "CLDPAN", "CLDPALI", "CLDADDRIN","CLDDPC", "CLDSSN", "CLDTTYPE","CLDENCOD",
"CLDNUPL", "CLDNATAI","CLDADDR", "DATAN", "DATALI", "DATA", "EOP"};
BYTE CREF_FieldCrit[17][4]=
// DLR REFCS PTR1 CLDPAN CLDPALI CLDADDRIN
{{11,0,0xfe,6}, {12,0,8,2}, {13,0,0xff,4}, {14,0,0xff,4},{15,0,0xff,4}, {16,0,8,1},
// CLDDPC CLDSSN CLDTTYPE CLDENCOD CLDNUPL CLDNATAI
{17,0,0xfe,6},{18,0,8,2}, {19,0,8,1}, {20,0,4,1}, {21,0,4,1}, {22,0,8,1},
// CLDADDR DATAN DATALI DATA EOP
{23,0,0xee,3},{24,0,0xff,2},{25,0,0xff,4}, {0x40,0,0xff,2},{26,0,0xff,2}};
char RLSD_Field[8][10]= //RLSD
// 1 2 3 4 5 6 7 8 9 10
{"DLR", "SLR", "RELCS","PTR1", "DATAN", "DATALI", "DATA", "EOP"};
BYTE RLSD_FieldCrit[8][4]=
// DLR SLR RELCS PTR1 DATAN DATALI
{{11,0,0xfe,6}, {12,0,0xfe,6},{13,0,8,2}, {14,0,0xff,4}, {15,0,0xff,2},{16,0,0xff,4},
// DATA EOP
{0x40,0,0xff,2},{17,0,0xff,2}};
char RLC_Field[2][10]= //RLC
// 1 2 3 4 5 6 7 8 9 10
{"DLR", "SLR" };
BYTE RLC_FieldCrit[2][4]=
// DLR SLR
{{11,0,0xfe,6}, {12,0,0xfe,6}};
char DT1_Field[5][10]= //DT1
// 1 2 3 4 5 6 7 8 9 10
{"DLR", "S/P", "PTR1", "DATALI", "DATA"};
BYTE DT1_FieldCrit[5][4]=
// DLR S/P PTR1 DATALI DATA
{{11,0,0xfe,6}, {12,0,0xff,1},{13,0,0xff,4}, {14,0,0xff,4},{0x40,0,0xff,2}};
char DT2_Field[7][10]= //DT2
// 1 2 3 4 5 6 7 8 9 10
{"DLR", "P(S)", "M", "P(R)", "PTR1", "DATALI", "DATA"};
BYTE DT2_FieldCrit[7][4]=
// DLR P(S) M P(R) PTR1 DATALI DATA
{{11,0,0xfe,6}, {12,0,0xff,1},{13,0,0xff,1},{14,0,0xff,1}, {15,0,0xff,4},{16,0,0xff,4},{0x40,0,0xff,2}};
char AK_Field[3][10]= //AK
// 1 2 3 4 5 6 7 8 9 10
{"DLR", "P(R)", "CREDT" };
BYTE AK_FieldCrit[3][4]=
// DLR P(R) CREDT
{{11,0,0xfe,6}, {12,0xff,8,1},{13,0,0xff,1}};
char UDT_Field[25][10]= //UDT
// 1 2 3 4 5 6 7 8 9 10
{"PCLSS", "OPT", "PTR1", "PTR2", "PTR3", "CLDPALI", "CLDADDRIN", "CLDDPC", "CLDSSN", "CLDTTYPE",
"CLDENCOD", "CLDNUPL", "CLDNATAI", "CLDADDR", "CLGPALI", "CLGADDRIN", "CLGDPC", "CLGSSN", "CLGTTYPE","CLGENCOD",
"CLGNUPL", "CLGNATAI","CLGADDR", "DATALI", "DATA"};
/*BYTE UDT_FieldCrit[25][4]=
// PCLSS OPT PTR1 PTR2 PTR3 CLDPALI
{ {11,0,4,1}, {12,0,0xff,1}, {13,0,0xff,4},{14,0,0xff,4}, {15,0,0xff,4},{16,0,0xff,4},
// CLDADDRIN CLDDPC CLDSSN CLDTTYPE CLDENCOD CLDNUPL
{17,0,8,1}, {18,0,0xfe,4}, {19,0,8,2}, {20,0,0xff,1}, {21,0,4,1}, {22,0,0xff,1},
// CLDNATAI CLDADDR CLGPALI CLGADDRIN CLGDPC CLGSSN
{23,0,8,1}, {24,0,0xee,3}, {25,0,0xff,4},{26,0,8,1}, {27,0,0xfe,4},{28,0,8,2},
//CLGTTYPE CLGENCOD CLGNUPL CLGNATAI CLGADDR DATALI
{29,0,0xff,1},{30,0,4,1}, {31,0,0xff,1},{32,0,8,1}, {33,0,0xee,3},{34,0,0xff,4},
//DATA
{0x40,0,0xff,2}};*/
BYTE UDT_FieldCrit[25][4]=
// PCLSS OPT PTR1 PTR2 PTR3 CLDPALI
{ {11,0,0xff,1},{12,0,0xff,1}, {13,0,0xff,4},{14,0,0xff,4}, {15,0,0xff,4},{16,0,0xff,4},
// CLDADDRIN CLDDPC CLDSSN CLDTTYPE CLDENCOD CLDNUPL
{17,0,0xff,1},{18,0,0xfe,6}, {19,0,8,2}, {20,0,0xff,1}, {21,0,0xff,1}, {22,0,0xff,1},
// CLDNATAI CLDADDR CLGPALI CLGADDRIN CLGDPC CLGSSN
{23,0,0xff,1},{24,0,0xee,3}, {25,0,0xff,4},{26,0,0xff,1}, {27,0,0xfe,6},{28,0,8,2},
//CLGTTYPE CLGENCOD CLGNUPL CLGNATAI CLGADDR DATALI
{29,0,0xff,1},{30,0,0xff,1}, {31,0,0xff,1},{32,0,0xff,1}, {33,0,0xee,3},{34,0,0xff,4},
//DATA
{0x40,0,0xff,2}};
char UDTS_Field[24][10]= //UDTS
// 1 2 3 4 5 6 7 8 9 10
{"RETCS", "PTR1", "PTR2", "PTR3", "CLDPALI", "CLDADDRIN","CLDDPC", "CLDSSN", "CLDTTYPE", "CLDENCOD",
"CLDNUPL", "CLDNATAI","CLDADDR", "CLGPALI","CLGADDRIN","CLGDPC", "CLGSSN", "CLGTTYPE","CLGENCOD", "NUPL",
"CLGNATAI", "CLGADDR", "DATALI", "DATA"};
BYTE UDTS_FieldCrit[24][4]=
// RETCS PTR1 PTR2 PTR3 CLDPALI ADDRIN
{ {11,0,8,2}, {12,0,0xff,4}, {13,0,0xff,4},{14,0,0xff,4},{15,0,0xff,4},{16,0,8,1},
// DPC SSN TTYPE ENCOD NUPL NATAI
{17,0,0xfe,6}, {18,0,8,2}, {19,0,8,1}, {20,0,4,1}, {21,0,4,1}, {22,0,8,1},
// ADDR CLGPALI ADDRIN DPC SSN TTYPE
{23,0,0xee,3}, {24,0,0xff,4},{25,0,8,1}, {26,0,0xfe,6},{27,0,8,2}, {28,0,8,1},
// ENCOD NUPL NATAI ADDR DATALI DATA
{29,0,4,1}, {30,0,4,1}, {31,0,8,1}, {32,0,0xee,3},{33,0,0xff,4},{0x40,0,0xff,2}};
char ED_Field[4][10]= //ED
// 1 2 3 4 5 6 7 8 9 10
{"DLR", "PTR1", "DATALI", "DATA"};
BYTE ED_FieldCrit[4][4]=
// DLR PTR1 DATALI DATA
{{11,0,0xfe,6}, {12,0,0xff,4}, {13,0,0xff,4},{0x40,0,0xff,2}};
char EA_Field[1][10]= //ED
// 1 2 3 4 5 6 7 8 9 10
{"DLR"};
BYTE EA_FieldCrit[1][4]=
// DLR
{{11,0,0xfe,6}};
char RSR_Field[3][10]= //RSR
// 1 2 3 4 5 6 7 8 9 10
{"DLR", "SLR", "RSTCS"};
BYTE RSR_FieldCrit[3][4]=
// DLR SLR RSTCS
{{11,0,0xfe,6}, {12,0,0xfe,6},{13,0,8,2}};
char RSC_Field[2][10]= //RSC
// 1 2 3 4 5 6 7 8 9 10
{"DLR", "SLR"};
BYTE RSC_FieldCrit[2][4]=
// DLR SLR
{{11,0,0xfe,6}, {12,0,0xfe,6}};
char ERR_Field[2][10]= //ERR
// 1 2 3 4 5 6 7 8 9 10
{"DLR", "ERRCS"};
BYTE ERR_FieldCrit[2][4]=
// DLR ERRCS
{{11,0,0xfe,6}, {12,0,8,2}};
char IT_Field[8][10]= //IT
// 1 2 3 4 5 6 7 8 9 10
{"DLR", "SLR", "PCLSS", "OPT", "P(S)", "M", "P(R)", "CREDT"};
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -