edhoc 1.0.5 → 1.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (313) hide show
  1. package/README.md +170 -0
  2. package/binding.gyp +13 -11
  3. package/dist/crypto.d.ts +9 -2
  4. package/dist/crypto.d.ts.map +1 -1
  5. package/dist/crypto.js +112 -84
  6. package/dist/edhoc.d.ts +31 -9
  7. package/dist/edhoc.d.ts.map +1 -1
  8. package/dist/index.d.ts +1 -1
  9. package/dist/index.d.ts.map +1 -1
  10. package/dist/index.js +1 -1
  11. package/dist/x509credentials.d.ts +20 -0
  12. package/dist/x509credentials.d.ts.map +1 -0
  13. package/dist/x509credentials.js +140 -0
  14. package/external/libedhoc/backends/cbor/include/backend_cbor_bstr_type_decode.h +1 -1
  15. package/external/libedhoc/backends/cbor/include/backend_cbor_bstr_type_encode.h +1 -1
  16. package/external/libedhoc/backends/cbor/include/backend_cbor_bstr_type_types.h +1 -1
  17. package/external/libedhoc/backends/cbor/include/backend_cbor_ead_decode.h +2 -2
  18. package/external/libedhoc/backends/cbor/include/backend_cbor_ead_encode.h +2 -2
  19. package/external/libedhoc/backends/cbor/include/backend_cbor_edhoc_types.h +48 -43
  20. package/external/libedhoc/backends/cbor/include/backend_cbor_enc_structure_decode.h +1 -1
  21. package/external/libedhoc/backends/cbor/include/backend_cbor_enc_structure_encode.h +1 -1
  22. package/external/libedhoc/backends/cbor/include/backend_cbor_enc_structure_types.h +3 -3
  23. package/external/libedhoc/backends/cbor/include/backend_cbor_id_cred_x_decode.h +1 -1
  24. package/external/libedhoc/backends/cbor/include/backend_cbor_id_cred_x_encode.h +1 -1
  25. package/external/libedhoc/backends/cbor/include/backend_cbor_info_decode.h +1 -1
  26. package/external/libedhoc/backends/cbor/include/backend_cbor_info_encode.h +1 -1
  27. package/external/libedhoc/backends/cbor/include/backend_cbor_int_type_decode.h +1 -1
  28. package/external/libedhoc/backends/cbor/include/backend_cbor_int_type_encode.h +1 -1
  29. package/external/libedhoc/backends/cbor/include/backend_cbor_int_type_types.h +1 -1
  30. package/external/libedhoc/backends/cbor/include/backend_cbor_message_1_decode.h +1 -1
  31. package/external/libedhoc/backends/cbor/include/backend_cbor_message_1_encode.h +1 -1
  32. package/external/libedhoc/backends/cbor/include/backend_cbor_message_2_decode.h +1 -1
  33. package/external/libedhoc/backends/cbor/include/backend_cbor_message_2_encode.h +1 -1
  34. package/external/libedhoc/backends/cbor/include/backend_cbor_message_3_decode.h +1 -1
  35. package/external/libedhoc/backends/cbor/include/backend_cbor_message_3_encode.h +1 -1
  36. package/external/libedhoc/backends/cbor/include/backend_cbor_message_4_decode.h +1 -1
  37. package/external/libedhoc/backends/cbor/include/backend_cbor_message_4_encode.h +1 -1
  38. package/external/libedhoc/backends/cbor/include/backend_cbor_message_error_decode.h +1 -1
  39. package/external/libedhoc/backends/cbor/include/backend_cbor_message_error_encode.h +1 -1
  40. package/external/libedhoc/backends/cbor/include/backend_cbor_plaintext_2_decode.h +1 -1
  41. package/external/libedhoc/backends/cbor/include/backend_cbor_plaintext_2_encode.h +1 -1
  42. package/external/libedhoc/backends/cbor/include/backend_cbor_plaintext_3_decode.h +1 -1
  43. package/external/libedhoc/backends/cbor/include/backend_cbor_plaintext_3_encode.h +1 -1
  44. package/external/libedhoc/backends/cbor/include/backend_cbor_plaintext_4_decode.h +3 -3
  45. package/external/libedhoc/backends/cbor/include/backend_cbor_plaintext_4_encode.h +3 -3
  46. package/external/libedhoc/backends/cbor/include/backend_cbor_sig_structure_decode.h +1 -1
  47. package/external/libedhoc/backends/cbor/include/backend_cbor_sig_structure_encode.h +1 -1
  48. package/external/libedhoc/backends/cbor/include/backend_cbor_sig_structure_types.h +4 -4
  49. package/external/libedhoc/backends/cbor/include/backend_cbor_x509_types.h +93 -83
  50. package/external/libedhoc/backends/cbor/src/backend_cbor_bstr_type_decode.c +11 -20
  51. package/external/libedhoc/backends/cbor/src/backend_cbor_bstr_type_encode.c +11 -20
  52. package/external/libedhoc/backends/cbor/src/backend_cbor_ead_decode.c +27 -32
  53. package/external/libedhoc/backends/cbor/src/backend_cbor_ead_encode.c +27 -32
  54. package/external/libedhoc/backends/cbor/src/backend_cbor_enc_structure_decode.c +14 -23
  55. package/external/libedhoc/backends/cbor/src/backend_cbor_enc_structure_encode.c +14 -23
  56. package/external/libedhoc/backends/cbor/src/backend_cbor_id_cred_x_decode.c +63 -52
  57. package/external/libedhoc/backends/cbor/src/backend_cbor_id_cred_x_encode.c +62 -51
  58. package/external/libedhoc/backends/cbor/src/backend_cbor_info_decode.c +14 -23
  59. package/external/libedhoc/backends/cbor/src/backend_cbor_info_encode.c +14 -23
  60. package/external/libedhoc/backends/cbor/src/backend_cbor_int_type_decode.c +11 -20
  61. package/external/libedhoc/backends/cbor/src/backend_cbor_int_type_encode.c +11 -20
  62. package/external/libedhoc/backends/cbor/src/backend_cbor_message_1_decode.c +54 -51
  63. package/external/libedhoc/backends/cbor/src/backend_cbor_message_1_encode.c +54 -51
  64. package/external/libedhoc/backends/cbor/src/backend_cbor_message_2_decode.c +11 -20
  65. package/external/libedhoc/backends/cbor/src/backend_cbor_message_2_encode.c +11 -20
  66. package/external/libedhoc/backends/cbor/src/backend_cbor_message_3_decode.c +11 -20
  67. package/external/libedhoc/backends/cbor/src/backend_cbor_message_3_encode.c +11 -20
  68. package/external/libedhoc/backends/cbor/src/backend_cbor_message_4_decode.c +11 -20
  69. package/external/libedhoc/backends/cbor/src/backend_cbor_message_4_encode.c +11 -20
  70. package/external/libedhoc/backends/cbor/src/backend_cbor_message_error_decode.c +36 -37
  71. package/external/libedhoc/backends/cbor/src/backend_cbor_message_error_encode.c +36 -37
  72. package/external/libedhoc/backends/cbor/src/backend_cbor_plaintext_2_decode.c +103 -80
  73. package/external/libedhoc/backends/cbor/src/backend_cbor_plaintext_2_encode.c +102 -79
  74. package/external/libedhoc/backends/cbor/src/backend_cbor_plaintext_3_decode.c +99 -76
  75. package/external/libedhoc/backends/cbor/src/backend_cbor_plaintext_3_encode.c +98 -75
  76. package/external/libedhoc/backends/cbor/src/backend_cbor_plaintext_4_decode.c +40 -41
  77. package/external/libedhoc/backends/cbor/src/backend_cbor_plaintext_4_encode.c +40 -41
  78. package/external/libedhoc/backends/cbor/src/backend_cbor_sig_structure_decode.c +15 -24
  79. package/external/libedhoc/backends/cbor/src/backend_cbor_sig_structure_encode.c +15 -24
  80. package/external/libedhoc/externals/Unity/examples/example_1/src/ProductionCode.c +31 -0
  81. package/external/libedhoc/externals/Unity/examples/example_1/src/ProductionCode.h +10 -0
  82. package/external/libedhoc/externals/Unity/examples/example_1/src/ProductionCode2.c +18 -0
  83. package/external/libedhoc/externals/Unity/examples/example_1/src/ProductionCode2.h +9 -0
  84. package/external/libedhoc/externals/Unity/examples/example_1/test/TestProductionCode.c +69 -0
  85. package/external/libedhoc/externals/Unity/examples/example_1/test/TestProductionCode2.c +38 -0
  86. package/external/libedhoc/externals/Unity/examples/example_1/test/test_runners/TestProductionCode2_Runner.c +53 -0
  87. package/external/libedhoc/externals/Unity/examples/example_1/test/test_runners/TestProductionCode_Runner.c +57 -0
  88. package/external/libedhoc/externals/Unity/examples/example_2/src/ProductionCode.c +31 -0
  89. package/external/libedhoc/externals/Unity/examples/example_2/src/ProductionCode.h +10 -0
  90. package/external/libedhoc/externals/Unity/examples/example_2/src/ProductionCode2.c +18 -0
  91. package/external/libedhoc/externals/Unity/examples/example_2/src/ProductionCode2.h +9 -0
  92. package/external/libedhoc/externals/Unity/examples/example_2/test/TestProductionCode.c +71 -0
  93. package/external/libedhoc/externals/Unity/examples/example_2/test/TestProductionCode2.c +40 -0
  94. package/external/libedhoc/externals/Unity/examples/example_2/test/test_runners/TestProductionCode2_Runner.c +16 -0
  95. package/external/libedhoc/externals/Unity/examples/example_2/test/test_runners/TestProductionCode_Runner.c +18 -0
  96. package/external/libedhoc/externals/Unity/examples/example_2/test/test_runners/all_tests.c +19 -0
  97. package/external/libedhoc/externals/Unity/examples/example_3/helper/UnityHelper.c +17 -0
  98. package/external/libedhoc/externals/Unity/examples/example_3/helper/UnityHelper.h +19 -0
  99. package/external/libedhoc/externals/Unity/examples/example_3/src/ProductionCode.c +31 -0
  100. package/external/libedhoc/externals/Unity/examples/example_3/src/ProductionCode.h +10 -0
  101. package/external/libedhoc/externals/Unity/examples/example_3/src/ProductionCode2.c +18 -0
  102. package/external/libedhoc/externals/Unity/examples/example_3/src/ProductionCode2.h +9 -0
  103. package/external/libedhoc/externals/Unity/examples/example_3/test/TestProductionCode.c +69 -0
  104. package/external/libedhoc/externals/Unity/examples/example_3/test/TestProductionCode2.c +38 -0
  105. package/external/libedhoc/externals/Unity/examples/example_4/src/ProductionCode.c +31 -0
  106. package/external/libedhoc/externals/Unity/examples/example_4/src/ProductionCode.h +10 -0
  107. package/external/libedhoc/externals/Unity/examples/example_4/src/ProductionCode2.c +18 -0
  108. package/external/libedhoc/externals/Unity/examples/example_4/src/ProductionCode2.h +9 -0
  109. package/external/libedhoc/externals/Unity/examples/example_4/test/TestProductionCode.c +70 -0
  110. package/external/libedhoc/externals/Unity/examples/example_4/test/TestProductionCode2.c +42 -0
  111. package/external/libedhoc/externals/Unity/examples/example_4/test/test_runners/TestProductionCode2_Runner.c +53 -0
  112. package/external/libedhoc/externals/Unity/examples/example_4/test/test_runners/TestProductionCode_Runner.c +57 -0
  113. package/external/libedhoc/externals/Unity/examples/unity_config.h +251 -0
  114. package/external/libedhoc/externals/Unity/extras/bdd/src/unity_bdd.h +44 -0
  115. package/external/libedhoc/externals/Unity/extras/bdd/test/test_bdd.c +129 -0
  116. package/external/libedhoc/externals/Unity/extras/fixture/src/unity_fixture.c +310 -0
  117. package/external/libedhoc/externals/Unity/extras/fixture/src/unity_fixture.h +95 -0
  118. package/external/libedhoc/externals/Unity/extras/fixture/src/unity_fixture_internals.h +51 -0
  119. package/external/libedhoc/externals/Unity/extras/fixture/test/main/AllTests.c +20 -0
  120. package/external/libedhoc/externals/Unity/extras/fixture/test/template_fixture_tests.c +40 -0
  121. package/external/libedhoc/externals/Unity/extras/fixture/test/unity_fixture_Test.c +246 -0
  122. package/external/libedhoc/externals/Unity/extras/fixture/test/unity_fixture_TestRunner.c +33 -0
  123. package/external/libedhoc/externals/Unity/extras/memory/src/unity_memory.c +203 -0
  124. package/external/libedhoc/externals/Unity/extras/memory/src/unity_memory.h +61 -0
  125. package/external/libedhoc/externals/Unity/extras/memory/test/unity_memory_Test.c +326 -0
  126. package/external/libedhoc/externals/Unity/extras/memory/test/unity_memory_TestRunner.c +50 -0
  127. package/external/libedhoc/externals/Unity/extras/memory/test/unity_output_Spy.c +57 -0
  128. package/external/libedhoc/externals/Unity/extras/memory/test/unity_output_Spy.h +17 -0
  129. package/external/libedhoc/externals/Unity/src/unity.c +2501 -0
  130. package/external/libedhoc/externals/Unity/src/unity.h +698 -0
  131. package/external/libedhoc/externals/Unity/src/unity_internals.h +1183 -0
  132. package/external/libedhoc/externals/Unity/test/expectdata/testsample_cmd.c +61 -0
  133. package/external/libedhoc/externals/Unity/test/expectdata/testsample_def.c +57 -0
  134. package/external/libedhoc/externals/Unity/test/expectdata/testsample_head1.c +55 -0
  135. package/external/libedhoc/externals/Unity/test/expectdata/testsample_head1.h +15 -0
  136. package/external/libedhoc/externals/Unity/test/expectdata/testsample_mock_cmd.c +80 -0
  137. package/external/libedhoc/externals/Unity/test/expectdata/testsample_mock_def.c +76 -0
  138. package/external/libedhoc/externals/Unity/test/expectdata/testsample_mock_head1.c +75 -0
  139. package/external/libedhoc/externals/Unity/test/expectdata/testsample_mock_head1.h +13 -0
  140. package/external/libedhoc/externals/Unity/test/expectdata/testsample_mock_new1.c +89 -0
  141. package/external/libedhoc/externals/Unity/test/expectdata/testsample_mock_new2.c +89 -0
  142. package/external/libedhoc/externals/Unity/test/expectdata/testsample_mock_param.c +77 -0
  143. package/external/libedhoc/externals/Unity/test/expectdata/testsample_mock_run1.c +89 -0
  144. package/external/libedhoc/externals/Unity/test/expectdata/testsample_mock_run2.c +89 -0
  145. package/external/libedhoc/externals/Unity/test/expectdata/testsample_mock_yaml.c +90 -0
  146. package/external/libedhoc/externals/Unity/test/expectdata/testsample_new1.c +67 -0
  147. package/external/libedhoc/externals/Unity/test/expectdata/testsample_new2.c +70 -0
  148. package/external/libedhoc/externals/Unity/test/expectdata/testsample_param.c +58 -0
  149. package/external/libedhoc/externals/Unity/test/expectdata/testsample_run1.c +67 -0
  150. package/external/libedhoc/externals/Unity/test/expectdata/testsample_run2.c +70 -0
  151. package/external/libedhoc/externals/Unity/test/expectdata/testsample_yaml.c +71 -0
  152. package/external/libedhoc/externals/Unity/test/testdata/CException.h +18 -0
  153. package/external/libedhoc/externals/Unity/test/testdata/Defs.h +16 -0
  154. package/external/libedhoc/externals/Unity/test/testdata/cmock.h +21 -0
  155. package/external/libedhoc/externals/Unity/test/testdata/mockMock.h +20 -0
  156. package/external/libedhoc/externals/Unity/test/testdata/testRunnerGenerator.c +204 -0
  157. package/external/libedhoc/externals/Unity/test/testdata/testRunnerGeneratorSmall.c +73 -0
  158. package/external/libedhoc/externals/Unity/test/testdata/testRunnerGeneratorWithMocks.c +200 -0
  159. package/external/libedhoc/externals/Unity/test/tests/self_assessment_utils.h +151 -0
  160. package/external/libedhoc/externals/Unity/test/tests/test_unity_arrays.c +2941 -0
  161. package/external/libedhoc/externals/Unity/test/tests/test_unity_core.c +375 -0
  162. package/external/libedhoc/externals/Unity/test/tests/test_unity_doubles.c +1285 -0
  163. package/external/libedhoc/externals/Unity/test/tests/test_unity_floats.c +1395 -0
  164. package/external/libedhoc/externals/Unity/test/tests/test_unity_integers.c +2863 -0
  165. package/external/libedhoc/externals/Unity/test/tests/test_unity_integers_64.c +783 -0
  166. package/external/libedhoc/externals/Unity/test/tests/test_unity_memory.c +82 -0
  167. package/external/libedhoc/externals/Unity/test/tests/test_unity_parameterized.c +309 -0
  168. package/external/libedhoc/externals/Unity/test/tests/test_unity_parameterizedDemo.c +28 -0
  169. package/external/libedhoc/externals/Unity/test/tests/test_unity_strings.c +330 -0
  170. package/external/libedhoc/externals/Unity/test/tests/types_for_test.h +21 -0
  171. package/external/libedhoc/externals/zcbor/include/zcbor_common.h +147 -60
  172. package/external/libedhoc/externals/zcbor/include/zcbor_decode.h +291 -202
  173. package/external/libedhoc/externals/zcbor/include/zcbor_encode.h +100 -156
  174. package/external/libedhoc/externals/zcbor/include/zcbor_print.h +165 -0
  175. package/external/libedhoc/externals/zcbor/samples/hello_world/src/main.c +1 -1
  176. package/external/libedhoc/externals/zcbor/samples/pet/include/pet_decode.h +1 -1
  177. package/external/libedhoc/externals/zcbor/samples/pet/include/pet_encode.h +1 -1
  178. package/external/libedhoc/externals/zcbor/samples/pet/include/pet_types.h +4 -4
  179. package/external/libedhoc/externals/zcbor/samples/pet/src/main.c +4 -4
  180. package/external/libedhoc/externals/zcbor/samples/pet/src/pet_decode.c +15 -24
  181. package/external/libedhoc/externals/zcbor/samples/pet/src/pet_encode.c +14 -23
  182. package/external/libedhoc/externals/zcbor/src/zcbor_common.c +202 -29
  183. package/external/libedhoc/externals/zcbor/src/zcbor_decode.c +633 -173
  184. package/external/libedhoc/externals/zcbor/src/zcbor_encode.c +71 -184
  185. package/external/libedhoc/externals/zcbor/tests/decode/test1_suit_old_formats/src/main.c +152 -153
  186. package/external/libedhoc/externals/zcbor/tests/decode/test2_suit/src/main.c +64 -64
  187. package/external/libedhoc/externals/zcbor/tests/decode/test3_simple/src/main.c +15 -16
  188. package/external/libedhoc/externals/zcbor/tests/decode/test5_corner_cases/src/main.c +228 -84
  189. package/external/libedhoc/externals/zcbor/tests/decode/test7_suit9_simple/src/main.c +9 -9
  190. package/external/libedhoc/externals/zcbor/tests/decode/test8_suit12/src/main.c +0 -1
  191. package/external/libedhoc/externals/zcbor/tests/decode/test9_manifest14/src/main.c +172 -173
  192. package/external/libedhoc/externals/zcbor/tests/encode/test1_suit/src/main.c +73 -73
  193. package/external/libedhoc/externals/zcbor/tests/encode/test2_simple/src/main.c +1 -2
  194. package/external/libedhoc/externals/zcbor/tests/encode/test3_corner_cases/src/main.c +83 -56
  195. package/external/libedhoc/externals/zcbor/tests/encode/test4_senml/src/main.c +15 -16
  196. package/external/libedhoc/externals/zcbor/tests/fuzz/fuzz_everything.c +12 -0
  197. package/external/libedhoc/externals/zcbor/tests/fuzz/fuzz_manifest12.c +69 -69
  198. package/external/libedhoc/externals/zcbor/tests/unit/test1_unit_tests/src/main.c +448 -55
  199. package/external/libedhoc/externals/zcbor/tests/unit/test3_float16/src/main.c +49 -48
  200. package/external/libedhoc/include/edhoc.h +348 -54
  201. package/external/libedhoc/include/edhoc_common.h +289 -0
  202. package/external/libedhoc/include/edhoc_context.h +60 -35
  203. package/external/libedhoc/include/edhoc_credentials.h +55 -7
  204. package/external/libedhoc/include/edhoc_crypto.h +10 -10
  205. package/external/libedhoc/include/edhoc_ead.h +13 -10
  206. package/external/libedhoc/include/edhoc_macros.h +20 -11
  207. package/external/libedhoc/include/edhoc_values.h +2 -2
  208. package/external/libedhoc/library/edhoc.c +70 -36
  209. package/external/libedhoc/library/edhoc_common.c +1314 -0
  210. package/external/libedhoc/library/edhoc_exporter.c +45 -46
  211. package/external/libedhoc/library/edhoc_message_1.c +107 -72
  212. package/external/libedhoc/library/edhoc_message_2.c +396 -1693
  213. package/external/libedhoc/library/edhoc_message_3.c +465 -1656
  214. package/external/libedhoc/library/edhoc_message_4.c +93 -91
  215. package/external/libedhoc/library/edhoc_message_error.c +41 -41
  216. package/external/libedhoc/tests/include/{cipher_suites/cipher_suite_0.h → cipher_suite_0.h} +131 -134
  217. package/external/libedhoc/tests/include/{cipher_suites/cipher_suite_2.h → cipher_suite_2.h} +139 -140
  218. package/external/libedhoc/tests/include/{edhoc_trace_1/test_vector_1.h → test_vector_rfc9529_chapter_2.h} +786 -738
  219. package/external/libedhoc/tests/include/{edhoc_trace_2/test_vector_2.h → test_vector_rfc9529_chapter_3.h} +14 -10
  220. package/external/libedhoc/tests/include/{x509_chain_cs_0/test_vector_x5chain_cs_0.h → test_vector_x5chain_sign_keys_suite_0.h} +137 -140
  221. package/external/libedhoc/tests/include/{x509_chain_cs_2/test_vector_x5chain_cs_2.h → test_vector_x5chain_sign_keys_suite_2.h} +7 -8
  222. package/external/libedhoc/tests/include/{x509_chain_cs_2_static_dh/test_vector_x5chain_cs_2_static_dh.h → test_vector_x5chain_static_dh_keys_suite_2.h} +7 -8
  223. package/external/libedhoc/tests/include/{x509_hash_cs_2/test_vector_x5t_cs_2.h → test_vector_x5t_sign_keys_suite_2.h} +6 -7
  224. package/external/libedhoc/tests/src/{cipher_suites/cipher_suite_0.c → cipher_suite_0.c} +445 -447
  225. package/external/libedhoc/tests/src/{cipher_suites/cipher_suite_2.c → cipher_suite_2.c} +600 -600
  226. package/external/libedhoc/tests/src/module_test_api.c +430 -0
  227. package/external/libedhoc/tests/src/module_test_cipher_suite_0.c +395 -0
  228. package/external/libedhoc/tests/src/module_test_cipher_suite_2.c +392 -0
  229. package/external/libedhoc/tests/src/{error_message/test_edhoc_error_message.c → module_test_error_message.c} +94 -69
  230. package/external/libedhoc/tests/src/module_test_main.c +49 -0
  231. package/external/libedhoc/tests/src/{cipher_suite_negotiation/test_edhoc_cipher_suite_negotiation.c → module_test_rfc9528_suites_negotiation.c} +224 -227
  232. package/external/libedhoc/tests/src/module_test_rfc9529_chapter_2.c +2681 -0
  233. package/external/libedhoc/tests/src/module_test_rfc9529_chapter_3.c +1635 -0
  234. package/external/libedhoc/tests/src/module_test_x5chain_sign_keys_suite_0.c +1135 -0
  235. package/external/libedhoc/tests/src/module_test_x5chain_sign_keys_suite_2.c +1249 -0
  236. package/external/libedhoc/tests/src/module_test_x5chain_static_dh_keys_suite_2.c +798 -0
  237. package/external/libedhoc/tests/src/module_test_x5t_sign_keys_suite_2.c +956 -0
  238. package/include/EdhocComposeAsyncWorker.h +8 -6
  239. package/include/EdhocCredentialManager.h +16 -11
  240. package/include/EdhocCryptoManager.h +28 -21
  241. package/include/EdhocEadManager.h +3 -6
  242. package/include/{EdhocExportAsyncWorker.h → EdhocExportOscoreAsyncWorker.h} +20 -17
  243. package/include/EdhocKeyExporterAsyncWorker.h +76 -0
  244. package/include/EdhocKeyUpdateAsyncWorker.h +72 -0
  245. package/include/EdhocProcessAsyncWorker.h +14 -10
  246. package/include/LibEDHOC.h +44 -20
  247. package/include/UserContext.h +7 -9
  248. package/include/Utils.h +31 -27
  249. package/package.json +14 -3
  250. package/prebuilds/android-arm/edhoc.armv7.node +0 -0
  251. package/prebuilds/android-arm64/edhoc.armv8.node +0 -0
  252. package/prebuilds/darwin-arm64/edhoc.node +0 -0
  253. package/prebuilds/darwin-x64/edhoc.node +0 -0
  254. package/prebuilds/linux-arm/edhoc.armv6.node +0 -0
  255. package/prebuilds/linux-arm/edhoc.armv7.node +0 -0
  256. package/prebuilds/linux-arm64/edhoc.armv8.node +0 -0
  257. package/prebuilds/linux-x64/edhoc.glibc.node +0 -0
  258. package/prebuilds/linux-x64/edhoc.musl.node +0 -0
  259. package/prebuilds/win32-ia32/edhoc.node +0 -0
  260. package/prebuilds/win32-x64/edhoc.node +0 -0
  261. package/src/EdhocComposeAsyncWorker.cpp +18 -35
  262. package/src/EdhocCredentialManager.cpp +160 -187
  263. package/src/EdhocCryptoManager.cpp +386 -586
  264. package/src/EdhocEadManager.cpp +10 -18
  265. package/src/EdhocExportOscoreAsyncWorker.cpp +77 -0
  266. package/src/EdhocKeyExporterAsyncWorker.cpp +49 -0
  267. package/src/EdhocKeyUpdateAsyncWorker.cpp +41 -0
  268. package/src/EdhocProcessAsyncWorker.cpp +72 -19
  269. package/src/LibEDHOC.cpp +213 -174
  270. package/src/Suites.cpp +39 -72
  271. package/src/Utils.cpp +32 -56
  272. package/test/basic.test.ts +64 -0
  273. package/test/vectors.test.ts +111 -0
  274. package/dist/credentials.d.ts +0 -16
  275. package/dist/credentials.d.ts.map +0 -1
  276. package/dist/credentials.js +0 -84
  277. package/external/libedhoc/externals/zcbor/include/zcbor_debug.h +0 -69
  278. package/external/libedhoc/tests/include/cipher_suite_negotiation/test_edhoc_cipher_suite_negotiation.h +0 -37
  279. package/external/libedhoc/tests/include/cipher_suites/test_cipher_suite_0.h +0 -48
  280. package/external/libedhoc/tests/include/cipher_suites/test_cipher_suite_2.h +0 -48
  281. package/external/libedhoc/tests/include/edhoc_trace_1/authentication_credentials_1.h +0 -60
  282. package/external/libedhoc/tests/include/edhoc_trace_1/test_edhoc_handshake_1.h +0 -208
  283. package/external/libedhoc/tests/include/edhoc_trace_1/test_edhoc_handshake_ead_1.h +0 -59
  284. package/external/libedhoc/tests/include/edhoc_trace_2/authentication_credentials_2.h +0 -60
  285. package/external/libedhoc/tests/include/edhoc_trace_2/test_edhoc_handshake_2.h +0 -199
  286. package/external/libedhoc/tests/include/error_message/test_edhoc_error_message.h +0 -48
  287. package/external/libedhoc/tests/include/x509_chain_cs_0/authentication_credentials_x5chain_cs_0.h +0 -92
  288. package/external/libedhoc/tests/include/x509_chain_cs_0/test_edhoc_handshake_x5chain_cs_0.h +0 -96
  289. package/external/libedhoc/tests/include/x509_chain_cs_2/authentication_credentials_x5chain_cs_2.h +0 -58
  290. package/external/libedhoc/tests/include/x509_chain_cs_2/test_edhoc_handshake_x5chain_cs_2.h +0 -56
  291. package/external/libedhoc/tests/include/x509_chain_cs_2/test_edhoc_handshake_x5chain_cs_2_ead.h +0 -57
  292. package/external/libedhoc/tests/include/x509_chain_cs_2_static_dh/authentication_credentials_x5chain_cs_2_static_dh.h +0 -59
  293. package/external/libedhoc/tests/include/x509_chain_cs_2_static_dh/test_edhoc_handshake_x5chain_cs_2_static_dh_ead.h +0 -57
  294. package/external/libedhoc/tests/include/x509_hash_cs_2/authentication_credentials_x5t_cs_2.h +0 -60
  295. package/external/libedhoc/tests/include/x509_hash_cs_2/test_edhoc_handshake_x5t_cs_2_ead.h +0 -57
  296. package/external/libedhoc/tests/src/cipher_suites/test_cipher_suite_0.c +0 -475
  297. package/external/libedhoc/tests/src/cipher_suites/test_cipher_suite_2.c +0 -473
  298. package/external/libedhoc/tests/src/edhoc_trace_1/authentication_credentials_1.c +0 -252
  299. package/external/libedhoc/tests/src/edhoc_trace_1/test_edhoc_handshake_1.c +0 -1829
  300. package/external/libedhoc/tests/src/edhoc_trace_1/test_edhoc_handshake_ead_1.c +0 -1247
  301. package/external/libedhoc/tests/src/edhoc_trace_2/authentication_credentials_2.c +0 -170
  302. package/external/libedhoc/tests/src/edhoc_trace_2/test_edhoc_handshake_2.c +0 -1783
  303. package/external/libedhoc/tests/src/tests.c +0 -228
  304. package/external/libedhoc/tests/src/x509_chain_cs_0/authentication_credentials_x5chain_cs_0.c +0 -332
  305. package/external/libedhoc/tests/src/x509_chain_cs_0/test_edhoc_handshake_x5chain_cs_0.c +0 -936
  306. package/external/libedhoc/tests/src/x509_chain_cs_2/authentication_credentials_x5chain_cs_2.c +0 -166
  307. package/external/libedhoc/tests/src/x509_chain_cs_2/test_edhoc_handshake_x5chain_cs_2.c +0 -587
  308. package/external/libedhoc/tests/src/x509_chain_cs_2/test_edhoc_handshake_x5chain_cs_2_ead.c +0 -917
  309. package/external/libedhoc/tests/src/x509_chain_cs_2_static_dh/authentication_credentials_x5chain_cs_2_static_dh.c +0 -186
  310. package/external/libedhoc/tests/src/x509_chain_cs_2_static_dh/test_edhoc_handshake_x5chain_cs_2_static_dh_ead.c +0 -743
  311. package/external/libedhoc/tests/src/x509_hash_cs_2/authentication_credentials_x5t_cs_2.c +0 -261
  312. package/external/libedhoc/tests/src/x509_hash_cs_2/test_edhoc_handshake_x5t_cs_2_ead.c +0 -854
  313. package/src/EdhocExportAsyncWorker.cpp +0 -82
