From a532101d43ffdd27f411c78340399e3baf23f997 Mon Sep 17 00:00:00 2001 From: Jacob Hageman Date: Fri, 8 Jan 2021 17:32:00 -0500 Subject: [PATCH 1/4] Fix #144, Pad cmdUtil header to 64 bit boundary --- Subsystems/cmdUtil/cmdUtil.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Subsystems/cmdUtil/cmdUtil.c b/Subsystems/cmdUtil/cmdUtil.c index 11f78bd..8d161e6 100644 --- a/Subsystems/cmdUtil/cmdUtil.c +++ b/Subsystems/cmdUtil/cmdUtil.c @@ -605,6 +605,9 @@ int main(int argc, char *argv[]) if (cmd.IncludeCFSSec) startbyte += sizeof(cmd.CFS_CmdSecHdr); + /* Round up to account for padding */ + startbyte += startbyte % 8; + if (cmd.Verbose) { printf("Payload start byte = %u\n", startbyte); From 9076cf3d76fea69710d3e1843e2f5bdc8ad426af Mon Sep 17 00:00:00 2001 From: Jacob Hageman Date: Fri, 8 Jan 2021 18:54:41 -0500 Subject: [PATCH 2/4] Fix #147, Pad GUI headers to 64 bit boundary --- GroundSystem.py | 25 ++++++++++++++++++------- 1 file changed, 18 insertions(+), 7 deletions(-) diff --git a/GroundSystem.py b/GroundSystem.py index f72a52a..257a01e 100644 --- a/GroundSystem.py +++ b/GroundSystem.py @@ -44,8 +44,12 @@ # CFS Ground System: Setup and manage the main window # class GroundSystem(QMainWindow, Ui_MainWindow): - HDR_VER_1_OFFSET = 0 - HDR_VER_2_OFFSET = 4 + TLM_HDR_V1_OFFSET = 4 + TLM_HDR_V2_OFFSET = 4 + CMD_HDR_PRI_V1_OFFSET = 0 + CMD_HDR_SEC_V1_OFFSET = 0 + CMD_HDR_PRI_V2_OFFSET = 4 + CMD_HDR_SEC_V2_OFFSET = 4 # # Init the class @@ -57,10 +61,16 @@ def __init__(self): self.RoutingService = None self.alert = QMessageBox() + # set initial defaults + self.sbTlmOffset.setValue(self.TLM_HDR_V1_OFFSET) + self.sbCmdOffsetPri.setValue(self.CMD_HDR_PRI_V1_OFFSET) + self.sbCmdOffsetSec.setValue(self.CMD_HDR_SEC_V1_OFFSET) + self.pushButtonStartTlm.clicked.connect(self.startTlmSystem) self.pushButtonStartCmd.clicked.connect(self.startCmdSystem) self.cbTlmHeaderVer.currentIndexChanged.connect(self.setTlmOffset) self.cbCmdHeaderVer.currentIndexChanged.connect(self.setCmdOffsets) + for sb in (self.sbTlmOffset, self.sbCmdOffsetPri, self.sbCmdOffsetSec): sb.valueChanged.connect(self.saveOffsets) # Init lists @@ -132,9 +142,9 @@ def setTlmOffset(self): else: self.sbTlmOffset.setEnabled(False) if selectedVer == "1": - self.sbTlmOffset.setValue(self.HDR_VER_1_OFFSET) + self.sbTlmOffset.setValue(self.TLM_HDR_V1_OFFSET) elif selectedVer == "2": - self.sbTlmOffset.setValue(self.HDR_VER_2_OFFSET) + self.sbTlmOffset.setValue(self.TLM_HDR_V2_OFFSET) def setCmdOffsets(self): selectedVer = self.cbCmdHeaderVer.currentText().strip() @@ -145,10 +155,11 @@ def setCmdOffsets(self): self.sbCmdOffsetPri.setEnabled(False) self.sbCmdOffsetSec.setEnabled(False) if selectedVer == "1": - self.sbCmdOffsetPri.setValue(self.HDR_VER_1_OFFSET) + self.sbCmdOffsetPri.setValue(self.CMD_HDR_PRI_V1_OFFSET) + self.sbCmdOffsetSec.setValue(self.CMD_HDR_SEC_V1_OFFSET) elif selectedVer == "2": - self.sbCmdOffsetPri.setValue(self.HDR_VER_2_OFFSET) - self.sbCmdOffsetSec.setValue(self.HDR_VER_1_OFFSET) + self.sbCmdOffsetPri.setValue(self.CMD_HDR_PRI_V2_OFFSET) + self.sbCmdOffsetSec.setValue(self.CMD_HDR_SEC_V2_OFFSET) def saveOffsets(self): offsets = bytes((self.sbTlmOffset.value(), self.sbCmdOffsetPri.value(), From dca183abedab0f3a2f65cca0a2075b0ff995bc8c Mon Sep 17 00:00:00 2001 From: Ariel Adams Date: Thu, 7 Jan 2021 12:11:08 -0600 Subject: [PATCH 3/4] Fix #142, Create Security Policy --- SECURITY.md | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 SECURITY.md diff --git a/SECURITY.md b/SECURITY.md new file mode 100644 index 0000000..c260a59 --- /dev/null +++ b/SECURITY.md @@ -0,0 +1,15 @@ +# Security Policy + +## Reporting a Vulnerability + +To report a vulnerability for the cFS-GroundSystem subsystem please [submit an issue](https://github.com/nasa/cFS-GroundSystem/issues/new/choose). + +For general cFS vulnerabilities please [open a cFS framework issue](https://github.com/nasa/cfs/issues/new/choose) and see our [top-level security policy](https://github.com/nasa/cFS/security/policy). + +In either case please use the "Bug Report" template and provide as much information as possible. Apply appropraite labels for each report. For security related reports, tag the issue with the "security" label. + +## Additional Support + +For additional support, email us at cfs-program@lists.nasa.gov. For help using OSAL and cFS, [subscribe to our mailing list](https://lists.nasa.gov/mailman/listinfo/cfs-community) that includes all the community members/users of the NASA core Flight Software (cFS) product line. The mailing list is used to communicate any information related to the cFS product such as current releases, bug findings and fixes, enhancement requests, community meeting notifications, sending out meeting minutes, etc. + +If you wish to report a cybersecurity incident or concern please contact the NASA Security Operations Center either by phone at 1-877-627-2732 or via email address soc@nasa.gov. From f7fc6283b219447aedd2bb1248610fd1e196352a Mon Sep 17 00:00:00 2001 From: astrogeco <59618057+astrogeco@users.noreply.github.com> Date: Tue, 26 Jan 2021 20:02:17 -0500 Subject: [PATCH 4/4] Bump to v2.2.0-rc1+dev18 Update ReadMe --- README.md | 9 ++++++++- _version.py | 13 ++++++------- 2 files changed, 14 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index 6538f24..1b68205 100644 --- a/README.md +++ b/README.md @@ -8,6 +8,13 @@ See [Guide-GroundSystem.md](https://github.com/nasa/cFS-GroundSystem/blob/master ## Version History +### Development Build: 2.2.0-rc1+dev18 + +- Documentation: Add `Security.md` with instructions to report vulnerabilities +- **Breaking change**, CmdUtil, Rounds header up to match +- **Breaking change**, GUI, Rounds header up to match +- See + ### Development Build: 2.2.0-rc1+dev11 - Updated CHeaderParser.py to address specific issues. @@ -41,7 +48,7 @@ See [Guide-GroundSystem.md](https://github.com/nasa/cFS-GroundSystem/blob/master - Change all individual UI elements to table widgets. Update backend code accordingly - Temporary fix for implicit declaration of endian functions on some systems (RH/CentOs). No build errors on CentOS - See - + ### Development Build: 2.1.11 - Default behavior is the same except adds checksum and doesn't actually require fields. Adds all the packet fields, overrides, more supported data types, etc. diff --git a/_version.py b/_version.py index 71669b8..ae2f9fd 100644 --- a/_version.py +++ b/_version.py @@ -20,7 +20,7 @@ # # Development Build Macro Definitions -_cFS_GrndSys_build_number = 11 +_cFS_GrndSys_build_number = 18 _cFS_GrndSys_build_baseline = "v2.2.0-rc1" # Version Number Definitions @@ -30,20 +30,19 @@ _cFS_GrndSys_REVISION = 0 _cFS_GrndSys_MISSIONREV = 0 -# Development Build format for __version__ +# Development Build format for __version__ # Baseline git tag + Number of commits since baseline __version__ = "+dev".join((_cFS_GrndSys_build_baseline,str(_cFS_GrndSys_build_number))) -# Development Build format for __version_string__ +# Development Build format for __version_string__ _version_string = " cFS-GroundSystem DEVELOPMENT BUILD\n " + __version__ -# Use the following templates for Official Releases ONLY +# Use the following templates for Official Releases ONLY - # Official Release format for __version__ + # Official Release format for __version__ # __version__ = ".".join(map(str,(_cFS_GrndSys_MAJOR, _cFS_GrndSys_MINOR, _cFS_GrndSys_REVISION, _cFS_GrndSys_MISSIONREV))) - + # Official Release format for _version_string # _version_string = " cFS-GroundSystem v" + __version__ # END TEMPLATES -