同时建链两条成功,待调试
This commit is contained in:
+11
-2
@@ -301,7 +301,7 @@ void APP_API_Data_Init()
|
|||||||
.M_OutnetRaw_Enable = 0xAA, /**< 外网透传通信功能开关 */
|
.M_OutnetRaw_Enable = 0xAA, /**< 外网透传通信功能开关 */
|
||||||
.M_CpuUsageGet_Enable = 0x55,/**< 获取cpu使用率功能开关 */
|
.M_CpuUsageGet_Enable = 0x55,/**< 获取cpu使用率功能开关 */
|
||||||
.M_RemoteUpdate_Enable = 0x55,/**< 远程部署内网安全通信功能开关 */
|
.M_RemoteUpdate_Enable = 0x55,/**< 远程部署内网安全通信功能开关 */
|
||||||
.ID_Maintenance = DEVICE_TYPE_AIM,
|
.ID_Maintenance = {2, DEVICE_TYPE_AIM, 0xF801U},
|
||||||
.Start_Path = "/emmc1", /**< 程序启动路径 */
|
.Start_Path = "/emmc1", /**< 程序启动路径 */
|
||||||
.reboot_replycount = 10, /**< 重启确认报文回复次数 */
|
.reboot_replycount = 10, /**< 重启确认报文回复次数 */
|
||||||
.M_AutoReboot_Count = 3, /**< 自动重启次数 */
|
.M_AutoReboot_Count = 3, /**< 自动重启次数 */
|
||||||
@@ -369,12 +369,17 @@ void APP_API_Data_Init()
|
|||||||
.OutNetBlue.OutnetRaw_Port = 54002, /**< 外网透传通信端口 */
|
.OutNetBlue.OutnetRaw_Port = 54002, /**< 外网透传通信端口 */
|
||||||
.OutNetBlue.InnetRaw_Port = 53003, /**< 内网透传通信端口 */
|
.OutNetBlue.InnetRaw_Port = 53003, /**< 内网透传通信端口 */
|
||||||
|
|
||||||
.INNET_COM_NUM = 1, /**< 内网通信设备数量 */
|
.INNET_COM_NUM = 2, /**< 内网通信设备数量 */
|
||||||
.INNET_COM_CFG[0].InnetID = DEVICE_TYPE_AIM, /**< 内网通信ID */
|
.INNET_COM_CFG[0].InnetID = DEVICE_TYPE_AIM, /**< 内网通信ID */
|
||||||
.INNET_COM_CFG[0].Port_Raw_G = 55004, /**< 绿网透传端口 */
|
.INNET_COM_CFG[0].Port_Raw_G = 55004, /**< 绿网透传端口 */
|
||||||
.INNET_COM_CFG[0].Port_Safe_G = 55003, /**< 绿网安全端口 */
|
.INNET_COM_CFG[0].Port_Safe_G = 55003, /**< 绿网安全端口 */
|
||||||
.INNET_COM_CFG[0].Port_Raw_P = 55004, /**< 紫网透传端口 */
|
.INNET_COM_CFG[0].Port_Raw_P = 55004, /**< 紫网透传端口 */
|
||||||
.INNET_COM_CFG[0].Port_Safe_P = 55003, /**< 紫网安全端口 */
|
.INNET_COM_CFG[0].Port_Safe_P = 55003, /**< 紫网安全端口 */
|
||||||
|
.INNET_COM_CFG[1].InnetID = 0XF801U, /**< 内网通信ID */
|
||||||
|
.INNET_COM_CFG[1].Port_Safe_G = 55005, /**< 绿网安全端口 */
|
||||||
|
.INNET_COM_CFG[1].Port_Raw_G = 0XFFFF,
|
||||||
|
.INNET_COM_CFG[1].Port_Safe_P = 55005, /**< 紫网安全端口 */
|
||||||
|
.INNET_COM_CFG[1].Port_Raw_P = 0XFFFF,
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -442,6 +447,8 @@ void APP_API_Data_Init()
|
|||||||
(void)CommonMemCpy((void*)(AppCfgInterface.Logger_P_IP), (UINT32)sizeof(CM_CHAR) * 32, (const void*)("192.168.18.100"), (UINT32)sizeof("192.168.18.100"));
|
(void)CommonMemCpy((void*)(AppCfgInterface.Logger_P_IP), (UINT32)sizeof(CM_CHAR) * 32, (const void*)("192.168.18.100"), (UINT32)sizeof("192.168.18.100"));
|
||||||
AppCfgInterface.INNET_COM_CFG[0].IP_G = (CM_UINT32)inet_addr("192.168.146.100");
|
AppCfgInterface.INNET_COM_CFG[0].IP_G = (CM_UINT32)inet_addr("192.168.146.100");
|
||||||
AppCfgInterface.INNET_COM_CFG[0].IP_P = (CM_UINT32)inet_addr("192.168.18.100");
|
AppCfgInterface.INNET_COM_CFG[0].IP_P = (CM_UINT32)inet_addr("192.168.18.100");
|
||||||
|
AppCfgInterface.INNET_COM_CFG[1].IP_G = (CM_UINT32)inet_addr("192.168.146.100");
|
||||||
|
AppCfgInterface.INNET_COM_CFG[1].IP_P = (CM_UINT32)inet_addr("192.168.18.100");
|
||||||
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@@ -506,6 +513,8 @@ void APP_API_Data_Init()
|
|||||||
(void)CommonMemCpy((void*)(AppCfgInterface.Logger_P_IP), (UINT32)sizeof(CM_CHAR) * 32, (const void*)("192.168.20.100"), (UINT32)sizeof("192.168.20.100"));
|
(void)CommonMemCpy((void*)(AppCfgInterface.Logger_P_IP), (UINT32)sizeof(CM_CHAR) * 32, (const void*)("192.168.20.100"), (UINT32)sizeof("192.168.20.100"));
|
||||||
AppCfgInterface.INNET_COM_CFG[0].IP_G = (CM_UINT32)inet_addr("192.168.148.100");
|
AppCfgInterface.INNET_COM_CFG[0].IP_G = (CM_UINT32)inet_addr("192.168.148.100");
|
||||||
AppCfgInterface.INNET_COM_CFG[0].IP_P = (CM_UINT32)inet_addr("192.168.20.100");
|
AppCfgInterface.INNET_COM_CFG[0].IP_P = (CM_UINT32)inet_addr("192.168.20.100");
|
||||||
|
AppCfgInterface.INNET_COM_CFG[1].IP_G = (CM_UINT32)inet_addr("192.168.148.100");
|
||||||
|
AppCfgInterface.INNET_COM_CFG[1].IP_P = (CM_UINT32)inet_addr("192.168.20.100");
|
||||||
|
|
||||||
}
|
}
|
||||||
if(SYSTEM_WORK_MODE_ONLY == cSystemWorkType)
|
if(SYSTEM_WORK_MODE_ONLY == cSystemWorkType)
|
||||||
|
|||||||
+15
-26
@@ -406,7 +406,7 @@ static void s_SockInit_2oo2(void)
|
|||||||
rt = CM_UDP_Socket_Create(&s_CFM_Sock.Sock_2oo2_Assert, CM_FALSE, (CM_UINT32)inet_addr(g_PFM_Cfg.Local_Cfg.IP_2oo2), g_PFM_Cfg.Local_Cfg.Port_2oo2_Assert,0u, ENUM_UNICAST);
|
rt = CM_UDP_Socket_Create(&s_CFM_Sock.Sock_2oo2_Assert, CM_FALSE, (CM_UINT32)inet_addr(g_PFM_Cfg.Local_Cfg.IP_2oo2), g_PFM_Cfg.Local_Cfg.Port_2oo2_Assert,0u, ENUM_UNICAST);
|
||||||
CM_NM_ASSERT(ENUM_CM_TRUE == rt, NET_MODE,DARK_FAULT_CODE_FUN_ORDER_1, TSCP_DARK_ASSERT_26);
|
CM_NM_ASSERT(ENUM_CM_TRUE == rt, NET_MODE,DARK_FAULT_CODE_FUN_ORDER_1, TSCP_DARK_ASSERT_26);
|
||||||
|
|
||||||
if ((0x55u == g_PFM_Cfg.M_RemoteUpdate_Enable) &&(0x00u != g_Maintenance_Id))
|
if ((0x55u == g_PFM_Cfg.M_RemoteUpdate_Enable) &&(0u < g_Maintenance_Ids[0]))
|
||||||
{
|
{
|
||||||
/*- 创建维护模式下的2取socket */
|
/*- 创建维护模式下的2取socket */
|
||||||
rt = CM_UDP_Socket_Create(&s_CFM_Sock.Sock_2oo2_Maintenance, CM_FALSE, (CM_UINT32)inet_addr(g_PFM_Cfg.Local_Cfg.IP_2oo2), g_PFM_Cfg.Local_Cfg.Port_2oo2_Maintenance, 0u, ENUM_UNICAST);
|
rt = CM_UDP_Socket_Create(&s_CFM_Sock.Sock_2oo2_Maintenance, CM_FALSE, (CM_UINT32)inet_addr(g_PFM_Cfg.Local_Cfg.IP_2oo2), g_PFM_Cfg.Local_Cfg.Port_2oo2_Maintenance, 0u, ENUM_UNICAST);
|
||||||
@@ -475,7 +475,7 @@ static void s_NetInit_2oo2(void)
|
|||||||
rtCheck = CM_Thread_Create((CM_THREAD_T*)NULL, (CM_THREAD_FUNC_T)t_UdpRecvThread, "2oo2_Rx", 0, CM_TASK_PRIORITY_73, (CM_Thread_Arg_Struct_T*)&s_CFM_Rx2oo2_Assert);
|
rtCheck = CM_Thread_Create((CM_THREAD_T*)NULL, (CM_THREAD_FUNC_T)t_UdpRecvThread, "2oo2_Rx", 0, CM_TASK_PRIORITY_73, (CM_Thread_Arg_Struct_T*)&s_CFM_Rx2oo2_Assert);
|
||||||
CM_NM_ASSERT(CM_TRUE == rtCheck, NET_MODE,DARK_FAULT_CODE_FUN_ORDER_1, TSCP_DARK_ASSERT_29);
|
CM_NM_ASSERT(CM_TRUE == rtCheck, NET_MODE,DARK_FAULT_CODE_FUN_ORDER_1, TSCP_DARK_ASSERT_29);
|
||||||
|
|
||||||
if ((0x55u == g_PFM_Cfg.M_RemoteUpdate_Enable) &&(0x00u != g_Maintenance_Id))
|
if ((0x55u == g_PFM_Cfg.M_RemoteUpdate_Enable) &&(0u < g_Maintenance_Ids[0]))
|
||||||
{
|
{
|
||||||
CM_NM_ASSERT(s_CFM_Rx2oo2Mainteance.IP != NULL, NET_MODE,DARK_FAULT_CODE_FUN_ORDER_1, TSCP_DARK_ASSERT_19);
|
CM_NM_ASSERT(s_CFM_Rx2oo2Mainteance.IP != NULL, NET_MODE,DARK_FAULT_CODE_FUN_ORDER_1, TSCP_DARK_ASSERT_19);
|
||||||
(void)sprintf(s_CFM_Rx2oo2Mainteance.IP, "%s", g_PFM_Cfg.Local_Cfg.IP_2oo2);
|
(void)sprintf(s_CFM_Rx2oo2Mainteance.IP, "%s", g_PFM_Cfg.Local_Cfg.IP_2oo2);
|
||||||
@@ -3199,7 +3199,7 @@ static void s_NetInit_RemoteUpdate(void)
|
|||||||
CM_BOOL rtCheck; /* 临时变量 */
|
CM_BOOL rtCheck; /* 临时变量 */
|
||||||
CM_INT32 i = 0; /* 循环变量 */
|
CM_INT32 i = 0; /* 循环变量 */
|
||||||
|
|
||||||
if ((0x55u == g_PFM_Cfg.M_RemoteUpdate_Enable) &&(0x00u != g_Maintenance_Id))
|
if ((0x55u == g_PFM_Cfg.M_RemoteUpdate_Enable) &&(0u < g_Maintenance_Ids[0]))
|
||||||
{
|
{
|
||||||
/* 维护模式下用到的cfg全局变量数据拷贝,防护内存自检宕机引起的维护模式下使用cfg全局变量异常 */
|
/* 维护模式下用到的cfg全局变量数据拷贝,防护内存自检宕机引起的维护模式下使用cfg全局变量异常 */
|
||||||
g_RMUP_Cfg.CPU_ID=g_PFM_Cfg.CPU_ID;
|
g_RMUP_Cfg.CPU_ID=g_PFM_Cfg.CPU_ID;
|
||||||
@@ -3779,6 +3779,7 @@ static CM_THREAD_FUNC_T t_RemoteUpdateThread(IN CM_Thread_Arg_Struct_T* arg)
|
|||||||
CM_UINT16 rmtPort_raw;/* 对方透传端口 */
|
CM_UINT16 rmtPort_raw;/* 对方透传端口 */
|
||||||
struct in_addr serveraddr;/* 源ip */
|
struct in_addr serveraddr;/* 源ip */
|
||||||
CM_UINT8 Result = 0x0u;/* 请求处理结果 */
|
CM_UINT8 Result = 0x0u;/* 请求处理结果 */
|
||||||
|
CM_UINT16 innetID = 0U;
|
||||||
#if QNX
|
#if QNX
|
||||||
void* pmask = NULL;
|
void* pmask = NULL;
|
||||||
/*- 本线程锁定在 A53 core 1 */
|
/*- 本线程锁定在 A53 core 1 */
|
||||||
@@ -3786,25 +3787,7 @@ static CM_THREAD_FUNC_T t_RemoteUpdateThread(IN CM_Thread_Arg_Struct_T* arg)
|
|||||||
(void)ThreadCtl(_NTO_TCTL_RUNMASK, pmask);
|
(void)ThreadCtl(_NTO_TCTL_RUNMASK, pmask);
|
||||||
#endif
|
#endif
|
||||||
MSCP_LOG_MSG("IP:%s:%d UDP recv Start\n", pCtrl->IP, pCtrl->port);
|
MSCP_LOG_MSG("IP:%s:%d UDP recv Start\n", pCtrl->IP, pCtrl->port);
|
||||||
/*- 获取目的IP端口 */
|
if(0u == g_Maintenance_Ids[0])
|
||||||
pCom = PFM_INI_InnetID2Addr(g_Maintenance_Id);
|
|
||||||
if (NULL != pCom)
|
|
||||||
{
|
|
||||||
/*- 本机是否为CPU1 */
|
|
||||||
if (1u == g_PFM_Cfg.CPU_ID)
|
|
||||||
{
|
|
||||||
rmtIP = pCom->IP_G;
|
|
||||||
rmtPort_safe = pCom->Port_Safe_G;
|
|
||||||
rmtPort_raw = pCom->Port_Raw_G;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
rmtIP = pCom->IP_P;
|
|
||||||
rmtPort_safe = pCom->Port_Safe_P;
|
|
||||||
rmtPort_raw = pCom->Port_Raw_P;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
{
|
||||||
(void)CFM_DarkLog_Storage(DARK_LOG_HEX, TSCP_DARK_WARNING, 4U, DARK_FAULT_CODE_MERGE(NET_MODE, DARK_FAULT_CODE_FUN_ORDER_9, TSCP_DARK_ASSERT_1));
|
(void)CFM_DarkLog_Storage(DARK_LOG_HEX, TSCP_DARK_WARNING, 4U, DARK_FAULT_CODE_MERGE(NET_MODE, DARK_FAULT_CODE_FUN_ORDER_9, TSCP_DARK_ASSERT_1));
|
||||||
MSCP_LOG_MSG("Map Value From g_Maintenance_Id Error!!!\n");
|
MSCP_LOG_MSG("Map Value From g_Maintenance_Id Error!!!\n");
|
||||||
@@ -3821,10 +3804,16 @@ static CM_THREAD_FUNC_T t_RemoteUpdateThread(IN CM_Thread_Arg_Struct_T* arg)
|
|||||||
if (len > 0)
|
if (len > 0)
|
||||||
{
|
{
|
||||||
MSCP_LOG_DATALEN(rcvBuf, len, "t_RemoteUpdateThread rcvBuflen");
|
MSCP_LOG_DATALEN(rcvBuf, len, "t_RemoteUpdateThread rcvBuflen");
|
||||||
/*- 源IP端口是否合法 */
|
pCom = PFM_INI_InnetIP2Addr(srcIP, srcPort);
|
||||||
if ((srcIP == rmtIP) && ((srcPort== rmtPort_safe) || (srcPort == rmtPort_raw)))
|
rt = ENUM_CM_FALSE;
|
||||||
|
if(NULL != pCom)
|
||||||
{
|
{
|
||||||
if (srcPort== rmtPort_safe)
|
rt = PFM_MaintenanceID_Search(pCom->InnetID);
|
||||||
|
}
|
||||||
|
/*- 源IP端口是否合法 */
|
||||||
|
if (ENUM_CM_TRUE == rt)
|
||||||
|
{
|
||||||
|
if (srcPort== pCom->Port_Safe_G || srcPort == pCom->Port_Safe_P)
|
||||||
{
|
{
|
||||||
/*- @alias 需要解sfp协议的远程部署命令 */
|
/*- @alias 需要解sfp协议的远程部署命令 */
|
||||||
/*- @alias 将收到的完整帧写入线程接收队列 */
|
/*- @alias 将收到的完整帧写入线程接收队列 */
|
||||||
@@ -4039,7 +4028,7 @@ void CFM_NetFlush(void)
|
|||||||
{
|
{
|
||||||
/*无处理 */
|
/*无处理 */
|
||||||
}
|
}
|
||||||
if((0x55u == g_PFM_Cfg.M_RemoteUpdate_Enable) &&(0x00u != g_Maintenance_Id))
|
if((0x55u == g_PFM_Cfg.M_RemoteUpdate_Enable) &&(0u < g_Maintenance_Ids[0]))
|
||||||
{
|
{
|
||||||
/*- 内网远程部署接收缓冲区清空 */
|
/*- 内网远程部署接收缓冲区清空 */
|
||||||
rt = CM_MQ_Flush(&s_CFM_RxRemoteUpdate.MsgQ);
|
rt = CM_MQ_Flush(&s_CFM_RxRemoteUpdate.MsgQ);
|
||||||
|
|||||||
@@ -694,7 +694,7 @@ static void SelfCheckInit(void)
|
|||||||
{
|
{
|
||||||
#ifdef QNX
|
#ifdef QNX
|
||||||
/*- 文件自检初始化 */
|
/*- 文件自检初始化 */
|
||||||
PFM_FileInit();
|
//PFM_FileInit();
|
||||||
/*- 内存自检初始化*/
|
/*- 内存自检初始化*/
|
||||||
PFM_MemCheck_Init();
|
PFM_MemCheck_Init();
|
||||||
/*- CPU自检初始化*/
|
/*- CPU自检初始化*/
|
||||||
|
|||||||
@@ -262,7 +262,7 @@ extern CM_UINT8 TSCP_QNX_VERION[10]; /** 操作系统版本号 */
|
|||||||
CM_UINT32 M_RemoteUpdate_Enable;/**< 远程部署内网安全通信功能开关 */
|
CM_UINT32 M_RemoteUpdate_Enable;/**< 远程部署内网安全通信功能开关 */
|
||||||
CM_UINT8 M_Area_Enable; /**< 倒切配置,0x00为兼容的主线版本,0x55为CI,0xAA为RC */
|
CM_UINT8 M_Area_Enable; /**< 倒切配置,0x00为兼容的主线版本,0x55为CI,0xAA为RC */
|
||||||
CM_UINT8 M_AREA_SEB_Enable; /**< 区域串口板卡使能开关 */
|
CM_UINT8 M_AREA_SEB_Enable; /**< 区域串口板卡使能开关 */
|
||||||
CM_UINT16 ID_Maintenance; /*维护终端ID*/
|
CM_UINT16 ID_Maintenance[257]; /*维护终端ID,可能有多个,固定下标0表示ID个数, 下标1表示主要ID*/
|
||||||
CM_CHAR Start_Path[32]; /**< 程序启动路径 */
|
CM_CHAR Start_Path[32]; /**< 程序启动路径 */
|
||||||
CM_INT32 reboot_replycount; /**< 重启确认报文回复次数 */
|
CM_INT32 reboot_replycount; /**< 重启确认报文回复次数 */
|
||||||
CM_UINT8 M_AutoReboot_Count; /**< 自动重启次数 */
|
CM_UINT8 M_AutoReboot_Count; /**< 自动重启次数 */
|
||||||
|
|||||||
@@ -940,7 +940,7 @@ static void PFM_LOG_MaintenanceMode(ENUM_BOARD_STATE_T MaintenanceFlag, CM_UINT3
|
|||||||
while (1)
|
while (1)
|
||||||
{
|
{
|
||||||
/*- 远程部署功能开关开启,并且维护id应用已设置不是初始值0 是否允许进入维护模式*/
|
/*- 远程部署功能开关开启,并且维护id应用已设置不是初始值0 是否允许进入维护模式*/
|
||||||
if ((0x55u == g_RMUP_Cfg.M_RemoteUpdate_Enable) && (0x00u != g_Maintenance_Id) && (0x55 == MaintenanceFlag) && ((ENUM_BOARDSTATE_EXIT == boardState) || (ENUM_BOARDSTATE_UPDATE == boardState) || (ENUM_BOARDSTATE_DEFAULT == boardState)))
|
if ((0x55u == g_RMUP_Cfg.M_RemoteUpdate_Enable) && (0u < g_Maintenance_Ids[0]) && (0x55 == MaintenanceFlag) && ((ENUM_BOARDSTATE_EXIT == boardState) || (ENUM_BOARDSTATE_UPDATE == boardState) || (ENUM_BOARDSTATE_DEFAULT == boardState)))
|
||||||
{
|
{
|
||||||
MSCP_LOG_MSG("----------Maintenance Mode count = %d----------\n",s_count);
|
MSCP_LOG_MSG("----------Maintenance Mode count = %d----------\n",s_count);
|
||||||
|
|
||||||
@@ -989,8 +989,8 @@ static void PFM_LOG_MaintenanceMode(ENUM_BOARD_STATE_T MaintenanceFlag, CM_UINT3
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
MSCP_LOG_MSG("MaintenanceFlag = %d, g_Maintenance_Id = %d, g_RMUP_Cfg.M_RemoteUpdate_Enable = %d, boardState = %d\n", \
|
MSCP_LOG_MSG("MaintenanceFlag = %d, g_Maintenance_Id nums = %d, g_RMUP_Cfg.M_RemoteUpdate_Enable = %d, boardState = %d\n", \
|
||||||
MaintenanceFlag,g_Maintenance_Id,g_RMUP_Cfg.M_RemoteUpdate_Enable,boardState);
|
MaintenanceFlag,g_Maintenance_Ids[0],g_RMUP_Cfg.M_RemoteUpdate_Enable,boardState);
|
||||||
CM_Sleep(CM_UINT32_MAX);
|
CM_Sleep(CM_UINT32_MAX);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -34,7 +34,7 @@
|
|||||||
#define WAIT_TIME_2S (2000u/g_PFM_Cfg.CYC_TIME + 1u)
|
#define WAIT_TIME_2S (2000u/g_PFM_Cfg.CYC_TIME + 1u)
|
||||||
#define WAIT_TIME_10S (10000u/g_PFM_Cfg.CYC_TIME + 1u)
|
#define WAIT_TIME_10S (10000u/g_PFM_Cfg.CYC_TIME + 1u)
|
||||||
#define WAIT_TIME_120S (120000u/g_PFM_Cfg.CYC_TIME + 1u)
|
#define WAIT_TIME_120S (120000u/g_PFM_Cfg.CYC_TIME + 1u)
|
||||||
CM_UINT16 g_Maintenance_Id = 0x00u;/* 维护终端内网id */
|
CM_UINT16 g_Maintenance_Ids[256] = {0};/* 维护终端内网id */
|
||||||
CM_UINT8 g_RemoteUpdate_State = 0x00u;/* 远程部署过程状态 */
|
CM_UINT8 g_RemoteUpdate_State = 0x00u;/* 远程部署过程状态 */
|
||||||
|
|
||||||
ENUM_BOARD_STATE_T g_boardState = ENUM_BOARDSTATE_ERROR;
|
ENUM_BOARD_STATE_T g_boardState = ENUM_BOARDSTATE_ERROR;
|
||||||
@@ -284,7 +284,7 @@ ENUM_CM_RETURN PFM_InnetRemoteUpdate_Send(IN CM_UINT8 ResponseBuf[],IN CM_UINT16
|
|||||||
STRU_PFM_INNET_CFG_T* pCom = NULL;/* 通信配置 */
|
STRU_PFM_INNET_CFG_T* pCom = NULL;/* 通信配置 */
|
||||||
|
|
||||||
/*- 获取目的IP端口 */
|
/*- 获取目的IP端口 */
|
||||||
pCom = PFM_INI_InnetID2Addr(g_Maintenance_Id);
|
pCom = PFM_INI_InnetID2Addr(g_Maintenance_Ids[1]);
|
||||||
/*- 是否获取成功 */
|
/*- 是否获取成功 */
|
||||||
if ((NULL != ResponseBuf) && (NULL != pCom))
|
if ((NULL != ResponseBuf) && (NULL != pCom))
|
||||||
{
|
{
|
||||||
@@ -1034,7 +1034,7 @@ ENUM_CM_RETURN PFM_DevStateSend(CM_UINT8 ifCyc)
|
|||||||
CM_UINT8 i = 0;
|
CM_UINT8 i = 0;
|
||||||
|
|
||||||
MSCP_LOG_MSG("Maintenance Mode DevStateSendIndex = %d\n",DevStateSendIndex);
|
MSCP_LOG_MSG("Maintenance Mode DevStateSendIndex = %d\n",DevStateSendIndex);
|
||||||
if((0x00u != g_Maintenance_Id) && (0x55u == g_RMUP_Cfg.M_RemoteUpdate_Enable) && (0x55u == g_RMUP_Cfg.M_2oo2_Enable))
|
if((0u < g_Maintenance_Ids[0]) && (0x55u == g_RMUP_Cfg.M_RemoteUpdate_Enable) && (0x55u == g_RMUP_Cfg.M_2oo2_Enable))
|
||||||
{
|
{
|
||||||
/* 总长度(临时添加) */
|
/* 总长度(临时添加) */
|
||||||
txLen = 0u;
|
txLen = 0u;
|
||||||
@@ -1164,7 +1164,6 @@ ENUM_CM_RETURN PFM_DevStateSend(CM_UINT8 ifCyc)
|
|||||||
/*- 检查2oo2双机的输出校验帧是否一致 */
|
/*- 检查2oo2双机的输出校验帧是否一致 */
|
||||||
CM_ASSERT_MAINTAIN(offset == rxLen);
|
CM_ASSERT_MAINTAIN(offset == rxLen);
|
||||||
/*- 设置设备id */
|
/*- 设置设备id */
|
||||||
dstName = g_Maintenance_Id;
|
|
||||||
if(1u == g_RMUP_Cfg.CPU_ID)
|
if(1u == g_RMUP_Cfg.CPU_ID)
|
||||||
{
|
{
|
||||||
(void)CM_Memcpy(txBuf+offset,1000u-offset,rxBuf+3u,rxLen-3u);
|
(void)CM_Memcpy(txBuf+offset,1000u-offset,rxBuf+3u,rxLen-3u);
|
||||||
@@ -1177,8 +1176,12 @@ ENUM_CM_RETURN PFM_DevStateSend(CM_UINT8 ifCyc)
|
|||||||
/* 填入长度,总长是offset-自身2字节 */
|
/* 填入长度,总长是offset-自身2字节 */
|
||||||
txLen = offset - 2u;
|
txLen = offset - 2u;
|
||||||
CM_ShortToChar(txLen, &txBuf[0]);
|
CM_ShortToChar(txLen, &txBuf[0]);
|
||||||
ret = Prtcl_InnetSafe_RmSend(dstName, txBuf, offset);
|
for(i = 1; i <= g_Maintenance_Ids[0]; i++)
|
||||||
MSCP_LOG_MSG("offset = %d send ret =%d\n",offset, ret);
|
{
|
||||||
|
dstName = g_Maintenance_Ids[i];
|
||||||
|
ret = Prtcl_InnetSafe_RmSend(dstName, txBuf, offset);
|
||||||
|
MSCP_LOG_MSG("INNET RM dst id %x offset = %d send ret =%d\n",offset, ret);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@@ -1191,8 +1194,12 @@ ENUM_CM_RETURN PFM_DevStateSend(CM_UINT8 ifCyc)
|
|||||||
/* 填入长度,总长是offset-自身2字节 */
|
/* 填入长度,总长是offset-自身2字节 */
|
||||||
rxLen = offset - 2u;
|
rxLen = offset - 2u;
|
||||||
CM_ShortToChar(rxLen, &rxBuf[0]);
|
CM_ShortToChar(rxLen, &rxBuf[0]);
|
||||||
ret = Prtcl_InnetSafe_RmSend(dstName, rxBuf, offset);
|
for(i = 1; i <= g_Maintenance_Ids[0]; i++)
|
||||||
MSCP_LOG_MSG("offset = %d send ret = %d\n",offset, ret);
|
{
|
||||||
|
dstName = g_Maintenance_Ids[i];
|
||||||
|
ret = Prtcl_InnetSafe_RmSend(dstName, rxBuf, offset);
|
||||||
|
MSCP_LOG_MSG("INNET RM dst id %x offset = %d send ret =%d\n",offset, ret);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@@ -1674,39 +1681,67 @@ void PFM_MaintenanceMode(void)
|
|||||||
* @brief 设置维护终端内网id
|
* @brief 设置维护终端内网id
|
||||||
* @param dstName 维护终端内网id
|
* @param dstName 维护终端内网id
|
||||||
*/
|
*/
|
||||||
void PFM_SetMaintenanceId(IN CM_UINT16 dstName )
|
void PFM_SetMaintenanceId(IN CM_UINT16* dstNames )
|
||||||
{
|
{
|
||||||
/*- 变量初始化 */
|
/*- 变量初始化 */
|
||||||
CM_INT32 i = 0;
|
CM_INT32 i = 0, j = 0, index = 1;
|
||||||
CM_UINT8 FindFlag = 0u;
|
CM_UINT8 FindFlag = 0u;
|
||||||
/*- 开始遍历内网通信配置:是否遍历完成:下一条配置 */
|
/*- 开始遍历内网通信配置:是否遍历完成:下一条配置 */
|
||||||
for (i = 1; i <= (CM_INT32)g_PFM_Cfg.INNET_COM_NUM; i++)
|
if(NULL != dstNames)
|
||||||
{
|
{
|
||||||
/*- 是否找到了目标内网ID */
|
for (i = 1; i <= (CM_INT32)g_PFM_Cfg.INNET_COM_NUM; i++)
|
||||||
if (dstName == g_PFM_Cfg.INNET_COM_CFG[i].InnetID)
|
{
|
||||||
{
|
for(j = 1; j <= dstNames[0]; j++)
|
||||||
/*- 设置维护终端内网id */
|
{
|
||||||
g_Maintenance_Id = dstName;
|
/*- 是否找到了目标内网ID */
|
||||||
FindFlag = 1u;
|
if (dstNames[j] == g_PFM_Cfg.INNET_COM_CFG[i].InnetID)
|
||||||
/*- 返回 */
|
{
|
||||||
break;
|
/*- 设置维护终端内网id */
|
||||||
}
|
g_Maintenance_Ids[index++] = dstNames[j];
|
||||||
else
|
FindFlag = 1u;
|
||||||
{
|
/*- 返回 */
|
||||||
/*- 无处理 */
|
}
|
||||||
}
|
else
|
||||||
}
|
{
|
||||||
|
/*- 无处理 */
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
g_Maintenance_Ids[0] = index - 1;
|
||||||
|
|
||||||
if (1u != FindFlag)
|
if (1u != FindFlag)
|
||||||
{
|
{
|
||||||
(void)CFM_DarkLog_Storage(DARK_LOG_HEX, TSCP_DARK_WARNING, 4U, DARK_FAULT_CODE_MERGE(REMOTE_UPDATE, DARK_FAULT_CODE_FUN_ORDER_10, TSCP_DARK_ASSERT_1));
|
(void)CFM_DarkLog_Storage(DARK_LOG_HEX, TSCP_DARK_WARNING, 4U, DARK_FAULT_CODE_MERGE(REMOTE_UPDATE, DARK_FAULT_CODE_FUN_ORDER_10, TSCP_DARK_ASSERT_1));
|
||||||
MSCP_LOG_MSG("MSCP_SetMaintenanceId Error!!! dstName not find in INNET_COM_CFG InnetID\n",dstName);
|
MSCP_LOG_MSG("MSCP_SetMaintenanceId Error!!! dstName not find in INNET_COM_CFG InnetID\n");
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
/**
|
||||||
|
* @brief 查询维护ID是否存在
|
||||||
|
* @param id 待查询的ID
|
||||||
|
* @return
|
||||||
|
* ENUM_CM_TRUE-存在
|
||||||
|
* ENUM_CM_FALSE-不存在
|
||||||
|
*/
|
||||||
|
ENUM_CM_RETURN PFM_MaintenanceID_Search(IN CM_UINT16 id)
|
||||||
|
{
|
||||||
|
ENUM_CM_RETURN ret = ENUM_CM_FALSE;
|
||||||
|
CM_UINT32 i = 0;
|
||||||
|
for(i = 1u; i <= g_Maintenance_Ids[0]; i++)
|
||||||
|
{
|
||||||
|
if(id == g_Maintenance_Ids[i])
|
||||||
|
{
|
||||||
|
ret = ENUM_CM_TRUE;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
/**
|
/**
|
||||||
* @brief 硬件重启确认帧组包发送
|
* @brief 硬件重启确认帧组包发送
|
||||||
* @param type 发送数据类型 取值范围:0x55或0x56
|
* @param type 发送数据类型 取值范围:0x55或0x56
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ extern "C"
|
|||||||
|
|
||||||
#define FAULT_REBOOT_CUT_MAX (3u) /*故障重启次数限制*/
|
#define FAULT_REBOOT_CUT_MAX (3u) /*故障重启次数限制*/
|
||||||
|
|
||||||
extern CM_UINT16 g_Maintenance_Id;/* 维护终端内网id */
|
extern CM_UINT16 g_Maintenance_Ids[256];/* 维护终端内网id */
|
||||||
extern CM_UINT8 g_RemoteUpdate_State;/* 远程部署过程状态 */
|
extern CM_UINT8 g_RemoteUpdate_State;/* 远程部署过程状态 */
|
||||||
extern CM_UINT8 s_switch2xFlag;
|
extern CM_UINT8 s_switch2xFlag;
|
||||||
|
|
||||||
@@ -115,8 +115,12 @@ void PFM_MaintenanceMode(void);
|
|||||||
* @brief 设置维护终端内网id
|
* @brief 设置维护终端内网id
|
||||||
* @param dstName 维护终端内网id
|
* @param dstName 维护终端内网id
|
||||||
*/
|
*/
|
||||||
void PFM_SetMaintenanceId(IN CM_UINT16 dstName);
|
void PFM_SetMaintenanceId(IN CM_UINT16* dstNames);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief 查询维护ID是否存在
|
||||||
|
*/
|
||||||
|
ENUM_CM_RETURN PFM_MaintenanceID_Search(IN CM_UINT16 id);
|
||||||
/**
|
/**
|
||||||
* @brief 远程硬件重启\切系命令接收处理
|
* @brief 远程硬件重启\切系命令接收处理
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -189,7 +189,7 @@ void SFM_PrtclInInit(CM_UINT8* p_SfpInnetPara)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/*- 入参是否为空 */
|
/*- 入参是否为空 */
|
||||||
if ((0x55u == g_PFM_Cfg.M_RemoteUpdate_Enable) &&(0x00u != g_Maintenance_Id) && (NULL != p_SfpInnetPara))
|
if ((0x55u == g_PFM_Cfg.M_RemoteUpdate_Enable) &&(0u < g_Maintenance_Ids[0]) && (NULL != p_SfpInnetPara))
|
||||||
{
|
{
|
||||||
/*- 远程部署内网安全协议初始化*/
|
/*- 远程部署内网安全协议初始化*/
|
||||||
CM_NM_ASSERT(0u != InnetID, PRTCL_MODE, DARK_FAULT_CODE_FUN_ORDER_17, TSCP_DARK_ASSERT_1);
|
CM_NM_ASSERT(0u != InnetID, PRTCL_MODE, DARK_FAULT_CODE_FUN_ORDER_17, TSCP_DARK_ASSERT_1);
|
||||||
@@ -658,7 +658,7 @@ void SFM_UnPrtclProc(void)
|
|||||||
}
|
}
|
||||||
PFM_CFC_Check(46);
|
PFM_CFC_Check(46);
|
||||||
/*- @alias 远程部署内网安全通信协议解析 */
|
/*- @alias 远程部署内网安全通信协议解析 */
|
||||||
if ((0x55u == g_PFM_Cfg.M_RemoteUpdate_Enable) &&(0x00u != g_Maintenance_Id))
|
if ((0x55u == g_PFM_Cfg.M_RemoteUpdate_Enable) &&(0u < g_Maintenance_Ids[0]))
|
||||||
{
|
{
|
||||||
(void)QueueClear(&s_InnetPrtcl_RM.DataToApp);
|
(void)QueueClear(&s_InnetPrtcl_RM.DataToApp);
|
||||||
s_InnetPrtcl_RM.RadamSN = SFM_2x2_GetSysCount();
|
s_InnetPrtcl_RM.RadamSN = SFM_2x2_GetSysCount();
|
||||||
@@ -962,7 +962,7 @@ CM_UINT32 Prtcl_InnetSafe_RmRecv(OUT CM_UINT16* pSrcName, OUT CM_UINT8* pLifeTim
|
|||||||
CM_UINT32 rt_len = 0u; /* 函数返回长度值 */
|
CM_UINT32 rt_len = 0u; /* 函数返回长度值 */
|
||||||
CM_UINT8 rt = 0u; /* 函数返回值 */
|
CM_UINT8 rt = 0u; /* 函数返回值 */
|
||||||
|
|
||||||
if ((0x55u == g_RMUP_Cfg.M_RemoteUpdate_Enable) &&(0x00u != g_Maintenance_Id))
|
if ((0x55u == g_RMUP_Cfg.M_RemoteUpdate_Enable) &&(0u < g_Maintenance_Ids[0]))
|
||||||
{
|
{
|
||||||
/*- 锁定接收队列 */
|
/*- 锁定接收队列 */
|
||||||
(void)CM_Mutex_Lock(s_Innet_RmRecv_M);
|
(void)CM_Mutex_Lock(s_Innet_RmRecv_M);
|
||||||
@@ -1053,7 +1053,7 @@ CM_UINT32 Prtcl_InnetSafe_PlatRmRecv(OUT CM_UINT16* pSrcName, OUT CM_UINT8* pLif
|
|||||||
CM_UINT16 msgLen = 0u; /* 报文长度 */
|
CM_UINT16 msgLen = 0u; /* 报文长度 */
|
||||||
CM_UINT32 qStatus = 0u; /* 队列状态 */
|
CM_UINT32 qStatus = 0u; /* 队列状态 */
|
||||||
CM_UINT32 rt_len = 0u; /* 函数返回长度值 */
|
CM_UINT32 rt_len = 0u; /* 函数返回长度值 */
|
||||||
if ((0x55u == g_RMUP_Cfg.M_RemoteUpdate_Enable) &&(0x00u != g_Maintenance_Id))
|
if ((0x55u == g_RMUP_Cfg.M_RemoteUpdate_Enable) &&(0u < g_Maintenance_Ids[0]))
|
||||||
{
|
{
|
||||||
/*- 锁定接收队列 */
|
/*- 锁定接收队列 */
|
||||||
(void)CM_Mutex_Lock(s_Innet_RmRecv_M);
|
(void)CM_Mutex_Lock(s_Innet_RmRecv_M);
|
||||||
@@ -1122,7 +1122,7 @@ CM_UINT8 Prtcl_InnetSafe_AppRmSend(IN const CM_UINT8* txBuf, IN CM_UINT32 txLen)
|
|||||||
ENUM_CM_RETURN temprt = ENUM_CM_TRUE; /* 临时返回值 */
|
ENUM_CM_RETURN temprt = ENUM_CM_TRUE; /* 临时返回值 */
|
||||||
CM_ASSERT_MAINTAIN(txBuf != NULL);
|
CM_ASSERT_MAINTAIN(txBuf != NULL);
|
||||||
/*- 输入长度检查 */
|
/*- 输入长度检查 */
|
||||||
if ((0x55u == g_RMUP_Cfg.M_RemoteUpdate_Enable) &&(0x00u != g_Maintenance_Id))
|
if ((0x55u == g_RMUP_Cfg.M_RemoteUpdate_Enable) &&(0u < g_Maintenance_Ids[0]))
|
||||||
{
|
{
|
||||||
/*
|
/*
|
||||||
2字节 长度(不含自身)
|
2字节 长度(不含自身)
|
||||||
@@ -1181,7 +1181,7 @@ CM_UINT8 Prtcl_InnetSafe_RmSend(IN CM_UINT16 dstName, IN const CM_UINT8* txBuf,
|
|||||||
ENUM_CM_RETURN temprt = ENUM_CM_TRUE; /* 临时返回值 */
|
ENUM_CM_RETURN temprt = ENUM_CM_TRUE; /* 临时返回值 */
|
||||||
|
|
||||||
/*- 输入长度检查 */
|
/*- 输入长度检查 */
|
||||||
if ((0x55u == g_RMUP_Cfg.M_RemoteUpdate_Enable) &&(0x00u != g_Maintenance_Id))
|
if ((0x55u == g_RMUP_Cfg.M_RemoteUpdate_Enable) &&(0u < g_Maintenance_Ids[0]))
|
||||||
{
|
{
|
||||||
/*- 锁定发送队列 */
|
/*- 锁定发送队列 */
|
||||||
(void)CM_Mutex_Lock(s_Innet_AppRmSend_M);
|
(void)CM_Mutex_Lock(s_Innet_AppRmSend_M);
|
||||||
@@ -1312,7 +1312,7 @@ void SFM_EnPrtclProc(void)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/*- 远程部署内网安全协议封装 */
|
/*- 远程部署内网安全协议封装 */
|
||||||
if ((0x55u == g_PFM_Cfg.M_RemoteUpdate_Enable) &&(0x00u != g_Maintenance_Id))
|
if ((0x55u == g_PFM_Cfg.M_RemoteUpdate_Enable) &&(0u < g_Maintenance_Ids[0]))
|
||||||
{
|
{
|
||||||
CM_LongToChar(0u, s_InnetPrtcl_RM.PrtclSndBuff);
|
CM_LongToChar(0u, s_InnetPrtcl_RM.PrtclSndBuff);
|
||||||
CM_LongToChar(0u, s_InnetPrtcl_RM.RecordArray);
|
CM_LongToChar(0u, s_InnetPrtcl_RM.RecordArray);
|
||||||
@@ -1382,7 +1382,7 @@ CM_UINT32 SFM_ReadInnetRmCodedOutput(OUT CM_UINT8 Buf[], IN CM_UINT32 BufSize)
|
|||||||
*/
|
*/
|
||||||
/*- 获取输出报文总长度 */
|
/*- 获取输出报文总长度 */
|
||||||
CM_UINT32 len = 0u;
|
CM_UINT32 len = 0u;
|
||||||
if ((0x55u == g_PFM_Cfg.M_RemoteUpdate_Enable) &&(0x00u != g_Maintenance_Id))
|
if ((0x55u == g_PFM_Cfg.M_RemoteUpdate_Enable) &&(0u < g_Maintenance_Ids[0]))
|
||||||
{
|
{
|
||||||
len = CM_LongFromChar(s_InnetPrtcl_RM.PrtclSndBuff);
|
len = CM_LongFromChar(s_InnetPrtcl_RM.PrtclSndBuff);
|
||||||
CM_RE_ASSERT(BufSize >= 4u,PRTCL_MODE, DARK_FAULT_CODE_FUN_ORDER_21, TSCP_DARK_ASSERT_1);
|
CM_RE_ASSERT(BufSize >= 4u,PRTCL_MODE, DARK_FAULT_CODE_FUN_ORDER_21, TSCP_DARK_ASSERT_1);
|
||||||
@@ -1538,7 +1538,7 @@ void SFM_TxInnetSafeRm(IN CM_UINT8 Buf[], IN CM_UINT32 Len)
|
|||||||
STRU_PFM_INNET_CFG_T* pCom = NULL;/* 通信配置 */
|
STRU_PFM_INNET_CFG_T* pCom = NULL;/* 通信配置 */
|
||||||
ENUM_CM_RETURN ret = ENUM_CM_FALSE;
|
ENUM_CM_RETURN ret = ENUM_CM_FALSE;
|
||||||
|
|
||||||
if ((0x55u == g_PFM_Cfg.M_RemoteUpdate_Enable) &&(0x00u != g_Maintenance_Id))
|
if ((0x55u == g_PFM_Cfg.M_RemoteUpdate_Enable) &&(0u < g_Maintenance_Ids[0]))
|
||||||
{
|
{
|
||||||
allLen = CM_LongFromChar(Buf); /*外网输出帧报文总长度*/
|
allLen = CM_LongFromChar(Buf); /*外网输出帧报文总长度*/
|
||||||
CM_RE_ASSERT((allLen + 4u) == Len,PRTCL_MODE,DARK_FAULT_CODE_FUN_ORDER_20, TSCP_DARK_ASSERT_1);
|
CM_RE_ASSERT((allLen + 4u) == Len,PRTCL_MODE,DARK_FAULT_CODE_FUN_ORDER_20, TSCP_DARK_ASSERT_1);
|
||||||
@@ -1573,7 +1573,8 @@ void SFM_TxInnetSafeRm(IN CM_UINT8 Buf[], IN CM_UINT32 Len)
|
|||||||
/*- 是否获取成功 */
|
/*- 是否获取成功 */
|
||||||
if (NULL != pCom)
|
if (NULL != pCom)
|
||||||
{
|
{
|
||||||
if (g_Maintenance_Id == dstID)
|
ret = PFM_MaintenanceID_Search(dstID);
|
||||||
|
if (ret == ENUM_CM_TRUE)
|
||||||
{
|
{
|
||||||
/*- 远程部署维护终端设备 */
|
/*- 远程部署维护终端设备 */
|
||||||
/*- 本机是否为CPU1 */
|
/*- 本机是否为CPU1 */
|
||||||
@@ -1624,6 +1625,7 @@ void SFM_TxInnetSafeRemoteUpdate(IN CM_UINT8 Buf[], IN CM_UINT32 Len)
|
|||||||
CM_UINT16 msgLen = 0u; /* 外网输出帧长度 */
|
CM_UINT16 msgLen = 0u; /* 外网输出帧长度 */
|
||||||
CM_UINT16 dstID = 0u; /* 目的设备ID */
|
CM_UINT16 dstID = 0u; /* 目的设备ID */
|
||||||
STRU_PFM_INNET_CFG_T* pCom = NULL;/* 通信配置 */
|
STRU_PFM_INNET_CFG_T* pCom = NULL;/* 通信配置 */
|
||||||
|
ENUM_CM_RETURN ret = ENUM_CM_FALSE;
|
||||||
|
|
||||||
if ((allLen + 4u) == Len)
|
if ((allLen + 4u) == Len)
|
||||||
{
|
{
|
||||||
@@ -1658,7 +1660,8 @@ void SFM_TxInnetSafeRemoteUpdate(IN CM_UINT8 Buf[], IN CM_UINT32 Len)
|
|||||||
/*- 是否获取成功 */
|
/*- 是否获取成功 */
|
||||||
if (NULL != pCom)
|
if (NULL != pCom)
|
||||||
{
|
{
|
||||||
if (g_Maintenance_Id == dstID)
|
ret = PFM_MaintenanceID_Search(dstID);
|
||||||
|
if (ret == ENUM_CM_TRUE)
|
||||||
{
|
{
|
||||||
/*- 远程部署维护终端设备 */
|
/*- 远程部署维护终端设备 */
|
||||||
/*- 本机是否为CPU1 */
|
/*- 本机是否为CPU1 */
|
||||||
@@ -1989,7 +1992,7 @@ void SFM_PrtclBufSwitch(void)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/*- 是否开启远程部署内网安全通信 */
|
/*- 是否开启远程部署内网安全通信 */
|
||||||
if ((0x55u == g_PFM_Cfg.M_RemoteUpdate_Enable) &&(0x00u != g_Maintenance_Id))
|
if ((0x55u == g_PFM_Cfg.M_RemoteUpdate_Enable) &&(0u < g_Maintenance_Ids[0]))
|
||||||
{
|
{
|
||||||
/*- 读取远程部署内网发送缓冲 */
|
/*- 读取远程部署内网发送缓冲 */
|
||||||
len = CM_QueueStatus(&s_Innet_RmSendQ);
|
len = CM_QueueStatus(&s_Innet_RmSendQ);
|
||||||
@@ -2173,7 +2176,7 @@ void SFM_UnPrtclProc_Crash(void)
|
|||||||
{
|
{
|
||||||
CM_UINT8 ret = 0;
|
CM_UINT8 ret = 0;
|
||||||
/*- @alias 内网安全通信协议解析 */
|
/*- @alias 内网安全通信协议解析 */
|
||||||
if ((0x55u == g_RMUP_Cfg.M_RemoteUpdate_Enable) &&(0x00u != g_Maintenance_Id))
|
if ((0x55u == g_RMUP_Cfg.M_RemoteUpdate_Enable) &&(0u < g_Maintenance_Ids[0]))
|
||||||
{
|
{
|
||||||
g_PFM_Check = PFM_CFC_PROC_NUM + 6;
|
g_PFM_Check = PFM_CFC_PROC_NUM + 6;
|
||||||
CM_UINT32 QueuelenA = QueueStatus(&s_InnetPrtcl_RM.OutnetQueueA);
|
CM_UINT32 QueuelenA = QueueStatus(&s_InnetPrtcl_RM.OutnetQueueA);
|
||||||
@@ -2215,7 +2218,7 @@ void SFM_EnPrtclProc_Crash(void)
|
|||||||
SFM_AppToPrtclBuf_InnetSafeCrash();
|
SFM_AppToPrtclBuf_InnetSafeCrash();
|
||||||
|
|
||||||
/*- 内网安全协议封装 */
|
/*- 内网安全协议封装 */
|
||||||
if ((0x55u == g_RMUP_Cfg.M_RemoteUpdate_Enable) &&(0x00u != g_Maintenance_Id))
|
if ((0x55u == g_RMUP_Cfg.M_RemoteUpdate_Enable) &&(0u < g_Maintenance_Ids[0]))
|
||||||
{
|
{
|
||||||
MSCP_LOG_MSG("SFM_EnPrtclProc_Crash Queuelen1 = %d\n",QueueStatus(&s_InnetPrtcl_RM.OutputDataQueue));
|
MSCP_LOG_MSG("SFM_EnPrtclProc_Crash Queuelen1 = %d\n",QueueStatus(&s_InnetPrtcl_RM.OutputDataQueue));
|
||||||
CM_LongToChar(0u, s_InnetPrtcl_RM.PrtclSndBuff);
|
CM_LongToChar(0u, s_InnetPrtcl_RM.PrtclSndBuff);
|
||||||
@@ -2254,7 +2257,7 @@ void SFM_PrtclBufToApp_InnetSafeCrash(void)
|
|||||||
ENUM_CM_RETURN ret = ENUM_CM_FALSE;
|
ENUM_CM_RETURN ret = ENUM_CM_FALSE;
|
||||||
CM_UINT8 rslt = 0u;
|
CM_UINT8 rslt = 0u;
|
||||||
/*- 是否开启内网安全通信 */
|
/*- 是否开启内网安全通信 */
|
||||||
if ((0x55u == g_RMUP_Cfg.M_RemoteUpdate_Enable) &&(0x00u != g_Maintenance_Id))
|
if ((0x55u == g_RMUP_Cfg.M_RemoteUpdate_Enable) &&(0u < g_Maintenance_Ids[0]))
|
||||||
{
|
{
|
||||||
/*- 清空应用内网接收缓冲区 */
|
/*- 清空应用内网接收缓冲区 */
|
||||||
(void)CM_QueueClear(&s_Innet_RmRecvQ);
|
(void)CM_QueueClear(&s_Innet_RmRecvQ);
|
||||||
@@ -2292,7 +2295,7 @@ void SFM_AppToPrtclBuf_InnetSafeCrash(void)
|
|||||||
CM_UINT8 rslt = 0u;
|
CM_UINT8 rslt = 0u;
|
||||||
CM_UINT32 Queuelen = 0u;
|
CM_UINT32 Queuelen = 0u;
|
||||||
/*- 是否开启内网安全通信 */
|
/*- 是否开启内网安全通信 */
|
||||||
if ((0x55u == g_PFM_Cfg.M_RemoteUpdate_Enable) &&(0x00u != g_Maintenance_Id))
|
if ((0x55u == g_PFM_Cfg.M_RemoteUpdate_Enable) &&(0u < g_Maintenance_Ids[0]))
|
||||||
{
|
{
|
||||||
/*- 读取应用内网发送缓冲 */
|
/*- 读取应用内网发送缓冲 */
|
||||||
len = CM_QueueStatus(&s_Innet_RmSendQ);
|
len = CM_QueueStatus(&s_Innet_RmSendQ);
|
||||||
|
|||||||
Reference in New Issue
Block a user