@@ -1,5 +1,5 @@
1
1
  /*
2
- * Generated using zcbor version 0.7.0
2
+ * Generated using zcbor version 0.8.1
3
3
  * https://github.com/NordicSemiconductor/zcbor
4
4
  * Generated with a --default-max-qty of 3
5
5
  */
@@ -10,49 +10,58 @@
10
10
  #include <string.h>
11
11
  #include "zcbor_encode.h"
12
12
  #include "backend_cbor_plaintext_3_encode.h"
13
+ #include "zcbor_print.h"
13
14
 
14
15
  #if DEFAULT_MAX_QTY != 3
15
16
  #error "The type file was generated with a different default_max_qty than this file"
16
17
  #endif
17
18
 
18
- static bool encode_repeated_map_kid(zcbor_state_t *state, const struct map_kid_ *input);
19
- static bool encode_COSE_X509(zcbor_state_t *state, const struct COSE_X509_ *input);
19
+ static bool encode_repeated_map_kid(zcbor_state_t *state, const struct map_kid_r *input);
20
+ static bool encode_COSE_X509(zcbor_state_t *state, const struct COSE_X509_r *input);
20
21
  static bool encode_repeated_map_x5chain(zcbor_state_t *state, const struct map_x5chain *input);
21
22
  static bool encode_COSE_CertHash(zcbor_state_t *state, const struct COSE_CertHash *input);
