@scriptc/runtime 0.0.0 → 0.0.2

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 (416) hide show
  1. package/LICENSE +202 -0
  2. package/package.json +16 -6
  3. package/src/scr_array.c +488 -0
  4. package/src/scr_assert.c +1393 -0
  5. package/src/scr_async.c +2593 -0
  6. package/src/scr_async_dyn.c +607 -0
  7. package/src/scr_bytes.c +1425 -0
  8. package/src/scr_bytes_io.c +161 -0
  9. package/src/scr_child.c +3587 -0
  10. package/src/scr_closure.c +214 -0
  11. package/src/scr_console.c +143 -0
  12. package/src/scr_cycle.c +218 -0
  13. package/src/scr_dc.c +805 -0
  14. package/src/scr_dgram.c +1007 -0
  15. package/src/scr_dyn_handle.c +154 -0
  16. package/src/scr_dyn_invoke.c +644 -0
  17. package/src/scr_error.c +332 -0
  18. package/src/scr_events.c +714 -0
  19. package/src/scr_events_emitter.c +699 -0
  20. package/src/scr_exception.c +242 -0
  21. package/src/scr_fetch.c +1130 -0
  22. package/src/scr_fetch_curl.c +654 -0
  23. package/src/scr_http.c +3482 -0
  24. package/src/scr_http2.c +3030 -0
  25. package/src/scr_inspect.c +803 -0
  26. package/src/scr_inspect_island.c +51 -0
  27. package/src/scr_island.c +9363 -0
  28. package/src/scr_json.c +2151 -0
  29. package/src/scr_lib.c +3612 -0
  30. package/src/scr_loop_epoll.c +241 -0
  31. package/src/scr_loop_kqueue.c +121 -0
  32. package/src/scr_loop_wsapoll.c +208 -0
  33. package/src/scr_map.c +591 -0
  34. package/src/scr_net.c +3017 -0
  35. package/src/scr_net_island.c +458 -0
  36. package/src/scr_number.c +115 -0
  37. package/src/scr_object.c +25 -0
  38. package/src/scr_path.c +1266 -0
  39. package/src/scr_platform.h +119 -0
  40. package/src/scr_readline.c +287 -0
  41. package/src/scr_regex.c +1080 -0
  42. package/src/scr_runtime.h +5046 -0
  43. package/src/scr_stream.c +2877 -0
  44. package/src/scr_string.c +1264 -0
  45. package/src/scr_symbol.c +132 -0
  46. package/src/scr_test.c +662 -0
  47. package/src/scr_tls.c +1520 -0
  48. package/src/scr_union.c +105 -0
  49. package/src/scr_url.c +911 -0
  50. package/src/scr_url_internal.h +29 -0
  51. package/src/scr_url_params.c +561 -0
  52. package/src/scr_watch.c +568 -0
  53. package/src/scr_web.c +1778 -0
  54. package/src/scr_win.c +76 -0
  55. package/src/scr_zlib.c +197 -0
  56. package/src/scr_zlib_island.c +15 -0
  57. package/vendor/README.md +52 -0
  58. package/vendor/curl/COPYRIGHT +534 -0
  59. package/vendor/curl/include/curl/curl.h +3214 -0
  60. package/vendor/curl/include/curl/curlver.h +79 -0
  61. package/vendor/curl/include/curl/easy.h +125 -0
  62. package/vendor/curl/include/curl/header.h +74 -0
  63. package/vendor/curl/include/curl/mprintf.h +52 -0
  64. package/vendor/curl/include/curl/multi.h +460 -0
  65. package/vendor/curl/include/curl/options.h +70 -0
  66. package/vendor/curl/include/curl/stdcheaders.h +35 -0
  67. package/vendor/curl/include/curl/system.h +508 -0
  68. package/vendor/curl/include/curl/typecheck-gcc.h +716 -0
  69. package/vendor/curl/include/curl/urlapi.h +149 -0
  70. package/vendor/curl/include/curl/websockets.h +84 -0
  71. package/vendor/mbedtls/LICENSE +553 -0
  72. package/vendor/mbedtls/include/CMakeLists.txt +22 -0
  73. package/vendor/mbedtls/include/mbedtls/aes.h +631 -0
  74. package/vendor/mbedtls/include/mbedtls/aria.h +343 -0
  75. package/vendor/mbedtls/include/mbedtls/asn1.h +642 -0
  76. package/vendor/mbedtls/include/mbedtls/asn1write.h +390 -0
  77. package/vendor/mbedtls/include/mbedtls/base64.h +82 -0
  78. package/vendor/mbedtls/include/mbedtls/bignum.h +1088 -0
  79. package/vendor/mbedtls/include/mbedtls/block_cipher.h +76 -0
  80. package/vendor/mbedtls/include/mbedtls/build_info.h +194 -0
  81. package/vendor/mbedtls/include/mbedtls/camellia.h +305 -0
  82. package/vendor/mbedtls/include/mbedtls/ccm.h +526 -0
  83. package/vendor/mbedtls/include/mbedtls/chacha20.h +209 -0
  84. package/vendor/mbedtls/include/mbedtls/chachapoly.h +351 -0
  85. package/vendor/mbedtls/include/mbedtls/check_config.h +1149 -0
  86. package/vendor/mbedtls/include/mbedtls/cipher.h +1250 -0
  87. package/vendor/mbedtls/include/mbedtls/cmac.h +246 -0
  88. package/vendor/mbedtls/include/mbedtls/compat-2.x.h +46 -0
  89. package/vendor/mbedtls/include/mbedtls/config_adjust_legacy_crypto.h +578 -0
  90. package/vendor/mbedtls/include/mbedtls/config_adjust_legacy_from_psa.h +873 -0
  91. package/vendor/mbedtls/include/mbedtls/config_adjust_psa_from_legacy.h +359 -0
  92. package/vendor/mbedtls/include/mbedtls/config_adjust_psa_superset_legacy.h +145 -0
  93. package/vendor/mbedtls/include/mbedtls/config_adjust_ssl.h +91 -0
  94. package/vendor/mbedtls/include/mbedtls/config_adjust_x509.h +35 -0
  95. package/vendor/mbedtls/include/mbedtls/config_psa.h +61 -0
  96. package/vendor/mbedtls/include/mbedtls/constant_time.h +36 -0
  97. package/vendor/mbedtls/include/mbedtls/ctr_drbg.h +596 -0
  98. package/vendor/mbedtls/include/mbedtls/debug.h +156 -0
  99. package/vendor/mbedtls/include/mbedtls/des.h +385 -0
  100. package/vendor/mbedtls/include/mbedtls/dhm.h +972 -0
  101. package/vendor/mbedtls/include/mbedtls/ecdh.h +455 -0
  102. package/vendor/mbedtls/include/mbedtls/ecdsa.h +674 -0
  103. package/vendor/mbedtls/include/mbedtls/ecjpake.h +298 -0
  104. package/vendor/mbedtls/include/mbedtls/ecp.h +1517 -0
  105. package/vendor/mbedtls/include/mbedtls/entropy.h +274 -0
  106. package/vendor/mbedtls/include/mbedtls/error.h +201 -0
  107. package/vendor/mbedtls/include/mbedtls/gcm.h +387 -0
  108. package/vendor/mbedtls/include/mbedtls/hkdf.h +124 -0
  109. package/vendor/mbedtls/include/mbedtls/hmac_drbg.h +434 -0
  110. package/vendor/mbedtls/include/mbedtls/lms.h +440 -0
  111. package/vendor/mbedtls/include/mbedtls/mbedtls_config.h +4446 -0
  112. package/vendor/mbedtls/include/mbedtls/md.h +526 -0
  113. package/vendor/mbedtls/include/mbedtls/md5.h +190 -0
  114. package/vendor/mbedtls/include/mbedtls/memory_buffer_alloc.h +142 -0
  115. package/vendor/mbedtls/include/mbedtls/net_sockets.h +299 -0
  116. package/vendor/mbedtls/include/mbedtls/nist_kw.h +166 -0
  117. package/vendor/mbedtls/include/mbedtls/oid.h +727 -0
  118. package/vendor/mbedtls/include/mbedtls/pem.h +160 -0
  119. package/vendor/mbedtls/include/mbedtls/pk.h +1303 -0
  120. package/vendor/mbedtls/include/mbedtls/pkcs12.h +186 -0
  121. package/vendor/mbedtls/include/mbedtls/pkcs5.h +198 -0
  122. package/vendor/mbedtls/include/mbedtls/pkcs7.h +252 -0
  123. package/vendor/mbedtls/include/mbedtls/platform.h +516 -0
  124. package/vendor/mbedtls/include/mbedtls/platform_time.h +79 -0
  125. package/vendor/mbedtls/include/mbedtls/platform_util.h +247 -0
  126. package/vendor/mbedtls/include/mbedtls/poly1305.h +168 -0
  127. package/vendor/mbedtls/include/mbedtls/private_access.h +20 -0
  128. package/vendor/mbedtls/include/mbedtls/psa_util.h +207 -0
  129. package/vendor/mbedtls/include/mbedtls/ripemd160.h +136 -0
  130. package/vendor/mbedtls/include/mbedtls/rsa.h +1170 -0
  131. package/vendor/mbedtls/include/mbedtls/sha1.h +219 -0
  132. package/vendor/mbedtls/include/mbedtls/sha256.h +200 -0
  133. package/vendor/mbedtls/include/mbedtls/sha3.h +172 -0
  134. package/vendor/mbedtls/include/mbedtls/sha512.h +208 -0
  135. package/vendor/mbedtls/include/mbedtls/ssl.h +5887 -0
  136. package/vendor/mbedtls/include/mbedtls/ssl_cache.h +187 -0
  137. package/vendor/mbedtls/include/mbedtls/ssl_ciphersuites.h +482 -0
  138. package/vendor/mbedtls/include/mbedtls/ssl_cookie.h +106 -0
  139. package/vendor/mbedtls/include/mbedtls/ssl_ticket.h +199 -0
  140. package/vendor/mbedtls/include/mbedtls/threading.h +167 -0
  141. package/vendor/mbedtls/include/mbedtls/timing.h +94 -0
  142. package/vendor/mbedtls/include/mbedtls/version.h +78 -0
  143. package/vendor/mbedtls/include/mbedtls/x509.h +500 -0
  144. package/vendor/mbedtls/include/mbedtls/x509_crl.h +184 -0
  145. package/vendor/mbedtls/include/mbedtls/x509_crt.h +1208 -0
  146. package/vendor/mbedtls/include/mbedtls/x509_csr.h +382 -0
  147. package/vendor/mbedtls/include/psa/build_info.h +20 -0
  148. package/vendor/mbedtls/include/psa/crypto.h +4998 -0
  149. package/vendor/mbedtls/include/psa/crypto_adjust_auto_enabled.h +31 -0
  150. package/vendor/mbedtls/include/psa/crypto_adjust_config_dependencies.h +51 -0
  151. package/vendor/mbedtls/include/psa/crypto_adjust_config_key_pair_types.h +101 -0
  152. package/vendor/mbedtls/include/psa/crypto_adjust_config_synonyms.h +49 -0
  153. package/vendor/mbedtls/include/psa/crypto_builtin_composites.h +214 -0
  154. package/vendor/mbedtls/include/psa/crypto_builtin_key_derivation.h +118 -0
  155. package/vendor/mbedtls/include/psa/crypto_builtin_primitives.h +114 -0
  156. package/vendor/mbedtls/include/psa/crypto_compat.h +230 -0
  157. package/vendor/mbedtls/include/psa/crypto_config.h +145 -0
  158. package/vendor/mbedtls/include/psa/crypto_driver_common.h +44 -0
  159. package/vendor/mbedtls/include/psa/crypto_driver_contexts_composites.h +151 -0
  160. package/vendor/mbedtls/include/psa/crypto_driver_contexts_key_derivation.h +52 -0
  161. package/vendor/mbedtls/include/psa/crypto_driver_contexts_primitives.h +105 -0
  162. package/vendor/mbedtls/include/psa/crypto_extra.h +2145 -0
  163. package/vendor/mbedtls/include/psa/crypto_legacy.h +88 -0
  164. package/vendor/mbedtls/include/psa/crypto_platform.h +102 -0
  165. package/vendor/mbedtls/include/psa/crypto_se_driver.h +1383 -0
  166. package/vendor/mbedtls/include/psa/crypto_sizes.h +1319 -0
  167. package/vendor/mbedtls/include/psa/crypto_struct.h +527 -0
  168. package/vendor/mbedtls/include/psa/crypto_types.h +508 -0
  169. package/vendor/mbedtls/include/psa/crypto_values.h +2782 -0
  170. package/vendor/mbedtls/library/aes.c +2294 -0
  171. package/vendor/mbedtls/library/aesce.c +624 -0
  172. package/vendor/mbedtls/library/aesce.h +136 -0
  173. package/vendor/mbedtls/library/aesni.c +846 -0
  174. package/vendor/mbedtls/library/aesni.h +162 -0
  175. package/vendor/mbedtls/library/alignment.h +704 -0
  176. package/vendor/mbedtls/library/aria.c +969 -0
  177. package/vendor/mbedtls/library/asn1parse.c +468 -0
  178. package/vendor/mbedtls/library/asn1write.c +440 -0
  179. package/vendor/mbedtls/library/base64.c +322 -0
  180. package/vendor/mbedtls/library/base64_internal.h +45 -0
  181. package/vendor/mbedtls/library/bignum.c +2583 -0
  182. package/vendor/mbedtls/library/bignum_core.c +1240 -0
  183. package/vendor/mbedtls/library/bignum_core.h +872 -0
  184. package/vendor/mbedtls/library/bignum_core_invasive.h +38 -0
  185. package/vendor/mbedtls/library/bignum_internal.h +122 -0
  186. package/vendor/mbedtls/library/bignum_mod.c +394 -0
  187. package/vendor/mbedtls/library/bignum_mod.h +452 -0
  188. package/vendor/mbedtls/library/bignum_mod_raw.c +276 -0
  189. package/vendor/mbedtls/library/bignum_mod_raw.h +416 -0
  190. package/vendor/mbedtls/library/bignum_mod_raw_invasive.h +34 -0
  191. package/vendor/mbedtls/library/block_cipher.c +207 -0
  192. package/vendor/mbedtls/library/block_cipher_internal.h +99 -0
  193. package/vendor/mbedtls/library/bn_mul.h +1094 -0
  194. package/vendor/mbedtls/library/camellia.c +1058 -0
  195. package/vendor/mbedtls/library/ccm.c +777 -0
  196. package/vendor/mbedtls/library/chacha20.c +563 -0
  197. package/vendor/mbedtls/library/chacha20_internal.h +23 -0
  198. package/vendor/mbedtls/library/chachapoly.c +487 -0
  199. package/vendor/mbedtls/library/check_crypto_config.h +136 -0
  200. package/vendor/mbedtls/library/cipher.c +1712 -0
  201. package/vendor/mbedtls/library/cipher_invasive.h +28 -0
  202. package/vendor/mbedtls/library/cipher_wrap.c +2482 -0
  203. package/vendor/mbedtls/library/cipher_wrap.h +178 -0
  204. package/vendor/mbedtls/library/cmac.c +1067 -0
  205. package/vendor/mbedtls/library/common.h +487 -0
  206. package/vendor/mbedtls/library/constant_time.c +247 -0
  207. package/vendor/mbedtls/library/constant_time_impl.h +541 -0
  208. package/vendor/mbedtls/library/constant_time_internal.h +579 -0
  209. package/vendor/mbedtls/library/ctr.h +35 -0
  210. package/vendor/mbedtls/library/ctr_drbg.c +1016 -0
  211. package/vendor/mbedtls/library/debug.c +475 -0
  212. package/vendor/mbedtls/library/debug_internal.h +185 -0
  213. package/vendor/mbedtls/library/des.c +1042 -0
  214. package/vendor/mbedtls/library/dhm.c +700 -0
  215. package/vendor/mbedtls/library/ecdh.c +696 -0
  216. package/vendor/mbedtls/library/ecdsa.c +858 -0
  217. package/vendor/mbedtls/library/ecjpake.c +1216 -0
  218. package/vendor/mbedtls/library/ecp.c +3674 -0
  219. package/vendor/mbedtls/library/ecp_curves.c +6125 -0
  220. package/vendor/mbedtls/library/ecp_curves_new.c +9 -0
  221. package/vendor/mbedtls/library/ecp_internal_alt.h +287 -0
  222. package/vendor/mbedtls/library/ecp_invasive.h +305 -0
  223. package/vendor/mbedtls/library/entropy.c +680 -0
  224. package/vendor/mbedtls/library/entropy_poll.c +233 -0
  225. package/vendor/mbedtls/library/entropy_poll.h +64 -0
  226. package/vendor/mbedtls/library/error.c +878 -0
  227. package/vendor/mbedtls/library/gcm.c +1330 -0
  228. package/vendor/mbedtls/library/hkdf.c +161 -0
  229. package/vendor/mbedtls/library/hmac_drbg.c +633 -0
  230. package/vendor/mbedtls/library/lmots.c +789 -0
  231. package/vendor/mbedtls/library/lmots.h +288 -0
  232. package/vendor/mbedtls/library/lms.c +778 -0
  233. package/vendor/mbedtls/library/md.c +1108 -0
  234. package/vendor/mbedtls/library/md5.c +426 -0
  235. package/vendor/mbedtls/library/md_psa.h +26 -0
  236. package/vendor/mbedtls/library/md_wrap.h +46 -0
  237. package/vendor/mbedtls/library/memory_buffer_alloc.c +751 -0
  238. package/vendor/mbedtls/library/mps_common.h +181 -0
  239. package/vendor/mbedtls/library/mps_error.h +89 -0
  240. package/vendor/mbedtls/library/mps_reader.c +538 -0
  241. package/vendor/mbedtls/library/mps_reader.h +366 -0
  242. package/vendor/mbedtls/library/mps_trace.c +112 -0
  243. package/vendor/mbedtls/library/mps_trace.h +154 -0
  244. package/vendor/mbedtls/library/net_sockets.c +694 -0
  245. package/vendor/mbedtls/library/nist_kw.c +729 -0
  246. package/vendor/mbedtls/library/oid.c +1166 -0
  247. package/vendor/mbedtls/library/padlock.c +157 -0
  248. package/vendor/mbedtls/library/padlock.h +111 -0
  249. package/vendor/mbedtls/library/pem.c +554 -0
  250. package/vendor/mbedtls/library/pk.c +1602 -0
  251. package/vendor/mbedtls/library/pk_ecc.c +261 -0
  252. package/vendor/mbedtls/library/pk_internal.h +241 -0
  253. package/vendor/mbedtls/library/pk_wrap.c +1618 -0
  254. package/vendor/mbedtls/library/pk_wrap.h +138 -0
  255. package/vendor/mbedtls/library/pkcs12.c +437 -0
  256. package/vendor/mbedtls/library/pkcs5.c +500 -0
  257. package/vendor/mbedtls/library/pkcs7.c +787 -0
  258. package/vendor/mbedtls/library/pkparse.c +1392 -0
  259. package/vendor/mbedtls/library/pkwrite.c +631 -0
  260. package/vendor/mbedtls/library/pkwrite.h +121 -0
  261. package/vendor/mbedtls/library/platform.c +402 -0
  262. package/vendor/mbedtls/library/platform_util.c +258 -0
  263. package/vendor/mbedtls/library/poly1305.c +492 -0
  264. package/vendor/mbedtls/library/psa_crypto.c +9532 -0
  265. package/vendor/mbedtls/library/psa_crypto_aead.c +646 -0
  266. package/vendor/mbedtls/library/psa_crypto_aead.h +499 -0
  267. package/vendor/mbedtls/library/psa_crypto_cipher.c +747 -0
  268. package/vendor/mbedtls/library/psa_crypto_cipher.h +316 -0
  269. package/vendor/mbedtls/library/psa_crypto_client.c +22 -0
  270. package/vendor/mbedtls/library/psa_crypto_core.h +983 -0
  271. package/vendor/mbedtls/library/psa_crypto_core_common.h +52 -0
  272. package/vendor/mbedtls/library/psa_crypto_driver_wrappers.h +2896 -0
  273. package/vendor/mbedtls/library/psa_crypto_driver_wrappers_no_static.c +256 -0
  274. package/vendor/mbedtls/library/psa_crypto_driver_wrappers_no_static.h +31 -0
  275. package/vendor/mbedtls/library/psa_crypto_ecp.c +594 -0
  276. package/vendor/mbedtls/library/psa_crypto_ecp.h +267 -0
  277. package/vendor/mbedtls/library/psa_crypto_ffdh.c +361 -0
  278. package/vendor/mbedtls/library/psa_crypto_ffdh.h +131 -0
  279. package/vendor/mbedtls/library/psa_crypto_hash.c +470 -0
  280. package/vendor/mbedtls/library/psa_crypto_hash.h +211 -0
  281. package/vendor/mbedtls/library/psa_crypto_invasive.h +92 -0
  282. package/vendor/mbedtls/library/psa_crypto_its.h +131 -0
  283. package/vendor/mbedtls/library/psa_crypto_mac.c +505 -0
  284. package/vendor/mbedtls/library/psa_crypto_mac.h +264 -0
  285. package/vendor/mbedtls/library/psa_crypto_pake.c +571 -0
  286. package/vendor/mbedtls/library/psa_crypto_pake.h +159 -0
  287. package/vendor/mbedtls/library/psa_crypto_random.c +181 -0
  288. package/vendor/mbedtls/library/psa_crypto_random.h +72 -0
  289. package/vendor/mbedtls/library/psa_crypto_random_impl.h +200 -0
  290. package/vendor/mbedtls/library/psa_crypto_rsa.c +714 -0
  291. package/vendor/mbedtls/library/psa_crypto_rsa.h +321 -0
  292. package/vendor/mbedtls/library/psa_crypto_se.c +373 -0
  293. package/vendor/mbedtls/library/psa_crypto_se.h +192 -0
  294. package/vendor/mbedtls/library/psa_crypto_slot_management.c +1137 -0
  295. package/vendor/mbedtls/library/psa_crypto_slot_management.h +344 -0
  296. package/vendor/mbedtls/library/psa_crypto_storage.c +481 -0
  297. package/vendor/mbedtls/library/psa_crypto_storage.h +392 -0
  298. package/vendor/mbedtls/library/psa_its_file.c +254 -0
  299. package/vendor/mbedtls/library/psa_util.c +614 -0
  300. package/vendor/mbedtls/library/psa_util_internal.h +100 -0
  301. package/vendor/mbedtls/library/ripemd160.c +490 -0
  302. package/vendor/mbedtls/library/rsa.c +3121 -0
  303. package/vendor/mbedtls/library/rsa_alt_helpers.c +455 -0
  304. package/vendor/mbedtls/library/rsa_alt_helpers.h +209 -0
  305. package/vendor/mbedtls/library/rsa_internal.h +188 -0
  306. package/vendor/mbedtls/library/sha1.c +480 -0
  307. package/vendor/mbedtls/library/sha256.c +983 -0
  308. package/vendor/mbedtls/library/sha3.c +721 -0
  309. package/vendor/mbedtls/library/sha512.c +1115 -0
  310. package/vendor/mbedtls/library/ssl_cache.c +410 -0
  311. package/vendor/mbedtls/library/ssl_ciphersuites.c +2050 -0
  312. package/vendor/mbedtls/library/ssl_ciphersuites_internal.h +154 -0
  313. package/vendor/mbedtls/library/ssl_client.c +1023 -0
  314. package/vendor/mbedtls/library/ssl_client.h +22 -0
  315. package/vendor/mbedtls/library/ssl_cookie.c +384 -0
  316. package/vendor/mbedtls/library/ssl_debug_helpers.h +85 -0
  317. package/vendor/mbedtls/library/ssl_debug_helpers_generated.c +251 -0
  318. package/vendor/mbedtls/library/ssl_misc.h +3198 -0
  319. package/vendor/mbedtls/library/ssl_msg.c +6619 -0
  320. package/vendor/mbedtls/library/ssl_ticket.c +556 -0
  321. package/vendor/mbedtls/library/ssl_tls.c +10234 -0
  322. package/vendor/mbedtls/library/ssl_tls12_client.c +3688 -0
  323. package/vendor/mbedtls/library/ssl_tls12_server.c +4311 -0
  324. package/vendor/mbedtls/library/ssl_tls13_client.c +3208 -0
  325. package/vendor/mbedtls/library/ssl_tls13_generic.c +1793 -0
  326. package/vendor/mbedtls/library/ssl_tls13_invasive.h +23 -0
  327. package/vendor/mbedtls/library/ssl_tls13_keys.c +1918 -0
  328. package/vendor/mbedtls/library/ssl_tls13_keys.h +668 -0
  329. package/vendor/mbedtls/library/ssl_tls13_server.c +3624 -0
  330. package/vendor/mbedtls/library/threading.c +193 -0
  331. package/vendor/mbedtls/library/threading_internal.h +28 -0
  332. package/vendor/mbedtls/library/timing.c +152 -0
  333. package/vendor/mbedtls/library/version.c +32 -0
  334. package/vendor/mbedtls/library/version_features.c +856 -0
  335. package/vendor/mbedtls/library/x509.c +1776 -0
  336. package/vendor/mbedtls/library/x509_create.c +570 -0
  337. package/vendor/mbedtls/library/x509_crl.c +708 -0
  338. package/vendor/mbedtls/library/x509_crt.c +3311 -0
  339. package/vendor/mbedtls/library/x509_csr.c +648 -0
  340. package/vendor/mbedtls/library/x509_internal.h +101 -0
  341. package/vendor/mbedtls/library/x509write.c +174 -0
  342. package/vendor/mbedtls/library/x509write_crt.c +688 -0
  343. package/vendor/mbedtls/library/x509write_csr.c +336 -0
  344. package/vendor/quickjs-ng/CMakeLists.txt +566 -0
  345. package/vendor/quickjs-ng/LICENSE +24 -0
  346. package/vendor/quickjs-ng/README.md +24 -0
  347. package/vendor/quickjs-ng/api-test.c +1195 -0
  348. package/vendor/quickjs-ng/builtin-array-fromasync.h +119 -0
  349. package/vendor/quickjs-ng/builtin-iterator-zip-keyed.h +332 -0
  350. package/vendor/quickjs-ng/builtin-iterator-zip.h +337 -0
  351. package/vendor/quickjs-ng/cutils.h +1998 -0
  352. package/vendor/quickjs-ng/dtoa.c +1619 -0
  353. package/vendor/quickjs-ng/dtoa.h +87 -0
  354. package/vendor/quickjs-ng/gen/function_source.c +81 -0
  355. package/vendor/quickjs-ng/gen/hello.c +53 -0
  356. package/vendor/quickjs-ng/gen/hello_module.c +106 -0
  357. package/vendor/quickjs-ng/gen/repl.c +3036 -0
  358. package/vendor/quickjs-ng/gen/standalone.c +323 -0
  359. package/vendor/quickjs-ng/gen/test_fib.c +81 -0
  360. package/vendor/quickjs-ng/libregexp-opcode.h +73 -0
  361. package/vendor/quickjs-ng/libregexp.c +3474 -0
  362. package/vendor/quickjs-ng/libregexp.h +101 -0
  363. package/vendor/quickjs-ng/libunicode-table.h +5173 -0
  364. package/vendor/quickjs-ng/libunicode.c +2069 -0
  365. package/vendor/quickjs-ng/libunicode.h +172 -0
  366. package/vendor/quickjs-ng/list.h +107 -0
  367. package/vendor/quickjs-ng/lre-test.c +52 -0
  368. package/vendor/quickjs-ng/qjs.c +762 -0
  369. package/vendor/quickjs-ng/qjsc.c +673 -0
  370. package/vendor/quickjs-ng/quickjs-atom.h +280 -0
  371. package/vendor/quickjs-ng/quickjs-c-atomics.h +54 -0
  372. package/vendor/quickjs-ng/quickjs-libc.c +5037 -0
  373. package/vendor/quickjs-ng/quickjs-libc.h +87 -0
  374. package/vendor/quickjs-ng/quickjs-opcode.h +377 -0
  375. package/vendor/quickjs-ng/quickjs.c +64041 -0
  376. package/vendor/quickjs-ng/quickjs.h +1447 -0
  377. package/vendor/quickjs-ng/run-test262.c +2374 -0
  378. package/vendor/quickjs-ng/unicode_gen.c +3121 -0
  379. package/vendor/quickjs-ng/unicode_gen_def.h +310 -0
  380. package/vendor/ryu/LICENSE-Boost +23 -0
  381. package/vendor/ryu/common.h +114 -0
  382. package/vendor/ryu/d2s.c +509 -0
  383. package/vendor/ryu/d2s_full_table.h +367 -0
  384. package/vendor/ryu/d2s_intrinsics.h +357 -0
  385. package/vendor/ryu/d2s_small_table.h +186 -0
  386. package/vendor/ryu/digit_table.h +35 -0
  387. package/vendor/ryu/ryu.h +46 -0
  388. package/vendor/zlib/LICENSE +22 -0
  389. package/vendor/zlib/adler32.c +164 -0
  390. package/vendor/zlib/compress.c +75 -0
  391. package/vendor/zlib/crc32.c +1049 -0
  392. package/vendor/zlib/crc32.h +9446 -0
  393. package/vendor/zlib/deflate.c +2139 -0
  394. package/vendor/zlib/deflate.h +377 -0
  395. package/vendor/zlib/gzclose.c +23 -0
  396. package/vendor/zlib/gzguts.h +214 -0
  397. package/vendor/zlib/gzlib.c +582 -0
  398. package/vendor/zlib/gzread.c +602 -0
  399. package/vendor/zlib/gzwrite.c +631 -0
  400. package/vendor/zlib/infback.c +628 -0
  401. package/vendor/zlib/inffast.c +320 -0
  402. package/vendor/zlib/inffast.h +11 -0
  403. package/vendor/zlib/inffixed.h +94 -0
  404. package/vendor/zlib/inflate.c +1526 -0
  405. package/vendor/zlib/inflate.h +126 -0
  406. package/vendor/zlib/inftrees.c +299 -0
  407. package/vendor/zlib/inftrees.h +62 -0
  408. package/vendor/zlib/trees.c +1117 -0
  409. package/vendor/zlib/trees.h +128 -0
  410. package/vendor/zlib/uncompr.c +85 -0
  411. package/vendor/zlib/zconf.h +543 -0
  412. package/vendor/zlib/zlib.h +1938 -0
  413. package/vendor/zlib/zutil.c +299 -0
  414. package/vendor/zlib/zutil.h +254 -0
  415. package/README.md +0 -3
  416. package/index.js +0 -2
