Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

RC 1.3.1 Review #276

Merged
merged 212 commits into from
Sep 11, 2024
Merged
Show file tree
Hide file tree
Changes from 143 commits
Commits
Show all changes
212 commits
Select commit Hold shift + click to select a range
11a14ef
206 ci for rhel based latest (#223)
rjbrown2 Feb 22, 2024
08b2646
[nasa/cryptolib#196] Improve cyc. comp.
rjbrown6 Feb 22, 2024
acb4f73
Refactor get SA Service Type
rjbrown6 Feb 26, 2024
f206784
Refactor get SA Service Type
rjbrown6 Feb 26, 2024
c402e6d
WIP - Committing to migrate VMS
rjbrown6 Feb 29, 2024
ff72a58
[nasa/cryptolib#196] TC_Process Refactor
Mar 5, 2024
7bbcf78
[nasa/cryptolib#196] TC_Process Refactor Header prototype updates
rjbrown6 Mar 5, 2024
18c6a76
[nasa/cryptolib#196] WIP: TC_Apply Refactor Refactor and Fix for Stat…
rjbrown6 Mar 6, 2024
cb27f71
[nasa/cryptolib#196] WIP: TC_Apply Refactor
rjbrown6 Mar 6, 2024
174e896
[nasa/nos3#202] Updated standalone to use host to ip translation;
jlucas9 Mar 15, 2024
6e6436d
[nasa/cryptolib#196] TC_Apply Refactor
rjbrown6 Mar 15, 2024
69846e9
[nasa/cryptolib#196] cryptography_aead_encrypt refactor
rjbrown6 Mar 15, 2024
50dbcb9
[nasa/cryptolib#196] standalone tm_process refactor
rjbrown6 Mar 15, 2024
a028378
[nasa/cryptolib#196] Crypto_Check_Anti_Replay refactor
rjbrown6 Mar 15, 2024
972d481
[nasa/cryptolib#196] sa_get_operational_sa_from_gvcid refactor
rjbrown6 Mar 15, 2024
922a5aa
[nasa/cryptolib#196] Crypto_TM_ApplySecurity Refactor
rjbrown6 Mar 15, 2024
70d0849
[nasa/cryptolib#196] WIP: Crypto_TM_ApplySecurity Refactor
rjbrown6 Mar 15, 2024
76ef337
[nasa/cryptolib#196] Cyclomatic Complexity Refactoring
rjbrown6 Mar 15, 2024
dd6065a
[nasa/nos3#202] Updated sa_service_type check that caused error print…
jlucas9 Mar 20, 2024
ad9100f
Revert "[nasa/cryptolib#196] Cyclomatic Complexity Refactoring"
rjbrown2 Mar 25, 2024
f59847c
Revert "[nasa/cryptolib#196] WIP: Crypto_TM_ApplySecurity Refactor"
rjbrown2 Mar 25, 2024
a3c2f59
Revert "[nasa/cryptolib#196] Crypto_TM_ApplySecurity Refactor"
rjbrown2 Mar 25, 2024
b01824a
[nasa/cryptolib#196] Unused Variable Fixes
rjbrown6 Mar 26, 2024
dff75ab
[nasa/cryptolib#196] Unused Variable Fixes - misplaced i
rjbrown6 Mar 26, 2024
ebb8033
[nasa/cryptolib#196] KMC Build fix - missing & for pointer
rjbrown6 Mar 26, 2024
8c6daf3
[nasa/Cryptolib#230] WIP: TM Apply Refactoring
rjbrown6 Mar 26, 2024
d8bbe63
[nasa/cryptolib#196] Fix varable names to lowercase
rjbrown6 Mar 26, 2024
8e163bb
[nasa/cryptolib#196] Refactor for single return - Check Anti Replay
rjbrown6 Mar 26, 2024
bd84fd2
[nasa/cryptolib#196] Fix Enum String Max to appropriate value
rjbrown6 Mar 26, 2024
26729a4
[nasa/cryptolib#196] Remove Comments, update variable to lowercase
rjbrown6 Mar 26, 2024
687addd
[nasa/cryptolib#196] Update Doxygen boilerplate, add prototypes to cr…
rjbrown6 Mar 26, 2024
620748e
[nasa/cryptolib#196] WIP: Update Doxygen boilerplate, add prototypes …
rjbrown6 Mar 26, 2024
56e99b9
[nasa/nos3#202] Changed back to use Crypto_Init_TC_Unit_Test and fixe…
jlucas9 Mar 27, 2024
9e424b5
[nasa/cryptolib#196] Update Doxygen boilerplate, add prototypes to cr…
rjbrown6 Mar 27, 2024
0dd2483
Minor copy/paste updates in crypto.c
dccutrig Mar 28, 2024
a344ffd
[nasa/nos3#202] Rename to be SC_Init;
jlucas9 Mar 28, 2024
0770fd9
Merge pull request #232 from nasa/196-reducing-cyclomatic-complexity
rjbrown2 Mar 28, 2024
c5a4e46
[nasa/cryptolib#230] WIP: Refactoring of TM Apply
rjbrown6 Apr 1, 2024
30e457d
[nos3#202] Setup SC init to use vcid[0] as TC clear, vcid[1] as TM cl…
jlucas9 Apr 2, 2024
29cd1b4
[nasa/cryptolib#231][nasa/cryptolib#230] WIP: TM Refactor, single ret…
rjbrown6 Apr 2, 2024
b960619
[nasa/cryptolib#231][nasa/cryptolib#230] TM Refactor Headers and Doxygen
rjbrown6 Apr 3, 2024
826c275
[nasa/cryptolib#231][nasa/cryptolib#230] Unused Variable Fix
rjbrown6 Apr 3, 2024
6588b79
[nasa/cryptolib#230] Pull request fixes. Single return statements.
rjbrown6 Apr 4, 2024
58f82ff
Merge pull request #235 from nasa/230-cyclomatic-complexity-tm-apply-…
rjbrown2 Apr 4, 2024
f62cf1b
[nasa/nos3#202] Updated header_length to include additional fields cu…
jlucas9 Apr 16, 2024
393b621
[nasa/nos3#202] Removed badFECF option - likely was getting set due t…
jlucas9 Apr 25, 2024
3bab2d3
[nasa/cryptolib#77]Working Save and Load - TODO: Validate Unit tests
rjbrown6 Apr 25, 2024
6a36c88
[nasa/cryptolib#77] SA_Save, Unit Tests, UTest Updates, Debug Print Bug
rjbrown2 Apr 29, 2024
1890a34
[nasa/cryptolib#77] Update Function Comments
rjbrown2 Apr 29, 2024
050c677
[nasa/cryptolib#77] Update CMake Unit Test Flag
rjbrown2 Apr 29, 2024
c44ddd9
[nasa/cryptolib#77] Update CMake Flags, Debug Prints
rjbrown2 Apr 29, 2024
624dd1a
[nasa/cryptolib#77] CMake Flags, add Save File Flag to all build scripts
rjbrown2 Apr 29, 2024
d28cb6e
[nasa/cryptolib#211] Modify sadb_get_sa_from_spi. Unnecessary NULL c…
rjbrown2 Apr 30, 2024
a9a6cf0
[nasa/cryptolib#77] SA_SAVE - Filename define
rjbrown2 Apr 30, 2024
687427e
Merge remote-tracking branch 'origin/dev' into nos3#202
jlucas9 Apr 30, 2024
fb72ee2
Merge pull request #236 from nasa/nos3#202
jlucas9 Apr 30, 2024
131a846
[nasa/cryptolib#240] Custom Module Paths - CMake updates
rjbrown2 May 2, 2024
7263751
[nasa/cryptolib#240] Custom Module Paths - CMake updates
rjbrown2 May 2, 2024
510e9dc
[nasa/cryptolib#239] Custom Crypto Module - CMake updates
rjbrown2 May 2, 2024
f335be3
Merge branch 'dev' into 77-cryptolib_load_config-save
rjbrown2 May 2, 2024
318c371
Merge pull request #238 from nasa/211-sa-ptr-memory-leak-pr
rjbrown2 May 2, 2024
dad3686
Merge pull request #237 from nasa/77-cryptolib_load_config-save
rjbrown2 May 2, 2024
edce114
Merge pull request #242 from nasa/240-cmake-custom-module-paths
jlucas9 May 6, 2024
c85304a
[nasa/cryptolib#241] Convert SA character pointers to arrays. Remove…
rjbrown2 May 29, 2024
090a056
[nasa/cryptolib#241] Push missed save
rjbrown2 May 29, 2024
b7b0806
[nasa/cryptolib#241] Remove tracking comments
rjbrown2 May 29, 2024
8d2f6d1
[nasa/cryptolib#241] Update incorrect Function Doxygen comments
rjbrown2 May 29, 2024
a3789d3
[nasa/cryptolib#241] Remove remaining tracking comments
rjbrown2 May 29, 2024
277a3fd
Merge pull request #245 from nasa/241-character-pointers-in-sa-inmemo…
rjbrown2 May 31, 2024
a6eb0ce
[nasa/cryptolib#246] Fix GCC 13.x Compilation Issues with Null SA/IV
Donnie-Ice Jun 3, 2024
9db3e54
#249 fixed custom path variable use in CMakeLists.txt and src/CMakeLi…
williamposey Jun 4, 2024
79a16ad
Merge pull request #248 from nasa/246-address-comparison-warnings-err…
Donnie-Ice Jun 4, 2024
de73865
Merge pull request #250 from nasa/249-fix-custom-module-paths
rjbrown2 Jun 4, 2024
1c94376
[nasa/cryptolib#215] Testing code coverage + uploads to all builds
Donnie-Ice Jun 5, 2024
65c0398
[nasa/cryptolib#215] Fixed combining of codecov reports for all builds
Donnie-Ice Jun 6, 2024
ab4c7c8
Merge pull request #251 from nasa/215-re-evaluate-codecov-app-being-u…
Donnie-Ice Jun 6, 2024
6680bbb
[nasa/cryptolib#243] Added custom interface function definition
Donnie-Ice Jun 10, 2024
4743d59
[nasa/cryptolib#243] Added custom interface template stub
Donnie-Ice Jun 10, 2024
ebe9251
[nasa/cryptolib#243] Added custom cryptography type to CryptographyTy…
Donnie-Ice Jun 10, 2024
f90ba29
[nasa/cryptolib#243] Added logic to Crypto_init for custom interface
Donnie-Ice Jun 10, 2024
0168840
[nasa/cryptolib#244] Added has_ocf field to Crypto_Config_Add_Gvcid_M…
Donnie-Ice Jun 10, 2024
82bb86e
Merge pull request #253 from nasa/243-custom-crypto-module
Donnie-Ice Jun 11, 2024
3c2a3d4
Merge pull request #254 from nasa/244-gvcidmanagedparameters_t-has_oc…
Donnie-Ice Jun 11, 2024
ccc0fa5
[nasa/cryptolib#197] Began support for AES_GCM_SIV
Donnie-Ice Jun 13, 2024
ab6f0ec
Update Key Validation 2 unique keys per SA - No Duplication. Default …
rjbrown6 Jun 26, 2024
8c0c72c
Only initialize sa, key and mc interface if not already initialized
Niautanor Jul 2, 2024
9ccdde0
[nasa/cryptolib#217] Added Build flag for mc log file name
Donnie-Ice Jul 8, 2024
8647af0
Merge pull request #255 from nasa/198-key-mapping
rjbrown2 Jul 10, 2024
0d4322a
[nasa/cryptolib#217] Modified build scripts to clear CMake cache befo…
Donnie-Ice Jul 10, 2024
e68419b
Merge pull request #257 from Niautanor/allow-supplying-external-key-s…
rjbrown2 Jul 12, 2024
4000890
[nasa/cryptolib#197] Commented out wolfcrypt SIV related calls
Donnie-Ice Jul 15, 2024
f36f5a1
[nasa/cryptolib#197] Update docker file to install gpg-error and libg…
jlucas9 Jul 17, 2024
6b37e33
[nasa/cryptolib#259] Added logo to README
Donnie-Ice Jul 17, 2024
a29dd8f
[nasa/cryptolib#197] Corrected mode in algorithm switch statement
Donnie-Ice Jul 17, 2024
dd7b27f
Merge branch 'dev' into 217-mc-how-to-handle-where-file-is-written
Donnie-Ice Jul 17, 2024
15c0364
[nasa/cryptolib#197] Added aes_gcm_siv unit test files (utest throwin…
Donnie-Ice Jul 18, 2024
a5974fa
[nasa/cryptolib#222] Created a draft set of requirements in markdown …
jlucas9 Jul 19, 2024
57e5879
Merge pull request #260 from nasa/259-add-logos
jlucas9 Jul 19, 2024
3d29e52
[nasa/cryptolib#197] Added missing call to UTEST_MAIN()
Donnie-Ice Jul 22, 2024
abe2947
[nasa/cryptolib#264] Resolved non-erroring seg faults in unit tests
Donnie-Ice Jul 22, 2024
a8ec6ec
[nasa/cryptolib#197] Added AES-GCM-SIV Encryption Unit Tests
Donnie-Ice Jul 25, 2024
178a30a
[nasa/cryptolib#197] GCM-SIV Decryption unit tests in progress
Donnie-Ice Jul 26, 2024
50617cb
[nasa/cryptolib#197] Added GCM-SIV Decryption Unit tests
Donnie-Ice Jul 26, 2024
32de194
[nasa/cryptolib#197] Added SIV and GCM-SIV Decryption Support through…
Donnie-Ice Jul 26, 2024
f5e2d72
Merge pull request #263 from nasa/cryptolib#222
jlucas9 Jul 29, 2024
d1d41e8
Merge pull request #261 from nasa/217-mc-how-to-handle-where-file-is-…
jlucas9 Jul 29, 2024
e5019ff
[nasa/Cryptolib#256] Updates to GVCID_Managed_Paramaters. Conversion…
rjbrown6 Jul 29, 2024
e6086bf
[nasa/cryptolib#197] AES_GCM_SIV Code Cleanup
Donnie-Ice Jul 29, 2024
f8306f2
[nasa/cryptolib#197] Updated builds to install Libgcrypt 1.11.0 and l…
Donnie-Ice Jul 29, 2024
48a19cd
[nasa/cryptolib#197] Resolve build issues on RHEL
Donnie-Ice Aug 1, 2024
483eca8
[nasa/cryptolib#197] Source bashrc before running gcov
Donnie-Ice Aug 1, 2024
efcf356
[nasa/cryptolib#197] Removed commented code and references to GCM-SIV…
Donnie-Ice Aug 2, 2024
435bec2
[nasa/Cryptolib#256] SA Rework Update - WIP Unit tests (Currently Bro…
rjbrown6 Aug 2, 2024
043e242
[nasa/Cryptolib#256] SA Rework Update - WIP Unit tests (Currently Bro…
rjbrown6 Aug 2, 2024
5a1cff8
Merge pull request #265 from nasa/197-aes-gcm-siv
Donnie-Ice Aug 5, 2024
e9541dc
[nasa/cryptolib#268] switched source branch to dev
Donnie-Ice Aug 5, 2024
391e764
[nasa/cryptolib#268] Added another status check after Crypto_TC_Sanit…
Donnie-Ice Aug 5, 2024
83e2b45
[nasa/cryptolib#268] Fix one-off index check
Donnie-Ice Aug 5, 2024
29abebd
Merge pull request #269 from nasa/268-oob-read-branch-rebase
Donnie-Ice Aug 7, 2024
67d6347
[nasa/cryptolib#262] Created top level helper Makefile;
jlucas9 Aug 14, 2024
63a9183
[nasa/cryptolib#262] Dockerfile updates to use buildx, pushed specifi…
jlucas9 Aug 14, 2024
55b06ee
[nasa/cryptolib#262] Added additional flags to docker run command;
jlucas9 Aug 14, 2024
853fb5d
Merge pull request #270 from nasa/cryptolib#262
jlucas9 Aug 15, 2024
b1e3d30
[nasa/Cryptolib#256] SA reworked, Keys updated, internal tests updated
rjbrown6 Aug 16, 2024
c1da1dc
Merge branch 'dev' into cryptolib#256
jlucas9 Aug 16, 2024
22255f7
[nasa/Cryptolib#256] Updates to merge
rjbrown6 Aug 16, 2024
abc8548
[nasa/Cryptolib#256] Remove KMC Test prep for open source containers
rjbrown6 Aug 16, 2024
e536c70
Merge pull request #273 from nasa/cryptolib#256
jlucas9 Aug 19, 2024
f834ba2
[nasa/Cryptolib#274] Prep for release - 1.3.1.
rjbrown6 Aug 19, 2024
ee6d707
Merge pull request #275 from nasa/274-rc-131
rjbrown2 Aug 19, 2024
0989519
Packaging improvements
Niautanor Aug 19, 2024
ae02d55
Merge pull request #278 from Niautanor/improve-packagability
jlucas9 Aug 20, 2024
5d2fd31
Don't skip Handle_Increment if Do_Encrypt_NONPLAINTEXT succeeds
Niautanor Aug 23, 2024
5c905e6
Test that the IV is incremented as part of TM_ApplySecurity
Niautanor Aug 23, 2024
1a3b57d
Merge pull request #280 from Niautanor/dont-skip-handle-increment
rjbrown2 Aug 23, 2024
1080a5e
[nasa/Cryptolib#281] Updates to track status variable
rjbrown6 Aug 23, 2024
366d394
[hotfix] Revert top level Makefile from cryptolib#262;
jlucas9 Aug 26, 2024
c5025c7
Merge branch 'dev' into 281-track-status-variable-crypto_tm
rjbrown2 Aug 27, 2024
65c8710
Merge pull request #282 from nasa/281-track-status-variable-crypto_tm
rjbrown2 Aug 27, 2024
a458550
[nasa/cryptolib#283] Unit Test for Non-Operational SA
Donnie-Ice Aug 27, 2024
d8252c6
[nasa/cryptolib#283] Added error enum for non-operational SA
Donnie-Ice Aug 27, 2024
0839da9
[nasa/Cryptolib#274] Update Typo for 1.3.1 Release
rjbrown6 Aug 28, 2024
94e2055
[nasa/Cryptolib#274 Add Define for GVCID Managed Parameters array size
rjbrown6 Aug 28, 2024
3f515f6
[nasa/Cryptolib#274 Add Define for GVCID Managed Parameters array size
rjbrown6 Aug 28, 2024
86f790e
Merge pull request #285 from nasa/274-rc-131
rjbrown2 Aug 28, 2024
c2b47e3
[nasa/cryptolib#283] Added SA_OPERATIONAL checkc
Donnie-Ice Aug 28, 2024
668efc3
Merge pull request #286 from nasa/283-confirm-sa_operational-before-r…
Donnie-Ice Aug 28, 2024
39f6d6b
[nasa/cryptolib#287] Add codeql workflow
Donnie-Ice Sep 4, 2024
c7282f8
[nasa/cryptolib#287] Modify codeql workflow
Donnie-Ice Sep 4, 2024
aecee69
[nasa/cryptolib#287] Modify codeql workflow
Donnie-Ice Sep 4, 2024
639f3aa
[nasa/cryptolib#287] Modify codeql workflow
Donnie-Ice Sep 4, 2024
70de9f8
[nasa/cryptolib#289] Fix NULL Dereference
Donnie-Ice Sep 4, 2024
31bf6eb
[nasa/cryptolib#287] Modify codeql workflow
Donnie-Ice Sep 4, 2024
5dadca4
Merge pull request #290 from nasa/287-consider-open-source-code-scann…
Donnie-Ice Sep 4, 2024
cea1f30
[nasa/cryptolib#291] Incorporate CodeQL into build.yml
Donnie-Ice Sep 5, 2024
eea2164
[nasa/cryptolib#291] Incorporate CodeQL into build.yml - 2
Donnie-Ice Sep 5, 2024
016a1b3
[nasa/cryptolib#291] Incorporate CodeQL into build.yml - 3
Donnie-Ice Sep 5, 2024
137c280
[nasa/Cryptolib#293] Update to CmakeLists.txt - Allows for more flexi…
rjbrown6 Sep 11, 2024
46e3f79
[nasa/Cryptolib#291] Testing CodeQL Refactor
rjbrown6 Sep 11, 2024
9fdac61
[nasa/Cryptolib#291] Testing CodeQL Refactor
rjbrown6 Sep 11, 2024
2dddc8a
[nasa/Cryptolib#291] Testing CodeQL Refactor
rjbrown6 Sep 11, 2024
36c99e0
[nasa/Cryptolib#291] Testing CodeQL Refactor
rjbrown6 Sep 11, 2024
70f4c27
[nasa/Cryptolib#291] Testing CodeQL Refactor
rjbrown6 Sep 11, 2024
6b492d3
[nasa/Cryptolib#291] Testing CodeQL Refactor
rjbrown6 Sep 11, 2024
218d7ea
[nasa/Cryptolib#291] Testing CodeQL Refactor
rjbrown6 Sep 11, 2024
c0edc9e
[nasa/Cryptolib#291] Testing CodeQL Refactor
rjbrown6 Sep 11, 2024
c074018
[nasa/Cryptolib#291] Testing CodeQL Refactor
rjbrown6 Sep 11, 2024
6baffee
[nasa/Cryptolib#291] Testing CodeQL Refactor
rjbrown6 Sep 11, 2024
aae1fb2
[nasa/Cryptolib#291] Testing CodeQL Refactor
rjbrown6 Sep 11, 2024
0dbfe10
[nasa/Cryptolib#291] Testing CodeQL Refactor
rjbrown6 Sep 11, 2024
09ae03f
[nasa/Cryptolib#291] Testing CodeQL Refactor
rjbrown6 Sep 11, 2024
8b93c27
[nasa/Cryptolib#291] Testing CodeQL Refactor
rjbrown6 Sep 11, 2024
4cb6ee2
[nasa/Cryptolib#291] Testing CodeQL Refactor
rjbrown6 Sep 11, 2024
39222dd
[nasa/Cryptolib#291] Testing CodeQL Refactor
rjbrown6 Sep 11, 2024
c87bd2f
[nasa/Cryptolib#291] Testing CodeQL Refactor
rjbrown6 Sep 11, 2024
12842cf
[nasa/Cryptolib#291] Testing CodeQL Refactor
rjbrown6 Sep 11, 2024
2a474b8
Restore submodule install functionality
Sep 11, 2024
2df402b
Correct SQL directory name
Sep 11, 2024
7baa662
[nasa/Cryptolib#296] Update Cryptostructs to exclude/include system l…
rjbrown6 Sep 11, 2024
c04c861
[nasa/Cryptolib#291] Testing CodeQL Refactor
rjbrown6 Sep 11, 2024
6b09b74
[nasa/Cryptolib#291] Testing CodeQL Refactor
rjbrown6 Sep 11, 2024
69ed54b
[nasa/Cryptolib#291] Testing CodeQL Refactor
rjbrown6 Sep 11, 2024
5d5549e
[nasa/Cryptolib#291] Testing CodeQL Refactor
rjbrown6 Sep 11, 2024
7939f97
[nasa/Cryptolib#291] Testing CodeQL Refactor
rjbrown6 Sep 11, 2024
b56ad48
[nasa/Cryptolib#291] Testing CodeQL Refactor
rjbrown6 Sep 11, 2024
5816313
[nasa/Cryptolib#291] Testing CodeQL Refactor
rjbrown6 Sep 11, 2024
3b91155
[nasa/Cryptolib#291] Testing CodeQL Refactor
rjbrown6 Sep 11, 2024
b0e187e
[nasa/Cryptolib#291] Workflow Cleanup
rjbrown6 Sep 11, 2024
fc702a5
[nasa/Cryptolib#291] Workflow Cleanup - Typo Fixes
rjbrown6 Sep 11, 2024
d404cbc
[nasa/Cryptolib#291] Workflow Cleanup - Typo Fixes
rjbrown6 Sep 11, 2024
3d71990
[nasa/Cryptolib#291] Workflow Cleanup - Typo Fixes
rjbrown6 Sep 11, 2024
780bba0
[nasa/Cryptolib#291] Workflow Cleanup - Build.yml revert
rjbrown6 Sep 11, 2024
8a8cf35
Merge pull request #294 from nasa/293-update-cmake-install-path
rjbrown2 Sep 11, 2024
f362333
Merge pull request #297 from HaykArutyunyan-JPL/jpl-kmc-sdls-build-issue
rjbrown2 Sep 11, 2024
e570389
Merge pull request #298 from nasa/296-update-crypto-struct
rjbrown2 Sep 11, 2024
9b211e3
[nasa/Cryptolib#295] Add include directory call
rjbrown6 Sep 11, 2024
2047706
[nasa/Cryptolib#291] CodeQL YML Refactor
rjbrown6 Sep 11, 2024
693ba55
[nasa/Cryptolib#291] CodeQL YML Refactor
rjbrown6 Sep 11, 2024
4a32025
[nasa/Cryptolib#291] CodeQL YML Refactor
rjbrown6 Sep 11, 2024
b3cdc2a
[nasa/Cryptolib#291] CodeQL YML Refactor
rjbrown6 Sep 11, 2024
d5a86ae
[nasa/Cryptolib#291] CodeQL YML Refactor
rjbrown6 Sep 11, 2024
adc4f2f
[nasa/Cryptolib#291] CodeQL YML Refactor
rjbrown6 Sep 11, 2024
3d929b8
[nasa/Cryptolib#291] CodeQL YML Refactor
rjbrown6 Sep 11, 2024
d74025a
[nasa/Cryptolib#291] CodeQL YML Refactor
rjbrown6 Sep 11, 2024
ca970eb
[nasa/Cryptolib#291] CodeQL YML Refactor
rjbrown6 Sep 11, 2024
fbf7daf
[nasa/Cryptolib#291] CodeQL YML Refactor
rjbrown6 Sep 11, 2024
275bac0
[nasa/Cryptolib#291] CodeQL YML Refactor
rjbrown6 Sep 11, 2024
07b2565
[nasa/Cryptolib#291] CodeQL YML Refactor
rjbrown6 Sep 11, 2024
f40d8d8
[nasa/Cryptolib#291] CodeQL YML Refactor
rjbrown6 Sep 11, 2024
5106291
[nasa/Cryptolib#291] CodeQL YML Refactor
rjbrown6 Sep 11, 2024
e9d4d82
Merge pull request #301 from nasa/295-add-target_include_directories-…
rjbrown2 Sep 11, 2024
731dbca
Merge pull request #300 from nasa/291-apply-codeql-workflow-to-all-bu…
rjbrown2 Sep 11, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
189 changes: 169 additions & 20 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,9 +18,26 @@ jobs:
- name: Update
run: sudo apt-get update
- name: Install Dependencies
run: sudo apt-get install -y lcov libcurl4-openssl-dev libmariadb-dev libmariadb-dev-compat libgcrypt20-dev python3
run: sudo apt-get install -y lcov libcurl4-openssl-dev libmariadb-dev libmariadb-dev-compat python3
- name: Install Python Libraries
run: sudo pip install pycryptodome
- name: Install Libgcrypt
run: >
curl
-LS https://www.gnupg.org/ftp/gcrypt/libgpg-error/libgpg-error-1.50.tar.bz2
-o /tmp/libgpg-error-1.50.tar.bz2
&& tar -xjf /tmp/libgpg-error-1.50.tar.bz2 -C /tmp/
&& cd /tmp/libgpg-error-1.50
&& sudo ./configure
&& sudo make install
&& curl
-LS https://www.gnupg.org/ftp/gcrypt/libgcrypt/libgcrypt-1.11.0.tar.bz2
-o /tmp/libgcrypt-1.11.0.tar.bz2
&& tar -xjf /tmp/libgcrypt-1.11.0.tar.bz2 -C /tmp/
&& cd /tmp/libgcrypt-1.11.0
&& sudo ./configure
&& sudo make install
&& sudo ldconfig
# End Container Setup

- name: Minimal Build Script
Expand All @@ -38,9 +55,26 @@ jobs:
- name: Update
run: sudo apt-get update
- name: Install Dependencies
run: sudo apt-get install -y lcov libcurl4-openssl-dev libmariadb-dev libmariadb-dev-compat libgcrypt20-dev python3
run: sudo apt-get install -y lcov libcurl4-openssl-dev libmariadb-dev libmariadb-dev-compat python3
- name: Install Python Libraries
run: sudo pip install pycryptodome
- name: Install Libgcrypt
run: >
curl
-LS https://www.gnupg.org/ftp/gcrypt/libgpg-error/libgpg-error-1.50.tar.bz2
-o /tmp/libgpg-error-1.50.tar.bz2
&& tar -xjf /tmp/libgpg-error-1.50.tar.bz2 -C /tmp/
&& cd /tmp/libgpg-error-1.50
&& sudo ./configure
&& sudo make install
&& curl
-LS https://www.gnupg.org/ftp/gcrypt/libgcrypt/libgcrypt-1.11.0.tar.bz2
-o /tmp/libgcrypt-1.11.0.tar.bz2
&& tar -xjf /tmp/libgcrypt-1.11.0.tar.bz2 -C /tmp/
&& cd /tmp/libgcrypt-1.11.0
&& sudo ./configure
&& sudo make install
&& sudo ldconfig
# End Container Setup

- name: Internal Build Script
Expand All @@ -52,31 +86,61 @@ jobs:
run: make gcov

- name: Upload
uses: codecov/codecov-action@v3
uses: codecov/codecov-action@v4
env:
CODECOV_TOKEN: 71699f25-12a3-44a4-8a83-be777b9e577a
with:
files: 'coverage/*.c.gcov'
verbose: true

#
# KMC Build
#
kmc_build:
# Container Setup
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Update
run: sudo apt-get update
- name: Install Dependencies
run: sudo apt-get install -y lcov libcurl4-openssl-dev libmariadb-dev libmariadb-dev-compat libgcrypt20-dev python3
- name: Install Python Libraries
run: sudo pip install pycryptodome
# End Container Setup
# kmc_build:
# # Container Setup
# runs-on: ubuntu-latest
# steps:
# - uses: actions/checkout@v2
# - name: Update
# run: sudo apt-get update
# - name: Install Dependencies
# run: sudo apt-get install -y lcov libcurl4-openssl-dev libmariadb-dev libmariadb-dev-compat python3
# - name: Install Python Libraries
# run: sudo pip install pycryptodome
# - name: Install Libgcrypt
# run: >
# curl
# -LS https://www.gnupg.org/ftp/gcrypt/libgpg-error/libgpg-error-1.50.tar.bz2
# -o /tmp/libgpg-error-1.50.tar.bz2
# && tar -xjf /tmp/libgpg-error-1.50.tar.bz2 -C /tmp/
# && cd /tmp/libgpg-error-1.50
# && sudo ./configure
# && sudo make install
# && curl
# -LS https://www.gnupg.org/ftp/gcrypt/libgcrypt/libgcrypt-1.11.0.tar.bz2
# -o /tmp/libgcrypt-1.11.0.tar.bz2
# && tar -xjf /tmp/libgcrypt-1.11.0.tar.bz2 -C /tmp/
# && cd /tmp/libgcrypt-1.11.0
# && sudo ./configure
# && sudo make install
# && sudo ldconfig
# # End Container Setup

- name: KMC Build Script
working-directory: ${{github.workspace}}
run: bash ${GITHUB_WORKSPACE}/support/scripts/build_kmc.sh
# - name: KMC Build Script
# working-directory: ${{github.workspace}}
# run: bash ${GITHUB_WORKSPACE}/support/scripts/build_kmc.sh

# - name: Code-Coverage
# working-directory: ${{github.workspace}}
# run: make gcov

# - name: Upload
# uses: codecov/codecov-action@v4
# env:
# CODECOV_TOKEN: 71699f25-12a3-44a4-8a83-be777b9e577a
# with:
# files: 'coverage/*.c.gcov'
# verbose: true

#
# Wolf Build
Expand All @@ -89,9 +153,26 @@ jobs:
- name: Update
run: sudo apt-get update
- name: Install Dependencies
run: sudo apt-get install -y lcov libcurl4-openssl-dev libmariadb-dev libmariadb-dev-compat libgcrypt20-dev python3 autoconf libtool
run: sudo apt-get install -y lcov libcurl4-openssl-dev libmariadb-dev libmariadb-dev-compat python3 autoconf libtool
- name: Install Python Libraries
run: sudo pip install pycryptodome
- name: Install Libgcrypt
run: >
curl
-LS https://www.gnupg.org/ftp/gcrypt/libgpg-error/libgpg-error-1.50.tar.bz2
-o /tmp/libgpg-error-1.50.tar.bz2
&& tar -xjf /tmp/libgpg-error-1.50.tar.bz2 -C /tmp/
&& cd /tmp/libgpg-error-1.50
&& sudo ./configure
&& sudo make install
&& curl
-LS https://www.gnupg.org/ftp/gcrypt/libgcrypt/libgcrypt-1.11.0.tar.bz2
-o /tmp/libgcrypt-1.11.0.tar.bz2
&& tar -xjf /tmp/libgcrypt-1.11.0.tar.bz2 -C /tmp/
&& cd /tmp/libgcrypt-1.11.0
&& sudo ./configure
&& sudo make install
&& sudo ldconfig
- name: Clone WolfSSL
run: git clone --depth 1 --branch v5.6.0-stable https://github.com/wolfSSL/wolfssl.git /tmp/wolfssl

Expand All @@ -101,7 +182,7 @@ jobs:
#run: cd /tmp/wolfssl/;
# sudo chown -R runner /usr/local;
# ./autogen.sh;
# ./configure --enable-aesccm --enable-aessiv --enable-cmac;
# sudo ./configure --enable-aesccm --enable-aessiv --enable-cmac;
# make;
# make install;
#sudo chown -R runner /usr/local;
Expand All @@ -116,3 +197,71 @@ jobs:
- name: Wolf Build Script
working-directory: ${{github.workspace}}
run: bash ${GITHUB_WORKSPACE}/support/scripts/build_wolf.sh

- name: Code-Coverage
working-directory: ${{github.workspace}}
run: make gcov

- name: Upload
uses: codecov/codecov-action@v4
env:
CODECOV_TOKEN: 71699f25-12a3-44a4-8a83-be777b9e577a
with:
files: 'coverage/*.c.gcov'
verbose: true

#
# RHEL Build
#
rhel_build:
# Container Setup
runs-on: ubuntu-latest
container:
image: rockylinux/rockylinux:8
steps:
- uses: actions/checkout@v2
- name: Update
run: yum update -y
- name: Install Dependencies
run: yum install -y epel-release python38-devel libcurl-devel git cmake gcc java-11-openjdk-devel openssl wget bzip2 ldconfig mariadb-devel mariadb-common mariadb-connector-c mariadb-connector-c-config mariadb-errmsg mariadb-gssapi-server
# Might want to trim this down, but these dependencies should work for KMC
- name: install lcov
run: yum install -y --enablerepo=epel lcov
- name: Install Python Dependencies
run: pip3 install pycryptodome
- name: Install Libgcrypt
run: >
curl
-LS https://www.gnupg.org/ftp/gcrypt/libgpg-error/libgpg-error-1.50.tar.bz2
-o /tmp/libgpg-error-1.50.tar.bz2
&& tar -xjf /tmp/libgpg-error-1.50.tar.bz2 -C /tmp/
&& cd /tmp/libgpg-error-1.50
&& ./configure
&& make install
&& curl
-LS https://www.gnupg.org/ftp/gcrypt/libgcrypt/libgcrypt-1.11.0.tar.bz2
-o /tmp/libgcrypt-1.11.0.tar.bz2
&& tar -xjf /tmp/libgcrypt-1.11.0.tar.bz2 -C /tmp/
&& cd /tmp/libgcrypt-1.11.0
&& ./configure
&& make install
&& echo "export LD_LIBRARY_PATH=/usr/local/lib/:/usr/local/include:$LD_LIBRARY_PATH" >> ~/.bashrc
&& source ~/.bashrc
&& ldconfig
# End Container Setup

- name: RHEL Build Script
working-directory: ${{github.workspace}}
run: source ~/.bashrc && ${GITHUB_WORKSPACE}/support/scripts/build_rhel.sh

- name: Code-Coverage
working-directory: ${{github.workspace}}
run: source ~/.bashrc && make gcov

- name: Upload
uses: codecov/codecov-action@v4
env:
CODECOV_TOKEN: 71699f25-12a3-44a4-8a83-be777b9e577a
with:
files: 'coverage/*.c.gcov'
verbose: true
74 changes: 73 additions & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,17 @@
cmake_minimum_required(VERSION 3.14.0)
project(crypto C)

#
# CUSTOM PATH Definiton
#
set(SA_CUSTOM_PATH_DEFAULT "../../sa/custom")
set(KEY_CUSTOM_PATH_DEFAULT "../../key/custom")
set(MC_CUSTOM_PATH_DEFAULT "../../mc/custom")
set(MC_LOG_PATH_DEFAULT "log.txt")
set(CRYPTO_CUSTOM_PATH_DEFAULT "../../crypto/custom")



#
# Define Build Flags
# The default value is captured in line, change with flag `-DXYZ=1`
Expand All @@ -27,37 +38,96 @@ option(CODECOV "Code Coverage" OFF)
option(CRYPTO_LIBGCRYPT "Cryptography Module - Libgcrypt" ON)
option(CRYPTO_KMC "Cryptography Module - KMC" OFF)
option(CRYPTO_WOLFSSL "Cryptography Module - WolfSSL" OFF)
option(CRYPTO_CUSTOM "Cryptography Module - CUSTOM" OFF)
option(CRYPTO_CUSTOM_PATH "Cryptography Module - CUSTOM PATH" OFF)
option(DEBUG "Debug" OFF)
option(KEY_CUSTOM "Key Module - Custom" OFF)
option(KEY_CUSTOM_PATH "Custom Key Path" OFF)
option(KEY_INTERNAL "Key Module - Internal" ON)
option(KEY_KMC "Key Module - KMC" OFF)
option(MC_CUSTOM "Monitoring and Control - Custom" OFF)
option(MC_CUSTOM_PATH "Custom Monitoring and Control path" OFF)
option(MC_DISABLED "Monitoring and Control - Disabled" OFF)
option(MC_INTERNAL "Monitoring and Control - Internal" ON)
option(SA_CUSTOM "Security Association - Custom" OFF)
option(SA_CUSTOM_PATH "Custom Security Association Path" OFF)
option(SA_INTERNAL "Security Association - Internal" ON)
option(SA_MARIADB "Security Association - MariaDB" OFF)
option(SUPPORT "Support" OFF)
option(SYSTEM_INSTALL "SystemInstall" OFF)
option(TEST "Test" OFF)
option(TEST_ENC "Tests - Encryption" OFF)
option(SA_FILE "Save Security Association to File" OFF)
option(KEY_VALIDATION "Validate existance of key duplication" OFF)

OPTION(KMC_MDB_RH "KMC-MDB-RedHat-Integration-Testing" OFF) #Disabled by default, enable with: -DKMC_MDB_RH=ON
OPTION(KMC_MDB_DB "KMC-MDB-Debian-Integration-Testing" OFF) #Disabled by default, enable with: -DKMC_MDB_DB=ON
OPTION(KMC_CFFI_EXCLUDE "KMC-Exclude-Problematic-CFFI-Code" OFF) #Disabled by default, enable with: -DKMC_CFFI_EXCLUDE=ON


#
# Custom Module Paths
#
if(KEY_CUSTOM)
if(NOT DEFINED KEY_CUSTOM_PATH)
set(KEY_CUSTOM_PATH ${KEY_CUSTOM_PATH_DEFAULT})
message(STATUS "Default path set for KEY_CUSTOM_PATH")
endif()
message(STATUS "KEY_CUSTOM being utilized. Path set to: ${KEY_CUSTOM_PATH}")
endif()

if(MC_CUSTOM)
if(NOT DEFINED MC_CUSTOM_PATH)
set(MC_CUSTOM_PATH ${MC_CUSTOM_PATH_DEFAULT})
message(STATUS "Default path set for MC_CUSTOM_PATH")
endif()
message(STATUS "MC_CUSTOM being utilized. Path set to: ${MC_CUSTOM_PATH}")
endif()

if(SA_CUSTOM)
if(NOT DEFINED SA_CUSTOM_PATH)
set(SA_CUSTOM_PATH ${SA_CUSTOM_PATH_DEFAULT})
message(STATUS "Default path set for SA_CUSTOM_PATH")
endif()
message(STATUS "SA_CUSTOM being utilized. Path set to: ${SA_CUSTOM_PATH}")
endif()

if(CRYPTO_CUSTOM)
if(NOT DEFINED CRYPTO_CUSTOM_PATH)
set(CRYPTO_CUSTOM_PATH ${CRYPTO_CUSTOM_PATH_DEFAULT})
message(STATUS "Default path set for CRYPTO_CUSTOM_PATH")
endif()
message(STATUS "CRYPTO_CUSTOM being utilized. Path set to: ${CRYPTO_CUSTOM_PATH}")
endif()


#
# Build Flag Logic
#
if(CODECOV)
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fprofile-arcs -ftest-coverage")
endif()

if(SA_FILE)
add_definitions(-DSA_FILE)
endif()

if(KEY_VALIDATION)
add_definitions(-DKEY_VALIDATION)
endif()

if(DEBUG)
add_definitions(-DDEBUG -DOCF_DEBUG -DFECF_DEBUG -DSA_DEBUG -DPDU_DEBUG -DCCSDS_DEBUG -DTC_DEBUG -DMAC_DEBUG -DTM_DEBUG -DAOS_DEBUG)
add_compile_options(-ggdb)
endif()

if(DEFINED MC_LOG_CUSTOM_PATH)
message(STATUS "MC_LOG_CUSTOM_PATH set to: ${MC_LOG_CUSTOM_PATH}")
add_compile_definitions(MC_LOG_PATH="${MC_LOG_CUSTOM_PATH}")
else()
add_compile_definitions(MC_LOG_PATH="${MC_LOG_PATH_DEFAULT}")
endif()

IF(KMC_MDB_RH)
ADD_DEFINITIONS(-DKMC_MDB_RH)
ADD_DEFINITIONS(-DKMC_CFFI_EXCLUDE)
Expand All @@ -69,7 +139,9 @@ IF(KMC_MDB_DB)
ENDIF(KMC_MDB_DB)

if(SYSTEM_INSTALL)
set(CMAKE_INSTALL_PREFIX /usr/local)
# The library will be installed to /usr/local unless overridden with
# -DCMAKE_INSTALL_PREFIX=/some/path
# See https://cmake.org/cmake/help/latest/variable/CMAKE_INSTALL_PREFIX.html
elseif(NOT DEFINED CFE_SYSTEM_PSPNAME)
# Not cFE / cFS
set(CMAKE_INSTALL_RPATH "$ORIGIN/../lib")
Expand Down
Loading
Loading