📄 api_test.c
字号:
sdp_printf(sty, "entityLdpId.lsrAddress: %s \n", lntoa(*(DWORD *)pData->Data));
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "entityLdpId.labelSpace: %d \n", *(WORD *)pData->Data);
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "peerLdpId.lsrAddress: %s \n", lntoa(*(DWORD *)pData->Data));
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "peerLdpId.labelSpace: %d \n", *(WORD *)pData->Data);
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "entityindex: %d \n", *(DWORD *)pData->Data);
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "attemptedsessions: %d \n", *(DWORD *)pData->Data);
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "sessionrejectednohelloerrors: %d \n", *(DWORD *)pData->Data);
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "sessionrejectedadvertisementerrors: %d \n", *(DWORD *)pData->Data);
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "sessionrejectedmaxpduerrors: %d \n", *(DWORD *)pData->Data);
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "sessionrejectedlabelrangeerrors: %d \n", *(DWORD *)pData->Data);
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "badldpidentifiererrors: %d \n", *(DWORD *)pData->Data);
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "badpdulengtherrros: %d \n", *(DWORD *)pData->Data);
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "badmessagelengtherrors: %d \n", *(DWORD *)pData->Data);
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "badtlvlengtherrors: %d \n", *(DWORD *)pData->Data);
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "malformedtlvvalueErrors: %d \n", *(DWORD *)pData->Data);
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "KeepAliveTimerExpiredErrors: %d \n", *(DWORD *)pData->Data);
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "ShutdownNotifReceived: %d \n", *(DWORD *)pData->Data);
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "ShutdownNotifSent: %d \n", *(DWORD *)pData->Data);
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "ifIndex: %d \n", *(WORD *)pData->Data);
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "ifName.module: %d \n", *(BYTE *)pData->Data);
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "ifName.port: %d \n", *(BYTE *)pData->Data);
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "ifName.lsrType: %d \n", *(BYTE *)pData->Data);
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "IpAddr: %s \n", lntoa(*(DWORD *)pData->Data));
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
}
}
void showMplsLdpSessionStatsDisplay(struct sty *sty, mpls_comm_oam_t *out)
{
BYTE *end_of_data;
mpls_opr_data_t *pData = out->Data;
end_of_data = (BYTE *)pData + out->DataLen;
while((BYTE *)pData < end_of_data)
{
/* mplsLdpSessionStatsTable_t structure */
sdp_printf(sty, "entityLdpId.lsrAddress: %s \n", lntoa(*(DWORD *)pData->Data));
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "entityLdpId.labelSpace: %d \n", *(WORD *)pData->Data);
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "peerLdpId.lsrAddress: %s \n", lntoa(*(DWORD *)pData->Data));
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "peerLdpId.labelSpace: %d \n", *(WORD *)pData->Data);
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "index: %d \n", *(DWORD *)pData->Data);
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "unknownmessagetypeerrors: %d \n", *(DWORD *)pData->Data);
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "unknowntlverrors: %d \n", *(DWORD *)pData->Data);
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "ifIndex: %d \n", *(WORD *)pData->Data);
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "connect.localPort: %d \n", *(WORD *)pData->Data);
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "connect.peerPort: %d \n", *(WORD *)pData->Data);
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "connect.localAddr: %s \n", lntoa(*(DWORD *)pData->Data));
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "connect.peerAddr: %s \n", lntoa(*(DWORD *)pData->Data));
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "ifName.module: %d \n", *(BYTE *)pData->Data);
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "ifName.port: %d \n", *(BYTE *)pData->Data);
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "ifName.lsrType: %d \n", *(BYTE *)pData->Data);
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
}
}
void showMplsLdpIntTransportAddrDisplay(struct sty *sty, mpls_comm_oam_t *out)
{
BYTE *end_of_data;
mpls_opr_data_t *pData = out->Data;
end_of_data = (BYTE *)pData + out->DataLen;
while((BYTE *)pData < end_of_data)
{
/* if_transport_table_t structure */
sdp_printf(sty, "rowStatus: %d \n", *(BYTE *)pData->Data);
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "ifIndex: %d \n", *(WORD *)pData->Data);
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "ifType: %d \n", *(BYTE *)pData->Data);
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "ifIpAddr: %s \n", lntoa(*(DWORD *)pData->Data));
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "ifNet: %s \n", lntoa(*(DWORD *)pData->Data));
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "ifMask: %s \n", lntoa(*(DWORD *)pData->Data));
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "ifBrdcstAddr: %s \n", lntoa(*(DWORD *)pData->Data));
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "ifName.module: %d \n", *(BYTE *)pData->Data);
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "ifName.port: %d \n", *(BYTE *)pData->Data);
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "ifName.lsrType: %d \n", *(BYTE *)pData->Data);
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
}
}
void showMplsLdpAtmLabelGetDisplay(struct sty *sty, mpls_comm_oam_t *out)
{
int i, num;
BYTE *end_of_data;
mpls_opr_data_t *pData = out->Data;
end_of_data = (BYTE *)pData + out->DataLen;
while((BYTE *)pData < end_of_data)
{
/* MIB_MPLSCONFIG_ACK structure */
sdp_printf(sty, "cardType: %d \n", *(BYTE *)pData->Data);
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "module: %d \n", *(BYTE *)pData->Data);
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "num: %d \n", *(BYTE *)pData->Data);
num = *(BYTE *)pData->Data;
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
for(i = 0; i < num; i++)
{
sdp_printf(sty, "portData[%d].port: %d \n", i, *(BYTE *)pData->Data);
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "portData[%d].ifIndex: %d \n", i, *(WORD *)pData->Data);
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "portData[%d].speed: %d \n", i, *(DWORD *)pData->Data);
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "portData[%d].atmInterfaceMaxActiveVciBits: %d \n", i, *(BYTE *)pData->Data);
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "portData[%d].atmfAtmLayerMaxSvccVpi: %d \n", i, *(WORD *)pData->Data);
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "portData[%d].atmfAtmLayerMinSvccVci: %d \n", i, *(WORD *)pData->Data);
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
}
}
}
void showIpTrafficEngConfFilterNoDisplay(struct sty *sty, mpls_comm_oam_t *out)
{}
#if 0
void showIpTrafficEngConfFilterNoDisplay(struct sty *sty, mpls_comm_oam_t *out)
{
int i, num;
BYTE *end_of_data;
mpls_opr_data_t *pData = out->Data;
end_of_data = (BYTE *)pData + out->DataLen;
while((BYTE *)pData < end_of_data)
{
/* QosMulitFieldFilter_t structure */
sdp_printf(sty, "filterNo: %d \n", *(WORD *)pData->Data);
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "bindedLspNum: %d \n", *(BYTE *)pData->Data);
num = *(BYTE *)pData->Data;
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "ExistLspNum: %d \n", *(BYTE *)pData->Data);
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
for(i = 0; i < num; i++)
{
sdp_printf(sty, "lspNoEntry[%d]: %d \n", i, *(WORD *)pData->Data);
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
}
sdp_printf(sty, "QosAddr.addrType: %d \n", *(BYTE *)pData->Data);
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "QosAddr.ScrAddr.IpAddr: %d \n", lntoa(*(DWORD *)pData->Data));
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "QosAddr.ScrAddr.mask.addrMask: %d \n", lntoa(*(DWORD *)pData->Data));
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "QosAddr.DstAddr.IpAddr: %d \n", lntoa(*(DWORD *)pData->Data));
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "QosAddr.DstAddr.mask.addrMask: %d \n", lntoa(*(DWORD *)pData->Data));
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "QosPort.ScrPort.minPort: %d \n", *(WORD *)pData->Data);
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "QosPort.ScrPort.maxPort: %d \n", *(WORD *)pData->Data);
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "QosPort.DstPort.minPort: %d \n", *(WORD *)pData->Data);
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "QosPort.DstPort.maxPort: %d \n", *(WORD *)pData->Data);
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "QosDscp: %d \n", *(WORD *)pData->Data);
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "QosPhyPortNum: %d \n", *(BYTE *)pData->Data);
num = *(BYTE *)pData->Data;
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
for(i = 0; i < num; i++)
{
sdp_printf(sty, "QosPhyPort[%d].module: %d \n", i, *(BYTE *)pData->Data);
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "QosPhyPort[%d].port: %d \n", i, *(BYTE *)pData->Data);
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
}
sdp_printf(sty, "QosProtoType: %d \n", *(BYTE *)pData->Data);
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
sdp_printf(sty, "QosPrio: %d \n", *(BYTE *)pData->Data);
pData = (mpls_opr_data_t *)(pData->Data + pData->Len);
}
}
#endif
int16 sh_mpls_api(struct sty *sty, SDP_PARAM_STRU *para_group, int16 is_no, int16 telnet_num)
{
mpls_sh_data_t in;
mpls_comm_oam_t *out;
int mem_size;
memset(&in, 0, sizeof(mpls_sh_data_t));
/* cmd: show mpls ldp neighbor */
out = (mpls_comm_oam_t *)GET_UB(MPLS_DATA_SIZE_MAX);
if(!out)
{
sdp_printf(sty, "Memory allocate failed!");
return SDP_CMD_SUCCESS;
}
memset(out, 0x0, sizeof(out));
showMplsLdpNeighbor(&in, out);
showMplsLdpNeighborDisplay(sty, out);
RET_UB(out);
/*cmd: show mpls ldp session */
out = (mpls_comm_oam_t *)GET_UB(MPLS_DATA_SIZE_MAX);
if(!out)
{
sdp_printf(sty, "Memory allocate failed!");
return SDP_CMD_SUCCESS;
}
memset(out, 0x0, sizeof(out));
showMplsLdpSession(&in, out);
showMplsLdpSessionDisplay(sty, out);
RET_UB(out);
/* cmd: show mpls ldp peer */
out = (mpls_comm_oam_t *)GET_UB(MPLS_DATA_SIZE_MAX);
if(!out)
{
sdp_printf(sty, "Memory allocate failed!");
return SDP_CMD_SUCCESS;
}
memset(out, 0x0, sizeof(out));
showMplsLdpPeer(&in, out);
showMplsLdpPeerDisplay(sty, out);
RET_UB(out);
/* cmd: show mpls ldp parameter */
out = (mpls_comm_oam_t *)GET_UB(MPLS_DATA_SIZE_MAX);
if(!out)
{
sdp_printf(sty, "Memory allocate failed!");
return SDP_CMD_SUCCESS;
}
memset(out, 0x0, sizeof(out));
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -