diff --git a/CHANGELOG.md b/CHANGELOG.md index 66f6ffee6..712ec25fe 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## Development Build: v7.0.0-rc4+dev342 +- 'Fix #2368, cFE Functional Test 23' +- 'Fix #1407, Add error report on EVS failure during log header write' +- 'Fix #1515, Remove unnecessary memset from CFE_TBL_LoadFromFile' +- See: + + ## Development Build: v7.0.0-rc4+dev334 - Format update for additional counters in summary - make shared tbl configurable @@ -95,7 +102,14 @@ - See ## Development Build: v7.0.0-rc4+dev197 -- Remove Changelog in Doxygen Config +- Remove # Changelog + +## Development Build: v7.0.0-rc4+dev342 +- 'Fix #2368, cFE Functional Test 23' +- 'Fix #1407, Add error report on EVS failure during log header write' +- 'Fix #1515, Remove unnecessary memset from CFE_TBL_LoadFromFile' +- See: + in Doxygen Config - See ## Development Build: v7.0.0-rc4+dev193 diff --git a/modules/cfe_testcase/src/es_misc_test.c b/modules/cfe_testcase/src/es_misc_test.c index 83d34f1e6..86a4b92e4 100644 --- a/modules/cfe_testcase/src/es_misc_test.c +++ b/modules/cfe_testcase/src/es_misc_test.c @@ -84,7 +84,10 @@ void TestWriteToSysLog(void) { break; } - CFE_Assert_STATUS_MUST_BE(CFE_SUCCESS); + if (!CFE_Assert_STATUS_MAY_BE(CFE_ES_ERR_SYS_LOG_TRUNCATED)) + { + CFE_Assert_STATUS_MUST_BE(CFE_SUCCESS); + } } UtAssert_MIR("MIR (Manual Inspection Required) for CFE_ES_WriteToSysLog"); diff --git a/modules/core_api/fsw/inc/cfe_version.h b/modules/core_api/fsw/inc/cfe_version.h index 3f88f13e1..97b5295cd 100644 --- a/modules/core_api/fsw/inc/cfe_version.h +++ b/modules/core_api/fsw/inc/cfe_version.h @@ -26,7 +26,7 @@ #define CFE_VERSION_H /* Development Build Macro Definitions */ -#define CFE_BUILD_NUMBER 334 /**< @brief Development: Number of development git commits since CFE_BUILD_BASELINE */ +#define CFE_BUILD_NUMBER 342 /**< @brief Development: Number of development git commits since CFE_BUILD_BASELINE */ #define CFE_BUILD_BASELINE "v7.0.0-rc4" /**< @brief Development: Reference git tag for build number */ /* See \ref cfsversions for definitions */ diff --git a/modules/evs/fsw/inc/cfe_evs_eventids.h b/modules/evs/fsw/inc/cfe_evs_eventids.h index 72003ed3e..050485052 100644 --- a/modules/evs/fsw/inc/cfe_evs_eventids.h +++ b/modules/evs/fsw/inc/cfe_evs_eventids.h @@ -179,6 +179,17 @@ */ #define CFE_EVS_ERR_CRDATFILE_EID 13 +/** + * \brief EVS Write File Header to Log File Failure Event ID + * + * \par Type: ERROR + * + * \par Cause: + * + * Bytes written during Write File Header to Log File was not equal to the expected header size. + */ +#define CFE_EVS_WRITE_HEADER_ERR_EID 14 + /** * \brief EVS Invalid Command Code Received Event ID * diff --git a/modules/evs/fsw/src/cfe_evs_log.c b/modules/evs/fsw/src/cfe_evs_log.c index 63ed9b541..c1c237560 100644 --- a/modules/evs/fsw/src/cfe_evs_log.c +++ b/modules/evs/fsw/src/cfe_evs_log.c @@ -216,6 +216,12 @@ int32 CFE_EVS_WriteLogDataFileCmd(const CFE_EVS_WriteLogDataFileCmd_t *data) LogFilename); } } + else + { + EVS_SendEvent(CFE_EVS_WRITE_HEADER_ERR_EID, CFE_EVS_EventType_ERROR, + "Write File Header to Log File Error: WriteHdr RC: %d, Expected: %d, filename = %s", + (int)BytesWritten, (int)sizeof(LogFileHdr), LogFilename); + } OS_close(LogFileHandle); } diff --git a/modules/tbl/fsw/src/cfe_tbl_internal.c b/modules/tbl/fsw/src/cfe_tbl_internal.c index 18991d96e..b127c0189 100644 --- a/modules/tbl/fsw/src/cfe_tbl_internal.c +++ b/modules/tbl/fsw/src/cfe_tbl_internal.c @@ -891,8 +891,8 @@ int32 CFE_TBL_LoadFromFile(const char *AppName, CFE_TBL_LoadBuff_t *WorkingBuffe return CFE_TBL_ERR_FILE_TOO_LARGE; } - memset(WorkingBufferPtr->DataSource, 0, sizeof(WorkingBufferPtr->DataSource)); strncpy(WorkingBufferPtr->DataSource, Filename, sizeof(WorkingBufferPtr->DataSource) - 1); + WorkingBufferPtr->DataSource[sizeof(WorkingBufferPtr->DataSource) - 1] = '\0'; /* Save file creation time for later storage into Registry */ WorkingBufferPtr->FileCreateTimeSecs = StdFileHeader.TimeSeconds;