@@ -0,0 +1,344 @@
1
+ /*
2
+ * PSA crypto layer on top of Mbed TLS crypto
3
+ */
4
+ /*
5
+ * Copyright The Mbed TLS Contributors
6
+ * SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
7
+ */
8
+
9
+ #ifndef PSA_CRYPTO_SLOT_MANAGEMENT_H
10
+ #define PSA_CRYPTO_SLOT_MANAGEMENT_H
11
+
12
+ #include "psa/crypto.h"
13
+ #include "psa_crypto_core.h"
14
+ #include "psa_crypto_se.h"
15
+
16
+ /** Range of volatile key identifiers.
17
+ *
18
+ * The first #MBEDTLS_PSA_KEY_SLOT_COUNT identifiers of the implementation
19
+ * range of key identifiers are reserved for volatile key identifiers.
20
+ *
21
+ * If \c id is a a volatile key identifier, #PSA_KEY_ID_VOLATILE_MIN - \c id
22
+ * indicates the key slot containing the volatile key definition. See
23
+ * psa_crypto_slot_management.c for details.
24
+ */
25
+
26
+ /** The minimum value for a volatile key identifier.
27
+ */
28
+ #define PSA_KEY_ID_VOLATILE_MIN PSA_KEY_ID_VENDOR_MIN
29
+
30
+ /** The maximum value for a volatile key identifier.
31
+ */
32
+ #if defined(MBEDTLS_PSA_KEY_STORE_DYNAMIC)
33
+ #define PSA_KEY_ID_VOLATILE_MAX (MBEDTLS_PSA_KEY_ID_BUILTIN_MIN - 1)
34
+ #else /* MBEDTLS_PSA_KEY_STORE_DYNAMIC */
35
+ #define PSA_KEY_ID_VOLATILE_MAX \
36
+ (PSA_KEY_ID_VOLATILE_MIN + MBEDTLS_PSA_KEY_SLOT_COUNT - 1)
37
+ #endif /* MBEDTLS_PSA_KEY_STORE_DYNAMIC */
38
+
39
+ /** Test whether a key identifier is a volatile key identifier.
40
+ *
41
+ * \param key_id Key identifier to test.
42
+ *
43
+ * \retval 1
44
+ * The key identifier is a volatile key identifier.
45
+ * \retval 0
46
+ * The key identifier is not a volatile key identifier.
47
+ */
48
+ static inline int psa_key_id_is_volatile(psa_key_id_t key_id)
49
+ {
50
+ return (key_id >= PSA_KEY_ID_VOLATILE_MIN) &&
51
+ (key_id <= PSA_KEY_ID_VOLATILE_MAX);
52
+ }
53
+
54
+ /** Get the description of a key given its identifier and lock it.
55
+ *
56
+ * The descriptions of volatile keys and loaded persistent keys are stored in
57
+ * key slots. This function returns a pointer to the key slot containing the
58
+ * description of a key given its identifier.
59
+ *
60
+ * In case of a persistent key, the function loads the description of the key
61
+ * into a key slot if not already done.
62
+ *
63
+ * On success, the returned key slot has been registered for reading.
64
+ * It is the responsibility of the caller to call psa_unregister_read(slot)
65
+ * when they have finished reading the contents of the slot.
66
+ *
67
+ * On failure, `*p_slot` is set to NULL. This ensures that it is always valid
68
+ * to call psa_unregister_read on the returned slot.
69
+ *
70
+ * \param key Key identifier to query.
71
+ * \param[out] p_slot On success, `*p_slot` contains a pointer to the
72
+ * key slot containing the description of the key
73
+ * identified by \p key.
74
+ *
75
+ * \retval #PSA_SUCCESS
76
+ * \p *p_slot contains a pointer to the key slot containing the
77
+ * description of the key identified by \p key.
78
+ * The key slot counter has been incremented.
79
+ * \retval #PSA_ERROR_BAD_STATE
80
+ * The library has not been initialized.
81
+ * \retval #PSA_ERROR_INVALID_HANDLE
82
+ * \p key is not a valid key identifier.
83
+ * \retval #PSA_ERROR_INSUFFICIENT_MEMORY
84
+ * \p key is a persistent key identifier. The implementation does not
85
+ * have sufficient resources to load the persistent key. This can be
86
+ * due to a lack of empty key slot, or available memory.
87
+ * \retval #PSA_ERROR_DOES_NOT_EXIST
88
+ * There is no key with key identifier \p key.
89
+ * \retval #PSA_ERROR_CORRUPTION_DETECTED \emptydescription
90
+ * \retval #PSA_ERROR_STORAGE_FAILURE \emptydescription
91
+ * \retval #PSA_ERROR_DATA_CORRUPT \emptydescription
92
+ */
93
+ psa_status_t psa_get_and_lock_key_slot(mbedtls_svc_key_id_t key,
94
+ psa_key_slot_t **p_slot);
95
+
96
+ /** Initialize the key slot structures.
97
+ *
98
+ * \retval #PSA_SUCCESS
99
+ * Currently this function always succeeds.
100
+ */
101
+ psa_status_t psa_initialize_key_slots(void);
102
+
103
+ #if defined(MBEDTLS_TEST_HOOKS) && defined(MBEDTLS_PSA_KEY_STORE_DYNAMIC)
104
+ /* Allow test code to customize the key slice length. We use this in tests
105
+ * that exhaust the key store to reach a full key store in reasonable time
106
+ * and memory.
107
+ *
108
+ * The length of each slice must be between 1 and
109
+ * (1 << KEY_ID_SLOT_INDEX_WIDTH) inclusive.
110
+ *
111
+ * The length for a given slice index must not change while
112
+ * the key store is initialized.
113
+ */
114
+ extern size_t (*mbedtls_test_hook_psa_volatile_key_slice_length)(
115
+ size_t slice_idx);
116
+
117
+ /* The number of volatile key slices. */
118
+ size_t psa_key_slot_volatile_slice_count(void);
119
+ #endif
120
+
121
+ /** Delete all data from key slots in memory.
122
+ * This function is not thread safe, it wipes every key slot regardless of
123
+ * state and reader count. It should only be called when no slot is in use.
124
+ *
125
+ * This does not affect persistent storage. */
126
+ void psa_wipe_all_key_slots(void);
127
+
128
+ /** Find a free key slot and reserve it to be filled with a key.
129
+ *
130
+ * This function finds a key slot that is free,
131
+ * sets its state to PSA_SLOT_FILLING and then returns the slot.
132
+ *
133
+ * On success, the key slot's state is PSA_SLOT_FILLING.
134
+ * It is the responsibility of the caller to change the slot's state to
135
+ * PSA_SLOT_EMPTY/FULL once key creation has finished.
136
+ *
137
+ * If multi-threading is enabled, the caller must hold the
138
+ * global key slot mutex.
139
+ *
140
+ * \param[out] volatile_key_id - If null, reserve a cache slot for
141
+ * a persistent or built-in key.
142
+ * - If non-null, allocate a slot for
143
+ * a volatile key. On success,
144
+ * \p *volatile_key_id is the
145
+ * identifier corresponding to the
146
+ * returned slot. It is the caller's
147
+ * responsibility to set this key identifier
148
+ * in the attributes.
149
+ * \param[out] p_slot On success, a pointer to the slot.
150
+ *
151
+ * \retval #PSA_SUCCESS \emptydescription
152
+ * \retval #PSA_ERROR_INSUFFICIENT_MEMORY
153
+ * There were no free key slots.
154
+ * When #MBEDTLS_PSA_KEY_STORE_DYNAMIC is enabled, there was not
155
+ * enough memory to allocate more slots.
156
+ * \retval #PSA_ERROR_BAD_STATE \emptydescription
157
+ * \retval #PSA_ERROR_CORRUPTION_DETECTED
158
+ * This function attempted to operate on a key slot which was in an
159
+ * unexpected state.
160
+ */
161
+ psa_status_t psa_reserve_free_key_slot(psa_key_id_t *volatile_key_id,
162
+ psa_key_slot_t **p_slot);
163
+
164
+ #if defined(MBEDTLS_PSA_KEY_STORE_DYNAMIC)
165
+ /** Return a key slot to the free list.
166
+ *
167
+ * Call this function when a slot obtained from psa_reserve_free_key_slot()
168
+ * is no longer in use.
169
+ *
170
+ * If multi-threading is enabled, the caller must hold the
171
+ * global key slot mutex.
172
+ *
173
+ * \param slice_idx The slice containing the slot.
174
+ * This is `slot->slice_index` when the slot
175
+ * is obtained from psa_reserve_free_key_slot().
176
+ * \param slot The key slot.
177
+ *
178
+ * \retval #PSA_SUCCESS \emptydescription
179
+ * \retval #PSA_ERROR_CORRUPTION_DETECTED
180
+ * This function attempted to operate on a key slot which was in an
181
+ * unexpected state.
182
+ */
183
+ psa_status_t psa_free_key_slot(size_t slice_idx,
184
+ psa_key_slot_t *slot);
185
+ #endif /* MBEDTLS_PSA_KEY_STORE_DYNAMIC */
186
+
187
+ /** Change the state of a key slot.
188
+ *
189
+ * This function changes the state of the key slot from expected_state to
190
+ * new state. If the state of the slot was not expected_state, the state is
191
+ * unchanged.
192
+ *
193
+ * If multi-threading is enabled, the caller must hold the
194
+ * global key slot mutex.
195
+ *
196
+ * \param[in] slot The key slot.
197
+ * \param[in] expected_state The current state of the slot.
198
+ * \param[in] new_state The new state of the slot.
199
+ *
200
+ * \retval #PSA_SUCCESS
201
+ The key slot's state variable is new_state.
202
+ * \retval #PSA_ERROR_CORRUPTION_DETECTED
203
+ * The slot's state was not expected_state.
204
+ */
205
+ static inline psa_status_t psa_key_slot_state_transition(
206
+ psa_key_slot_t *slot, psa_key_slot_state_t expected_state,
207
+ psa_key_slot_state_t new_state)
208
+ {
209
+ if (slot->state != expected_state) {
210
+ return PSA_ERROR_CORRUPTION_DETECTED;
211
+ }
212
+ slot->state = new_state;
213
+ return PSA_SUCCESS;
214
+ }
215
+
216
+ /** Register as a reader of a key slot.
217
+ *
218
+ * This function increments the key slot registered reader counter by one.
219
+ * If multi-threading is enabled, the caller must hold the
220
+ * global key slot mutex.
221
+ *
222
+ * \param[in] slot The key slot.
223
+ *
224
+ * \retval #PSA_SUCCESS
225
+ The key slot registered reader counter was incremented.
226
+ * \retval #PSA_ERROR_CORRUPTION_DETECTED
227
+ * The reader counter already reached its maximum value and was not
228
+ * increased, or the slot's state was not PSA_SLOT_FULL.
229
+ */
230
+ static inline psa_status_t psa_register_read(psa_key_slot_t *slot)
231
+ {
232
+ if ((slot->state != PSA_SLOT_FULL) ||
233
+ (slot->var.occupied.registered_readers >= SIZE_MAX)) {
234
+ return PSA_ERROR_CORRUPTION_DETECTED;
235
+ }
236
+ slot->var.occupied.registered_readers++;
237
+
238
+ return PSA_SUCCESS;
239
+ }
240
+
241
+ /** Unregister from reading a key slot.
242
+ *
243
+ * This function decrements the key slot registered reader counter by one.
244
+ * If the state of the slot is PSA_SLOT_PENDING_DELETION,
245
+ * and there is only one registered reader (the caller),
246
+ * this function will call psa_wipe_key_slot().
247
+ * If multi-threading is enabled, the caller must hold the
248
+ * global key slot mutex.
249
+ *
250
+ * \note To ease the handling of errors in retrieving a key slot
251
+ * a NULL input pointer is valid, and the function returns
252
+ * successfully without doing anything in that case.
253
+ *
254
+ * \param[in] slot The key slot.
255
+ * \retval #PSA_SUCCESS
256
+ * \p slot is NULL or the key slot reader counter has been
257
+ * decremented (and potentially wiped) successfully.
258
+ * \retval #PSA_ERROR_CORRUPTION_DETECTED
259
+ * The slot's state was neither PSA_SLOT_FULL nor
260
+ * PSA_SLOT_PENDING_DELETION.
261
+ * Or a wipe was attempted and the slot's state was not
262
+ * PSA_SLOT_PENDING_DELETION.
263
+ * Or registered_readers was equal to 0.
264
+ */
265
+ psa_status_t psa_unregister_read(psa_key_slot_t *slot);
266
+
267
+ /** Wrap a call to psa_unregister_read in the global key slot mutex.
268
+ *
269
+ * If threading is disabled, this simply calls psa_unregister_read.
270
+ *
271
+ * \note To ease the handling of errors in retrieving a key slot
272
+ * a NULL input pointer is valid, and the function returns
273
+ * successfully without doing anything in that case.
274
+ *
275
+ * \param[in] slot The key slot.
276
+ * \retval #PSA_SUCCESS
277
+ * \p slot is NULL or the key slot reader counter has been
278
+ * decremented (and potentially wiped) successfully.
279
+ * \retval #PSA_ERROR_CORRUPTION_DETECTED
280
+ * The slot's state was neither PSA_SLOT_FULL nor
281
+ * PSA_SLOT_PENDING_DELETION.
282
+ * Or a wipe was attempted and the slot's state was not
283
+ * PSA_SLOT_PENDING_DELETION.
284
+ * Or registered_readers was equal to 0.
285
+ */
286
+ psa_status_t psa_unregister_read_under_mutex(psa_key_slot_t *slot);
287
+
288
+ /** Test whether a lifetime designates a key in an external cryptoprocessor.
289
+ *
290
+ * \param lifetime The lifetime to test.
291
+ *
292
+ * \retval 1
293
+ * The lifetime designates an external key. There should be a
294
+ * registered driver for this lifetime, otherwise the key cannot
295
+ * be created or manipulated.
296
+ * \retval 0
297
+ * The lifetime designates a key that is volatile or in internal
298
+ * storage.
299
+ */
300
+ static inline int psa_key_lifetime_is_external(psa_key_lifetime_t lifetime)
301
+ {
302
+ return PSA_KEY_LIFETIME_GET_LOCATION(lifetime)
303
+ != PSA_KEY_LOCATION_LOCAL_STORAGE;
304
+ }
305
+
306
+ /** Validate a key's location.
307
+ *
308
+ * This function checks whether the key's attributes point to a location that
309
+ * is known to the PSA Core, and returns the driver function table if the key
310
+ * is to be found in an external location.
311
+ *
312
+ * \param[in] lifetime The key lifetime attribute.
313
+ * \param[out] p_drv On success, when a key is located in external
314
+ * storage, returns a pointer to the driver table
315
+ * associated with the key's storage location.
316
+ *
317
+ * \retval #PSA_SUCCESS \emptydescription
318
+ * \retval #PSA_ERROR_INVALID_ARGUMENT \emptydescription
319
+ */
320
+ psa_status_t psa_validate_key_location(psa_key_lifetime_t lifetime,
321
+ psa_se_drv_table_entry_t **p_drv);
322
+
323
+ /** Validate the persistence of a key.
324
+ *
325
+ * \param[in] lifetime The key lifetime attribute.
326
+ *
327
+ * \retval #PSA_SUCCESS \emptydescription
328
+ * \retval #PSA_ERROR_NOT_SUPPORTED The key is persistent but persistent keys
329
+ * are not supported.
330
+ */
331
+ psa_status_t psa_validate_key_persistence(psa_key_lifetime_t lifetime);
332
+
333
+ /** Validate a key identifier.
334
+ *
335
+ * \param[in] key The key identifier.
336
+ * \param[in] vendor_ok Non-zero to indicate that key identifiers in the
337
+ * vendor range are allowed, volatile key identifiers
338
+ * excepted \c 0 otherwise.
339
+ *
340
+ * \retval <> 0 if the key identifier is valid, 0 otherwise.
341
+ */
342
+ int psa_is_valid_key_id(mbedtls_svc_key_id_t key, int vendor_ok);
343
+
344
+ #endif /* PSA_CRYPTO_SLOT_MANAGEMENT_H */