4646/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
4747void CS_DisableAppCmd (const CS_NoArgsCmd_t * CmdPtr )
4848{
49- if (CS_CheckRecomputeOneshot () == false)
50- {
51- CS_AppData .HkPacket .Payload .AppCSState = CS_STATE_DISABLED ;
52- CS_ZeroAppTempValues ();
49+ if (CS_CheckRecomputeOneshot () == false)
50+ {
51+ CS_AppData .HkPacket .Payload .AppCSState = CS_STATE_DISABLED ;
52+ CS_ZeroAppTempValues ();
5353
5454#if (CS_PRESERVE_STATES_ON_PROCESSOR_RESET == true )
55- CS_UpdateCDS ();
55+ CS_UpdateCDS ();
5656#endif
5757
58- CFE_EVS_SendEvent (CS_DISABLE_APP_INF_EID , CFE_EVS_EventType_INFORMATION , "Checksumming of App is Disabled" );
59- CS_AppData .HkPacket .Payload .CmdCounter ++ ;
60- }
58+ CFE_EVS_SendEvent (CS_DISABLE_APP_INF_EID , CFE_EVS_EventType_INFORMATION , "Checksumming of App is Disabled" );
59+ CS_AppData .HkPacket .Payload .CmdCounter ++ ;
60+ }
6161}
6262
6363/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
@@ -67,17 +67,17 @@ void CS_DisableAppCmd(const CS_NoArgsCmd_t *CmdPtr)
6767/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
6868void CS_EnableAppCmd (const CS_NoArgsCmd_t * CmdPtr )
6969{
70- if (CS_CheckRecomputeOneshot () == false)
71- {
72- CS_AppData .HkPacket .Payload .AppCSState = CS_STATE_ENABLED ;
70+ if (CS_CheckRecomputeOneshot () == false)
71+ {
72+ CS_AppData .HkPacket .Payload .AppCSState = CS_STATE_ENABLED ;
7373
7474#if (CS_PRESERVE_STATES_ON_PROCESSOR_RESET == true )
75- CS_UpdateCDS ();
75+ CS_UpdateCDS ();
7676#endif
7777
78- CFE_EVS_SendEvent (CS_ENABLE_APP_INF_EID , CFE_EVS_EventType_INFORMATION , "Checksumming of App is Enabled" );
79- CS_AppData .HkPacket .Payload .CmdCounter ++ ;
80- }
78+ CFE_EVS_SendEvent (CS_ENABLE_APP_INF_EID , CFE_EVS_EventType_INFORMATION , "Checksumming of App is Enabled" );
79+ CS_AppData .HkPacket .Payload .CmdCounter ++ ;
80+ }
8181}
8282
8383/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
@@ -89,33 +89,31 @@ void CS_ReportBaselineAppCmd(const CS_AppNameCmd_t *CmdPtr)
8989{
9090 /* command verification variables */
9191 CS_Res_App_Table_Entry_t * ResultsEntry ;
92- uint32 Baseline ;
9392 char Name [OS_MAX_API_NAME ];
9493
95- strncpy (Name , CmdPtr -> Payload .Name , sizeof (Name ) - 1 );
96- Name [sizeof (Name ) - 1 ] = '\0' ;
94+ strncpy (Name , CmdPtr -> Payload .Name , sizeof (Name ) - 1 );
95+ Name [sizeof (Name ) - 1 ] = '\0' ;
9796
98- if (CS_GetAppResTblEntryByName (& ResultsEntry , Name ))
97+ if (CS_GetAppResTblEntryByName (& ResultsEntry , Name ))
98+ {
99+ if (ResultsEntry -> ComputedYet == true)
99100 {
100- if (ResultsEntry -> ComputedYet == true)
101- {
102- Baseline = ResultsEntry -> ComparisonValue ;
103- CFE_EVS_SendEvent (CS_BASELINE_APP_INF_EID , CFE_EVS_EventType_INFORMATION ,
104- "Report baseline of app %s is 0x%08X" , Name , (unsigned int )Baseline );
105- }
106- else
107- {
108- CFE_EVS_SendEvent (CS_NO_BASELINE_APP_INF_EID , CFE_EVS_EventType_INFORMATION ,
109- "Report baseline of app %s has not been computed yet" , Name );
110- }
111- CS_AppData .HkPacket .Payload .CmdCounter ++ ;
101+ CFE_EVS_SendEvent (CS_BASELINE_APP_INF_EID , CFE_EVS_EventType_INFORMATION ,
102+ "Report baseline of app %s is 0x%08X" , Name , (unsigned int )ResultsEntry -> ComparisonValue );
112103 }
113104 else
114105 {
115- CFE_EVS_SendEvent (CS_BASELINE_INVALID_NAME_APP_ERR_EID , CFE_EVS_EventType_ERROR ,
116- "App report baseline failed, app %s not found" , Name );
117- CS_AppData .HkPacket .Payload .CmdErrCounter ++ ;
106+ CFE_EVS_SendEvent (CS_NO_BASELINE_APP_INF_EID , CFE_EVS_EventType_INFORMATION ,
107+ "Report baseline of app %s has not been computed yet" , Name );
118108 }
109+ CS_AppData .HkPacket .Payload .CmdCounter ++ ;
110+ }
111+ else
112+ {
113+ CFE_EVS_SendEvent (CS_BASELINE_INVALID_NAME_APP_ERR_EID , CFE_EVS_EventType_ERROR ,
114+ "App report baseline failed, app %s not found" , Name );
115+ CS_AppData .HkPacket .Payload .CmdErrCounter ++ ;
116+ }
119117}
120118
121119/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
@@ -131,53 +129,54 @@ void CS_RecomputeBaselineAppCmd(const CS_AppNameCmd_t *CmdPtr)
131129 CS_Res_App_Table_Entry_t * ResultsEntry ;
132130 char Name [OS_MAX_API_NAME ];
133131
134- if (CS_AppData .HkPacket .Payload .RecomputeInProgress == false && CS_AppData .HkPacket .Payload .OneShotInProgress == false)
135- {
136- strncpy (Name , CmdPtr -> Payload .Name , sizeof (Name ) - 1 );
137- Name [sizeof (Name ) - 1 ] = '\0' ;
132+ strncpy (Name , CmdPtr -> Payload .Name , sizeof (Name ) - 1 );
133+ Name [sizeof (Name ) - 1 ] = '\0' ;
138134
139- /* make sure the entry is a valid number and is defined in the table */
140- if (CS_GetAppResTblEntryByName (& ResultsEntry , Name ))
141- {
142- /* There is no child task running right now, we can use it*/
143- CS_AppData .HkPacket .Payload .RecomputeInProgress = true;
135+ if (CS_AppData .HkPacket .Payload .RecomputeInProgress == false &&
136+ CS_AppData .HkPacket .Payload .OneShotInProgress == false)
137+ {
138+ /* make sure the entry is a valid number and is defined in the table */
139+ if (CS_GetAppResTblEntryByName (& ResultsEntry , Name ))
140+ {
141+ /* There is no child task running right now, we can use it*/
142+ CS_AppData .HkPacket .Payload .RecomputeInProgress = true;
144143
145- /* fill in child task variables */
146- CS_AppData .ChildTaskTable = CS_APP_TABLE ;
144+ /* fill in child task variables */
145+ CS_AppData .ChildTaskTable = CS_APP_TABLE ;
147146
148- CS_AppData .RecomputeAppEntryPtr = ResultsEntry ;
147+ CS_AppData .RecomputeAppEntryPtr = ResultsEntry ;
149148
150- Status = CFE_ES_CreateChildTask (& ChildTaskID , CS_RECOMP_APP_TASK_NAME , CS_RecomputeAppChildTask , NULL ,
151- CFE_PLATFORM_ES_DEFAULT_STACK_SIZE , CS_CHILD_TASK_PRIORITY , 0 );
152- if (Status == CFE_SUCCESS )
153- {
154- CFE_EVS_SendEvent (CS_RECOMPUTE_APP_STARTED_DBG_EID , CFE_EVS_EventType_DEBUG ,
155- "Recompute baseline of app %s started" , Name );
156- CS_AppData .HkPacket .Payload .CmdCounter ++ ;
157- }
158- else /* child task creation failed */
159- {
160- CFE_EVS_SendEvent (CS_RECOMPUTE_APP_CREATE_CHDTASK_ERR_EID , CFE_EVS_EventType_ERROR ,
161- "Recompute baseline of app %s failed, CFE_ES_CreateChildTask returned: 0x%08X" ,
162- Name , (unsigned int )Status );
163- CS_AppData .HkPacket .Payload .CmdErrCounter ++ ;
164- CS_AppData .HkPacket .Payload .RecomputeInProgress = false;
165- }
149+ Status = CFE_ES_CreateChildTask (& ChildTaskID , CS_RECOMP_APP_TASK_NAME , CS_RecomputeAppChildTask , NULL ,
150+ CFE_PLATFORM_ES_DEFAULT_STACK_SIZE , CS_CHILD_TASK_PRIORITY , 0 );
151+ if (Status == CFE_SUCCESS )
152+ {
153+ CFE_EVS_SendEvent (CS_RECOMPUTE_APP_STARTED_DBG_EID , CFE_EVS_EventType_DEBUG ,
154+ "Recompute baseline of app %s started" , Name );
155+ CS_AppData .HkPacket .Payload .CmdCounter ++ ;
166156 }
167- else
157+ else /* child task creation failed */
168158 {
169- CFE_EVS_SendEvent (CS_RECOMPUTE_UNKNOWN_NAME_APP_ERR_EID , CFE_EVS_EventType_ERROR ,
170- "App recompute baseline failed, app %s not found" , Name );
159+ CFE_EVS_SendEvent (CS_RECOMPUTE_APP_CREATE_CHDTASK_ERR_EID , CFE_EVS_EventType_ERROR ,
160+ "Recompute baseline of app %s failed, CFE_ES_CreateChildTask returned: 0x%08X" , Name ,
161+ (unsigned int )Status );
171162 CS_AppData .HkPacket .Payload .CmdErrCounter ++ ;
163+ CS_AppData .HkPacket .Payload .RecomputeInProgress = false;
172164 }
173165 }
174166 else
175167 {
176- /*send event that we can't start another task right now */
177- CFE_EVS_SendEvent (CS_RECOMPUTE_APP_CHDTASK_ERR_EID , CFE_EVS_EventType_ERROR ,
178- "App recompute baseline for app %s failed: child task in use" , Name );
168+ CFE_EVS_SendEvent (CS_RECOMPUTE_UNKNOWN_NAME_APP_ERR_EID , CFE_EVS_EventType_ERROR ,
169+ "App recompute baseline failed, app %s not found" , Name );
179170 CS_AppData .HkPacket .Payload .CmdErrCounter ++ ;
180171 }
172+ }
173+ else
174+ {
175+ /*send event that we can't start another task right now */
176+ CFE_EVS_SendEvent (CS_RECOMPUTE_APP_CHDTASK_ERR_EID , CFE_EVS_EventType_ERROR ,
177+ "App recompute baseline for app %s failed: child task in use" , Name );
178+ CS_AppData .HkPacket .Payload .CmdErrCounter ++ ;
179+ }
181180}
182181
183182/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
@@ -192,42 +191,42 @@ void CS_DisableNameAppCmd(const CS_AppNameCmd_t *CmdPtr)
192191 CS_Def_App_Table_Entry_t * DefinitionEntry ;
193192 char Name [OS_MAX_API_NAME ];
194193
195- if (CS_CheckRecomputeOneshot () == false)
196- {
197- strncpy (Name , CmdPtr -> Payload .Name , sizeof (Name ) - 1 );
198- Name [sizeof (Name ) - 1 ] = '\0' ;
199-
200- if (CS_GetAppResTblEntryByName (& ResultsEntry , Name ))
201- {
202- ResultsEntry -> State = CS_STATE_DISABLED ;
203- ResultsEntry -> TempChecksumValue = 0 ;
204- ResultsEntry -> ByteOffset = 0 ;
194+ if (CS_CheckRecomputeOneshot () == false)
195+ {
196+ strncpy (Name , CmdPtr -> Payload .Name , sizeof (Name ) - 1 );
197+ Name [sizeof (Name ) - 1 ] = '\0' ;
205198
206- CFE_EVS_SendEvent (CS_DISABLE_APP_NAME_INF_EID , CFE_EVS_EventType_INFORMATION ,
207- "Checksumming of app %s is Disabled" , Name );
199+ if (CS_GetAppResTblEntryByName (& ResultsEntry , Name ))
200+ {
201+ ResultsEntry -> State = CS_STATE_DISABLED ;
202+ ResultsEntry -> TempChecksumValue = 0 ;
203+ ResultsEntry -> ByteOffset = 0 ;
208204
209- if (CS_GetAppDefTblEntryByName (& DefinitionEntry , Name ))
210- {
211- DefinitionEntry -> State = CS_STATE_DISABLED ;
212- CS_ResetTablesTblResultEntry (CS_AppData .AppResTablesTblPtr );
213- CFE_TBL_Modified (CS_AppData .DefAppTableHandle );
214- }
215- else
216- {
217- CFE_EVS_SendEvent (CS_DISABLE_APP_DEF_NOT_FOUND_DBG_EID , CFE_EVS_EventType_DEBUG ,
218- "CS unable to update apps definition table for entry %s" , Name );
219- }
205+ CFE_EVS_SendEvent (CS_DISABLE_APP_NAME_INF_EID , CFE_EVS_EventType_INFORMATION ,
206+ "Checksumming of app %s is Disabled" , Name );
220207
221- CS_AppData .HkPacket .Payload .CmdCounter ++ ;
208+ if (CS_GetAppDefTblEntryByName (& DefinitionEntry , Name ))
209+ {
210+ DefinitionEntry -> State = CS_STATE_DISABLED ;
211+ CS_ResetTablesTblResultEntry (CS_AppData .AppResTablesTblPtr );
212+ CFE_TBL_Modified (CS_AppData .DefAppTableHandle );
222213 }
223-
224214 else
225215 {
226- CFE_EVS_SendEvent (CS_DISABLE_APP_UNKNOWN_NAME_ERR_EID , CFE_EVS_EventType_ERROR ,
227- "App disable app command failed, app %s not found" , Name );
228- CS_AppData .HkPacket .Payload .CmdErrCounter ++ ;
216+ CFE_EVS_SendEvent (CS_DISABLE_APP_DEF_NOT_FOUND_DBG_EID , CFE_EVS_EventType_DEBUG ,
217+ "CS unable to update apps definition table for entry %s" , Name );
229218 }
230- } /* end InProgress if */
219+
220+ CS_AppData .HkPacket .Payload .CmdCounter ++ ;
221+ }
222+
223+ else
224+ {
225+ CFE_EVS_SendEvent (CS_DISABLE_APP_UNKNOWN_NAME_ERR_EID , CFE_EVS_EventType_ERROR ,
226+ "App disable app command failed, app %s not found" , Name );
227+ CS_AppData .HkPacket .Payload .CmdErrCounter ++ ;
228+ }
229+ }
231230}
232231
233232/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
@@ -242,37 +241,37 @@ void CS_EnableNameAppCmd(const CS_AppNameCmd_t *CmdPtr)
242241 CS_Def_App_Table_Entry_t * DefinitionEntry ;
243242 char Name [OS_MAX_API_NAME ];
244243
245- if (CS_CheckRecomputeOneshot () == false)
246- {
247- strncpy (Name , CmdPtr -> Payload .Name , sizeof (Name ) - 1 );
248- Name [sizeof (Name ) - 1 ] = '\0' ;
249-
250- if (CS_GetAppResTblEntryByName (& ResultsEntry , Name ))
251- {
252- ResultsEntry -> State = CS_STATE_ENABLED ;
244+ if (CS_CheckRecomputeOneshot () == false)
245+ {
246+ strncpy (Name , CmdPtr -> Payload .Name , sizeof (Name ) - 1 );
247+ Name [sizeof (Name ) - 1 ] = '\0' ;
253248
254- CFE_EVS_SendEvent (CS_ENABLE_APP_NAME_INF_EID , CFE_EVS_EventType_INFORMATION ,
255- "Checksumming of app %s is Enabled" , Name );
249+ if (CS_GetAppResTblEntryByName (& ResultsEntry , Name ))
250+ {
251+ ResultsEntry -> State = CS_STATE_ENABLED ;
256252
257- if (CS_GetAppDefTblEntryByName (& DefinitionEntry , Name ))
258- {
259- DefinitionEntry -> State = CS_STATE_ENABLED ;
260- CS_ResetTablesTblResultEntry (CS_AppData .AppResTablesTblPtr );
261- CFE_TBL_Modified (CS_AppData .DefAppTableHandle );
262- }
263- else
264- {
265- CFE_EVS_SendEvent (CS_ENABLE_APP_DEF_NOT_FOUND_DBG_EID , CFE_EVS_EventType_DEBUG ,
266- "CS unable to update apps definition table for entry %s" , Name );
267- }
253+ CFE_EVS_SendEvent (CS_ENABLE_APP_NAME_INF_EID , CFE_EVS_EventType_INFORMATION ,
254+ "Checksumming of app %s is Enabled" , Name );
268255
269- CS_AppData .HkPacket .Payload .CmdCounter ++ ;
256+ if (CS_GetAppDefTblEntryByName (& DefinitionEntry , Name ))
257+ {
258+ DefinitionEntry -> State = CS_STATE_ENABLED ;
259+ CS_ResetTablesTblResultEntry (CS_AppData .AppResTablesTblPtr );
260+ CFE_TBL_Modified (CS_AppData .DefAppTableHandle );
270261 }
271262 else
272263 {
273- CFE_EVS_SendEvent (CS_ENABLE_APP_UNKNOWN_NAME_ERR_EID , CFE_EVS_EventType_ERROR ,
274- "App enable app command failed, app %s not found" , Name );
275- CS_AppData .HkPacket .Payload .CmdErrCounter ++ ;
264+ CFE_EVS_SendEvent (CS_ENABLE_APP_DEF_NOT_FOUND_DBG_EID , CFE_EVS_EventType_DEBUG ,
265+ "CS unable to update apps definition table for entry %s" , Name );
276266 }
277- } /* end InProgress if */
267+
268+ CS_AppData .HkPacket .Payload .CmdCounter ++ ;
269+ }
270+ else
271+ {
272+ CFE_EVS_SendEvent (CS_ENABLE_APP_UNKNOWN_NAME_ERR_EID , CFE_EVS_EventType_ERROR ,
273+ "App enable app command failed, app %s not found" , Name );
274+ CS_AppData .HkPacket .Payload .CmdErrCounter ++ ;
275+ }
276+ }
278277}
0 commit comments