22
23
  static bool encode_repeated_map_x5t(zcbor_state_t *state, const struct map_x5t *input);
23
24
  static bool encode_map(zcbor_state_t *state, const struct map *input);
24
- static bool encode_repeated_ead_x(zcbor_state_t *state, const struct ead_x *input);
25
- static bool encode_ead_x(zcbor_state_t *state, const struct ead_x_ *input);
25
+ static bool encode_ead_y(zcbor_state_t *state, const struct ead_y *input);
26
+ static bool encode_EAD_3(zcbor_state_t *state, const struct EAD_3 *input);
26
27
  static bool encode_plaintext_3(zcbor_state_t *state, const struct plaintext_3 *input);
27
28
 
28
29
 
29
30
  static bool encode_repeated_map_kid(
30
- zcbor_state_t *state, const struct map_kid_ *input)
31
+ zcbor_state_t *state, const struct map_kid_r *input)
31
32
  {
32
- zcbor_print("%s\r\n", __func__);
33
+ zcbor_log("%s\r\n", __func__);
33
34
 
34
35
  bool tmp_result = ((((zcbor_uint32_put(state, (4))))
35
- && (((*input)._map_kid_choice == _map_kid_int) ? ((zcbor_int32_encode(state, (&(*input)._map_kid_int))))
36
- : (((*input)._map_kid_choice == _map_kid_bstr) ? ((zcbor_bstr_encode(state, (&(*input)._map_kid_bstr))))
36
+ && (((*input).map_kid_choice == map_kid_int_c) ? ((zcbor_int32_encode(state, (&(*input).map_kid_int))))
37
+ : (((*input).map_kid_choice == map_kid_bstr_c) ? ((zcbor_bstr_encode(state, (&(*input).map_kid_bstr))))
37
38
  : false))));
38
39
 
39
- if (!tmp_result)
40
- zcbor_trace();
40
+ if (!tmp_result) {
41
+ zcbor_trace_file(state);
42
+ zcbor_log("%s error: %s\r\n", __func__, zcbor_error_str(zcbor_peek_error(state)));
43
+ } else {
44
+ zcbor_log("%s success\r\n", __func__);
45
+ }
41
46
 
42
47
  return tmp_result;
43
48
  }
44
49
 
45
50
  static bool encode_COSE_X509(
46
- zcbor_state_t *state, const struct COSE_X509_ *input)
51
+ zcbor_state_t *state, const struct COSE_X509_r *input)
47
52
  {
48
- zcbor_print("%s\r\n", __func__);
53
+ zcbor_log("%s\r\n", __func__);
49
54
 
50
- bool tmp_result = (((((*input)._COSE_X509_choice == _COSE_X509_bstr) ? ((zcbor_bstr_encode(state, (&(*input)._COSE_X509_bstr))))
51
- : (((*input)._COSE_X509_choice == _COSE_X509__certs) ? ((zcbor_list_start_encode(state, 3) && ((zcbor_multi_encode_minmax(2, 3, &(*input)._COSE_X509__certs_certs_count, (zcbor_encoder_t *)zcbor_bstr_encode, state, (&(*input)._COSE_X509__certs_certs), sizeof(struct zcbor_string))) || (zcbor_list_map_end_force_encode(state), false)) && zcbor_list_end_encode(state, 3)))
55
+ bool tmp_result = (((((*input).COSE_X509_choice == COSE_X509_bstr_c) ? ((zcbor_bstr_encode(state, (&(*input).COSE_X509_bstr))))
56
+ : (((*input).COSE_X509_choice == COSE_X509_certs_l_c) ? ((zcbor_list_start_encode(state, 3) && ((zcbor_multi_encode_minmax(2, 3, &(*input).COSE_X509_certs_l_certs_count, (zcbor_encoder_t *)zcbor_bstr_encode, state, (&(*input).COSE_X509_certs_l_certs), sizeof(struct zcbor_string))) || (zcbor_list_map_end_force_encode(state), false)) && zcbor_list_end_encode(state, 3)))
52
57
  : false))));
53
58
 
54
- if (!tmp_result)
55
- zcbor_trace();
59
+ if (!tmp_result) {
60
+ zcbor_trace_file(state);
61
+ zcbor_log("%s error: %s\r\n", __func__, zcbor_error_str(zcbor_peek_error(state)));
62
+ } else {
63
+ zcbor_log("%s success\r\n", __func__);
64
+ }
56
65
 
57
66
  return tmp_result;
58
67
  }
@@ -60,13 +69,17 @@ static bool encode_COSE_X509(
60
69
  static bool encode_repeated_map_x5chain(
61
70
  zcbor_state_t *state, const struct map_x5chain *input)
62
71
  {
63
- zcbor_print("%s\r\n", __func__);
72
+ zcbor_log("%s\r\n", __func__);
64
73
 
65
74
  bool tmp_result = ((((zcbor_uint32_put(state, (33))))
66
- && (encode_COSE_X509(state, (&(*input)._map_x5chain)))));
75
+ && (encode_COSE_X509(state, (&(*input).map_x5chain)))));
67
76
 
68
- if (!tmp_result)
69
- zcbor_trace();
77
+ if (!tmp_result) {
78
+ zcbor_trace_file(state);
79
+ zcbor_log("%s error: %s\r\n", __func__, zcbor_error_str(zcbor_peek_error(state)));
80
+ } else {
81
+ zcbor_log("%s success\r\n", __func__);
82
+ }
70
83
 
71
84
  return tmp_result;
72
85
  }
@@ -74,15 +87,19 @@ static bool encode_repeated_map_x5chain(
74
87
  static bool encode_COSE_CertHash(
75
88
  zcbor_state_t *state, const struct COSE_CertHash *input)
76
89
  {
77
- zcbor_print("%s\r\n", __func__);
90
+ zcbor_log("%s\r\n", __func__);
78
91
 
79
- bool tmp_result = (((zcbor_list_start_encode(state, 2) && ((((((*input)._COSE_CertHash_hashAlg_choice == _COSE_CertHash_hashAlg_int) ? ((zcbor_int32_encode(state, (&(*input)._COSE_CertHash_hashAlg_int))))
80
- : (((*input)._COSE_CertHash_hashAlg_choice == _COSE_CertHash_hashAlg_tstr) ? ((zcbor_tstr_encode(state, (&(*input)._COSE_CertHash_hashAlg_tstr))))
92
+ bool tmp_result = (((zcbor_list_start_encode(state, 2) && ((((((*input).COSE_CertHash_hashAlg_choice == COSE_CertHash_hashAlg_int_c) ? ((zcbor_int32_encode(state, (&(*input).COSE_CertHash_hashAlg_int))))
93
+ : (((*input).COSE_CertHash_hashAlg_choice == COSE_CertHash_hashAlg_tstr_c) ? ((zcbor_tstr_encode(state, (&(*input).COSE_CertHash_hashAlg_tstr))))
81
94
  : false)))
82
- && ((zcbor_bstr_encode(state, (&(*input)._COSE_CertHash_hashValue))))) || (zcbor_list_map_end_force_encode(state), false)) && zcbor_list_end_encode(state, 2))));
95
+ && ((zcbor_bstr_encode(state, (&(*input).COSE_CertHash_hashValue))))) || (zcbor_list_map_end_force_encode(state), false)) && zcbor_list_end_encode(state, 2))));
83
96
 
84
- if (!tmp_result)
85
- zcbor_trace();
97
+ if (!tmp_result) {
98
+ zcbor_trace_file(state);
99
+ zcbor_log("%s error: %s\r\n", __func__, zcbor_error_str(zcbor_peek_error(state)));
100
+ } else {
101
+ zcbor_log("%s success\r\n", __func__);
102
+ }
86
103
 
87
104
  return tmp_result;
88
105
  }
@@ -90,13 +107,17 @@ static bool encode_COSE_CertHash(
90
107
  static bool encode_repeated_map_x5t(
91
108
  zcbor_state_t *state, const struct map_x5t *input)
92
109
  {
93
- zcbor_print("%s\r\n", __func__);
110
+ zcbor_log("%s\r\n", __func__);
94
111
 
95
112
  bool tmp_result = ((((zcbor_uint32_put(state, (34))))
96
- && (encode_COSE_CertHash(state, (&(*input)._map_x5t)))));
113
+ && (encode_COSE_CertHash(state, (&(*input).map_x5t)))));
97
114
 
98
- if (!tmp_result)
99
- zcbor_trace();
115
+ if (!tmp_result) {
116
+ zcbor_trace_file(state);
117
+ zcbor_log("%s error: %s\r\n", __func__, zcbor_error_str(zcbor_peek_error(state)));
118
+ } else {
119
+ zcbor_log("%s success\r\n", __func__);
120
+ }
100
121
 
101
122
  return tmp_result;
102
123
  }
@@ -104,41 +125,53 @@ static bool encode_repeated_map_x5t(
104
125
  static bool encode_map(
105
126
  zcbor_state_t *state, const struct map *input)
106
127
  {
107
- zcbor_print("%s\r\n", __func__);
128
+ zcbor_log("%s\r\n", __func__);
108
129
 
109
- bool tmp_result = (((zcbor_map_start_encode(state, 3) && ((zcbor_present_encode(&((*input)._map_kid_present), (zcbor_encoder_t *)encode_repeated_map_kid, state, (&(*input)._map_kid))
110
- && zcbor_present_encode(&((*input)._map_x5chain_present), (zcbor_encoder_t *)encode_repeated_map_x5chain, state, (&(*input)._map_x5chain))
111
- && zcbor_present_encode(&((*input)._map_x5t_present), (zcbor_encoder_t *)encode_repeated_map_x5t, state, (&(*input)._map_x5t))) || (zcbor_list_map_end_force_encode(state), false)) && zcbor_map_end_encode(state, 3))));
130
+ bool tmp_result = (((zcbor_map_start_encode(state, 3) && (((!(*input).map_kid_present || encode_repeated_map_kid(state, (&(*input).map_kid)))
131
+ && (!(*input).map_x5chain_present || encode_repeated_map_x5chain(state, (&(*input).map_x5chain)))
132
+ && (!(*input).map_x5t_present || encode_repeated_map_x5t(state, (&(*input).map_x5t)))) || (zcbor_list_map_end_force_encode(state), false)) && zcbor_map_end_encode(state, 3))));
112
133
 
113
- if (!tmp_result)
114
- zcbor_trace();
134
+ if (!tmp_result) {
135
+ zcbor_trace_file(state);
136
+ zcbor_log("%s error: %s\r\n", __func__, zcbor_error_str(zcbor_peek_error(state)));
137
+ } else {
138
+ zcbor_log("%s success\r\n", __func__);
139
+ }
115
140
 
116
141
  return tmp_result;
117
142
  }
118
143
 
119
- static bool encode_repeated_ead_x(
120
- zcbor_state_t *state, const struct ead_x *input)
144
+ static bool encode_ead_y(
145
+ zcbor_state_t *state, const struct ead_y *input)
121
146
  {
122
- zcbor_print("%s\r\n", __func__);
147
+ zcbor_log("%s\r\n", __func__);
123
148
 
124
- bool tmp_result = (((((zcbor_int32_encode(state, (&(*input)._ead_x_ead_label))))
125
- && zcbor_present_encode(&((*input)._ead_x_ead_value_present), (zcbor_encoder_t *)zcbor_bstr_encode, state, (&(*input)._ead_x_ead_value)))));
149
+ bool tmp_result = (((((zcbor_int32_encode(state, (&(*input).ead_y_ead_label))))
150
+ && (!(*input).ead_y_ead_value_present || zcbor_bstr_encode(state, (&(*input).ead_y_ead_value))))));
126
151
 
127
- if (!tmp_result)
128
- zcbor_trace();
152
+ if (!tmp_result) {
153
+ zcbor_trace_file(state);
154
+ zcbor_log("%s error: %s\r\n", __func__, zcbor_error_str(zcbor_peek_error(state)));
155
+ } else {
156
+ zcbor_log("%s success\r\n", __func__);
157
+ }
129
158
 
130
159
  return tmp_result;
131
160
  }
132
161
 
133
- static bool encode_ead_x(
134
- zcbor_state_t *state, const struct ead_x_ *input)
162
+ static bool encode_EAD_3(
163
+ zcbor_state_t *state, const struct EAD_3 *input)
135
164
  {
136
- zcbor_print("%s\r\n", __func__);
165
+ zcbor_log("%s\r\n", __func__);
137
166
 
138
- bool tmp_result = (zcbor_multi_encode_minmax(1, 3, &(*input)._ead_x_count, (zcbor_encoder_t *)encode_repeated_ead_x, state, (&(*input)._ead_x), sizeof(struct ead_x)));
167
+ bool tmp_result = (zcbor_multi_encode_minmax(1, 3, &(*input).EAD_3_count, (zcbor_encoder_t *)encode_ead_y, state, (&(*input).EAD_3), sizeof(struct ead_y)));
139
168
 
140
- if (!tmp_result)
141
- zcbor_trace();
169
+ if (!tmp_result) {
170
+ zcbor_trace_file(state);
171
+ zcbor_log("%s error: %s\r\n", __func__, zcbor_error_str(zcbor_peek_error(state)));
172
+ } else {
173
+ zcbor_log("%s success\r\n", __func__);
174
+ }
142
175
 
143
176
  return tmp_result;
144
177
  }
@@ -146,17 +179,21 @@ static bool encode_ead_x(
146
179
  static bool encode_plaintext_3(
147
180
  zcbor_state_t *state, const struct plaintext_3 *input)
148
181
  {
149
- zcbor_print("%s\r\n", __func__);
182
+ zcbor_log("%s\r\n", __func__);
150
183
 
151
- bool tmp_result = (((((((*input)._plaintext_3_ID_CRED_I_choice == _plaintext_3_ID_CRED_I_int) ? ((zcbor_int32_encode(state, (&(*input)._plaintext_3_ID_CRED_I_int))))
152
- : (((*input)._plaintext_3_ID_CRED_I_choice == _plaintext_3_ID_CRED_I_bstr) ? ((zcbor_bstr_encode(state, (&(*input)._plaintext_3_ID_CRED_I_bstr))))
153
- : (((*input)._plaintext_3_ID_CRED_I_choice == _plaintext_3_ID_CRED_I__map) ? ((encode_map(state, (&(*input)._plaintext_3_ID_CRED_I__map))))
184
+ bool tmp_result = (((((((*input).plaintext_3_ID_CRED_I_choice == plaintext_3_ID_CRED_I_int_c) ? ((zcbor_int32_encode(state, (&(*input).plaintext_3_ID_CRED_I_int))))
185
+ : (((*input).plaintext_3_ID_CRED_I_choice == plaintext_3_ID_CRED_I_bstr_c) ? ((zcbor_bstr_encode(state, (&(*input).plaintext_3_ID_CRED_I_bstr))))
186
+ : (((*input).plaintext_3_ID_CRED_I_choice == plaintext_3_ID_CRED_I_map_m_c) ? ((encode_map(state, (&(*input).plaintext_3_ID_CRED_I_map_m))))
154
187
  : false))))
155
- && ((zcbor_bstr_encode(state, (&(*input)._plaintext_3_Signature_or_MAC_3))))
156
- && zcbor_present_encode(&((*input)._plaintext_3_EAD_3_present), (zcbor_encoder_t *)encode_ead_x, state, (&(*input)._plaintext_3_EAD_3)))));
157
-
158
- if (!tmp_result)
159
- zcbor_trace();
188
+ && ((zcbor_bstr_encode(state, (&(*input).plaintext_3_Signature_or_MAC_3))))
189
+ && (!(*input).plaintext_3_EAD_3_m_present || encode_EAD_3(state, (&(*input).plaintext_3_EAD_3_m))))));
190
+
191
+ if (!tmp_result) {
192
+ zcbor_trace_file(state);
193
+ zcbor_log("%s error: %s\r\n", __func__, zcbor_error_str(zcbor_peek_error(state)));
194
+ } else {
195
+ zcbor_log("%s success\r\n", __func__);
196
+ }
160
197
 
161
198
  return tmp_result;
162
199
  }
@@ -170,20 +207,6 @@ int cbor_encode_plaintext_3(
170
207
  {
171
208
  zcbor_state_t states[6];
172
209
 
173
- zcbor_new_state(states, sizeof(states) / sizeof(zcbor_state_t), payload, payload_len, 8);
174
-
175
- bool ret = encode_plaintext_3(states, input);
176
-
177
- if (ret && (payload_len_out != NULL)) {
178
- *payload_len_out = MIN(payload_len,
179
- (size_t)states[0].payload - (size_t)payload);
180
- }
181
-
182
- if (!ret) {
183
- int err = zcbor_pop_error(states);
184
-
185
- zcbor_print("Return error: %d\r\n", err);
186
- return (err == ZCBOR_SUCCESS) ? ZCBOR_ERR_UNKNOWN : err;
187
- }
188
- return ZCBOR_SUCCESS;
210
+ return zcbor_entry_function(payload, payload_len, (void *)input, payload_len_out, states,
211
+ (zcbor_decoder_t *)encode_plaintext_3, sizeof(states) / sizeof(zcbor_state_t), 8);
189
212
  }
@@ -1,5 +1,5 @@
1
1
  /*
2
- * Generated using zcbor version 0.7.0
2
+ * Generated using zcbor version 0.8.1
3
3
  * https://github.com/NordicSemiconductor/zcbor
4
4
  * Generated with a --default-max-qty of 3
5
5
  */
@@ -10,79 +10,78 @@
10
10
  #include <string.h>
11
11
  #include "zcbor_decode.h"
12
12
  #include "backend_cbor_plaintext_4_decode.h"
13
+ #include "zcbor_print.h"
13
14
 
14
15
  #if DEFAULT_MAX_QTY != 3
15
16
  #error "The type file was generated with a different default_max_qty than this file"
16
17
  #endif
17
18
 
18
- static bool decode_repeated_ead_x(zcbor_state_t *state, struct ead_x *result);
19
- static bool decode_ead_x(zcbor_state_t *state, struct ead_x_ *result);
20
- static bool decode_plaintext_4_EAD_4(zcbor_state_t *state, struct plaintext_4_EAD_4 *result);
19
+ static bool decode_ead_y(zcbor_state_t *state, struct ead_y *result);
20
+ static bool decode_EAD_4(zcbor_state_t *state, struct EAD_4 *result);
21
+ static bool decode_plaintext_4(zcbor_state_t *state, struct plaintext_4 *result);
21
22
 
22
23
 
23
- static bool decode_repeated_ead_x(
24
- zcbor_state_t *state, struct ead_x *result)
24
+ static bool decode_ead_y(
25
+ zcbor_state_t *state, struct ead_y *result)
25
26
  {
26
- zcbor_print("%s\r\n", __func__);
27
+ zcbor_log("%s\r\n", __func__);
27
28
 
28
- bool tmp_result = (((((zcbor_int32_decode(state, (&(*result)._ead_x_ead_label))))
29
- && zcbor_present_decode(&((*result)._ead_x_ead_value_present), (zcbor_decoder_t *)zcbor_bstr_decode, state, (&(*result)._ead_x_ead_value)))));
29
+ bool tmp_result = (((((zcbor_int32_decode(state, (&(*result).ead_y_ead_label))))
30
+ && ((*result).ead_y_ead_value_present = ((zcbor_bstr_decode(state, (&(*result).ead_y_ead_value)))), 1))));
30
31
 
31
- if (!tmp_result)
32
- zcbor_trace();
32
+ if (!tmp_result) {
33
+ zcbor_trace_file(state);
34
+ zcbor_log("%s error: %s\r\n", __func__, zcbor_error_str(zcbor_peek_error(state)));
35
+ } else {
36
+ zcbor_log("%s success\r\n", __func__);
37
+ }
33
38
 
34
39
  return tmp_result;
35
40
  }
36
41
 
37
- static bool decode_ead_x(
38
- zcbor_state_t *state, struct ead_x_ *result)
42
+ static bool decode_EAD_4(
43
+ zcbor_state_t *state, struct EAD_4 *result)
39
44
  {
40
- zcbor_print("%s\r\n", __func__);
45
+ zcbor_log("%s\r\n", __func__);
41
46
 
42
- bool tmp_result = (zcbor_multi_decode(1, 3, &(*result)._ead_x_count, (zcbor_decoder_t *)decode_repeated_ead_x, state, (&(*result)._ead_x), sizeof(struct ead_x)));
47
+ bool tmp_result = (zcbor_multi_decode(1, 3, &(*result).EAD_4_count, (zcbor_decoder_t *)decode_ead_y, state, (&(*result).EAD_4), sizeof(struct ead_y)));
43
48
 
44
- if (!tmp_result)
45
- zcbor_trace();
49
+ if (!tmp_result) {
50
+ zcbor_trace_file(state);
51
+ zcbor_log("%s error: %s\r\n", __func__, zcbor_error_str(zcbor_peek_error(state)));
52
+ } else {
53
+ zcbor_log("%s success\r\n", __func__);
54
+ }
46
55
 
47
56
  return tmp_result;
48
57
  }
49
58
 
50
- static bool decode_plaintext_4_EAD_4(
51
- zcbor_state_t *state, struct plaintext_4_EAD_4 *result)
59
+ static bool decode_plaintext_4(
60
+ zcbor_state_t *state, struct plaintext_4 *result)
52
61
  {
53
- zcbor_print("%s\r\n", __func__);
62
+ zcbor_log("%s\r\n", __func__);
54
63
 
55
- bool tmp_result = (zcbor_present_decode(&((*result)._plaintext_4_EAD_4_present), (zcbor_decoder_t *)decode_ead_x, state, (&(*result)._plaintext_4_EAD_4)));
64
+ bool tmp_result = (((*result).plaintext_4_present = ((decode_EAD_4(state, (&(*result).plaintext_4)))), 1));
56
65
 
57
- if (!tmp_result)
58
- zcbor_trace();
66
+ if (!tmp_result) {
67
+ zcbor_trace_file(state);
68
+ zcbor_log("%s error: %s\r\n", __func__, zcbor_error_str(zcbor_peek_error(state)));
69
+ } else {
70
+ zcbor_log("%s success\r\n", __func__);
71
+ }
59
72
 
60
73
  return tmp_result;
61
74
  }
62
75
 
63
76
 
64
77
 
65
- int cbor_decode_plaintext_4_EAD_4(
78
+ int cbor_decode_plaintext_4(
66
79
  const uint8_t *payload, size_t payload_len,
67
- struct plaintext_4_EAD_4 *result,
80
+ struct plaintext_4 *result,
68
81
  size_t *payload_len_out)
69
82
  {
70
83
  zcbor_state_t states[2];
71
84
 
72
- zcbor_new_state(states, sizeof(states) / sizeof(zcbor_state_t), payload, payload_len, 6);
73
-
74
- bool ret = decode_plaintext_4_EAD_4(states, result);
75
-
76
- if (ret && (payload_len_out != NULL)) {
77
- *payload_len_out = MIN(payload_len,
78
- (size_t)states[0].payload - (size_t)payload);
79
- }
80
-
81
- if (!ret) {
82
- int err = zcbor_pop_error(states);
83
-
84
- zcbor_print("Return error: %d\r\n", err);
85
- return (err == ZCBOR_SUCCESS) ? ZCBOR_ERR_UNKNOWN : err;
86
- }
87
- return ZCBOR_SUCCESS;
85
+ return zcbor_entry_function(payload, payload_len, (void *)result, payload_len_out, states,
86
+ (zcbor_decoder_t *)decode_plaintext_4, sizeof(states) / sizeof(zcbor_state_t), 6);
88
87
  }
@@ -1,5 +1,5 @@
1
1
  /*
2
- * Generated using zcbor version 0.7.0
2
+ * Generated using zcbor version 0.8.1
3
3
  * https://github.com/NordicSemiconductor/zcbor
4
4
  * Generated with a --default-max-qty of 3
5
5
  */
@@ -10,79 +10,78 @@
10
10
  #include <string.h>
11
11
  #include "zcbor_encode.h"
12
12
  #include "backend_cbor_plaintext_4_encode.h"
13
+ #include "zcbor_print.h"
13
14
 
14
15
  #if DEFAULT_MAX_QTY != 3
15
16
  #error "The type file was generated with a different default_max_qty than this file"
16
17
  #endif
17
18
 
18
- static bool encode_repeated_ead_x(zcbor_state_t *state, const struct ead_x *input);
19
- static bool encode_ead_x(zcbor_state_t *state, const struct ead_x_ *input);
20
- static bool encode_plaintext_4_EAD_4(zcbor_state_t *state, const struct plaintext_4_EAD_4 *input);
19
+ static bool encode_ead_y(zcbor_state_t *state, const struct ead_y *input);
20
+ static bool encode_EAD_4(zcbor_state_t *state, const struct EAD_4 *input);
21
+ static bool encode_plaintext_4(zcbor_state_t *state, const struct plaintext_4 *input);
21
22
 
22
23
 
23
- static bool encode_repeated_ead_x(
24
- zcbor_state_t *state, const struct ead_x *input)
24
+ static bool encode_ead_y(
25
+ zcbor_state_t *state, const struct ead_y *input)
25
26
  {
26
- zcbor_print("%s\r\n", __func__);
27
+ zcbor_log("%s\r\n", __func__);
27
28
 
28
- bool tmp_result = (((((zcbor_int32_encode(state, (&(*input)._ead_x_ead_label))))
29
- && zcbor_present_encode(&((*input)._ead_x_ead_value_present), (zcbor_encoder_t *)zcbor_bstr_encode, state, (&(*input)._ead_x_ead_value)))));
29
+ bool tmp_result = (((((zcbor_int32_encode(state, (&(*input).ead_y_ead_label))))
30
+ && (!(*input).ead_y_ead_value_present || zcbor_bstr_encode(state, (&(*input).ead_y_ead_value))))));
30
31
 
31
- if (!tmp_result)
32
- zcbor_trace();
32
+ if (!tmp_result) {
33
+ zcbor_trace_file(state);
34
+ zcbor_log("%s error: %s\r\n", __func__, zcbor_error_str(zcbor_peek_error(state)));
35
+ } else {
36
+ zcbor_log("%s success\r\n", __func__);
37
+ }
33
38
 
34
39
  return tmp_result;
35
40
  }
36
41
 
37
- static bool encode_ead_x(
38
- zcbor_state_t *state, const struct ead_x_ *input)
42
+ static bool encode_EAD_4(
43
+ zcbor_state_t *state, const struct EAD_4 *input)
39
44
  {
40
- zcbor_print("%s\r\n", __func__);
45
+ zcbor_log("%s\r\n", __func__);
41
46
 
42
- bool tmp_result = (zcbor_multi_encode_minmax(1, 3, &(*input)._ead_x_count, (zcbor_encoder_t *)encode_repeated_ead_x, state, (&(*input)._ead_x), sizeof(struct ead_x)));
47
+ bool tmp_result = (zcbor_multi_encode_minmax(1, 3, &(*input).EAD_4_count, (zcbor_encoder_t *)encode_ead_y, state, (&(*input).EAD_4), sizeof(struct ead_y)));
43
48
 
44
- if (!tmp_result)
45
- zcbor_trace();
49
+ if (!tmp_result) {
50
+ zcbor_trace_file(state);
51
+ zcbor_log("%s error: %s\r\n", __func__, zcbor_error_str(zcbor_peek_error(state)));
52
+ } else {
53
+ zcbor_log("%s success\r\n", __func__);
54
+ }
46
55
 
47
56
  return tmp_result;
48
57
  }
49
58
 
50
- static bool encode_plaintext_4_EAD_4(
51
- zcbor_state_t *state, const struct plaintext_4_EAD_4 *input)
59
+ static bool encode_plaintext_4(
60
+ zcbor_state_t *state, const struct plaintext_4 *input)
52
61
  {
53
- zcbor_print("%s\r\n", __func__);
62
+ zcbor_log("%s\r\n", __func__);
54
63
 
55
- bool tmp_result = (zcbor_present_encode(&((*input)._plaintext_4_EAD_4_present), (zcbor_encoder_t *)encode_ead_x, state, (&(*input)._plaintext_4_EAD_4)));
64
+ bool tmp_result = ((!(*input).plaintext_4_present || encode_EAD_4(state, (&(*input).plaintext_4))));
56
65
 
57
- if (!tmp_result)
58
- zcbor_trace();
66
+ if (!tmp_result) {
67
+ zcbor_trace_file(state);
68
+ zcbor_log("%s error: %s\r\n", __func__, zcbor_error_str(zcbor_peek_error(state)));
69
+ } else {
70
+ zcbor_log("%s success\r\n", __func__);
71
+ }
59
72
 
60
73
  return tmp_result;
61
74
  }
62
75
 
63
76
 
64
77
 
65
- int cbor_encode_plaintext_4_EAD_4(
78
+ int cbor_encode_plaintext_4(
66
79
  uint8_t *payload, size_t payload_len,
67
- const struct plaintext_4_EAD_4 *input,
80
+ const struct plaintext_4 *input,
68
81
  size_t *payload_len_out)
69
82
  {
70
83
  zcbor_state_t states[2];
71
84
 
72
- zcbor_new_state(states, sizeof(states) / sizeof(zcbor_state_t), payload, payload_len, 6);
73
-
74
- bool ret = encode_plaintext_4_EAD_4(states, input);
75
-
76
- if (ret && (payload_len_out != NULL)) {
77
- *payload_len_out = MIN(payload_len,
78
- (size_t)states[0].payload - (size_t)payload);
79
- }
80
-
81
- if (!ret) {
82
- int err = zcbor_pop_error(states);
83
-
84
- zcbor_print("Return error: %d\r\n", err);
85
- return (err == ZCBOR_SUCCESS) ? ZCBOR_ERR_UNKNOWN : err;
86
- }
87
- return ZCBOR_SUCCESS;
85
+ return zcbor_entry_function(payload, payload_len, (void *)input, payload_len_out, states,
86
+ (zcbor_decoder_t *)encode_plaintext_4, sizeof(states) / sizeof(zcbor_state_t), 6);
88
87
  }
@@ -1,5 +1,5 @@
1
1
  /*
2
- * Generated using zcbor version 0.7.0
2
+ * Generated using zcbor version 0.8.1
3
3
  * https://github.com/NordicSemiconductor/zcbor
4
4
  * Generated with a --default-max-qty of 3
5
5
  */
@@ -10,6 +10,7 @@
10
10
  #include <string.h>
11
11
  #include "zcbor_decode.h"
12
12
  #include "backend_cbor_sig_structure_decode.h"
13
+ #include "zcbor_print.h"
13
14
 
14
15
  #if DEFAULT_MAX_QTY != 3
15
16
  #error "The type file was generated with a different default_max_qty than this file"
@@ -21,16 +22,20 @@ static bool decode_sig_structure(zcbor_state_t *state, struct sig_structure *res
21
22
  static bool decode_sig_structure(
22
23
  zcbor_state_t *state, struct sig_structure *result)
23
24
  {
24
- zcbor_print("%s\r\n", __func__);
25
+ zcbor_log("%s\r\n", __func__);
25
26
  struct zcbor_string tmp_str;
26
27
 
27
28
  bool tmp_result = (((zcbor_list_start_decode(state) && ((((zcbor_tstr_expect(state, ((tmp_str.value = (uint8_t *)"Signature1", tmp_str.len = sizeof("Signature1") - 1, &tmp_str)))))
28
- && ((zcbor_bstr_decode(state, (&(*result)._sig_structure_protected))))
29
- && ((zcbor_bstr_decode(state, (&(*result)._sig_structure_external_aad))))
30
- && ((zcbor_bstr_decode(state, (&(*result)._sig_structure_payload))))) || (zcbor_list_map_end_force_decode(state), false)) && zcbor_list_end_decode(state))));
31
-
32
- if (!tmp_result)
33
- zcbor_trace();
29
+ && ((zcbor_bstr_decode(state, (&(*result).sig_structure_protected))))
30
+ && ((zcbor_bstr_decode(state, (&(*result).sig_structure_external_aad))))
31
+ && ((zcbor_bstr_decode(state, (&(*result).sig_structure_payload))))) || (zcbor_list_map_end_force_decode(state), false)) && zcbor_list_end_decode(state))));
32
+
33
+ if (!tmp_result) {
34
+ zcbor_trace_file(state);
35
+ zcbor_log("%s error: %s\r\n", __func__, zcbor_error_str(zcbor_peek_error(state)));
36
+ } else {
37
+ zcbor_log("%s success\r\n", __func__);
38
+ }
34
39
 
35
40
  return tmp_result;
36
41
  }
@@ -44,20 +49,6 @@ int cbor_decode_sig_structure(
44
49
  {
45
50
  zcbor_state_t states[3];
46
51
 
47
- zcbor_new_state(states, sizeof(states) / sizeof(zcbor_state_t), payload, payload_len, 1);
48
-
49
- bool ret = decode_sig_structure(states, result);
50
-
51
- if (ret && (payload_len_out != NULL)) {
52
- *payload_len_out = MIN(payload_len,
53
- (size_t)states[0].payload - (size_t)payload);
54
- }
55
-
56
- if (!ret) {
57
- int err = zcbor_pop_error(states);
58
-
59
- zcbor_print("Return error: %d\r\n", err);
60
- return (err == ZCBOR_SUCCESS) ? ZCBOR_ERR_UNKNOWN : err;
61
- }
62
- return ZCBOR_SUCCESS;
52
+ return zcbor_entry_function(payload, payload_len, (void *)result, payload_len_out, states,
53
+ (zcbor_decoder_t *)decode_sig_structure, sizeof(states) / sizeof(zcbor_state_t), 1);
63
54
  }
@@ -1,5 +1,5 @@
1
1
  /*
2
- * Generated using zcbor version 0.7.0
2
+ * Generated using zcbor version 0.8.1
3
3
  * https://github.com/NordicSemiconductor/zcbor
4
4
  * Generated with a --default-max-qty of 3
5
5
  */
@@ -10,6 +10,7 @@
10
10
  #include <string.h>
11
11
  #include "zcbor_encode.h"
12
12
  #include "backend_cbor_sig_structure_encode.h"
13
+ #include "zcbor_print.h"
13
14
 
14
15
  #if DEFAULT_MAX_QTY != 3
15
16
  #error "The type file was generated with a different default_max_qty than this file"
@@ -21,16 +22,20 @@ static bool encode_sig_structure(zcbor_state_t *state, const struct sig_structur
21
22
  static bool encode_sig_structure(
22
23
  zcbor_state_t *state, const struct sig_structure *input)
23
24
  {
24
- zcbor_print("%s\r\n", __func__);
25
+ zcbor_log("%s\r\n", __func__);
25
26
  struct zcbor_string tmp_str;
26
27
 
27
28
  bool tmp_result = (((zcbor_list_start_encode(state, 4) && ((((zcbor_tstr_encode(state, ((tmp_str.value = (uint8_t *)"Signature1", tmp_str.len = sizeof("Signature1") - 1, &tmp_str)))))
28
- && ((zcbor_bstr_encode(state, (&(*input)._sig_structure_protected))))
29
- && ((zcbor_bstr_encode(state, (&(*input)._sig_structure_external_aad))))
30
- && ((zcbor_bstr_encode(state, (&(*input)._sig_structure_payload))))) || (zcbor_list_map_end_force_encode(state), false)) && zcbor_list_end_encode(state, 4))));
31
-
32
- if (!tmp_result)
33
- zcbor_trace();
29
+ && ((zcbor_bstr_encode(state, (&(*input).sig_structure_protected))))
30
+ && ((zcbor_bstr_encode(state, (&(*input).sig_structure_external_aad))))
31
+ && ((zcbor_bstr_encode(state, (&(*input).sig_structure_payload))))) || (zcbor_list_map_end_force_encode(state), false)) && zcbor_list_end_encode(state, 4))));
32
+
33
+ if (!tmp_result) {
34
+ zcbor_trace_file(state);
35
+ zcbor_log("%s error: %s\r\n", __func__, zcbor_error_str(zcbor_peek_error(state)));
36
+ } else {
37
+ zcbor_log("%s success\r\n", __func__);
38
+ }
34
39
 
35
40
  return tmp_result;
36
41
  }
@@ -44,20 +49,6 @@ int cbor_encode_sig_structure(
44
49
  {
45
50
  zcbor_state_t states[3];
46
51
 
47
- zcbor_new_state(states, sizeof(states) / sizeof(zcbor_state_t), payload, payload_len, 1);
48
-
49
- bool ret = encode_sig_structure(states, input);
50
-
51
- if (ret && (payload_len_out != NULL)) {
52
- *payload_len_out = MIN(payload_len,
53
- (size_t)states[0].payload - (size_t)payload);
54
- }
55
-
56
- if (!ret) {
57
- int err = zcbor_pop_error(states);
58
-
59
- zcbor_print("Return error: %d\r\n", err);
60
- return (err == ZCBOR_SUCCESS) ? ZCBOR_ERR_UNKNOWN : err;
61
- }
62
- return ZCBOR_SUCCESS;
52
+ return zcbor_entry_function(payload, payload_len, (void *)input, payload_len_out, states,
53
+ (zcbor_decoder_t *)encode_sig_structure, sizeof(states) / sizeof(zcbor_state_t), 1);
63
54
  }