visaljs 0.0.2 → 0.0.4

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 (1243) hide show
  1. package/README.md +3 -1
  2. package/cli.js +545 -86
  3. package/node/include/js_node.h +30 -5
  4. package/node/include/js_uv.h +36 -0
  5. package/node/prelude/async_hooks.js +0 -0
  6. package/node/prelude/buffer.js +0 -0
  7. package/node/prelude/crypto.js +7 -10
  8. package/node/prelude/dns.js +99 -0
  9. package/node/prelude/dns_promises.js +10 -0
  10. package/node/prelude/events.js +0 -0
  11. package/node/prelude/fs.js +0 -0
  12. package/node/prelude/http.js +1039 -195
  13. package/node/prelude/http2.js +0 -0
  14. package/node/prelude/internal/crypto/asym.js +39 -12
  15. package/node/prelude/internal/crypto/cipher.js +0 -0
  16. package/node/prelude/internal/crypto/dh_groups.js +12 -0
  17. package/node/prelude/internal/crypto/diffiehellman.js +354 -0
  18. package/node/prelude/internal/crypto/hash.js +1 -1
  19. package/node/prelude/internal/crypto/kdf.js +0 -0
  20. package/node/prelude/internal/crypto/key_type.js +3 -0
  21. package/node/prelude/internal/crypto/keys.js +39 -9
  22. package/node/prelude/internal/crypto/random.js +0 -0
  23. package/node/prelude/internal/crypto/util.js +0 -0
  24. package/node/prelude/internal/errors.js +0 -0
  25. package/node/prelude/internal/http_agent.js +249 -0
  26. package/node/prelude/internal/net.js +33 -0
  27. package/node/prelude/internal/querystring.js +0 -0
  28. package/node/prelude/internal/socketaddress.js +249 -0
  29. package/node/prelude/internal/tls/common.js +306 -0
  30. package/node/prelude/internal/tls/wrap.js +1220 -0
  31. package/node/prelude/internal/tls/x509.js +394 -0
  32. package/node/prelude/module.js +0 -0
  33. package/node/prelude/net.js +1082 -50
  34. package/node/prelude/os.js +2 -2
  35. package/node/prelude/path.js +0 -0
  36. package/node/prelude/process.js +0 -0
  37. package/node/prelude/querystring.js +0 -0
  38. package/node/prelude/stream.js +6 -0
  39. package/node/prelude/stream_promises.js +0 -0
  40. package/node/prelude/stream_web.js +0 -0
  41. package/node/prelude/string_decoder.js +0 -0
  42. package/node/prelude/tls.js +141 -0
  43. package/node/prelude/tty.js +0 -0
  44. package/node/prelude/url.js +0 -0
  45. package/node/prelude/util.js +5 -2
  46. package/node/prelude/util_types.js +85 -0
  47. package/node/prelude/zlib.js +0 -0
  48. package/node/src/host_fs.c +10 -2
  49. package/node/src/host_http.c +268 -270
  50. package/node/src/host_loop.c +84 -0
  51. package/node/src/host_net.c +495 -0
  52. package/node/src/host_os.c +0 -0
  53. package/node/src/host_sys.c +54 -26
  54. package/node/third_party/libuv/LICENSE +0 -0
  55. package/node/third_party/libuv/include/uv/aix.h +0 -0
  56. package/node/third_party/libuv/include/uv/bsd.h +0 -0
  57. package/node/third_party/libuv/include/uv/darwin.h +0 -0
  58. package/node/third_party/libuv/include/uv/errno.h +0 -0
  59. package/node/third_party/libuv/include/uv/linux.h +0 -0
  60. package/node/third_party/libuv/include/uv/os390.h +0 -0
  61. package/node/third_party/libuv/include/uv/posix.h +0 -0
  62. package/node/third_party/libuv/include/uv/sunos.h +0 -0
  63. package/node/third_party/libuv/include/uv/threadpool.h +0 -0
  64. package/node/third_party/libuv/include/uv/tree.h +0 -0
  65. package/node/third_party/libuv/include/uv/unix.h +0 -0
  66. package/node/third_party/libuv/include/uv/version.h +0 -0
  67. package/node/third_party/libuv/include/uv/win.h +0 -0
  68. package/node/third_party/libuv/include/uv.h +0 -0
  69. package/node/third_party/libuv/src/fs-poll.c +0 -0
  70. package/node/third_party/libuv/src/heap-inl.h +0 -0
  71. package/node/third_party/libuv/src/idna.c +0 -0
  72. package/node/third_party/libuv/src/idna.h +0 -0
  73. package/node/third_party/libuv/src/inet.c +0 -0
  74. package/node/third_party/libuv/src/queue.h +0 -0
  75. package/node/third_party/libuv/src/random.c +0 -0
  76. package/node/third_party/libuv/src/strscpy.c +0 -0
  77. package/node/third_party/libuv/src/strscpy.h +0 -0
  78. package/node/third_party/libuv/src/strtok.c +0 -0
  79. package/node/third_party/libuv/src/strtok.h +0 -0
  80. package/node/third_party/libuv/src/thread-common.c +0 -0
  81. package/node/third_party/libuv/src/threadpool.c +0 -0
  82. package/node/third_party/libuv/src/timer.c +0 -0
  83. package/node/third_party/libuv/src/unix/async.c +0 -0
  84. package/node/third_party/libuv/src/unix/bsd-ifaddrs.c +0 -0
  85. package/node/third_party/libuv/src/unix/core.c +0 -0
  86. package/node/third_party/libuv/src/unix/darwin-proctitle.c +0 -0
  87. package/node/third_party/libuv/src/unix/darwin-stub.h +0 -0
  88. package/node/third_party/libuv/src/unix/darwin-syscalls.h +0 -0
  89. package/node/third_party/libuv/src/unix/darwin.c +0 -0
  90. package/node/third_party/libuv/src/unix/dl.c +0 -0
  91. package/node/third_party/libuv/src/unix/fs.c +0 -0
  92. package/node/third_party/libuv/src/unix/fsevents.c +0 -0
  93. package/node/third_party/libuv/src/unix/getaddrinfo.c +0 -0
  94. package/node/third_party/libuv/src/unix/getnameinfo.c +0 -0
  95. package/node/third_party/libuv/src/unix/internal.h +0 -0
  96. package/node/third_party/libuv/src/unix/kqueue.c +0 -0
  97. package/node/third_party/libuv/src/unix/linux.c +0 -0
  98. package/node/third_party/libuv/src/unix/loop-watcher.c +0 -0
  99. package/node/third_party/libuv/src/unix/loop.c +0 -0
  100. package/node/third_party/libuv/src/unix/pipe.c +0 -0
  101. package/node/third_party/libuv/src/unix/poll.c +0 -0
  102. package/node/third_party/libuv/src/unix/process.c +0 -0
  103. package/node/third_party/libuv/src/unix/procfs-exepath.c +0 -0
  104. package/node/third_party/libuv/src/unix/proctitle.c +0 -0
  105. package/node/third_party/libuv/src/unix/random-devurandom.c +0 -0
  106. package/node/third_party/libuv/src/unix/random-getentropy.c +0 -0
  107. package/node/third_party/libuv/src/unix/random-getrandom.c +0 -0
  108. package/node/third_party/libuv/src/unix/random-sysctl-linux.c +0 -0
  109. package/node/third_party/libuv/src/unix/signal.c +0 -0
  110. package/node/third_party/libuv/src/unix/stream.c +0 -0
  111. package/node/third_party/libuv/src/unix/tcp.c +0 -0
  112. package/node/third_party/libuv/src/unix/thread.c +0 -0
  113. package/node/third_party/libuv/src/unix/tty.c +0 -0
  114. package/node/third_party/libuv/src/unix/udp.c +0 -0
  115. package/node/third_party/libuv/src/uv-common.c +0 -0
  116. package/node/third_party/libuv/src/uv-common.h +0 -0
  117. package/node/third_party/libuv/src/uv-data-getter-setters.c +0 -0
  118. package/node/third_party/libuv/src/version.c +0 -0
  119. package/node/third_party/libuv/src/win/async.c +98 -0
  120. package/node/third_party/libuv/src/win/atomicops-inl.h +61 -0
  121. package/node/third_party/libuv/src/win/core.c +683 -0
  122. package/node/third_party/libuv/src/win/detect-wakeup.c +56 -0
  123. package/node/third_party/libuv/src/win/dl.c +135 -0
  124. package/node/third_party/libuv/src/win/error.c +183 -0
  125. package/node/third_party/libuv/src/win/fs-event.c +620 -0
  126. package/node/third_party/libuv/src/win/fs-fd-hash-inl.h +200 -0
  127. package/node/third_party/libuv/src/win/fs.c +3774 -0
  128. package/node/third_party/libuv/src/win/getaddrinfo.c +388 -0
  129. package/node/third_party/libuv/src/win/getnameinfo.c +146 -0
  130. package/node/third_party/libuv/src/win/handle-inl.h +180 -0
  131. package/node/third_party/libuv/src/win/handle.c +162 -0
  132. package/node/third_party/libuv/src/win/internal.h +335 -0
  133. package/node/third_party/libuv/src/win/loop-watcher.c +122 -0
  134. package/node/third_party/libuv/src/win/pipe.c +2725 -0
  135. package/node/third_party/libuv/src/win/poll.c +586 -0
  136. package/node/third_party/libuv/src/win/process-stdio.c +419 -0
  137. package/node/third_party/libuv/src/win/process.c +1407 -0
  138. package/node/third_party/libuv/src/win/req-inl.h +214 -0
  139. package/node/third_party/libuv/src/win/signal.c +282 -0
  140. package/node/third_party/libuv/src/win/snprintf.c +42 -0
  141. package/node/third_party/libuv/src/win/stream-inl.h +54 -0
  142. package/node/third_party/libuv/src/win/stream.c +252 -0
  143. package/node/third_party/libuv/src/win/tcp.c +1674 -0
  144. package/node/third_party/libuv/src/win/thread.c +568 -0
  145. package/node/third_party/libuv/src/win/tty.c +2460 -0
  146. package/node/third_party/libuv/src/win/udp.c +1162 -0
  147. package/node/third_party/libuv/src/win/util.c +1750 -0
  148. package/node/third_party/libuv/src/win/winapi.c +144 -0
  149. package/node/third_party/libuv/src/win/winapi.h +4831 -0
  150. package/node/third_party/libuv/src/win/winsock.c +575 -0
  151. package/node/third_party/libuv/src/win/winsock.h +160 -0
  152. package/node/third_party/llhttp/LICENSE +0 -0
  153. package/node/third_party/llhttp/api.c +0 -0
  154. package/node/third_party/llhttp/http.c +0 -0
  155. package/node/third_party/llhttp/llhttp.c +0 -0
  156. package/node/third_party/llhttp/llhttp.h +0 -0
  157. package/package.json +1 -1
  158. package/runtime/include/js_atoms.gen.h +0 -0
  159. package/runtime/include/js_atoms.h +0 -0
  160. package/runtime/include/js_bigint.h +0 -0
  161. package/runtime/include/js_buffer.h +0 -0
  162. package/runtime/include/js_builtins.h +16 -0
  163. package/runtime/include/js_console.h +2 -0
  164. package/runtime/include/js_convert.h +0 -0
  165. package/runtime/include/js_core.def +23 -0
  166. package/runtime/include/js_crypto.h +23 -0
  167. package/runtime/include/js_error.h +0 -0
  168. package/runtime/include/js_exception.h +0 -0
  169. package/runtime/include/js_function.h +0 -0
  170. package/runtime/include/js_gc.h +0 -0
  171. package/runtime/include/js_generator.h +2 -3
  172. package/runtime/include/js_host.h +0 -0
  173. package/runtime/include/js_jobs.h +0 -0
  174. package/runtime/include/js_module.h +0 -0
  175. package/runtime/include/js_object.h +0 -0
  176. package/runtime/include/js_ops.h +0 -0
  177. package/runtime/include/js_promise.h +0 -2
  178. package/runtime/include/js_regexp.h +0 -0
  179. package/runtime/include/js_runtime.h +0 -0
  180. package/runtime/include/js_symbol.h +0 -0
  181. package/runtime/include/js_web.h +0 -0
  182. package/runtime/include/jscell.h +0 -0
  183. package/runtime/include/jscontext.h +0 -0
  184. package/runtime/include/jsnum.h +0 -0
  185. package/runtime/include/jsstring.h +0 -0
  186. package/runtime/include/jsvalue.h +0 -0
  187. package/runtime/src/arguments.c +0 -0
  188. package/runtime/src/array.c +0 -0
  189. package/runtime/src/arraybuffer.c +0 -0
  190. package/runtime/src/async_iter.c +4 -1
  191. package/runtime/src/atoms.c +0 -0
  192. package/runtime/src/base64.c +0 -0
  193. package/runtime/src/bigint.c +0 -0
  194. package/runtime/src/blob.c +0 -0
  195. package/runtime/src/boringssl_support.cc +37 -0
  196. package/runtime/src/buffer.c +0 -0
  197. package/runtime/src/builtin_table.c +8 -0
  198. package/runtime/src/builtins.c +0 -0
  199. package/runtime/src/builtins_util.h +0 -0
  200. package/runtime/src/collections.c +0 -0
  201. package/runtime/src/components.c +10 -0
  202. package/runtime/src/console.c +6 -18
  203. package/runtime/src/convert.c +0 -0
  204. package/runtime/src/core_all.c +1 -0
  205. package/runtime/src/crypto.c +0 -0
  206. package/runtime/src/crypto_asym.c +450 -241
  207. package/runtime/src/crypto_bn.c +91 -0
  208. package/runtime/src/crypto_cipher.c +153 -75
  209. package/runtime/src/crypto_hash.c +68 -53
  210. package/runtime/src/crypto_host.c +0 -0
  211. package/runtime/src/crypto_internal.h +55 -26
  212. package/runtime/src/crypto_kdf.c +0 -0
  213. package/runtime/src/crypto_key.c +0 -0
  214. package/runtime/src/crypto_pkey.c +198 -61
  215. package/runtime/src/crypto_subtle.c +42 -16
  216. package/runtime/src/crypto_tls.c +678 -0
  217. package/runtime/src/date.c +0 -0
  218. package/runtime/src/domexception.c +0 -0
  219. package/runtime/src/elements.c +0 -0
  220. package/runtime/src/elements.h +0 -0
  221. package/runtime/src/encoding.c +0 -0
  222. package/runtime/src/error.c +0 -0
  223. package/runtime/src/events.c +0 -0
  224. package/runtime/src/exception.c +0 -0
  225. package/runtime/src/fetch.c +0 -0
  226. package/runtime/src/function.c +0 -0
  227. package/runtime/src/gc.c +0 -0
  228. package/runtime/src/generator.c +8 -1
  229. package/runtime/src/global.c +2 -4
  230. package/runtime/src/headers.c +0 -0
  231. package/runtime/src/inspect.c +0 -0
  232. package/runtime/src/internal.h +0 -1
  233. package/runtime/src/iterate.c +0 -0
  234. package/runtime/src/iterator.c +0 -0
  235. package/runtime/src/jobs.c +2 -1
  236. package/runtime/src/jsnum.c +0 -0
  237. package/runtime/src/json.c +0 -0
  238. package/runtime/src/math.c +0 -0
  239. package/runtime/src/module.c +0 -0
  240. package/runtime/src/number.c +0 -0
  241. package/runtime/src/object.c +0 -0
  242. package/runtime/src/ops.c +0 -0
  243. package/runtime/src/os.c +0 -0
  244. package/runtime/src/os.h +0 -0
  245. package/runtime/src/process.c +7 -0
  246. package/runtime/src/promise.c +4 -1
  247. package/runtime/src/proxy.c +0 -0
  248. package/runtime/src/reflect.c +0 -0
  249. package/runtime/src/regexp.c +0 -0
  250. package/runtime/src/regexp_anchor.h +0 -0
  251. package/runtime/src/regexp_message.h +0 -0
  252. package/runtime/src/shape.c +0 -0
  253. package/runtime/src/shape.h +0 -0
  254. package/runtime/src/streams.c +0 -0
  255. package/runtime/src/streams.h +0 -0
  256. package/runtime/src/string.c +0 -0
  257. package/runtime/src/string_builtins.c +0 -0
  258. package/runtime/src/symbol.c +0 -0
  259. package/runtime/src/test_host.c +0 -0
  260. package/runtime/src/tls_roots.gen.h +3215 -0
  261. package/runtime/src/typedarray.c +0 -0
  262. package/runtime/src/tznames.gen.h +0 -0
  263. package/runtime/src/uri.c +0 -0
  264. package/runtime/src/url.c +0 -0
  265. package/runtime/src/util_types.c +52 -0
  266. package/runtime/src/weak.c +2 -1
  267. package/runtime/src/web.c +0 -0
  268. package/runtime/src/wrapper.c +0 -0
  269. package/runtime/src/writable.c +0 -0
  270. package/runtime/third_party/ada-idna/LICENSE-MIT +0 -0
  271. package/runtime/third_party/ada-idna/README.md +0 -0
  272. package/runtime/third_party/ada-idna/convert.mjs +0 -0
  273. package/runtime/third_party/ada-idna/idna.c +0 -0
  274. package/runtime/third_party/ada-idna/idna.h +0 -0
  275. package/runtime/third_party/ada-idna/idna_tables.h +0 -0
  276. package/runtime/third_party/boringssl/LICENSE +238 -0
  277. package/runtime/third_party/boringssl/README.md +46 -0
  278. package/runtime/third_party/boringssl/VERSION +1 -0
  279. package/runtime/third_party/boringssl/crypto/aes/aes.cc +44 -0
  280. package/runtime/third_party/boringssl/crypto/armv8_feature_parsing.h +67 -0
  281. package/runtime/third_party/boringssl/crypto/asn1/a_bitstr.cc +297 -0
  282. package/runtime/third_party/boringssl/crypto/asn1/a_bool.cc +50 -0
  283. package/runtime/third_party/boringssl/crypto/asn1/a_d2i_fp.cc +47 -0
  284. package/runtime/third_party/boringssl/crypto/asn1/a_dup.cc +42 -0
  285. package/runtime/third_party/boringssl/crypto/asn1/a_gentm.cc +130 -0
  286. package/runtime/third_party/boringssl/crypto/asn1/a_i2d_fp.cc +44 -0
  287. package/runtime/third_party/boringssl/crypto/asn1/a_int.cc +467 -0
  288. package/runtime/third_party/boringssl/crypto/asn1/a_mbstr.cc +242 -0
  289. package/runtime/third_party/boringssl/crypto/asn1/a_object.cc +191 -0
  290. package/runtime/third_party/boringssl/crypto/asn1/a_octet.cc +32 -0
  291. package/runtime/third_party/boringssl/crypto/asn1/a_strex.cc +411 -0
  292. package/runtime/third_party/boringssl/crypto/asn1/a_strnid.cc +208 -0
  293. package/runtime/third_party/boringssl/crypto/asn1/a_time.cc +248 -0
  294. package/runtime/third_party/boringssl/crypto/asn1/a_type.cc +467 -0
  295. package/runtime/third_party/boringssl/crypto/asn1/a_utctm.cc +128 -0
  296. package/runtime/third_party/boringssl/crypto/asn1/asn1_lib.cc +453 -0
  297. package/runtime/third_party/boringssl/crypto/asn1/asn1_par.cc +61 -0
  298. package/runtime/third_party/boringssl/crypto/asn1/asn_pack.cc +56 -0
  299. package/runtime/third_party/boringssl/crypto/asn1/f_int.cc +63 -0
  300. package/runtime/third_party/boringssl/crypto/asn1/f_string.cc +52 -0
  301. package/runtime/third_party/boringssl/crypto/asn1/internal.h +430 -0
  302. package/runtime/third_party/boringssl/crypto/asn1/posix_time.cc +244 -0
  303. package/runtime/third_party/boringssl/crypto/asn1/tasn_dec.cc +611 -0
  304. package/runtime/third_party/boringssl/crypto/asn1/tasn_enc.cc +348 -0
  305. package/runtime/third_party/boringssl/crypto/asn1/tasn_fre.cc +163 -0
  306. package/runtime/third_party/boringssl/crypto/asn1/tasn_new.cc +274 -0
  307. package/runtime/third_party/boringssl/crypto/asn1/tasn_typ.cc +92 -0
  308. package/runtime/third_party/boringssl/crypto/asn1/tasn_utl.cc +218 -0
  309. package/runtime/third_party/boringssl/crypto/base64/base64.cc +433 -0
  310. package/runtime/third_party/boringssl/crypto/bcm_support.h +62 -0
  311. package/runtime/third_party/boringssl/crypto/bio/bio.cc +715 -0
  312. package/runtime/third_party/boringssl/crypto/bio/bio_mem.cc +260 -0
  313. package/runtime/third_party/boringssl/crypto/bio/connect.cc +463 -0
  314. package/runtime/third_party/boringssl/crypto/bio/errno.cc +52 -0
  315. package/runtime/third_party/boringssl/crypto/bio/fd.cc +193 -0
  316. package/runtime/third_party/boringssl/crypto/bio/file.cc +283 -0
  317. package/runtime/third_party/boringssl/crypto/bio/hexdump.cc +154 -0
  318. package/runtime/third_party/boringssl/crypto/bio/internal.h +128 -0
  319. package/runtime/third_party/boringssl/crypto/bio/pair.cc +426 -0
  320. package/runtime/third_party/boringssl/crypto/bio/printf.cc +59 -0
  321. package/runtime/third_party/boringssl/crypto/bio/socket.cc +210 -0
  322. package/runtime/third_party/boringssl/crypto/bio/socket_helper.cc +179 -0
  323. package/runtime/third_party/boringssl/crypto/blake2/blake2.cc +173 -0
  324. package/runtime/third_party/boringssl/crypto/bn/bn_asn1.cc +57 -0
  325. package/runtime/third_party/boringssl/crypto/bn/convert.cc +409 -0
  326. package/runtime/third_party/boringssl/crypto/bn/div.cc +102 -0
  327. package/runtime/third_party/boringssl/crypto/bn/exponentiation.cc +168 -0
  328. package/runtime/third_party/boringssl/crypto/bn/sqrt.cc +93 -0
  329. package/runtime/third_party/boringssl/crypto/buf/buf.cc +119 -0
  330. package/runtime/third_party/boringssl/crypto/bytestring/asn1_compat.cc +54 -0
  331. package/runtime/third_party/boringssl/crypto/bytestring/ber.cc +268 -0
  332. package/runtime/third_party/boringssl/crypto/bytestring/cbb.cc +787 -0
  333. package/runtime/third_party/boringssl/crypto/bytestring/cbs.cc +977 -0
  334. package/runtime/third_party/boringssl/crypto/bytestring/internal.h +134 -0
  335. package/runtime/third_party/boringssl/crypto/bytestring/unicode.cc +156 -0
  336. package/runtime/third_party/boringssl/crypto/chacha/chacha.cc +226 -0
  337. package/runtime/third_party/boringssl/crypto/chacha/internal.h +103 -0
  338. package/runtime/third_party/boringssl/crypto/cipher/derive_key.cc +106 -0
  339. package/runtime/third_party/boringssl/crypto/cipher/e_aesctrhmac.cc +294 -0
  340. package/runtime/third_party/boringssl/crypto/cipher/e_aeseax.cc +351 -0
  341. package/runtime/third_party/boringssl/crypto/cipher/e_aesgcmsiv.cc +918 -0
  342. package/runtime/third_party/boringssl/crypto/cipher/e_chacha20poly1305.cc +404 -0
  343. package/runtime/third_party/boringssl/crypto/cipher/e_des.cc +214 -0
  344. package/runtime/third_party/boringssl/crypto/cipher/e_null.cc +55 -0
  345. package/runtime/third_party/boringssl/crypto/cipher/e_rc2.cc +432 -0
  346. package/runtime/third_party/boringssl/crypto/cipher/e_rc4.cc +56 -0
  347. package/runtime/third_party/boringssl/crypto/cipher/e_tls.cc +615 -0
  348. package/runtime/third_party/boringssl/crypto/cipher/get_cipher.cc +85 -0
  349. package/runtime/third_party/boringssl/crypto/cipher/internal.h +399 -0
  350. package/runtime/third_party/boringssl/crypto/cipher/tls_cbc.cc +476 -0
  351. package/runtime/third_party/boringssl/crypto/cms/cms.cc +178 -0
  352. package/runtime/third_party/boringssl/crypto/conf/conf.cc +637 -0
  353. package/runtime/third_party/boringssl/crypto/conf/internal.h +54 -0
  354. package/runtime/third_party/boringssl/crypto/cpu_aarch64_apple.cc +76 -0
  355. package/runtime/third_party/boringssl/crypto/cpu_aarch64_fuchsia.cc +58 -0
  356. package/runtime/third_party/boringssl/crypto/cpu_aarch64_linux.cc +66 -0
  357. package/runtime/third_party/boringssl/crypto/cpu_aarch64_openbsd.cc +45 -0
  358. package/runtime/third_party/boringssl/crypto/cpu_aarch64_sysreg.cc +66 -0
  359. package/runtime/third_party/boringssl/crypto/cpu_aarch64_win.cc +52 -0
  360. package/runtime/third_party/boringssl/crypto/cpu_arm_freebsd.cc +55 -0
  361. package/runtime/third_party/boringssl/crypto/cpu_arm_linux.cc +173 -0
  362. package/runtime/third_party/boringssl/crypto/cpu_arm_linux.h +141 -0
  363. package/runtime/third_party/boringssl/crypto/cpu_intel.cc +287 -0
  364. package/runtime/third_party/boringssl/crypto/crypto.cc +152 -0
  365. package/runtime/third_party/boringssl/crypto/curve25519/asm/x25519-asm-arm.S +2124 -0
  366. package/runtime/third_party/boringssl/crypto/curve25519/cpace.cc +227 -0
  367. package/runtime/third_party/boringssl/crypto/curve25519/curve25519.cc +2436 -0
  368. package/runtime/third_party/boringssl/crypto/curve25519/curve25519_64_adx.cc +18 -0
  369. package/runtime/third_party/boringssl/crypto/curve25519/curve25519_tables.h +3264 -0
  370. package/runtime/third_party/boringssl/crypto/curve25519/internal.h +202 -0
  371. package/runtime/third_party/boringssl/crypto/curve25519/spake25519.cc +532 -0
  372. package/runtime/third_party/boringssl/crypto/des/des.cc +837 -0
  373. package/runtime/third_party/boringssl/crypto/des/internal.h +144 -0
  374. package/runtime/third_party/boringssl/crypto/dh/dh_asn1.cc +109 -0
  375. package/runtime/third_party/boringssl/crypto/dh/params.cc +411 -0
  376. package/runtime/third_party/boringssl/crypto/digest/digest_extra.cc +361 -0
  377. package/runtime/third_party/boringssl/crypto/dsa/dsa.cc +922 -0
  378. package/runtime/third_party/boringssl/crypto/dsa/dsa_asn1.cc +306 -0
  379. package/runtime/third_party/boringssl/crypto/dsa/internal.h +56 -0
  380. package/runtime/third_party/boringssl/crypto/ec/ec_asn1.cc +542 -0
  381. package/runtime/third_party/boringssl/crypto/ec/ec_derive.cc +94 -0
  382. package/runtime/third_party/boringssl/crypto/ec/hash_to_curve.cc +773 -0
  383. package/runtime/third_party/boringssl/crypto/ec/internal.h +114 -0
  384. package/runtime/third_party/boringssl/crypto/ecdh/ecdh.cc +75 -0
  385. package/runtime/third_party/boringssl/crypto/ecdsa/ecdsa_asn1.cc +337 -0
  386. package/runtime/third_party/boringssl/crypto/ecdsa/ecdsa_p1363.cc +54 -0
  387. package/runtime/third_party/boringssl/crypto/engine/engine.cc +95 -0
  388. package/runtime/third_party/boringssl/crypto/err/err.cc +820 -0
  389. package/runtime/third_party/boringssl/crypto/err/internal.h +45 -0
  390. package/runtime/third_party/boringssl/crypto/evp/evp.cc +454 -0
  391. package/runtime/third_party/boringssl/crypto/evp/evp_asn1.cc +439 -0
  392. package/runtime/third_party/boringssl/crypto/evp/evp_ctx.cc +541 -0
  393. package/runtime/third_party/boringssl/crypto/evp/evp_kem.cc +101 -0
  394. package/runtime/third_party/boringssl/crypto/evp/internal.h +427 -0
  395. package/runtime/third_party/boringssl/crypto/evp/p_dh.cc +326 -0
  396. package/runtime/third_party/boringssl/crypto/evp/p_dsa.cc +333 -0
  397. package/runtime/third_party/boringssl/crypto/evp/p_ec.cc +736 -0
  398. package/runtime/third_party/boringssl/crypto/evp/p_ed25519.cc +359 -0
  399. package/runtime/third_party/boringssl/crypto/evp/p_hkdf.cc +204 -0
  400. package/runtime/third_party/boringssl/crypto/evp/p_mldsa.cc +549 -0
  401. package/runtime/third_party/boringssl/crypto/evp/p_mlkem.cc +510 -0
  402. package/runtime/third_party/boringssl/crypto/evp/p_rsa.cc +1185 -0
  403. package/runtime/third_party/boringssl/crypto/evp/p_x25519.cc +371 -0
  404. package/runtime/third_party/boringssl/crypto/evp/p_xwing.cc +300 -0
  405. package/runtime/third_party/boringssl/crypto/evp/pbkdf.cc +105 -0
  406. package/runtime/third_party/boringssl/crypto/evp/print.cc +287 -0
  407. package/runtime/third_party/boringssl/crypto/evp/scrypt.cc +218 -0
  408. package/runtime/third_party/boringssl/crypto/evp/sign.cc +95 -0
  409. package/runtime/third_party/boringssl/crypto/ex_data.cc +140 -0
  410. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/aes.cc.inc +208 -0
  411. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/aes_nohw.cc.inc +1279 -0
  412. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/cbc.cc.inc +132 -0
  413. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/cfb.cc.inc +168 -0
  414. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/ctr.cc.inc +102 -0
  415. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/gcm.cc.inc +614 -0
  416. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/gcm_nohw.cc.inc +304 -0
  417. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/internal.h +590 -0
  418. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/key_wrap.cc.inc +211 -0
  419. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/mode_wrappers.cc.inc +97 -0
  420. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/ofb.cc.inc +55 -0
  421. package/runtime/third_party/boringssl/crypto/fipsmodule/bcm.cc +288 -0
  422. package/runtime/third_party/boringssl/crypto/fipsmodule/bcm_interface.h +953 -0
  423. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/add.cc.inc +276 -0
  424. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/asm/x86_64-gcc.cc.inc +573 -0
  425. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/bn.cc.inc +377 -0
  426. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/bytes.cc.inc +230 -0
  427. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/cmp.cc.inc +161 -0
  428. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/ctx.cc.inc +127 -0
  429. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/div.cc.inc +738 -0
  430. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/div_extra.cc.inc +90 -0
  431. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/exponentiation.cc.inc +743 -0
  432. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/gcd.cc.inc +281 -0
  433. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/gcd_extra.cc.inc +327 -0
  434. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/generic.cc.inc +579 -0
  435. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/internal.h +810 -0
  436. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/jacobi.cc.inc +101 -0
  437. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/montgomery.cc.inc +408 -0
  438. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/montgomery_inv.cc.inc +179 -0
  439. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/mul.cc.inc +347 -0
  440. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/prime.cc.inc +931 -0
  441. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/random.cc.inc +261 -0
  442. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/rsaz_exp.cc.inc +144 -0
  443. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/rsaz_exp.h +109 -0
  444. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/shift.cc.inc +317 -0
  445. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/sqrt.cc.inc +370 -0
  446. package/runtime/third_party/boringssl/crypto/fipsmodule/cipher/aead.cc.inc +619 -0
  447. package/runtime/third_party/boringssl/crypto/fipsmodule/cipher/cipher.cc.inc +837 -0
  448. package/runtime/third_party/boringssl/crypto/fipsmodule/cipher/e_aes.cc.inc +1240 -0
  449. package/runtime/third_party/boringssl/crypto/fipsmodule/cipher/e_aesccm.cc.inc +440 -0
  450. package/runtime/third_party/boringssl/crypto/fipsmodule/cipher/internal.h +461 -0
  451. package/runtime/third_party/boringssl/crypto/fipsmodule/cmac/cmac.cc.inc +293 -0
  452. package/runtime/third_party/boringssl/crypto/fipsmodule/delocate.h +95 -0
  453. package/runtime/third_party/boringssl/crypto/fipsmodule/dh/check.cc.inc +198 -0
  454. package/runtime/third_party/boringssl/crypto/fipsmodule/dh/dh.cc.inc +401 -0
  455. package/runtime/third_party/boringssl/crypto/fipsmodule/dh/internal.h +63 -0
  456. package/runtime/third_party/boringssl/crypto/fipsmodule/digest/digest.cc.inc +221 -0
  457. package/runtime/third_party/boringssl/crypto/fipsmodule/digest/digests.cc.inc +184 -0
  458. package/runtime/third_party/boringssl/crypto/fipsmodule/digest/internal.h +72 -0
  459. package/runtime/third_party/boringssl/crypto/fipsmodule/digest/md32_common.h +166 -0
  460. package/runtime/third_party/boringssl/crypto/fipsmodule/digestsign/digestsign.cc.inc +230 -0
  461. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/builtin_curves.h +277 -0
  462. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/ec.cc.inc +1024 -0
  463. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/ec_key.cc.inc +536 -0
  464. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/ec_montgomery.cc.inc +379 -0
  465. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/felem.cc.inc +250 -0
  466. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/internal.h +752 -0
  467. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/oct.cc.inc +174 -0
  468. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/p256-nistz-table.h +9502 -0
  469. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/p256-nistz.cc.inc +740 -0
  470. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/p256-nistz.h +207 -0
  471. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/p256.cc.inc +578 -0
  472. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/p256_table.h +297 -0
  473. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/scalar.cc.inc +184 -0
  474. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/simple.cc.inc +246 -0
  475. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/simple_mul.cc.inc +274 -0
  476. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/util.cc.inc +258 -0
  477. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/wnaf.cc.inc +224 -0
  478. package/runtime/third_party/boringssl/crypto/fipsmodule/ecdh/ecdh.cc.inc +91 -0
  479. package/runtime/third_party/boringssl/crypto/fipsmodule/ecdsa/ecdsa.cc.inc +288 -0
  480. package/runtime/third_party/boringssl/crypto/fipsmodule/ecdsa/internal.h +57 -0
  481. package/runtime/third_party/boringssl/crypto/fipsmodule/entropy/internal.h +38 -0
  482. package/runtime/third_party/boringssl/crypto/fipsmodule/entropy/jitter.cc.inc +487 -0
  483. package/runtime/third_party/boringssl/crypto/fipsmodule/entropy/sha512.cc.inc +329 -0
  484. package/runtime/third_party/boringssl/crypto/fipsmodule/fips_shared_support.cc +28 -0
  485. package/runtime/third_party/boringssl/crypto/fipsmodule/hkdf/hkdf.cc.inc +114 -0
  486. package/runtime/third_party/boringssl/crypto/fipsmodule/hmac/hmac.cc.inc +218 -0
  487. package/runtime/third_party/boringssl/crypto/fipsmodule/keccak/internal.h +165 -0
  488. package/runtime/third_party/boringssl/crypto/fipsmodule/keccak/keccak.cc.inc +647 -0
  489. package/runtime/third_party/boringssl/crypto/fipsmodule/mldsa/fips_known_values.inc +1345 -0
  490. package/runtime/third_party/boringssl/crypto/fipsmodule/mldsa/mldsa.cc.inc +3323 -0
  491. package/runtime/third_party/boringssl/crypto/fipsmodule/mlkem/fips_known_values.inc +411 -0
  492. package/runtime/third_party/boringssl/crypto/fipsmodule/mlkem/mlkem.cc.inc +1856 -0
  493. package/runtime/third_party/boringssl/crypto/fipsmodule/rand/android_entropy_client.cc.inc +82 -0
  494. package/runtime/third_party/boringssl/crypto/fipsmodule/rand/ctrdrbg.cc.inc +401 -0
  495. package/runtime/third_party/boringssl/crypto/fipsmodule/rand/internal.h +99 -0
  496. package/runtime/third_party/boringssl/crypto/fipsmodule/rand/rand.cc.inc +486 -0
  497. package/runtime/third_party/boringssl/crypto/fipsmodule/rsa/internal.h +167 -0
  498. package/runtime/third_party/boringssl/crypto/fipsmodule/rsa/padding.cc.inc +371 -0
  499. package/runtime/third_party/boringssl/crypto/fipsmodule/rsa/rsa.cc.inc +996 -0
  500. package/runtime/third_party/boringssl/crypto/fipsmodule/rsa/rsa_impl.cc.inc +1000 -0
  501. package/runtime/third_party/boringssl/crypto/fipsmodule/self_check/fips.cc.inc +129 -0
  502. package/runtime/third_party/boringssl/crypto/fipsmodule/self_check/self_check.cc.inc +1093 -0
  503. package/runtime/third_party/boringssl/crypto/fipsmodule/service_indicator/internal.h +112 -0
  504. package/runtime/third_party/boringssl/crypto/fipsmodule/service_indicator/service_indicator.cc.inc +330 -0
  505. package/runtime/third_party/boringssl/crypto/fipsmodule/sha/internal.h +205 -0
  506. package/runtime/third_party/boringssl/crypto/fipsmodule/sha/sha1.cc.inc +404 -0
  507. package/runtime/third_party/boringssl/crypto/fipsmodule/sha/sha256.cc.inc +315 -0
  508. package/runtime/third_party/boringssl/crypto/fipsmodule/sha/sha512.cc.inc +473 -0
  509. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/address.h +144 -0
  510. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/fips_known_values.inc +674 -0
  511. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/fors.cc.inc +179 -0
  512. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/fors.h +48 -0
  513. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/merkle.cc.inc +164 -0
  514. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/merkle.h +58 -0
  515. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/params.h +178 -0
  516. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/slhdsa.cc.inc +690 -0
  517. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/thash.cc.inc +326 -0
  518. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/thash.h +71 -0
  519. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/wots.cc.inc +172 -0
  520. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/wots.h +40 -0
  521. package/runtime/third_party/boringssl/crypto/fipsmodule/tls/internal.h +33 -0
  522. package/runtime/third_party/boringssl/crypto/fipsmodule/tls/kdf.cc.inc +180 -0
  523. package/runtime/third_party/boringssl/crypto/fuzzer_mode.cc +30 -0
  524. package/runtime/third_party/boringssl/crypto/hpke/hpke.cc +1514 -0
  525. package/runtime/third_party/boringssl/crypto/hrss/asm/poly_rq_mul.S +8489 -0
  526. package/runtime/third_party/boringssl/crypto/hrss/hrss.cc +2189 -0
  527. package/runtime/third_party/boringssl/crypto/hrss/internal.h +64 -0
  528. package/runtime/third_party/boringssl/crypto/internal.h +1767 -0
  529. package/runtime/third_party/boringssl/crypto/lhash/internal.h +222 -0
  530. package/runtime/third_party/boringssl/crypto/lhash/lhash.cc +312 -0
  531. package/runtime/third_party/boringssl/crypto/md4/md4.cc +207 -0
  532. package/runtime/third_party/boringssl/crypto/md5/internal.h +34 -0
  533. package/runtime/third_party/boringssl/crypto/md5/md5.cc +255 -0
  534. package/runtime/third_party/boringssl/crypto/mem.cc +577 -0
  535. package/runtime/third_party/boringssl/crypto/mem_internal.h +706 -0
  536. package/runtime/third_party/boringssl/crypto/mldsa/mldsa.cc +296 -0
  537. package/runtime/third_party/boringssl/crypto/mlkem/mlkem.cc +108 -0
  538. package/runtime/third_party/boringssl/crypto/obj/obj.cc +494 -0
  539. package/runtime/third_party/boringssl/crypto/obj/obj_dat.h +11722 -0
  540. package/runtime/third_party/boringssl/crypto/obj/obj_xref.cc +83 -0
  541. package/runtime/third_party/boringssl/crypto/params_internal.h +30 -0
  542. package/runtime/third_party/boringssl/crypto/pem/internal.h +135 -0
  543. package/runtime/third_party/boringssl/crypto/pem/pem_all.cc +153 -0
  544. package/runtime/third_party/boringssl/crypto/pem/pem_info.cc +250 -0
  545. package/runtime/third_party/boringssl/crypto/pem/pem_lib.cc +707 -0
  546. package/runtime/third_party/boringssl/crypto/pem/pem_oth.cc +45 -0
  547. package/runtime/third_party/boringssl/crypto/pem/pem_pk8.cc +211 -0
  548. package/runtime/third_party/boringssl/crypto/pem/pem_pkey.cc +147 -0
  549. package/runtime/third_party/boringssl/crypto/pem/pem_x509.cc +25 -0
  550. package/runtime/third_party/boringssl/crypto/pem/pem_xaux.cc +25 -0
  551. package/runtime/third_party/boringssl/crypto/pkcs7/internal.h +67 -0
  552. package/runtime/third_party/boringssl/crypto/pkcs7/pkcs7.cc +198 -0
  553. package/runtime/third_party/boringssl/crypto/pkcs7/pkcs7_x509.cc +527 -0
  554. package/runtime/third_party/boringssl/crypto/pkcs8/internal.h +98 -0
  555. package/runtime/third_party/boringssl/crypto/pkcs8/p5_pbev2.cc +286 -0
  556. package/runtime/third_party/boringssl/crypto/pkcs8/pkcs8.cc +473 -0
  557. package/runtime/third_party/boringssl/crypto/pkcs8/pkcs8_x509.cc +1328 -0
  558. package/runtime/third_party/boringssl/crypto/poly1305/internal.h +54 -0
  559. package/runtime/third_party/boringssl/crypto/poly1305/poly1305.cc +315 -0
  560. package/runtime/third_party/boringssl/crypto/poly1305/poly1305_arm.cc +294 -0
  561. package/runtime/third_party/boringssl/crypto/poly1305/poly1305_arm_asm.S +2017 -0
  562. package/runtime/third_party/boringssl/crypto/poly1305/poly1305_vec.cc +853 -0
  563. package/runtime/third_party/boringssl/crypto/pool/internal.h +95 -0
  564. package/runtime/third_party/boringssl/crypto/pool/pool.cc +282 -0
  565. package/runtime/third_party/boringssl/crypto/rand/deterministic.cc +58 -0
  566. package/runtime/third_party/boringssl/crypto/rand/fork_detect.cc +222 -0
  567. package/runtime/third_party/boringssl/crypto/rand/forkunsafe.cc +44 -0
  568. package/runtime/third_party/boringssl/crypto/rand/getentropy.cc +53 -0
  569. package/runtime/third_party/boringssl/crypto/rand/internal.h +67 -0
  570. package/runtime/third_party/boringssl/crypto/rand/ios.cc +35 -0
  571. package/runtime/third_party/boringssl/crypto/rand/rand.cc +79 -0
  572. package/runtime/third_party/boringssl/crypto/rand/trusty.cc +39 -0
  573. package/runtime/third_party/boringssl/crypto/rand/urandom.cc +149 -0
  574. package/runtime/third_party/boringssl/crypto/rand/windows.cc +91 -0
  575. package/runtime/third_party/boringssl/crypto/rc4/rc4.cc +56 -0
  576. package/runtime/third_party/boringssl/crypto/refcount.cc +49 -0
  577. package/runtime/third_party/boringssl/crypto/rsa/internal.h +51 -0
  578. package/runtime/third_party/boringssl/crypto/rsa/rsa_asn1.cc +404 -0
  579. package/runtime/third_party/boringssl/crypto/rsa/rsa_crypt.cc +530 -0
  580. package/runtime/third_party/boringssl/crypto/rsa/rsa_extra.cc +30 -0
  581. package/runtime/third_party/boringssl/crypto/rsa/rsa_print.cc +25 -0
  582. package/runtime/third_party/boringssl/crypto/sha/sha1.cc +55 -0
  583. package/runtime/third_party/boringssl/crypto/sha/sha256.cc +89 -0
  584. package/runtime/third_party/boringssl/crypto/sha/sha512.cc +106 -0
  585. package/runtime/third_party/boringssl/crypto/siphash/siphash.cc +81 -0
  586. package/runtime/third_party/boringssl/crypto/slhdsa/slhdsa.cc +167 -0
  587. package/runtime/third_party/boringssl/crypto/spake2plus/internal.h +204 -0
  588. package/runtime/third_party/boringssl/crypto/spake2plus/spake2plus.cc +501 -0
  589. package/runtime/third_party/boringssl/crypto/stack/stack.cc +462 -0
  590. package/runtime/third_party/boringssl/crypto/thread.cc +68 -0
  591. package/runtime/third_party/boringssl/crypto/thread_none.cc +48 -0
  592. package/runtime/third_party/boringssl/crypto/thread_pthread.cc +138 -0
  593. package/runtime/third_party/boringssl/crypto/thread_win.cc +227 -0
  594. package/runtime/third_party/boringssl/crypto/trust_token/internal.h +405 -0
  595. package/runtime/third_party/boringssl/crypto/trust_token/pmbtoken.cc +1672 -0
  596. package/runtime/third_party/boringssl/crypto/trust_token/trust_token.cc +701 -0
  597. package/runtime/third_party/boringssl/crypto/trust_token/voprf.cc +1266 -0
  598. package/runtime/third_party/boringssl/crypto/x509/a_digest.cc +52 -0
  599. package/runtime/third_party/boringssl/crypto/x509/a_sign.cc +100 -0
  600. package/runtime/third_party/boringssl/crypto/x509/a_verify.cc +77 -0
  601. package/runtime/third_party/boringssl/crypto/x509/algorithm.cc +167 -0
  602. package/runtime/third_party/boringssl/crypto/x509/asn1_gen.cc +540 -0
  603. package/runtime/third_party/boringssl/crypto/x509/by_dir.cc +301 -0
  604. package/runtime/third_party/boringssl/crypto/x509/by_file.cc +226 -0
  605. package/runtime/third_party/boringssl/crypto/x509/i2d_pr.cc +37 -0
  606. package/runtime/third_party/boringssl/crypto/x509/internal.h +697 -0
  607. package/runtime/third_party/boringssl/crypto/x509/name_print.cc +187 -0
  608. package/runtime/third_party/boringssl/crypto/x509/policy.cc +686 -0
  609. package/runtime/third_party/boringssl/crypto/x509/rsa_pss.cc +187 -0
  610. package/runtime/third_party/boringssl/crypto/x509/t_crl.cc +106 -0
  611. package/runtime/third_party/boringssl/crypto/x509/t_req.cc +206 -0
  612. package/runtime/third_party/boringssl/crypto/x509/t_x509.cc +292 -0
  613. package/runtime/third_party/boringssl/crypto/x509/t_x509a.cc +81 -0
  614. package/runtime/third_party/boringssl/crypto/x509/v3_akey.cc +174 -0
  615. package/runtime/third_party/boringssl/crypto/x509/v3_akeya.cc +31 -0
  616. package/runtime/third_party/boringssl/crypto/x509/v3_alt.cc +636 -0
  617. package/runtime/third_party/boringssl/crypto/x509/v3_bcons.cc +96 -0
  618. package/runtime/third_party/boringssl/crypto/x509/v3_bitst.cc +100 -0
  619. package/runtime/third_party/boringssl/crypto/x509/v3_conf.cc +369 -0
  620. package/runtime/third_party/boringssl/crypto/x509/v3_cpols.cc +417 -0
  621. package/runtime/third_party/boringssl/crypto/x509/v3_crld.cc +471 -0
  622. package/runtime/third_party/boringssl/crypto/x509/v3_enum.cc +74 -0
  623. package/runtime/third_party/boringssl/crypto/x509/v3_extku.cc +97 -0
  624. package/runtime/third_party/boringssl/crypto/x509/v3_genn.cc +238 -0
  625. package/runtime/third_party/boringssl/crypto/x509/v3_ia5.cc +83 -0
  626. package/runtime/third_party/boringssl/crypto/x509/v3_info.cc +162 -0
  627. package/runtime/third_party/boringssl/crypto/x509/v3_int.cc +83 -0
  628. package/runtime/third_party/boringssl/crypto/x509/v3_lib.cc +349 -0
  629. package/runtime/third_party/boringssl/crypto/x509/v3_ncons.cc +798 -0
  630. package/runtime/third_party/boringssl/crypto/x509/v3_ocsp.cc +92 -0
  631. package/runtime/third_party/boringssl/crypto/x509/v3_pcons.cc +102 -0
  632. package/runtime/third_party/boringssl/crypto/x509/v3_pmaps.cc +110 -0
  633. package/runtime/third_party/boringssl/crypto/x509/v3_prn.cc +183 -0
  634. package/runtime/third_party/boringssl/crypto/x509/v3_purp.cc +580 -0
  635. package/runtime/third_party/boringssl/crypto/x509/v3_skey.cc +128 -0
  636. package/runtime/third_party/boringssl/crypto/x509/v3_utl.cc +1311 -0
  637. package/runtime/third_party/boringssl/crypto/x509/x509.cc +47 -0
  638. package/runtime/third_party/boringssl/crypto/x509/x509_att.cc +188 -0
  639. package/runtime/third_party/boringssl/crypto/x509/x509_cmp.cc +243 -0
  640. package/runtime/third_party/boringssl/crypto/x509/x509_d2.cc +66 -0
  641. package/runtime/third_party/boringssl/crypto/x509/x509_def.cc +42 -0
  642. package/runtime/third_party/boringssl/crypto/x509/x509_ext.cc +161 -0
  643. package/runtime/third_party/boringssl/crypto/x509/x509_lu.cc +570 -0
  644. package/runtime/third_party/boringssl/crypto/x509/x509_mtc.cc +598 -0
  645. package/runtime/third_party/boringssl/crypto/x509/x509_obj.cc +169 -0
  646. package/runtime/third_party/boringssl/crypto/x509/x509_req.cc +248 -0
  647. package/runtime/third_party/boringssl/crypto/x509/x509_set.cc +166 -0
  648. package/runtime/third_party/boringssl/crypto/x509/x509_trs.cc +123 -0
  649. package/runtime/third_party/boringssl/crypto/x509/x509_txt.cc +147 -0
  650. package/runtime/third_party/boringssl/crypto/x509/x509_v3.cc +249 -0
  651. package/runtime/third_party/boringssl/crypto/x509/x509_vfy.cc +1531 -0
  652. package/runtime/third_party/boringssl/crypto/x509/x509_vpm.cc +449 -0
  653. package/runtime/third_party/boringssl/crypto/x509/x509cset.cc +222 -0
  654. package/runtime/third_party/boringssl/crypto/x509/x509name.cc +377 -0
  655. package/runtime/third_party/boringssl/crypto/x509/x509rset.cc +55 -0
  656. package/runtime/third_party/boringssl/crypto/x509/x509spki.cc +91 -0
  657. package/runtime/third_party/boringssl/crypto/x509/x_algor.cc +223 -0
  658. package/runtime/third_party/boringssl/crypto/x509/x_all.cc +352 -0
  659. package/runtime/third_party/boringssl/crypto/x509/x_attrib.cc +61 -0
  660. package/runtime/third_party/boringssl/crypto/x509/x_crl.cc +325 -0
  661. package/runtime/third_party/boringssl/crypto/x509/x_exten.cc +42 -0
  662. package/runtime/third_party/boringssl/crypto/x509/x_name.cc +407 -0
  663. package/runtime/third_party/boringssl/crypto/x509/x_pubkey.cc +199 -0
  664. package/runtime/third_party/boringssl/crypto/x509/x_req.cc +80 -0
  665. package/runtime/third_party/boringssl/crypto/x509/x_sig.cc +51 -0
  666. package/runtime/third_party/boringssl/crypto/x509/x_spki.cc +44 -0
  667. package/runtime/third_party/boringssl/crypto/x509/x_x509.cc +495 -0
  668. package/runtime/third_party/boringssl/crypto/x509/x_x509a.cc +169 -0
  669. package/runtime/third_party/boringssl/crypto/xwing/xwing.cc +257 -0
  670. package/runtime/third_party/boringssl/gen/bcm/aes-gcm-avx2-x86_64-apple.S +1326 -0
  671. package/runtime/third_party/boringssl/gen/bcm/aes-gcm-avx2-x86_64-linux.S +1327 -0
  672. package/runtime/third_party/boringssl/gen/bcm/aes-gcm-avx512-x86_64-apple.S +1252 -0
  673. package/runtime/third_party/boringssl/gen/bcm/aes-gcm-avx512-x86_64-linux.S +1253 -0
  674. package/runtime/third_party/boringssl/gen/bcm/aesni-gcm-x86_64-apple.S +873 -0
  675. package/runtime/third_party/boringssl/gen/bcm/aesni-gcm-x86_64-linux.S +885 -0
  676. package/runtime/third_party/boringssl/gen/bcm/aesni-x86-apple.S +2490 -0
  677. package/runtime/third_party/boringssl/gen/bcm/aesni-x86-linux.S +2530 -0
  678. package/runtime/third_party/boringssl/gen/bcm/aesni-x86_64-apple.S +2413 -0
  679. package/runtime/third_party/boringssl/gen/bcm/aesni-x86_64-linux.S +2397 -0
  680. package/runtime/third_party/boringssl/gen/bcm/aesv8-armv7-linux.S +784 -0
  681. package/runtime/third_party/boringssl/gen/bcm/aesv8-armv8-apple.S +792 -0
  682. package/runtime/third_party/boringssl/gen/bcm/aesv8-armv8-linux.S +786 -0
  683. package/runtime/third_party/boringssl/gen/bcm/aesv8-armv8-win.S +798 -0
  684. package/runtime/third_party/boringssl/gen/bcm/aesv8-gcm-armv8-apple.S +2912 -0
  685. package/runtime/third_party/boringssl/gen/bcm/aesv8-gcm-armv8-linux.S +2907 -0
  686. package/runtime/third_party/boringssl/gen/bcm/aesv8-gcm-armv8-win.S +2915 -0
  687. package/runtime/third_party/boringssl/gen/bcm/armv4-mont-linux.S +932 -0
  688. package/runtime/third_party/boringssl/gen/bcm/armv8-mont-apple.S +1440 -0
  689. package/runtime/third_party/boringssl/gen/bcm/armv8-mont-linux.S +1440 -0
  690. package/runtime/third_party/boringssl/gen/bcm/armv8-mont-win.S +1446 -0
  691. package/runtime/third_party/boringssl/gen/bcm/bn-586-apple.S +530 -0
  692. package/runtime/third_party/boringssl/gen/bcm/bn-586-linux.S +540 -0
  693. package/runtime/third_party/boringssl/gen/bcm/bn-armv8-apple.S +88 -0
  694. package/runtime/third_party/boringssl/gen/bcm/bn-armv8-linux.S +87 -0
  695. package/runtime/third_party/boringssl/gen/bcm/bn-armv8-win.S +87 -0
  696. package/runtime/third_party/boringssl/gen/bcm/bsaes-armv7-linux.S +1520 -0
  697. package/runtime/third_party/boringssl/gen/bcm/co-586-apple.S +1256 -0
  698. package/runtime/third_party/boringssl/gen/bcm/co-586-linux.S +1264 -0
  699. package/runtime/third_party/boringssl/gen/bcm/ghash-armv4-linux.S +242 -0
  700. package/runtime/third_party/boringssl/gen/bcm/ghash-neon-armv8-apple.S +337 -0
  701. package/runtime/third_party/boringssl/gen/bcm/ghash-neon-armv8-linux.S +335 -0
  702. package/runtime/third_party/boringssl/gen/bcm/ghash-neon-armv8-win.S +341 -0
  703. package/runtime/third_party/boringssl/gen/bcm/ghash-ssse3-x86-apple.S +288 -0
  704. package/runtime/third_party/boringssl/gen/bcm/ghash-ssse3-x86-linux.S +292 -0
  705. package/runtime/third_party/boringssl/gen/bcm/ghash-ssse3-x86_64-apple.S +426 -0
  706. package/runtime/third_party/boringssl/gen/bcm/ghash-ssse3-x86_64-linux.S +425 -0
  707. package/runtime/third_party/boringssl/gen/bcm/ghash-x86-apple.S +322 -0
  708. package/runtime/third_party/boringssl/gen/bcm/ghash-x86-linux.S +328 -0
  709. package/runtime/third_party/boringssl/gen/bcm/ghash-x86_64-apple.S +1134 -0
  710. package/runtime/third_party/boringssl/gen/bcm/ghash-x86_64-linux.S +1129 -0
  711. package/runtime/third_party/boringssl/gen/bcm/ghashv8-armv7-linux.S +244 -0
  712. package/runtime/third_party/boringssl/gen/bcm/ghashv8-armv8-apple.S +567 -0
  713. package/runtime/third_party/boringssl/gen/bcm/ghashv8-armv8-linux.S +563 -0
  714. package/runtime/third_party/boringssl/gen/bcm/ghashv8-armv8-win.S +571 -0
  715. package/runtime/third_party/boringssl/gen/bcm/p256-armv8-asm-apple.S +1744 -0
  716. package/runtime/third_party/boringssl/gen/bcm/p256-armv8-asm-linux.S +1725 -0
  717. package/runtime/third_party/boringssl/gen/bcm/p256-armv8-asm-win.S +1765 -0
  718. package/runtime/third_party/boringssl/gen/bcm/p256-x86_64-asm-apple.S +4544 -0
  719. package/runtime/third_party/boringssl/gen/bcm/p256-x86_64-asm-linux.S +4600 -0
  720. package/runtime/third_party/boringssl/gen/bcm/p256_beeu-armv8-asm-apple.S +310 -0
  721. package/runtime/third_party/boringssl/gen/bcm/p256_beeu-armv8-asm-linux.S +310 -0
  722. package/runtime/third_party/boringssl/gen/bcm/p256_beeu-armv8-asm-win.S +310 -0
  723. package/runtime/third_party/boringssl/gen/bcm/p256_beeu-x86_64-asm-apple.S +321 -0
  724. package/runtime/third_party/boringssl/gen/bcm/p256_beeu-x86_64-asm-linux.S +335 -0
  725. package/runtime/third_party/boringssl/gen/bcm/rdrand-x86_64-apple.S +58 -0
  726. package/runtime/third_party/boringssl/gen/bcm/rdrand-x86_64-linux.S +57 -0
  727. package/runtime/third_party/boringssl/gen/bcm/rsaz-avx2-apple.S +1756 -0
  728. package/runtime/third_party/boringssl/gen/bcm/rsaz-avx2-linux.S +1751 -0
  729. package/runtime/third_party/boringssl/gen/bcm/sha1-586-apple.S +3782 -0
  730. package/runtime/third_party/boringssl/gen/bcm/sha1-586-linux.S +3788 -0
  731. package/runtime/third_party/boringssl/gen/bcm/sha1-armv4-large-linux.S +1479 -0
  732. package/runtime/third_party/boringssl/gen/bcm/sha1-armv8-apple.S +1219 -0
  733. package/runtime/third_party/boringssl/gen/bcm/sha1-armv8-linux.S +1218 -0
  734. package/runtime/third_party/boringssl/gen/bcm/sha1-armv8-win.S +1222 -0
  735. package/runtime/third_party/boringssl/gen/bcm/sha1-x86_64-apple.S +5454 -0
  736. package/runtime/third_party/boringssl/gen/bcm/sha1-x86_64-linux.S +5450 -0
  737. package/runtime/third_party/boringssl/gen/bcm/sha256-586-apple.S +5593 -0
  738. package/runtime/third_party/boringssl/gen/bcm/sha256-586-linux.S +5599 -0
  739. package/runtime/third_party/boringssl/gen/bcm/sha256-armv4-linux.S +2840 -0
  740. package/runtime/third_party/boringssl/gen/bcm/sha256-armv8-apple.S +1195 -0
  741. package/runtime/third_party/boringssl/gen/bcm/sha256-armv8-linux.S +1194 -0
  742. package/runtime/third_party/boringssl/gen/bcm/sha256-armv8-win.S +1198 -0
  743. package/runtime/third_party/boringssl/gen/bcm/sha256-x86_64-apple.S +4173 -0
  744. package/runtime/third_party/boringssl/gen/bcm/sha256-x86_64-linux.S +4170 -0
  745. package/runtime/third_party/boringssl/gen/bcm/sha512-586-apple.S +2406 -0
  746. package/runtime/third_party/boringssl/gen/bcm/sha512-586-linux.S +2410 -0
  747. package/runtime/third_party/boringssl/gen/bcm/sha512-armv4-linux.S +1857 -0
  748. package/runtime/third_party/boringssl/gen/bcm/sha512-armv8-apple.S +1598 -0
  749. package/runtime/third_party/boringssl/gen/bcm/sha512-armv8-linux.S +1597 -0
  750. package/runtime/third_party/boringssl/gen/bcm/sha512-armv8-win.S +1601 -0
  751. package/runtime/third_party/boringssl/gen/bcm/sha512-x86_64-apple.S +2979 -0
  752. package/runtime/third_party/boringssl/gen/bcm/sha512-x86_64-linux.S +2978 -0
  753. package/runtime/third_party/boringssl/gen/bcm/vpaes-armv7-linux.S +1225 -0
  754. package/runtime/third_party/boringssl/gen/bcm/vpaes-armv8-apple.S +1238 -0
  755. package/runtime/third_party/boringssl/gen/bcm/vpaes-armv8-linux.S +1220 -0
  756. package/runtime/third_party/boringssl/gen/bcm/vpaes-armv8-win.S +1256 -0
  757. package/runtime/third_party/boringssl/gen/bcm/vpaes-x86-apple.S +680 -0
  758. package/runtime/third_party/boringssl/gen/bcm/vpaes-x86-linux.S +706 -0
  759. package/runtime/third_party/boringssl/gen/bcm/vpaes-x86_64-apple.S +1146 -0
  760. package/runtime/third_party/boringssl/gen/bcm/vpaes-x86_64-linux.S +1133 -0
  761. package/runtime/third_party/boringssl/gen/bcm/x86-mont-apple.S +216 -0
  762. package/runtime/third_party/boringssl/gen/bcm/x86-mont-linux.S +218 -0
  763. package/runtime/third_party/boringssl/gen/bcm/x86_64-mont-apple.S +1238 -0
  764. package/runtime/third_party/boringssl/gen/bcm/x86_64-mont-linux.S +1237 -0
  765. package/runtime/third_party/boringssl/gen/bcm/x86_64-mont5-apple.S +3644 -0
  766. package/runtime/third_party/boringssl/gen/bcm/x86_64-mont5-linux.S +3628 -0
  767. package/runtime/third_party/boringssl/gen/boringssl_prefix_symbols_internal_x86_64_win_asm.inc +325 -0
  768. package/runtime/third_party/boringssl/gen/boringssl_prefix_symbols_internal_x86_win_asm.inc +325 -0
  769. package/runtime/third_party/boringssl/gen/crypto/aes128gcmsiv-x86_64-apple.S +3113 -0
  770. package/runtime/third_party/boringssl/gen/crypto/aes128gcmsiv-x86_64-linux.S +3091 -0
  771. package/runtime/third_party/boringssl/gen/crypto/chacha-armv4-linux.S +1450 -0
  772. package/runtime/third_party/boringssl/gen/crypto/chacha-armv8-apple.S +1969 -0
  773. package/runtime/third_party/boringssl/gen/crypto/chacha-armv8-linux.S +1967 -0
  774. package/runtime/third_party/boringssl/gen/crypto/chacha-armv8-win.S +1973 -0
  775. package/runtime/third_party/boringssl/gen/crypto/chacha-x86-apple.S +957 -0
  776. package/runtime/third_party/boringssl/gen/crypto/chacha-x86-linux.S +961 -0
  777. package/runtime/third_party/boringssl/gen/crypto/chacha-x86_64-apple.S +1608 -0
  778. package/runtime/third_party/boringssl/gen/crypto/chacha-x86_64-linux.S +1611 -0
  779. package/runtime/third_party/boringssl/gen/crypto/chacha20_poly1305_armv8-apple.S +3010 -0
  780. package/runtime/third_party/boringssl/gen/crypto/chacha20_poly1305_armv8-linux.S +3008 -0
  781. package/runtime/third_party/boringssl/gen/crypto/chacha20_poly1305_armv8-win.S +3014 -0
  782. package/runtime/third_party/boringssl/gen/crypto/chacha20_poly1305_x86_64-apple.S +8903 -0
  783. package/runtime/third_party/boringssl/gen/crypto/chacha20_poly1305_x86_64-linux.S +8940 -0
  784. package/runtime/third_party/boringssl/gen/crypto/err_data.cc +1578 -0
  785. package/runtime/third_party/boringssl/gen/crypto/md5-586-apple.S +684 -0
  786. package/runtime/third_party/boringssl/gen/crypto/md5-586-linux.S +686 -0
  787. package/runtime/third_party/boringssl/gen/crypto/md5-x86_64-apple.S +690 -0
  788. package/runtime/third_party/boringssl/gen/crypto/md5-x86_64-linux.S +695 -0
  789. package/runtime/third_party/boringssl/include/openssl/aead.h +650 -0
  790. package/runtime/third_party/boringssl/include/openssl/aes.h +173 -0
  791. package/runtime/third_party/boringssl/include/openssl/arm_arch.h +24 -0
  792. package/runtime/third_party/boringssl/include/openssl/asm_base.h +219 -0
  793. package/runtime/third_party/boringssl/include/openssl/asn1.h +2002 -0
  794. package/runtime/third_party/boringssl/include/openssl/asn1_mac.h +18 -0
  795. package/runtime/third_party/boringssl/include/openssl/asn1t.h +584 -0
  796. package/runtime/third_party/boringssl/include/openssl/base.h +548 -0
  797. package/runtime/third_party/boringssl/include/openssl/base64.h +156 -0
  798. package/runtime/third_party/boringssl/include/openssl/bio.h +1061 -0
  799. package/runtime/third_party/boringssl/include/openssl/blake2.h +63 -0
  800. package/runtime/third_party/boringssl/include/openssl/blowfish.h +58 -0
  801. package/runtime/third_party/boringssl/include/openssl/bn.h +986 -0
  802. package/runtime/third_party/boringssl/include/openssl/buf.h +95 -0
  803. package/runtime/third_party/boringssl/include/openssl/buffer.h +18 -0
  804. package/runtime/third_party/boringssl/include/openssl/bytestring.h +798 -0
  805. package/runtime/third_party/boringssl/include/openssl/cast.h +91 -0
  806. package/runtime/third_party/boringssl/include/openssl/chacha.h +47 -0
  807. package/runtime/third_party/boringssl/include/openssl/cipher.h +819 -0
  808. package/runtime/third_party/boringssl/include/openssl/cmac.h +91 -0
  809. package/runtime/third_party/boringssl/include/openssl/cms.h +147 -0
  810. package/runtime/third_party/boringssl/include/openssl/conf.h +136 -0
  811. package/runtime/third_party/boringssl/include/openssl/configuration.h +18 -0
  812. package/runtime/third_party/boringssl/include/openssl/cpu.h +18 -0
  813. package/runtime/third_party/boringssl/include/openssl/crypto.h +235 -0
  814. package/runtime/third_party/boringssl/include/openssl/ctrdrbg.h +116 -0
  815. package/runtime/third_party/boringssl/include/openssl/curve25519.h +309 -0
  816. package/runtime/third_party/boringssl/include/openssl/des.h +134 -0
  817. package/runtime/third_party/boringssl/include/openssl/dh.h +336 -0
  818. package/runtime/third_party/boringssl/include/openssl/digest.h +399 -0
  819. package/runtime/third_party/boringssl/include/openssl/dsa.h +392 -0
  820. package/runtime/third_party/boringssl/include/openssl/dtls1.h +16 -0
  821. package/runtime/third_party/boringssl/include/openssl/e_os2.h +18 -0
  822. package/runtime/third_party/boringssl/include/openssl/ec.h +530 -0
  823. package/runtime/third_party/boringssl/include/openssl/ec_key.h +358 -0
  824. package/runtime/third_party/boringssl/include/openssl/ecdh.h +67 -0
  825. package/runtime/third_party/boringssl/include/openssl/ecdsa.h +242 -0
  826. package/runtime/third_party/boringssl/include/openssl/engine.h +109 -0
  827. package/runtime/third_party/boringssl/include/openssl/err.h +416 -0
  828. package/runtime/third_party/boringssl/include/openssl/evp.h +1645 -0
  829. package/runtime/third_party/boringssl/include/openssl/evp_errors.h +66 -0
  830. package/runtime/third_party/boringssl/include/openssl/ex_data.h +117 -0
  831. package/runtime/third_party/boringssl/include/openssl/hkdf.h +68 -0
  832. package/runtime/third_party/boringssl/include/openssl/hmac.h +151 -0
  833. package/runtime/third_party/boringssl/include/openssl/hpke.h +456 -0
  834. package/runtime/third_party/boringssl/include/openssl/hrss.h +108 -0
  835. package/runtime/third_party/boringssl/include/openssl/is_boringssl.h +16 -0
  836. package/runtime/third_party/boringssl/include/openssl/kdf.h +92 -0
  837. package/runtime/third_party/boringssl/include/openssl/lhash.h +18 -0
  838. package/runtime/third_party/boringssl/include/openssl/md4.h +73 -0
  839. package/runtime/third_party/boringssl/include/openssl/md5.h +67 -0
  840. package/runtime/third_party/boringssl/include/openssl/mem.h +215 -0
  841. package/runtime/third_party/boringssl/include/openssl/mldsa.h +486 -0
  842. package/runtime/third_party/boringssl/include/openssl/mlkem.h +222 -0
  843. package/runtime/third_party/boringssl/include/openssl/nid.h +5561 -0
  844. package/runtime/third_party/boringssl/include/openssl/obj.h +225 -0
  845. package/runtime/third_party/boringssl/include/openssl/obj_mac.h +18 -0
  846. package/runtime/third_party/boringssl/include/openssl/objects.h +18 -0
  847. package/runtime/third_party/boringssl/include/openssl/opensslconf.h +108 -0
  848. package/runtime/third_party/boringssl/include/openssl/opensslv.h +18 -0
  849. package/runtime/third_party/boringssl/include/openssl/ossl_typ.h +18 -0
  850. package/runtime/third_party/boringssl/include/openssl/params.h +42 -0
  851. package/runtime/third_party/boringssl/include/openssl/pem.h +769 -0
  852. package/runtime/third_party/boringssl/include/openssl/pkcs12.h +18 -0
  853. package/runtime/third_party/boringssl/include/openssl/pkcs7.h +239 -0
  854. package/runtime/third_party/boringssl/include/openssl/pkcs8.h +267 -0
  855. package/runtime/third_party/boringssl/include/openssl/poly1305.h +52 -0
  856. package/runtime/third_party/boringssl/include/openssl/pool.h +137 -0
  857. package/runtime/third_party/boringssl/include/openssl/posix_time.h +51 -0
  858. package/runtime/third_party/boringssl/include/openssl/prefix_symbols.h +8000 -0
  859. package/runtime/third_party/boringssl/include/openssl/prefix_symbols_internal_S.h +633 -0
  860. package/runtime/third_party/boringssl/include/openssl/prefix_symbols_internal_c.h +329 -0
  861. package/runtime/third_party/boringssl/include/openssl/rand.h +138 -0
  862. package/runtime/third_party/boringssl/include/openssl/rc4.h +54 -0
  863. package/runtime/third_party/boringssl/include/openssl/ripemd.h +71 -0
  864. package/runtime/third_party/boringssl/include/openssl/rsa.h +893 -0
  865. package/runtime/third_party/boringssl/include/openssl/safestack.h +16 -0
  866. package/runtime/third_party/boringssl/include/openssl/service_indicator.h +19 -0
  867. package/runtime/third_party/boringssl/include/openssl/sha.h +108 -0
  868. package/runtime/third_party/boringssl/include/openssl/sha2.h +201 -0
  869. package/runtime/third_party/boringssl/include/openssl/siphash.h +37 -0
  870. package/runtime/third_party/boringssl/include/openssl/slhdsa.h +250 -0
  871. package/runtime/third_party/boringssl/include/openssl/span.h +376 -0
  872. package/runtime/third_party/boringssl/include/openssl/srtp.h +18 -0
  873. package/runtime/third_party/boringssl/include/openssl/ssl.h +7211 -0
  874. package/runtime/third_party/boringssl/include/openssl/ssl3.h +171 -0
  875. package/runtime/third_party/boringssl/include/openssl/stack.h +688 -0
  876. package/runtime/third_party/boringssl/include/openssl/target.h +246 -0
  877. package/runtime/third_party/boringssl/include/openssl/thread.h +114 -0
  878. package/runtime/third_party/boringssl/include/openssl/time.h +22 -0
  879. package/runtime/third_party/boringssl/include/openssl/tls1.h +263 -0
  880. package/runtime/third_party/boringssl/include/openssl/tls_prf.h +47 -0
  881. package/runtime/third_party/boringssl/include/openssl/trust_token.h +349 -0
  882. package/runtime/third_party/boringssl/include/openssl/type_check.h +37 -0
  883. package/runtime/third_party/boringssl/include/openssl/types.h +18 -0
  884. package/runtime/third_party/boringssl/include/openssl/x509.h +5404 -0
  885. package/runtime/third_party/boringssl/include/openssl/x509_vfy.h +18 -0
  886. package/runtime/third_party/boringssl/include/openssl/x509v3.h +63 -0
  887. package/runtime/third_party/boringssl/include/openssl/x509v3_errors.h +84 -0
  888. package/runtime/third_party/boringssl/include/openssl/xwing.h +115 -0
  889. package/runtime/third_party/boringssl/sources.json +696 -0
  890. package/runtime/third_party/boringssl/ssl/bio_ssl.cc +196 -0
  891. package/runtime/third_party/boringssl/ssl/d1_both.cc +1137 -0
  892. package/runtime/third_party/boringssl/ssl/d1_lib.cc +245 -0
  893. package/runtime/third_party/boringssl/ssl/d1_pkt.cc +322 -0
  894. package/runtime/third_party/boringssl/ssl/d1_srtp.cc +128 -0
  895. package/runtime/third_party/boringssl/ssl/dtls_method.cc +216 -0
  896. package/runtime/third_party/boringssl/ssl/dtls_record.cc +586 -0
  897. package/runtime/third_party/boringssl/ssl/encrypted_client_hello.cc +1110 -0
  898. package/runtime/third_party/boringssl/ssl/extensions.cc +5368 -0
  899. package/runtime/third_party/boringssl/ssl/handoff.cc +625 -0
  900. package/runtime/third_party/boringssl/ssl/handshake.cc +694 -0
  901. package/runtime/third_party/boringssl/ssl/handshake_client.cc +1958 -0
  902. package/runtime/third_party/boringssl/ssl/handshake_server.cc +1875 -0
  903. package/runtime/third_party/boringssl/ssl/internal.h +4506 -0
  904. package/runtime/third_party/boringssl/ssl/s3_both.cc +555 -0
  905. package/runtime/third_party/boringssl/ssl/s3_lib.cc +88 -0
  906. package/runtime/third_party/boringssl/ssl/s3_pkt.cc +396 -0
  907. package/runtime/third_party/boringssl/ssl/ssl_aead_ctx.cc +416 -0
  908. package/runtime/third_party/boringssl/ssl/ssl_asn1.cc +851 -0
  909. package/runtime/third_party/boringssl/ssl/ssl_buffer.cc +304 -0
  910. package/runtime/third_party/boringssl/ssl/ssl_cert.cc +723 -0
  911. package/runtime/third_party/boringssl/ssl/ssl_cipher.cc +1762 -0
  912. package/runtime/third_party/boringssl/ssl/ssl_credential.cc +913 -0
  913. package/runtime/third_party/boringssl/ssl/ssl_file.cc +375 -0
  914. package/runtime/third_party/boringssl/ssl/ssl_key_share.cc +445 -0
  915. package/runtime/third_party/boringssl/ssl/ssl_lib.cc +4132 -0
  916. package/runtime/third_party/boringssl/ssl/ssl_privkey.cc +973 -0
  917. package/runtime/third_party/boringssl/ssl/ssl_session.cc +1273 -0
  918. package/runtime/third_party/boringssl/ssl/ssl_stat.cc +162 -0
  919. package/runtime/third_party/boringssl/ssl/ssl_transcript.cc +224 -0
  920. package/runtime/third_party/boringssl/ssl/ssl_versions.cc +436 -0
  921. package/runtime/third_party/boringssl/ssl/ssl_x509.cc +1229 -0
  922. package/runtime/third_party/boringssl/ssl/t1_enc.cc +266 -0
  923. package/runtime/third_party/boringssl/ssl/tls13_both.cc +764 -0
  924. package/runtime/third_party/boringssl/ssl/tls13_client.cc +1325 -0
  925. package/runtime/third_party/boringssl/ssl/tls13_enc.cc +746 -0
  926. package/runtime/third_party/boringssl/ssl/tls13_server.cc +1623 -0
  927. package/runtime/third_party/boringssl/ssl/tls_method.cc +266 -0
  928. package/runtime/third_party/boringssl/ssl/tls_record.cc +524 -0
  929. package/runtime/third_party/boringssl/third_party/fiat/asm/fiat_curve25519_adx_mul.S +178 -0
  930. package/runtime/third_party/boringssl/third_party/fiat/asm/fiat_curve25519_adx_square.S +146 -0
  931. package/runtime/third_party/boringssl/third_party/fiat/asm/fiat_p256_adx_mul.S +177 -0
  932. package/runtime/third_party/boringssl/third_party/fiat/asm/fiat_p256_adx_sqr.S +166 -0
  933. package/runtime/third_party/boringssl/third_party/fiat/bedrock_unverified_bareminimum.c.inc +47 -0
  934. package/runtime/third_party/boringssl/third_party/fiat/bedrock_unverified_platform.c.inc +137 -0
  935. package/runtime/third_party/boringssl/third_party/fiat/curve25519_32.h +1571 -0
  936. package/runtime/third_party/boringssl/third_party/fiat/curve25519_64.h +978 -0
  937. package/runtime/third_party/boringssl/third_party/fiat/curve25519_64_adx.h +700 -0
  938. package/runtime/third_party/boringssl/third_party/fiat/curve25519_64_msvc.h +1281 -0
  939. package/runtime/third_party/boringssl/third_party/fiat/p256_32.h +4760 -0
  940. package/runtime/third_party/boringssl/third_party/fiat/p256_64.h +1984 -0
  941. package/runtime/third_party/boringssl/third_party/fiat/p256_64_msvc.h +1939 -0
  942. package/runtime/third_party/boringssl/third_party/fiat/p256_field.c.inc +26 -0
  943. package/runtime/third_party/boringssl/third_party/fiat/p256_field_32.br.c.inc +71 -0
  944. package/runtime/third_party/boringssl/third_party/fiat/p256_field_64.br.c.inc +84 -0
  945. package/runtime/third_party/boringssl/third_party/fiat/p256_point.br.c.inc +112 -0
  946. package/runtime/third_party/quickjs-dtoa/LICENSE +0 -0
  947. package/runtime/third_party/quickjs-dtoa/README.md +0 -0
  948. package/runtime/third_party/quickjs-dtoa/dtoa.c +0 -0
  949. package/runtime/third_party/quickjs-dtoa/dtoa.h +0 -0
  950. package/runtime/third_party/quickjs-dtoa/dtoa_compat.h +0 -0
  951. package/runtime/third_party/quickjs-regexp/LICENSE +0 -0
  952. package/runtime/third_party/quickjs-regexp/README.md +0 -0
  953. package/runtime/third_party/quickjs-regexp/cutils.c +0 -0
  954. package/runtime/third_party/quickjs-regexp/cutils.h +0 -0
  955. package/runtime/third_party/quickjs-regexp/libregexp-opcode.h +0 -0
  956. package/runtime/third_party/quickjs-regexp/libregexp.c +0 -0
  957. package/runtime/third_party/quickjs-regexp/libregexp.h +0 -0
  958. package/runtime/third_party/quickjs-regexp/libunicode-table.h +0 -0
  959. package/runtime/third_party/quickjs-regexp/libunicode.c +0 -0
  960. package/runtime/third_party/quickjs-regexp/libunicode.h +0 -0
  961. package/runtime/third_party/v8-ieee754/LICENSE +0 -0
  962. package/runtime/third_party/v8-ieee754/README.md +2 -1
  963. package/runtime/third_party/v8-ieee754/convert.py +4 -0
  964. package/runtime/third_party/v8-ieee754/ieee754.c +1 -1
  965. package/runtime/third_party/v8-ieee754/ieee754.h +0 -0
  966. package/runtime/tools/regexp_compile.c +0 -0
  967. package/runtime/third_party/bearssl/LICENSE.txt +0 -21
  968. package/runtime/third_party/bearssl/README.txt +0 -136
  969. package/runtime/third_party/bearssl/VERSION +0 -1
  970. package/runtime/third_party/bearssl/inc/bearssl.h +0 -183
  971. package/runtime/third_party/bearssl/inc/bearssl_aead.h +0 -1059
  972. package/runtime/third_party/bearssl/inc/bearssl_block.h +0 -2618
  973. package/runtime/third_party/bearssl/inc/bearssl_ec.h +0 -967
  974. package/runtime/third_party/bearssl/inc/bearssl_hash.h +0 -1346
  975. package/runtime/third_party/bearssl/inc/bearssl_hmac.h +0 -241
  976. package/runtime/third_party/bearssl/inc/bearssl_kdf.h +0 -284
  977. package/runtime/third_party/bearssl/inc/bearssl_pem.h +0 -294
  978. package/runtime/third_party/bearssl/inc/bearssl_prf.h +0 -150
  979. package/runtime/third_party/bearssl/inc/bearssl_rand.h +0 -397
  980. package/runtime/third_party/bearssl/inc/bearssl_rsa.h +0 -1655
  981. package/runtime/third_party/bearssl/inc/bearssl_ssl.h +0 -4296
  982. package/runtime/third_party/bearssl/inc/bearssl_x509.h +0 -1474
  983. package/runtime/third_party/bearssl/src/aead/ccm.c +0 -346
  984. package/runtime/third_party/bearssl/src/aead/eax.c +0 -525
  985. package/runtime/third_party/bearssl/src/aead/gcm.c +0 -318
  986. package/runtime/third_party/bearssl/src/codec/ccopy.c +0 -44
  987. package/runtime/third_party/bearssl/src/codec/dec16be.c +0 -38
  988. package/runtime/third_party/bearssl/src/codec/dec16le.c +0 -38
  989. package/runtime/third_party/bearssl/src/codec/dec32be.c +0 -38
  990. package/runtime/third_party/bearssl/src/codec/dec32le.c +0 -38
  991. package/runtime/third_party/bearssl/src/codec/dec64be.c +0 -38
  992. package/runtime/third_party/bearssl/src/codec/dec64le.c +0 -38
  993. package/runtime/third_party/bearssl/src/codec/enc16be.c +0 -38
  994. package/runtime/third_party/bearssl/src/codec/enc16le.c +0 -38
  995. package/runtime/third_party/bearssl/src/codec/enc32be.c +0 -38
  996. package/runtime/third_party/bearssl/src/codec/enc32le.c +0 -38
  997. package/runtime/third_party/bearssl/src/codec/enc64be.c +0 -38
  998. package/runtime/third_party/bearssl/src/codec/enc64le.c +0 -38
  999. package/runtime/third_party/bearssl/src/codec/pemdec.c +0 -526
  1000. package/runtime/third_party/bearssl/src/codec/pemdec.t0 +0 -314
  1001. package/runtime/third_party/bearssl/src/codec/pemenc.c +0 -173
  1002. package/runtime/third_party/bearssl/src/config.h +0 -247
  1003. package/runtime/third_party/bearssl/src/ec/ec_all_m15.c +0 -121
  1004. package/runtime/third_party/bearssl/src/ec/ec_all_m31.c +0 -171
  1005. package/runtime/third_party/bearssl/src/ec/ec_c25519_i15.c +0 -398
  1006. package/runtime/third_party/bearssl/src/ec/ec_c25519_i31.c +0 -390
  1007. package/runtime/third_party/bearssl/src/ec/ec_c25519_m15.c +0 -1478
  1008. package/runtime/third_party/bearssl/src/ec/ec_c25519_m31.c +0 -800
  1009. package/runtime/third_party/bearssl/src/ec/ec_c25519_m62.c +0 -605
  1010. package/runtime/third_party/bearssl/src/ec/ec_c25519_m64.c +0 -831
  1011. package/runtime/third_party/bearssl/src/ec/ec_curve25519.c +0 -46
  1012. package/runtime/third_party/bearssl/src/ec/ec_default.c +0 -36
  1013. package/runtime/third_party/bearssl/src/ec/ec_keygen.c +0 -86
  1014. package/runtime/third_party/bearssl/src/ec/ec_p256_m15.c +0 -2124
  1015. package/runtime/third_party/bearssl/src/ec/ec_p256_m31.c +0 -1469
  1016. package/runtime/third_party/bearssl/src/ec/ec_p256_m62.c +0 -1765
  1017. package/runtime/third_party/bearssl/src/ec/ec_p256_m64.c +0 -1781
  1018. package/runtime/third_party/bearssl/src/ec/ec_prime_i15.c +0 -824
  1019. package/runtime/third_party/bearssl/src/ec/ec_prime_i31.c +0 -826
  1020. package/runtime/third_party/bearssl/src/ec/ec_pubkey.c +0 -85
  1021. package/runtime/third_party/bearssl/src/ec/ec_secp256r1.c +0 -51
  1022. package/runtime/third_party/bearssl/src/ec/ec_secp384r1.c +0 -57
  1023. package/runtime/third_party/bearssl/src/ec/ec_secp521r1.c +0 -64
  1024. package/runtime/third_party/bearssl/src/ec/ecdsa_atr.c +0 -134
  1025. package/runtime/third_party/bearssl/src/ec/ecdsa_default_sign_asn1.c +0 -36
  1026. package/runtime/third_party/bearssl/src/ec/ecdsa_default_sign_raw.c +0 -36
  1027. package/runtime/third_party/bearssl/src/ec/ecdsa_default_vrfy_asn1.c +0 -36
  1028. package/runtime/third_party/bearssl/src/ec/ecdsa_default_vrfy_raw.c +0 -36
  1029. package/runtime/third_party/bearssl/src/ec/ecdsa_i15_bits.c +0 -47
  1030. package/runtime/third_party/bearssl/src/ec/ecdsa_i15_sign_asn1.c +0 -45
  1031. package/runtime/third_party/bearssl/src/ec/ecdsa_i15_sign_raw.c +0 -174
  1032. package/runtime/third_party/bearssl/src/ec/ecdsa_i15_vrfy_asn1.c +0 -48
  1033. package/runtime/third_party/bearssl/src/ec/ecdsa_i15_vrfy_raw.c +0 -166
  1034. package/runtime/third_party/bearssl/src/ec/ecdsa_i31_bits.c +0 -47
  1035. package/runtime/third_party/bearssl/src/ec/ecdsa_i31_sign_asn1.c +0 -45
  1036. package/runtime/third_party/bearssl/src/ec/ecdsa_i31_sign_raw.c +0 -173
  1037. package/runtime/third_party/bearssl/src/ec/ecdsa_i31_vrfy_asn1.c +0 -48
  1038. package/runtime/third_party/bearssl/src/ec/ecdsa_i31_vrfy_raw.c +0 -165
  1039. package/runtime/third_party/bearssl/src/ec/ecdsa_rta.c +0 -121
  1040. package/runtime/third_party/bearssl/src/hash/dig_oid.c +0 -84
  1041. package/runtime/third_party/bearssl/src/hash/dig_size.c +0 -50
  1042. package/runtime/third_party/bearssl/src/hash/ghash_ctmul.c +0 -345
  1043. package/runtime/third_party/bearssl/src/hash/ghash_ctmul32.c +0 -251
  1044. package/runtime/third_party/bearssl/src/hash/ghash_ctmul64.c +0 -154
  1045. package/runtime/third_party/bearssl/src/hash/ghash_pclmul.c +0 -389
  1046. package/runtime/third_party/bearssl/src/hash/ghash_pwr8.c +0 -411
  1047. package/runtime/third_party/bearssl/src/hash/md5.c +0 -208
  1048. package/runtime/third_party/bearssl/src/hash/md5sha1.c +0 -141
  1049. package/runtime/third_party/bearssl/src/hash/mgf1.c +0 -56
  1050. package/runtime/third_party/bearssl/src/hash/multihash.c +0 -166
  1051. package/runtime/third_party/bearssl/src/hash/sha1.c +0 -191
  1052. package/runtime/third_party/bearssl/src/hash/sha2big.c +0 -285
  1053. package/runtime/third_party/bearssl/src/hash/sha2small.c +0 -341
  1054. package/runtime/third_party/bearssl/src/inner.h +0 -2577
  1055. package/runtime/third_party/bearssl/src/int/i15_add.c +0 -46
  1056. package/runtime/third_party/bearssl/src/int/i15_bitlen.c +0 -44
  1057. package/runtime/third_party/bearssl/src/int/i15_decmod.c +0 -124
  1058. package/runtime/third_party/bearssl/src/int/i15_decode.c +0 -56
  1059. package/runtime/third_party/bearssl/src/int/i15_decred.c +0 -100
  1060. package/runtime/third_party/bearssl/src/int/i15_encode.c +0 -56
  1061. package/runtime/third_party/bearssl/src/int/i15_fmont.c +0 -59
  1062. package/runtime/third_party/bearssl/src/int/i15_iszero.c +0 -39
  1063. package/runtime/third_party/bearssl/src/int/i15_moddiv.c +0 -465
  1064. package/runtime/third_party/bearssl/src/int/i15_modpow.c +0 -50
  1065. package/runtime/third_party/bearssl/src/int/i15_modpow2.c +0 -160
  1066. package/runtime/third_party/bearssl/src/int/i15_montmul.c +0 -184
  1067. package/runtime/third_party/bearssl/src/int/i15_mulacc.c +0 -61
  1068. package/runtime/third_party/bearssl/src/int/i15_muladd.c +0 -173
  1069. package/runtime/third_party/bearssl/src/int/i15_ninv15.c +0 -38
  1070. package/runtime/third_party/bearssl/src/int/i15_reduce.c +0 -66
  1071. package/runtime/third_party/bearssl/src/int/i15_rshift.c +0 -47
  1072. package/runtime/third_party/bearssl/src/int/i15_sub.c +0 -46
  1073. package/runtime/third_party/bearssl/src/int/i15_tmont.c +0 -36
  1074. package/runtime/third_party/bearssl/src/int/i31_add.c +0 -46
  1075. package/runtime/third_party/bearssl/src/int/i31_bitlen.c +0 -44
  1076. package/runtime/third_party/bearssl/src/int/i31_decmod.c +0 -124
  1077. package/runtime/third_party/bearssl/src/int/i31_decode.c +0 -57
  1078. package/runtime/third_party/bearssl/src/int/i31_decred.c +0 -103
  1079. package/runtime/third_party/bearssl/src/int/i31_encode.c +0 -79
  1080. package/runtime/third_party/bearssl/src/int/i31_fmont.c +0 -60
  1081. package/runtime/third_party/bearssl/src/int/i31_iszero.c +0 -39
  1082. package/runtime/third_party/bearssl/src/int/i31_moddiv.c +0 -488
  1083. package/runtime/third_party/bearssl/src/int/i31_modpow.c +0 -65
  1084. package/runtime/third_party/bearssl/src/int/i31_modpow2.c +0 -160
  1085. package/runtime/third_party/bearssl/src/int/i31_montmul.c +0 -127
  1086. package/runtime/third_party/bearssl/src/int/i31_mulacc.c +0 -74
  1087. package/runtime/third_party/bearssl/src/int/i31_muladd.c +0 -157
  1088. package/runtime/third_party/bearssl/src/int/i31_ninv31.c +0 -39
  1089. package/runtime/third_party/bearssl/src/int/i31_reduce.c +0 -66
  1090. package/runtime/third_party/bearssl/src/int/i31_rshift.c +0 -47
  1091. package/runtime/third_party/bearssl/src/int/i31_sub.c +0 -46
  1092. package/runtime/third_party/bearssl/src/int/i31_tmont.c +0 -36
  1093. package/runtime/third_party/bearssl/src/int/i32_add.c +0 -51
  1094. package/runtime/third_party/bearssl/src/int/i32_bitlen.c +0 -44
  1095. package/runtime/third_party/bearssl/src/int/i32_decmod.c +0 -77
  1096. package/runtime/third_party/bearssl/src/int/i32_decode.c +0 -63
  1097. package/runtime/third_party/bearssl/src/int/i32_decred.c +0 -107
  1098. package/runtime/third_party/bearssl/src/int/i32_div32.c +0 -56
  1099. package/runtime/third_party/bearssl/src/int/i32_encode.c +0 -72
  1100. package/runtime/third_party/bearssl/src/int/i32_fmont.c +0 -60
  1101. package/runtime/third_party/bearssl/src/int/i32_iszero.c +0 -39
  1102. package/runtime/third_party/bearssl/src/int/i32_modpow.c +0 -65
  1103. package/runtime/third_party/bearssl/src/int/i32_montmul.c +0 -69
  1104. package/runtime/third_party/bearssl/src/int/i32_mulacc.c +0 -56
  1105. package/runtime/third_party/bearssl/src/int/i32_muladd.c +0 -138
  1106. package/runtime/third_party/bearssl/src/int/i32_ninv32.c +0 -39
  1107. package/runtime/third_party/bearssl/src/int/i32_reduce.c +0 -66
  1108. package/runtime/third_party/bearssl/src/int/i32_sub.c +0 -51
  1109. package/runtime/third_party/bearssl/src/int/i32_tmont.c +0 -36
  1110. package/runtime/third_party/bearssl/src/int/i62_modpow2.c +0 -493
  1111. package/runtime/third_party/bearssl/src/kdf/hkdf.c +0 -107
  1112. package/runtime/third_party/bearssl/src/kdf/shake.c +0 -590
  1113. package/runtime/third_party/bearssl/src/mac/hmac.c +0 -122
  1114. package/runtime/third_party/bearssl/src/mac/hmac_ct.c +0 -193
  1115. package/runtime/third_party/bearssl/src/rand/aesctr_drbg.c +0 -206
  1116. package/runtime/third_party/bearssl/src/rand/hmac_drbg.c +0 -157
  1117. package/runtime/third_party/bearssl/src/rand/sysrng.c +0 -252
  1118. package/runtime/third_party/bearssl/src/rsa/rsa_default_keygen.c +0 -38
  1119. package/runtime/third_party/bearssl/src/rsa/rsa_default_modulus.c +0 -36
  1120. package/runtime/third_party/bearssl/src/rsa/rsa_default_oaep_decrypt.c +0 -38
  1121. package/runtime/third_party/bearssl/src/rsa/rsa_default_oaep_encrypt.c +0 -38
  1122. package/runtime/third_party/bearssl/src/rsa/rsa_default_pkcs1_sign.c +0 -38
  1123. package/runtime/third_party/bearssl/src/rsa/rsa_default_pkcs1_vrfy.c +0 -38
  1124. package/runtime/third_party/bearssl/src/rsa/rsa_default_priv.c +0 -38
  1125. package/runtime/third_party/bearssl/src/rsa/rsa_default_privexp.c +0 -36
  1126. package/runtime/third_party/bearssl/src/rsa/rsa_default_pss_sign.c +0 -38
  1127. package/runtime/third_party/bearssl/src/rsa/rsa_default_pss_vrfy.c +0 -38
  1128. package/runtime/third_party/bearssl/src/rsa/rsa_default_pub.c +0 -38
  1129. package/runtime/third_party/bearssl/src/rsa/rsa_default_pubexp.c +0 -36
  1130. package/runtime/third_party/bearssl/src/rsa/rsa_i15_keygen.c +0 -583
  1131. package/runtime/third_party/bearssl/src/rsa/rsa_i15_modulus.c +0 -99
  1132. package/runtime/third_party/bearssl/src/rsa/rsa_i15_oaep_decrypt.c +0 -41
  1133. package/runtime/third_party/bearssl/src/rsa/rsa_i15_oaep_encrypt.c +0 -44
  1134. package/runtime/third_party/bearssl/src/rsa/rsa_i15_pkcs1_sign.c +0 -37
  1135. package/runtime/third_party/bearssl/src/rsa/rsa_i15_pkcs1_vrfy.c +0 -43
  1136. package/runtime/third_party/bearssl/src/rsa/rsa_i15_priv.c +0 -209
  1137. package/runtime/third_party/bearssl/src/rsa/rsa_i15_privexp.c +0 -320
  1138. package/runtime/third_party/bearssl/src/rsa/rsa_i15_pss_sign.c +0 -40
  1139. package/runtime/third_party/bearssl/src/rsa/rsa_i15_pss_vrfy.c +0 -44
  1140. package/runtime/third_party/bearssl/src/rsa/rsa_i15_pub.c +0 -113
  1141. package/runtime/third_party/bearssl/src/rsa/rsa_i15_pubexp.c +0 -152
  1142. package/runtime/third_party/bearssl/src/rsa/rsa_i31_keygen.c +0 -37
  1143. package/runtime/third_party/bearssl/src/rsa/rsa_i31_keygen_inner.c +0 -608
  1144. package/runtime/third_party/bearssl/src/rsa/rsa_i31_modulus.c +0 -99
  1145. package/runtime/third_party/bearssl/src/rsa/rsa_i31_oaep_decrypt.c +0 -41
  1146. package/runtime/third_party/bearssl/src/rsa/rsa_i31_oaep_encrypt.c +0 -44
  1147. package/runtime/third_party/bearssl/src/rsa/rsa_i31_pkcs1_sign.c +0 -37
  1148. package/runtime/third_party/bearssl/src/rsa/rsa_i31_pkcs1_vrfy.c +0 -43
  1149. package/runtime/third_party/bearssl/src/rsa/rsa_i31_priv.c +0 -203
  1150. package/runtime/third_party/bearssl/src/rsa/rsa_i31_privexp.c +0 -318
  1151. package/runtime/third_party/bearssl/src/rsa/rsa_i31_pss_sign.c +0 -40
  1152. package/runtime/third_party/bearssl/src/rsa/rsa_i31_pss_vrfy.c +0 -44
  1153. package/runtime/third_party/bearssl/src/rsa/rsa_i31_pub.c +0 -106
  1154. package/runtime/third_party/bearssl/src/rsa/rsa_i31_pubexp.c +0 -152
  1155. package/runtime/third_party/bearssl/src/rsa/rsa_i32_oaep_decrypt.c +0 -41
  1156. package/runtime/third_party/bearssl/src/rsa/rsa_i32_oaep_encrypt.c +0 -44
  1157. package/runtime/third_party/bearssl/src/rsa/rsa_i32_pkcs1_sign.c +0 -37
  1158. package/runtime/third_party/bearssl/src/rsa/rsa_i32_pkcs1_vrfy.c +0 -43
  1159. package/runtime/third_party/bearssl/src/rsa/rsa_i32_priv.c +0 -160
  1160. package/runtime/third_party/bearssl/src/rsa/rsa_i32_pss_sign.c +0 -40
  1161. package/runtime/third_party/bearssl/src/rsa/rsa_i32_pss_vrfy.c +0 -44
  1162. package/runtime/third_party/bearssl/src/rsa/rsa_i32_pub.c +0 -77
  1163. package/runtime/third_party/bearssl/src/rsa/rsa_i62_keygen.c +0 -57
  1164. package/runtime/third_party/bearssl/src/rsa/rsa_i62_oaep_decrypt.c +0 -61
  1165. package/runtime/third_party/bearssl/src/rsa/rsa_i62_oaep_encrypt.c +0 -64
  1166. package/runtime/third_party/bearssl/src/rsa/rsa_i62_pkcs1_sign.c +0 -57
  1167. package/runtime/third_party/bearssl/src/rsa/rsa_i62_pkcs1_vrfy.c +0 -63
  1168. package/runtime/third_party/bearssl/src/rsa/rsa_i62_priv.c +0 -223
  1169. package/runtime/third_party/bearssl/src/rsa/rsa_i62_pss_sign.c +0 -60
  1170. package/runtime/third_party/bearssl/src/rsa/rsa_i62_pss_vrfy.c +0 -64
  1171. package/runtime/third_party/bearssl/src/rsa/rsa_i62_pub.c +0 -125
  1172. package/runtime/third_party/bearssl/src/rsa/rsa_oaep_pad.c +0 -112
  1173. package/runtime/third_party/bearssl/src/rsa/rsa_oaep_unpad.c +0 -145
  1174. package/runtime/third_party/bearssl/src/rsa/rsa_pkcs1_sig_pad.c +0 -100
  1175. package/runtime/third_party/bearssl/src/rsa/rsa_pkcs1_sig_unpad.c +0 -121
  1176. package/runtime/third_party/bearssl/src/rsa/rsa_pss_sig_pad.c +0 -106
  1177. package/runtime/third_party/bearssl/src/rsa/rsa_pss_sig_unpad.c +0 -121
  1178. package/runtime/third_party/bearssl/src/rsa/rsa_ssl_decrypt.c +0 -52
  1179. package/runtime/third_party/bearssl/src/settings.c +0 -306
  1180. package/runtime/third_party/bearssl/src/symcipher/aes_big_cbcdec.c +0 -69
  1181. package/runtime/third_party/bearssl/src/symcipher/aes_big_cbcenc.c +0 -67
  1182. package/runtime/third_party/bearssl/src/symcipher/aes_big_ctr.c +0 -84
  1183. package/runtime/third_party/bearssl/src/symcipher/aes_big_ctrcbc.c +0 -142
  1184. package/runtime/third_party/bearssl/src/symcipher/aes_big_dec.c +0 -254
  1185. package/runtime/third_party/bearssl/src/symcipher/aes_big_enc.c +0 -157
  1186. package/runtime/third_party/bearssl/src/symcipher/aes_common.c +0 -112
  1187. package/runtime/third_party/bearssl/src/symcipher/aes_ct.c +0 -328
  1188. package/runtime/third_party/bearssl/src/symcipher/aes_ct64.c +0 -398
  1189. package/runtime/third_party/bearssl/src/symcipher/aes_ct64_cbcdec.c +0 -104
  1190. package/runtime/third_party/bearssl/src/symcipher/aes_ct64_cbcenc.c +0 -81
  1191. package/runtime/third_party/bearssl/src/symcipher/aes_ct64_ctr.c +0 -114
  1192. package/runtime/third_party/bearssl/src/symcipher/aes_ct64_ctrcbc.c +0 -433
  1193. package/runtime/third_party/bearssl/src/symcipher/aes_ct64_dec.c +0 -159
  1194. package/runtime/third_party/bearssl/src/symcipher/aes_ct64_enc.c +0 -115
  1195. package/runtime/third_party/bearssl/src/symcipher/aes_ct_cbcdec.c +0 -111
  1196. package/runtime/third_party/bearssl/src/symcipher/aes_ct_cbcenc.c +0 -91
  1197. package/runtime/third_party/bearssl/src/symcipher/aes_ct_ctr.c +0 -116
  1198. package/runtime/third_party/bearssl/src/symcipher/aes_ct_ctrcbc.c +0 -422
  1199. package/runtime/third_party/bearssl/src/symcipher/aes_ct_dec.c +0 -170
  1200. package/runtime/third_party/bearssl/src/symcipher/aes_ct_enc.c +0 -112
  1201. package/runtime/third_party/bearssl/src/symcipher/aes_pwr8.c +0 -445
  1202. package/runtime/third_party/bearssl/src/symcipher/aes_pwr8_cbcdec.c +0 -670
  1203. package/runtime/third_party/bearssl/src/symcipher/aes_pwr8_cbcenc.c +0 -417
  1204. package/runtime/third_party/bearssl/src/symcipher/aes_pwr8_ctr.c +0 -717
  1205. package/runtime/third_party/bearssl/src/symcipher/aes_pwr8_ctrcbc.c +0 -946
  1206. package/runtime/third_party/bearssl/src/symcipher/aes_small_cbcdec.c +0 -69
  1207. package/runtime/third_party/bearssl/src/symcipher/aes_small_cbcenc.c +0 -67
  1208. package/runtime/third_party/bearssl/src/symcipher/aes_small_ctr.c +0 -84
  1209. package/runtime/third_party/bearssl/src/symcipher/aes_small_ctrcbc.c +0 -142
  1210. package/runtime/third_party/bearssl/src/symcipher/aes_small_dec.c +0 -176
  1211. package/runtime/third_party/bearssl/src/symcipher/aes_small_enc.c +0 -129
  1212. package/runtime/third_party/bearssl/src/symcipher/aes_x86ni.c +0 -240
  1213. package/runtime/third_party/bearssl/src/symcipher/aes_x86ni_cbcdec.c +0 -223
  1214. package/runtime/third_party/bearssl/src/symcipher/aes_x86ni_cbcenc.c +0 -122
  1215. package/runtime/third_party/bearssl/src/symcipher/aes_x86ni_ctr.c +0 -211
  1216. package/runtime/third_party/bearssl/src/symcipher/aes_x86ni_ctrcbc.c +0 -596
  1217. package/runtime/third_party/bearssl/src/symcipher/chacha20_ct.c +0 -106
  1218. package/runtime/third_party/bearssl/src/symcipher/chacha20_sse2.c +0 -237
  1219. package/runtime/third_party/bearssl/src/symcipher/des_ct.c +0 -411
  1220. package/runtime/third_party/bearssl/src/symcipher/des_ct_cbcdec.c +0 -87
  1221. package/runtime/third_party/bearssl/src/symcipher/des_ct_cbcenc.c +0 -69
  1222. package/runtime/third_party/bearssl/src/symcipher/des_support.c +0 -166
  1223. package/runtime/third_party/bearssl/src/symcipher/des_tab.c +0 -310
  1224. package/runtime/third_party/bearssl/src/symcipher/des_tab_cbcdec.c +0 -85
  1225. package/runtime/third_party/bearssl/src/symcipher/des_tab_cbcenc.c +0 -67
  1226. package/runtime/third_party/bearssl/src/symcipher/poly1305_ctmul.c +0 -260
  1227. package/runtime/third_party/bearssl/src/symcipher/poly1305_ctmul32.c +0 -297
  1228. package/runtime/third_party/bearssl/src/symcipher/poly1305_ctmulq.c +0 -475
  1229. package/runtime/third_party/bearssl/src/symcipher/poly1305_i15.c +0 -221
  1230. package/runtime/third_party/bearssl/src/x509/asn1.t0 +0 -757
  1231. package/runtime/third_party/bearssl/src/x509/asn1enc.c +0 -93
  1232. package/runtime/third_party/bearssl/src/x509/encode_ec_pk8der.c +0 -110
  1233. package/runtime/third_party/bearssl/src/x509/encode_ec_rawder.c +0 -161
  1234. package/runtime/third_party/bearssl/src/x509/encode_rsa_pk8der.c +0 -97
  1235. package/runtime/third_party/bearssl/src/x509/encode_rsa_rawder.c +0 -96
  1236. package/runtime/third_party/bearssl/src/x509/skey_decoder.c +0 -653
  1237. package/runtime/third_party/bearssl/src/x509/skey_decoder.t0 +0 -376
  1238. package/runtime/third_party/bearssl/src/x509/x509_decoder.c +0 -776
  1239. package/runtime/third_party/bearssl/src/x509/x509_decoder.t0 +0 -324
  1240. package/runtime/third_party/bearssl/src/x509/x509_knownkey.c +0 -105
  1241. package/runtime/third_party/bearssl/src/x509/x509_minimal.c +0 -1722
  1242. package/runtime/third_party/bearssl/src/x509/x509_minimal.t0 +0 -1526
  1243. package/runtime/third_party/bearssl/src/x509/x509_minimal_full.c +0 -59
package/cli.js CHANGED
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  import { isBuiltin } from "node:module";
3
- import { existsSync, mkdirSync, readFileSync, readdirSync, renameSync, rmSync, statSync, writeFileSync } from "node:fs";
4
- import { basename, dirname, isAbsolute, join, relative, resolve, sep } from "node:path";
3
+ import { existsSync, mkdirSync, readFileSync, readdirSync, realpathSync, renameSync, rmSync, statSync, writeFileSync } from "node:fs";
4
+ import { basename, delimiter, dirname, extname, isAbsolute, join, normalize, relative, resolve, sep } from "node:path";
5
5
  import { parseArgs } from "node:util";
6
6
  import ts from "typescript";
7
7
  import { rolldown } from "rolldown";
@@ -113,7 +113,7 @@ function parse(text, file, module, map, entry, hostPrimitives = {}) {
113
113
  function locAt(sf, pos, map) {
114
114
  const { line, character } = sf.getLineAndCharacterOfPosition(pos);
115
115
  const loc = {
116
- file: sf.fileName,
116
+ file: normalize(sf.fileName),
117
117
  line: line + 1,
118
118
  column: character + 1
119
119
  };
@@ -248,7 +248,7 @@ var Converter = class {
248
248
  return {
249
249
  type: "Program",
250
250
  loc: {
251
- file: this.sf.fileName,
251
+ file: normalize(this.sf.fileName),
252
252
  line: 1,
253
253
  column: 1
254
254
  },
@@ -6672,6 +6672,32 @@ function emitModule(m, p, entry, options) {
6672
6672
  //#endregion
6673
6673
  //#region runtime/components.ts
6674
6674
  const COMPONENTS = [
6675
+ {
6676
+ name: "promise",
6677
+ symbol: "js_component_promise",
6678
+ names: ["Promise", "fromAsync"]
6679
+ },
6680
+ {
6681
+ name: "generator",
6682
+ symbol: "js_component_generator",
6683
+ names: ["function*"]
6684
+ },
6685
+ {
6686
+ name: "asynciterator",
6687
+ symbol: "js_component_asynciterator",
6688
+ names: ["async function*", "asyncIterator"],
6689
+ needs: ["promise"]
6690
+ },
6691
+ {
6692
+ name: "weak",
6693
+ symbol: "js_component_weak",
6694
+ names: [
6695
+ "WeakMap",
6696
+ "WeakSet",
6697
+ "WeakRef",
6698
+ "FinalizationRegistry"
6699
+ ]
6700
+ },
6675
6701
  {
6676
6702
  name: "math",
6677
6703
  symbol: "js_component_math",
@@ -6810,6 +6836,7 @@ const COMPONENTS = [
6810
6836
  "CryptoKey"
6811
6837
  ],
6812
6838
  needs: [
6839
+ "promise",
6813
6840
  "json",
6814
6841
  "typedarray",
6815
6842
  "domexception"
@@ -6834,6 +6861,8 @@ const COMPONENTS = [
6834
6861
  "TransformStreamDefaultController"
6835
6862
  ],
6836
6863
  needs: [
6864
+ "promise",
6865
+ "asynciterator",
6837
6866
  "typedarray",
6838
6867
  "domexception",
6839
6868
  "events"
@@ -6843,13 +6872,18 @@ const COMPONENTS = [
6843
6872
  name: "blob",
6844
6873
  symbol: "js_component_blob",
6845
6874
  names: ["Blob", "File"],
6846
- needs: ["typedarray", "streams"]
6875
+ needs: [
6876
+ "promise",
6877
+ "typedarray",
6878
+ "streams"
6879
+ ]
6847
6880
  },
6848
6881
  {
6849
6882
  name: "fetch",
6850
6883
  symbol: "js_component_fetch",
6851
6884
  names: ["Request", "Response"],
6852
6885
  needs: [
6886
+ "promise",
6853
6887
  "json",
6854
6888
  "domexception",
6855
6889
  "url",
@@ -6863,7 +6897,9 @@ const COMPONENTS = [
6863
6897
  ];
6864
6898
  //#endregion
6865
6899
  //#region compiler/src/emit/components.ts
6866
- /** Every identifier name and string literal in the program: the names it can reach built-ins by. */
6900
+ /** Every identifier name and string literal in the program: the names it can reach built-ins by.
6901
+ * Syntax adds the names of what it needs: an async function or `await` adds `Promise`, a
6902
+ * generator `function*`, an async generator or `for await` `async function*`. */
6867
6903
  function programNames(program) {
6868
6904
  const names = /* @__PURE__ */ new Set();
6869
6905
  namesIn(program.body, names);
@@ -6880,6 +6916,11 @@ function namesIn(node, out) {
6880
6916
  else if (n.type === "RegExpLiteral") out.add("RegExp");
6881
6917
  else if (n.type === "BigIntLiteral") out.add("BigInt");
6882
6918
  else if (n.type === "Literal" && typeof n.value === "string") out.add(n.value);
6919
+ else if (n.type === "FunctionDeclaration" || n.type === "FunctionExpression") {
6920
+ if (n.async) out.add("Promise");
6921
+ if (n.generator) out.add(n.async ? "async function*" : "function*");
6922
+ } else if (n.type === "AwaitExpression" || n.type === "ImportCall") out.add("Promise");
6923
+ else if (n.type === "ForOfStatement" && n.await) out.add("async function*").add("Promise");
6883
6924
  for (const [key, value] of Object.entries(node)) if (key !== "loc" && value !== null && typeof value === "object") namesIn(value, out);
6884
6925
  }
6885
6926
  /** The optional components the program can reach, and those they need, in COMPONENTS order. */
@@ -6896,6 +6937,8 @@ const RUNTIME_DIR = join(import.meta.dirname, "runtime");
6896
6937
  const RUNTIME_INCLUDE = join(RUNTIME_DIR, "include");
6897
6938
  /** The core-method catalog the compiler reads (ADR 0014). */
6898
6939
  const CORE_DEF = join(RUNTIME_INCLUDE, "js_core.def");
6940
+ /** BoringSSL's directory (boringsslLibrary) */
6941
+ const BORINGSSL = join(RUNTIME_DIR, "third_party", "boringssl");
6899
6942
  /** Vendored libraries: every .c of these is part of libjsrt. */
6900
6943
  const THIRD_PARTY = [
6901
6944
  "quickjs-dtoa",
@@ -6904,9 +6947,6 @@ const THIRD_PARTY = [
6904
6947
  "ada-idna"
6905
6948
  ].map((d) => join(RUNTIME_DIR, "third_party", d));
6906
6949
  const cFiles = (dir, ext) => readdirSync(dir).filter((f) => f.endsWith(ext)).map((f) => join(dir, f));
6907
- const cFilesDeep = (dir, ext) => readdirSync(dir, { withFileTypes: true }).flatMap((e) => e.isDirectory() ? cFilesDeep(join(dir, e.name), ext) : e.name.endsWith(ext) ? [join(dir, e.name)] : []);
6908
- /** BearSSL (ADR 0018): the crypto component's primitives, behind runtime/src/crypto*.c. */
6909
- const BEARSSL = join(RUNTIME_DIR, "third_party", "bearssl");
6910
6950
  /** libjsrt, as a C library the driver builds (the shape host packages give theirs too). */
6911
6951
  function runtimeLibrary() {
6912
6952
  const src = join(RUNTIME_DIR, "src");
@@ -6921,27 +6961,39 @@ function runtimeLibrary() {
6921
6961
  flags: [
6922
6962
  `-I${RUNTIME_INCLUDE}`,
6923
6963
  ...THIRD_PARTY.map((d) => `-I${d}`),
6924
- `-I${join(BEARSSL, "inc")}`
6964
+ `-I${join(BORINGSSL, "include")}`
6925
6965
  ]
6926
6966
  };
6927
6967
  }
6928
- /** libbearssl: a library of its own, so runtime changes don't rebuild it. One function per
6929
- * file: a program links only the primitives it reaches. */
6930
- function bearsslLibrary() {
6968
+ /** BoringSSL (ADR 0018, 0019): the crypto component's, node:crypto's and node:tls's primitives,
6969
+ * behind runtime/src/crypto*.c; a library of its own, so runtime changes don't rebuild it. Its
6970
+ * sources are C++ (built without exceptions, RTTI or the C++ library) and per-platform assembly, which guards
6971
+ * itself: every file is compiled everywhere. The lists are BoringSSL's (sources.json, from its
6972
+ * gen/sources.json at the vendored commit). */
6973
+ function boringsslLibrary() {
6974
+ const lists = JSON.parse(readFileSync(join(BORINGSSL, "sources.json"), "utf8"));
6975
+ const parts = [
6976
+ "bcm",
6977
+ "crypto",
6978
+ "ssl"
6979
+ ].map((k) => lists[k]);
6980
+ const at = (f) => join(BORINGSSL, f);
6931
6981
  return {
6932
- name: "bearssl",
6933
- sources: cFilesDeep(join(BEARSSL, "src"), ".c"),
6934
- headers: [...cFiles(join(BEARSSL, "inc"), ".h"), ...cFilesDeep(join(BEARSSL, "src"), ".h")],
6935
- flags: [
6936
- `-I${join(BEARSSL, "inc")}`,
6937
- `-I${join(BEARSSL, "src")}`,
6938
- "-D_DEFAULT_SOURCE"
6939
- ]
6982
+ name: "boringssl",
6983
+ sources: [...parts.flatMap((p) => [...p.srcs, ...p.asm]).map(at), join(RUNTIME_DIR, "src", "boringssl_support.cc")],
6984
+ headers: parts.flatMap((p) => [...p.hdrs ?? [], ...p.internal_hdrs ?? []]).map(at),
6985
+ flags: [`-I${join(BORINGSSL, "include")}`, ...process.platform === "win32" ? BORINGSSL_WINDOWS : []]
6940
6986
  };
6941
6987
  }
6988
+ const BORINGSSL_WINDOWS = [
6989
+ "-DWIN32_LEAN_AND_MEAN",
6990
+ "-DNOMINMAX",
6991
+ "-D_HAS_EXCEPTIONS=0",
6992
+ ...process.arch === "x64" ? ["-DOPENSSL_NO_ASM"] : []
6993
+ ];
6942
6994
  /** The runtime's libraries, in link order: libjsrt, then the libraries it uses. */
6943
6995
  function runtimeLibraries() {
6944
- return [runtimeLibrary(), bearsslLibrary()];
6996
+ return [runtimeLibrary(), boringsslLibrary()];
6945
6997
  }
6946
6998
  //#endregion
6947
6999
  //#region compiler/src/emit/core.ts
@@ -7031,6 +7083,8 @@ const modules = {
7031
7083
  async_hooks: join(preludeDir, "async_hooks.js"),
7032
7084
  buffer: join(preludeDir, "buffer.js"),
7033
7085
  crypto: join(preludeDir, "crypto.js"),
7086
+ dns: join(preludeDir, "dns.js"),
7087
+ "dns/promises": join(preludeDir, "dns_promises.js"),
7034
7088
  events: join(preludeDir, "events.js"),
7035
7089
  fs: join(preludeDir, "fs.js"),
7036
7090
  http: join(preludeDir, "http.js"),
@@ -7045,9 +7099,11 @@ const modules = {
7045
7099
  "stream/promises": join(preludeDir, "stream_promises.js"),
7046
7100
  "stream/web": join(preludeDir, "stream_web.js"),
7047
7101
  string_decoder: join(preludeDir, "string_decoder.js"),
7102
+ tls: join(preludeDir, "tls.js"),
7048
7103
  tty: join(preludeDir, "tty.js"),
7049
7104
  url: join(preludeDir, "url.js"),
7050
7105
  util: join(preludeDir, "util.js"),
7106
+ "util/types": join(preludeDir, "util_types.js"),
7051
7107
  zlib: join(preludeDir, "zlib.js")
7052
7108
  };
7053
7109
  /** The host primitives: the name prelude code imports → its C function (JSNativeFn) and length.
@@ -7085,6 +7141,10 @@ const primitives = {
7085
7141
  c: "js_host_tty_isatty",
7086
7142
  length: 1
7087
7143
  },
7144
+ timerUnref: {
7145
+ c: "js_host_timer_unref",
7146
+ length: 2
7147
+ },
7088
7148
  osUname: {
7089
7149
  c: "js_host_os_uname",
7090
7150
  length: 0
@@ -7141,6 +7201,10 @@ const primitives = {
7141
7201
  c: "js_util_format_with_options",
7142
7202
  length: 1
7143
7203
  },
7204
+ utilTypeTag: {
7205
+ c: "js_util_type_tag",
7206
+ length: 1
7207
+ },
7144
7208
  cryptoHashNew: {
7145
7209
  c: "js_crypto_hash_new",
7146
7210
  length: 2
@@ -7289,6 +7353,26 @@ const primitives = {
7289
7353
  c: "js_crypto_verify",
7290
7354
  length: 7
7291
7355
  },
7356
+ cryptoSignMessage: {
7357
+ c: "js_crypto_sign_message",
7358
+ length: 2
7359
+ },
7360
+ cryptoVerifyMessage: {
7361
+ c: "js_crypto_verify_message",
7362
+ length: 3
7363
+ },
7364
+ cryptoModExp: {
7365
+ c: "js_crypto_mod_exp",
7366
+ length: 4
7367
+ },
7368
+ cryptoGeneratePrime: {
7369
+ c: "js_crypto_generate_prime",
7370
+ length: 4
7371
+ },
7372
+ cryptoCheckPrime: {
7373
+ c: "js_crypto_check_prime",
7374
+ length: 2
7375
+ },
7292
7376
  cryptoRsaCrypt: {
7293
7377
  c: "js_crypto_rsa_crypt",
7294
7378
  length: 6
@@ -7305,29 +7389,177 @@ const primitives = {
7305
7389
  c: "js_crypto_ec_private",
7306
7390
  length: 2
7307
7391
  },
7308
- httpListen: {
7309
- c: "js_host_http_listen",
7392
+ tlsContextNew: {
7393
+ c: "js_tls_context_new",
7394
+ length: 6
7395
+ },
7396
+ tlsContextAddRoots: {
7397
+ c: "js_tls_context_add_roots",
7398
+ length: 1
7399
+ },
7400
+ tlsContextAddCA: {
7401
+ c: "js_tls_context_add_ca",
7402
+ length: 2
7403
+ },
7404
+ tlsContextSetCert: {
7405
+ c: "js_tls_context_set_cert",
7406
+ length: 2
7407
+ },
7408
+ tlsContextSetKey: {
7409
+ c: "js_tls_context_set_key",
7410
+ length: 2
7411
+ },
7412
+ tlsRootCertificates: {
7413
+ c: "js_tls_root_certificates",
7414
+ length: 0
7415
+ },
7416
+ tlsCiphers: {
7417
+ c: "js_tls_ciphers",
7418
+ length: 0
7419
+ },
7420
+ tlsNew: {
7421
+ c: "js_tls_new",
7310
7422
  length: 7
7311
7423
  },
7312
- httpAddress: {
7313
- c: "js_host_http_address",
7424
+ tlsRun: {
7425
+ c: "js_tls_run",
7426
+ length: 3
7427
+ },
7428
+ tlsShutdown: {
7429
+ c: "js_tls_shutdown",
7430
+ length: 1
7431
+ },
7432
+ tlsInfo: {
7433
+ c: "js_tls_info",
7434
+ length: 1
7435
+ },
7436
+ tlsPeerCerts: {
7437
+ c: "js_tls_peer_certs",
7438
+ length: 1
7439
+ },
7440
+ tlsVerifyError: {
7441
+ c: "js_tls_verify_error",
7442
+ length: 1
7443
+ },
7444
+ tlsSession: {
7445
+ c: "js_tls_session",
7314
7446
  length: 1
7315
7447
  },
7316
- httpCloseServer: {
7317
- c: "js_host_http_close_server",
7448
+ tlsExportKeyingMaterial: {
7449
+ c: "js_tls_export_keying_material",
7450
+ length: 4
7451
+ },
7452
+ tlsSetNoRenegotiation: {
7453
+ c: "js_tls_set_no_renegotiation",
7318
7454
  length: 1
7319
7455
  },
7456
+ tlsFinished: {
7457
+ c: "js_tls_finished",
7458
+ length: 2
7459
+ },
7460
+ httpParsers: {
7461
+ c: "js_host_http_parsers",
7462
+ length: 5
7463
+ },
7464
+ httpAttach: {
7465
+ c: "js_host_http_attach",
7466
+ length: 4
7467
+ },
7468
+ httpDetach: {
7469
+ c: "js_host_http_detach",
7470
+ length: 1
7471
+ },
7472
+ httpExpired: {
7473
+ c: "js_host_http_expired",
7474
+ length: 3
7475
+ },
7320
7476
  httpWrite: {
7321
7477
  c: "js_host_http_write",
7322
7478
  length: 2
7323
7479
  },
7324
- httpEnd: {
7325
- c: "js_host_http_end",
7326
- length: 2
7480
+ httpFlush: {
7481
+ c: "js_host_http_flush",
7482
+ length: 1
7327
7483
  },
7328
7484
  httpDate: {
7329
7485
  c: "js_host_http_date",
7330
7486
  length: 0
7487
+ },
7488
+ netOpen: {
7489
+ c: "js_host_net_open",
7490
+ length: 2
7491
+ },
7492
+ netGuessHandle: {
7493
+ c: "js_host_net_guess_handle",
7494
+ length: 1
7495
+ },
7496
+ netOpenFd: {
7497
+ c: "js_host_net_open_fd",
7498
+ length: 2
7499
+ },
7500
+ netBind: {
7501
+ c: "js_host_net_bind",
7502
+ length: 4
7503
+ },
7504
+ netChmod: {
7505
+ c: "js_host_net_chmod",
7506
+ length: 2
7507
+ },
7508
+ netListen: {
7509
+ c: "js_host_net_listen",
7510
+ length: 2
7511
+ },
7512
+ netConnect: {
7513
+ c: "js_host_net_connect",
7514
+ length: 3
7515
+ },
7516
+ netCallback: {
7517
+ c: "js_host_net_callback",
7518
+ length: 2
7519
+ },
7520
+ netReadStart: {
7521
+ c: "js_host_net_read_start",
7522
+ length: 1
7523
+ },
7524
+ netReadStop: {
7525
+ c: "js_host_net_read_stop",
7526
+ length: 1
7527
+ },
7528
+ netWrite: {
7529
+ c: "js_host_net_write",
7530
+ length: 2
7531
+ },
7532
+ netShutdown: {
7533
+ c: "js_host_net_shutdown",
7534
+ length: 1
7535
+ },
7536
+ netClose: {
7537
+ c: "js_host_net_close",
7538
+ length: 1
7539
+ },
7540
+ netReset: {
7541
+ c: "js_host_net_reset",
7542
+ length: 1
7543
+ },
7544
+ netRef: {
7545
+ c: "js_host_net_ref",
7546
+ length: 2
7547
+ },
7548
+ netAddress: {
7549
+ c: "js_host_net_address",
7550
+ length: 2
7551
+ },
7552
+ netNoDelay: {
7553
+ c: "js_host_net_no_delay",
7554
+ length: 2
7555
+ },
7556
+ netKeepAlive: {
7557
+ c: "js_host_net_keep_alive",
7558
+ length: 3
7559
+ },
7560
+ dnsLookup: {
7561
+ c: "js_host_dns_lookup",
7562
+ length: 3
7331
7563
  }
7332
7564
  };
7333
7565
  const UV_COMMON = [
@@ -7364,38 +7596,84 @@ const UV_UNIX = [
7364
7596
  "tty",
7365
7597
  "udp",
7366
7598
  "proctitle"
7367
- ];
7599
+ ].map((f) => `unix/${f}`);
7368
7600
  const UV_PLATFORM = {
7369
7601
  linux: {
7370
- sources: [
7602
+ sources: [...UV_UNIX, ...[
7371
7603
  "linux",
7372
7604
  "procfs-exepath",
7373
7605
  "random-getrandom",
7374
7606
  "random-sysctl-linux"
7375
- ],
7607
+ ].map((f) => `unix/${f}`)],
7376
7608
  defines: ["_GNU_SOURCE", "_POSIX_C_SOURCE=200112"]
7377
7609
  },
7378
7610
  darwin: {
7379
- sources: [
7611
+ sources: [...UV_UNIX, ...[
7380
7612
  "random-getentropy",
7381
7613
  "darwin-proctitle",
7382
7614
  "darwin",
7383
7615
  "fsevents",
7384
7616
  "bsd-ifaddrs",
7385
7617
  "kqueue"
7386
- ],
7618
+ ].map((f) => `unix/${f}`)],
7387
7619
  defines: ["_DARWIN_UNLIMITED_SELECT=1", "_DARWIN_USE_64_BIT_INODE=1"]
7620
+ },
7621
+ win32: {
7622
+ sources: [
7623
+ "async",
7624
+ "core",
7625
+ "detect-wakeup",
7626
+ "dl",
7627
+ "error",
7628
+ "fs",
7629
+ "fs-event",
7630
+ "getaddrinfo",
7631
+ "getnameinfo",
7632
+ "handle",
7633
+ "loop-watcher",
7634
+ "pipe",
7635
+ "thread",
7636
+ "poll",
7637
+ "process",
7638
+ "process-stdio",
7639
+ "signal",
7640
+ "snprintf",
7641
+ "stream",
7642
+ "tcp",
7643
+ "tty",
7644
+ "udp",
7645
+ "util",
7646
+ "winapi",
7647
+ "winsock"
7648
+ ].map((f) => `win/${f}`),
7649
+ defines: [
7650
+ "WIN32_LEAN_AND_MEAN",
7651
+ "_WIN32_WINNT=0x0A00",
7652
+ "_CRT_DECLARE_NONSTDC_NAMES=0"
7653
+ ],
7654
+ link: [
7655
+ "psapi",
7656
+ "user32",
7657
+ "advapi32",
7658
+ "iphlpapi",
7659
+ "userenv",
7660
+ "ws2_32",
7661
+ "dbghelp",
7662
+ "ole32",
7663
+ "shell32"
7664
+ ]
7388
7665
  }
7389
7666
  };
7390
7667
  /** The C libraries to build and link (before libjsrt, which they use). */
7391
7668
  function libraries(runtimeInclude) {
7392
7669
  const uv = UV_PLATFORM[process.platform];
7393
- const uvSources = uv ? [...UV_COMMON.map((f) => join(UV, "src", `${f}.c`)), ...[...UV_UNIX, ...uv.sources].map((f) => join(UV, "src", "unix", `${f}.c`))] : [];
7670
+ const uvSources = uv ? [...UV_COMMON, ...uv.sources].map((f) => join(UV, "src", `${f}.c`)) : [];
7394
7671
  const uvHeaders = [
7395
7672
  join(UV, "include"),
7396
7673
  join(UV, "include", "uv"),
7397
7674
  join(UV, "src"),
7398
- join(UV, "src", "unix")
7675
+ join(UV, "src", "unix"),
7676
+ join(UV, "src", "win")
7399
7677
  ].flatMap((d) => files(d, ".h"));
7400
7678
  return [{
7401
7679
  name: "jsnode",
@@ -7425,7 +7703,8 @@ function libraries(runtimeInclude) {
7425
7703
  ...(uv?.defines ?? []).map((d) => `-D${d}`),
7426
7704
  `-I${join(UV, "include")}`,
7427
7705
  `-I${join(UV, "src")}`
7428
- ]
7706
+ ],
7707
+ link: uv?.link ?? []
7429
7708
  }];
7430
7709
  }
7431
7710
  //#endregion
@@ -7447,7 +7726,7 @@ function hostPrimitives(hosts) {
7447
7726
  /** A bundling failure, already formatted as `file:line:col: Kind: message` lines. */
7448
7727
  var BundleError = class extends Error {};
7449
7728
  /** Bundles `entry` with the ADR 0009 configuration, `node:*` imports resolved to the host
7450
- * packages' modules. Warnings go to `warn`. */
7729
+ * packages' modules. Warnings go to `warn`, with their location ("file:line:col: ", or ""). */
7451
7730
  async function bundle(entry, hosts, warn) {
7452
7731
  try {
7453
7732
  const build = await rolldown({
@@ -7455,7 +7734,7 @@ async function bundle(entry, hosts, warn) {
7455
7734
  cwd: dirname(resolve(entry)),
7456
7735
  platform: "node",
7457
7736
  logLevel: "warn",
7458
- onLog: (_level, log) => warn(formatLog(log, "warning")),
7737
+ onLog: (_level, log) => log.code !== "EVAL" && warn(logText(log), logWhere(log)),
7459
7738
  plugins: [hostModules(hosts)]
7460
7739
  });
7461
7740
  try {
@@ -7525,26 +7804,45 @@ module.exports = m;
7525
7804
  const REQUIRED = "\0visaljs-require:";
7526
7805
  /** rolldown's messages carry ANSI colors and a code frame: keep the first line, without the `[CODE]` tag. */
7527
7806
  function formatLog(log, kind) {
7528
- const text = log.message.replace(/\x1b\[[0-9;]*m/g, "").split("\n")[0].replace(/^\[[A-Z_]+\] /, "").trim();
7529
- return `${log.loc ? `${log.loc.file ?? log.id}:${log.loc.line}:${log.loc.column + 1}: ` : log.id ? `${log.id}: ` : ""}${kind}: ${text}`;
7807
+ return `${logWhere(log)}${kind}: ${logText(log)}`;
7808
+ }
7809
+ function logText(log) {
7810
+ return log.message.replace(/\x1b\[[0-9;]*m/g, "").split("\n")[0].replace(/^\[[A-Z_]+\] /, "").trim();
7811
+ }
7812
+ /** "file:line:col: ", "file: ", or "". */
7813
+ function logWhere(log) {
7814
+ return log.loc ? `${log.loc.file ?? log.id}:${log.loc.line}:${log.loc.column + 1}: ` : log.id ? `${log.id}: ` : "";
7530
7815
  }
7531
7816
  //#endregion
7532
7817
  //#region cli/src/cc.ts
7533
- /** $CC, else the first of the usual C compilers on the PATH. */
7534
- function findCompiler() {
7818
+ /** $CC alone, else each of the usual C compilers on the PATH that runs, in order of preference:
7819
+ * a build falls back to the next when one fails. Names for the same program (cc, a link to
7820
+ * gcc) count once. Last comes Zig's clang, which brings its own libc headers and linker: a C
7821
+ * compiler for a machine whose own toolchain is missing or broken. */
7822
+ function findCompilers() {
7535
7823
  if (process.env.CC) {
7536
7824
  if (!compilerVersion(process.env.CC)) throw new Error(`$CC (${process.env.CC}) doesn't run`);
7537
- return process.env.CC;
7825
+ return [process.env.CC];
7538
7826
  }
7827
+ const found = /* @__PURE__ */ new Map();
7539
7828
  for (const cc of [
7540
7829
  "cc",
7541
7830
  "clang",
7542
- "gcc"
7543
- ]) try {
7544
- execFileSync(cc, ["--version"], { stdio: "ignore" });
7545
- return cc;
7831
+ "gcc",
7832
+ "zig cc"
7833
+ ]) {
7834
+ const path = onPath(command(cc)[0]);
7835
+ if (path && !found.has(path) && compilerVersion(cc)) found.set(path, cc);
7836
+ }
7837
+ if (found.size === 0) throw new Error("no C compiler found (set CC)");
7838
+ return [...found.values()];
7839
+ }
7840
+ /** The program `name` runs from the PATH, links resolved; else undefined. */
7841
+ function onPath(name) {
7842
+ const exts = process.platform === "win32" ? (process.env.PATHEXT ?? ".EXE").split(delimiter) : [""];
7843
+ for (const dir of (process.env.PATH ?? "").split(delimiter)) for (const ext of exts) try {
7844
+ return realpathSync(join(dir, name + ext));
7546
7845
  } catch {}
7547
- throw new Error("no C compiler found (set CC)");
7548
7846
  }
7549
7847
  const COMMON = [
7550
7848
  "-std=c11",
@@ -7556,8 +7854,28 @@ const COMMON = [
7556
7854
  ];
7557
7855
  const LINK = process.platform === "darwin" ? ["-Wl,-dead_strip"] : ["-Wl,--gc-sections"];
7558
7856
  const STRIP = process.platform === "darwin" ? ["-Wl,-S,-x"] : ["-s"];
7559
- /** "GCC 13.3.0", "clang 18.1.3": the compiler's name and version, else its command. */
7857
+ /** A compiler's command line, split like make splits $(CC): "zig cc", "ccache gcc". */
7858
+ function command(cc) {
7859
+ const [program = cc, ...args] = cc.trim().split(/\s+/);
7860
+ return [program, ...args];
7861
+ }
7862
+ /** Runs the compiler with `args`, synchronously (execFileSync's options and result). */
7863
+ function runCompiler(cc, args, options) {
7864
+ const [program, ...prefix] = command(cc);
7865
+ return execFileSync(program, [...prefix, ...args], options);
7866
+ }
7867
+ /** Zig compiles C with its clang, and archives with its own ar: a machine without a C
7868
+ * toolchain usually lacks binutils' ar too. */
7869
+ function isZig(cc) {
7870
+ return /^zig(\.exe)?$/i.test(basename(command(cc)[0]));
7871
+ }
7872
+ /** "GCC 13.3.0", "clang 18.1.3", "Zig 0.16.0": the compiler's name and version, else its command. */
7560
7873
  function describeCompiler(cc) {
7874
+ if (isZig(cc)) try {
7875
+ return `Zig ${execFileSync(command(cc)[0], ["version"], { encoding: "utf8" }).trim()}`;
7876
+ } catch {
7877
+ return cc;
7878
+ }
7561
7879
  const text = compilerVersion(cc);
7562
7880
  const first = text.split("\n")[0] ?? "";
7563
7881
  const version = (/version (\d+\.\d+(?:\.\d+)?)/.exec(first) ?? /(\d+\.\d+(?:\.\d+)?)\S*\s*$/.exec(first))?.[1];
@@ -7568,7 +7886,14 @@ function describeCompiler(cc) {
7568
7886
  }
7569
7887
  function compilerVersion(cc) {
7570
7888
  try {
7571
- return execFileSync(cc, ["--version"], { encoding: "utf8" });
7889
+ return runCompiler(cc, ["--version"], {
7890
+ encoding: "utf8",
7891
+ stdio: [
7892
+ "ignore",
7893
+ "pipe",
7894
+ "ignore"
7895
+ ]
7896
+ });
7572
7897
  } catch {
7573
7898
  return "";
7574
7899
  }
@@ -7579,6 +7904,7 @@ function libraryArchive(tc, lib, building) {
7579
7904
  const hash = createHash("sha256");
7580
7905
  hash.update(`${tc.cc}\n${compilerVersion(tc.cc)}\n${[
7581
7906
  ...COMMON,
7907
+ ...CXX,
7582
7908
  ...tc.opt,
7583
7909
  ...lib.flags
7584
7910
  ].join(" ")}\n`);
@@ -7594,8 +7920,7 @@ function libraryArchive(tc, lib, building) {
7594
7920
  try {
7595
7921
  const objects = lib.sources.map((_, i) => join(work, `${i}.o`));
7596
7922
  compileAll(lib.sources.map((src, i) => [
7597
- tc.cc,
7598
- ...COMMON,
7923
+ ...compileCommand(tc.cc, src),
7599
7924
  ...tc.opt,
7600
7925
  "-DNDEBUG",
7601
7926
  ...lib.flags,
@@ -7604,7 +7929,9 @@ function libraryArchive(tc, lib, building) {
7604
7929
  "-o",
7605
7930
  objects[i]
7606
7931
  ]));
7607
- execFileSync("ar", [
7932
+ const [ar, ...arPrefix] = isZig(tc.cc) ? [command(tc.cc)[0], "ar"] : ["ar"];
7933
+ execFileSync(ar, [
7934
+ ...arPrefix,
7608
7935
  "rcs",
7609
7936
  join(work, `lib${lib.name}.a`),
7610
7937
  ...objects
@@ -7625,6 +7952,25 @@ function libraryArchive(tc, lib, building) {
7625
7952
  }
7626
7953
  return archive;
7627
7954
  }
7955
+ const CXX = [
7956
+ "-std=c++17",
7957
+ "-fno-exceptions",
7958
+ "-fno-rtti",
7959
+ ...COMMON.filter((f) => !f.startsWith("-std="))
7960
+ ];
7961
+ function compileCommand(cc, src) {
7962
+ if (!src.endsWith(".cc")) return [...command(cc), ...COMMON];
7963
+ const cmd = command(cc);
7964
+ if (isZig(cc)) return [...cmd.map((w) => w === "cc" ? "c++" : w), ...CXX];
7965
+ return [
7966
+ ...cmd,
7967
+ "-x",
7968
+ "c++",
7969
+ ...CXX
7970
+ ];
7971
+ }
7972
+ /** Runs the compiler commands, as many at once as there are processors (in a child Node process:
7973
+ * the driver's API is synchronous; the commands on its stdin). Throws when one fails, after its output. */
7628
7974
  const PARALLEL = `
7629
7975
  const { spawn } = require("node:child_process");
7630
7976
  const jobs = JSON.parse(require("node:fs").readFileSync(0, "utf8"));
@@ -7675,7 +8021,7 @@ function regexpCompiler(cc) {
7675
8021
  if (existsSync(tool)) return tool;
7676
8022
  mkdirSync(cacheRoot(), { recursive: true });
7677
8023
  const tmp = `${tool}.${process.pid}.tmp`;
7678
- execFileSync(cc, [
8024
+ runCompiler(cc, [
7679
8025
  "-std=c11",
7680
8026
  "-O2",
7681
8027
  `-I${regexp}`,
@@ -7692,9 +8038,11 @@ function regexpCompiler(cc) {
7692
8038
  return tool;
7693
8039
  }
7694
8040
  /** A program's archives, in link order: the host packages' libraries, then libjsrt (which they
7695
- * use). Each is built the first time; `building` hears about it. */
8041
+ * use), then the system libraries they need (-l…). Each is built the first time; `building`
8042
+ * hears about it. */
7696
8043
  function programArchives(tc, hosts, building) {
7697
- return [...hosts.flatMap((h) => h.libraries(RUNTIME_INCLUDE)).filter((l) => l.sources.length), ...runtimeLibraries()].map((l) => libraryArchive(tc, l, building));
8044
+ const libraries = [...hosts.flatMap((h) => h.libraries(RUNTIME_INCLUDE)).filter((l) => l.sources.length), ...runtimeLibraries()];
8045
+ return [...libraries.map((l) => libraryArchive(tc, l, building)), ...libraries.flatMap((l) => l.link ?? []).map((l) => `-l${l}`)];
7698
8046
  }
7699
8047
  /** Compiles program.c and links it with `archives` (programArchives). The linker takes only
7700
8048
  * what the program reaches: a program without I/O links no libuv. The libraries keep their
@@ -7715,19 +8063,96 @@ function compileProgram(tc, cFile, output, archives, extraFlags = []) {
7715
8063
  output
7716
8064
  ];
7717
8065
  return new Promise((resolve, reject) => {
7718
- spawn(tc.cc, args, { stdio: [
8066
+ let errors = "";
8067
+ const [program, ...prefix] = command(tc.cc);
8068
+ const child = spawn(program, [...prefix, ...args], { stdio: [
7719
8069
  "ignore",
7720
8070
  "inherit",
7721
- "inherit"
7722
- ] }).on("error", reject).on("close", (code) => code === 0 ? resolve() : reject(/* @__PURE__ */ new Error(`${tc.cc} exited with code ${code}`)));
8071
+ "pipe"
8072
+ ] });
8073
+ child.stderr.on("data", (chunk) => {
8074
+ process.stderr.write(chunk);
8075
+ errors = (errors + chunk.toString()).slice(-16384);
8076
+ });
8077
+ child.on("error", reject).on("close", (code) => {
8078
+ if (code === 0) return resolve();
8079
+ const hint = toolchainHint(errors);
8080
+ reject(/* @__PURE__ */ new Error(`${tc.cc} exited with code ${code}${hint ? `\n hint: ${hint}` : ""}`));
8081
+ });
7723
8082
  });
7724
8083
  }
8084
+ /** A hint for a compiler failure that isn't the program's fault, else undefined. */
8085
+ function toolchainHint(stderr) {
8086
+ if (/tapi error|unknown architecture/.test(stderr)) return "the macOS SDK is newer than the linker (Command Line Tools and SDK don't match). Check `xcode-select -p`, `ld -v` and `xcrun --show-sdk-path`; reinstalling the Command Line Tools (`sudo rm -rf /Library/Developer/CommandLineTools && xcode-select --install`) or setting SDKROOT to an older SDK fixes it.";
8087
+ }
7725
8088
  function scratchDir() {
7726
8089
  const dir = join(tmpdir(), `visaljs-${process.pid}-${Date.now()}`);
7727
8090
  mkdirSync(dir, { recursive: true });
7728
8091
  return dir;
7729
8092
  }
7730
8093
  //#endregion
8094
+ //#region cli/src/eval.ts
8095
+ /** Calls of the global eval that may get source text, and of the global Function (with or
8096
+ * without new), in source order. Aliases (`const F = Function`) aren't followed. */
8097
+ function evalCalls(program, info) {
8098
+ const out = [];
8099
+ const global = (callee, name) => callee.type === "Identifier" && callee.name === name && info.references.get(callee)?.binding === null;
8100
+ const walk = (node) => {
8101
+ if (Array.isArray(node)) {
8102
+ for (const x of node) walk(x);
8103
+ return;
8104
+ }
8105
+ if (node === null || typeof node !== "object") return;
8106
+ const n = node;
8107
+ if (n.type === "CallExpression" || n.type === "NewExpression") {
8108
+ if (global(n.callee, "Function")) out.push({
8109
+ kind: "Function",
8110
+ loc: n.loc
8111
+ });
8112
+ else if (n.type === "CallExpression" && global(n.callee, "eval") && mayBeString(n.arguments[0])) out.push({
8113
+ kind: "eval",
8114
+ loc: n.loc
8115
+ });
8116
+ }
8117
+ for (const [key, value] of Object.entries(node)) if (key !== "loc" && value !== null && typeof value === "object") walk(value);
8118
+ };
8119
+ walk(program.body);
8120
+ return out;
8121
+ }
8122
+ function mayBeString(arg) {
8123
+ if (!arg) return false;
8124
+ switch (arg.type) {
8125
+ case "Literal": return typeof arg.value === "string";
8126
+ case "BigIntLiteral":
8127
+ case "ObjectExpression":
8128
+ case "ArrayExpression":
8129
+ case "FunctionExpression": return false;
8130
+ default: return true;
8131
+ }
8132
+ }
8133
+ /** The warning's message (null: no calls), and with `verbose` a line per call. */
8134
+ function evalWarning(calls, verbose) {
8135
+ if (calls.length === 0) return null;
8136
+ const n = (kind) => calls.filter((c) => c.kind === kind).length;
8137
+ const places = (k) => `${k} ${k === 1 ? "place" : "places"}`;
8138
+ const parts = [];
8139
+ if (n("eval")) parts.push(`eval() of source text in ${places(n("eval"))}`);
8140
+ if (n("Function")) parts.push(`new Function() in ${places(n("Function"))}`);
8141
+ const owners = [...new Set(calls.map((c) => packageOf(c.loc.file) ?? "your code"))];
8142
+ let text = `the program uses ${parts.join(" and ")} (in ${owners.join(", ")}): compiled code can't evaluate source text, so ${calls.length === 1 ? "it throws" : "they throw"} a TypeError if reached`;
8143
+ if (verbose) text += calls.map((c) => `\n ${c.loc.file}:${c.loc.line}:${c.loc.column}: ${c.kind === "eval" ? "eval()" : "new Function()"}`).join("");
8144
+ else text += "\n (--verbose lists them)";
8145
+ return text;
8146
+ }
8147
+ /** The npm package a file belongs to: the last node_modules/<name> (or @scope/name) in its path. */
8148
+ function packageOf(file) {
8149
+ const parts = file.split(/[\\/]/);
8150
+ const i = parts.lastIndexOf("node_modules");
8151
+ if (i < 0 || i + 1 >= parts.length) return null;
8152
+ const name = parts[i + 1];
8153
+ return name.startsWith("@") && i + 2 < parts.length ? `${name}/${parts[i + 2]}` : name;
8154
+ }
8155
+ //#endregion
7731
8156
  //#region cli/src/regexp.ts
7732
8157
  /** The program's regex literals, in source order. */
7733
8158
  function regexpLiterals(program) {
@@ -7764,7 +8189,7 @@ function compileRegExps(cc, literals) {
7764
8189
  maxBuffer: 1 << 30
7765
8190
  });
7766
8191
  if (run.status !== 0) throw new Error(`regexp-compile failed: ${run.stderr || run.error?.message}`);
7767
- const lines = run.stdout.split("\n");
8192
+ const lines = run.stdout.split(/\r?\n/);
7768
8193
  let i = 0;
7769
8194
  for (const [key, lit] of todo) {
7770
8195
  const line = lines[i++] ?? "";
@@ -7839,6 +8264,10 @@ var Report = class {
7839
8264
  this.#write(`${text}\n`);
7840
8265
  if (this.#live && this.#running) this.#draw();
7841
8266
  }
8267
+ /** A warning, after its location (`where`, if any): printed even when quiet, its label in yellow. */
8268
+ warn(message, where = "") {
8269
+ this.note(`${where}${this.#paint("1;33", "warning:")} ${message}`);
8270
+ }
7842
8271
  /** The last line, given the whole build's time. */
7843
8272
  finish(icon, text) {
7844
8273
  if (this.#style) this.#write(`\n ${icon} ${this.#paint("1", text(since(this.#start)))}\n`);
@@ -7853,11 +8282,13 @@ var Report = class {
7853
8282
  const { icon, label } = this.#running;
7854
8283
  this.#write(`${CLEAR} ${this.#paint("36", FRAMES[this.#frame % FRAMES.length])} ${icon} ${this.#paint("2", `${label}…`)}`);
7855
8284
  }
8285
+ /** A multi-line `line` keeps its time on the first: the rest is detail under it. */
7856
8286
  #end(line) {
7857
8287
  clearInterval(this.#timer);
7858
8288
  const start = this.#running.since;
7859
8289
  this.#running = void 0;
7860
- if (this.#style) this.#write(`${this.#live ? CLEAR : ""} ${line} ${this.#paint("2", since(start))}\n`);
8290
+ const [first, ...rest] = line.split("\n");
8291
+ if (this.#style) this.#write(`${this.#live ? CLEAR : ""} ${first} ${this.#paint("2", since(start))}\n${rest.map((l) => `${l}\n`).join("")}`);
7861
8292
  }
7862
8293
  };
7863
8294
  function since(start) {
@@ -7885,7 +8316,7 @@ function lineCount(text) {
7885
8316
  }
7886
8317
  //#endregion
7887
8318
  //#region cli/src/main.ts
7888
- const VERSION = "0.0.2";
8319
+ const VERSION = "0.0.4";
7889
8320
  const USAGE = `usage: visaljs build <entry.js> [options]
7890
8321
 
7891
8322
  options:
@@ -7899,6 +8330,7 @@ options:
7899
8330
  --no-bundle skip the bundler: the input is one ES module (a bundle)
7900
8331
  --script compile as a classic script (sloppy mode, no bundler)
7901
8332
  -q, --quiet don't report each step of the build
8333
+ --verbose list each place a warning is about
7902
8334
  --version print the version
7903
8335
  --help print this help
7904
8336
  `;
@@ -7926,6 +8358,7 @@ async function main(argv, io) {
7926
8358
  type: "boolean",
7927
8359
  short: "q"
7928
8360
  },
8361
+ verbose: { type: "boolean" },
7929
8362
  version: { type: "boolean" },
7930
8363
  help: {
7931
8364
  type: "boolean",
@@ -7946,10 +8379,6 @@ async function main(argv, io) {
7946
8379
  io.stdout(USAGE);
7947
8380
  return values.help ? 0 : 2;
7948
8381
  }
7949
- if ((io.platform ?? process.platform) === "win32") {
7950
- io.stderr("visaljs: Windows is not supported yet; use Linux or macOS (on Windows, WSL works)\n");
7951
- return 1;
7952
- }
7953
8382
  const [command, ...rest] = positionals;
7954
8383
  switch (command) {
7955
8384
  case "build":
@@ -7976,9 +8405,9 @@ async function build(entry, options, io) {
7976
8405
  const binary = !dump && !options["emit-c"];
7977
8406
  const hosts = DEFAULT_HOSTS;
7978
8407
  const primitives = hostPrimitives(hosts);
7979
- let cc;
8408
+ let compilers;
7980
8409
  if (binary) try {
7981
- cc = await report.step("🔍", "Detecting a C compiler", findCompiler, (cc) => `Detected ${describeCompiler(cc)}${process.env.CC ? " (from $CC)" : ""}`);
8410
+ compilers = await report.step("🔍", "Detecting C compilers", findCompilers, detected);
7982
8411
  } catch (e) {
7983
8412
  io.stderr(`visaljs: ${e.message}\n`);
7984
8413
  return 1;
@@ -7987,7 +8416,7 @@ async function build(entry, options, io) {
7987
8416
  const bundled = !script && options["no-bundle"] !== true;
7988
8417
  let map;
7989
8418
  if (bundled) try {
7990
- const b = await report.step("📦", "Rolling the modules into a single file", () => bundle(entry, hosts, (message) => report.note(message)), (b) => `Rolled ${count(b.modules, "module")} into a single file (${size(Buffer.byteLength(b.code))})`);
8419
+ const b = await report.step("📦", "Rolling the modules into a single file", () => bundle(entry, hosts, (message, where) => report.warn(message, where)), (b) => `Rolled ${count(b.modules, "module")} into a single file (${size(Buffer.byteLength(b.code))})`);
7991
8420
  source = b.code;
7992
8421
  if (b.map) map = new SourceMap(b.map, displayPath);
7993
8422
  } catch (e) {
@@ -8003,8 +8432,10 @@ async function build(entry, options, io) {
8003
8432
  return 0;
8004
8433
  }
8005
8434
  const info = analyze(ast);
8435
+ const evalWarn = evalWarning(evalCalls(ast, info), options.verbose === true);
8436
+ if (evalWarn) report.warn(evalWarn);
8006
8437
  const literals = regexpLiterals(ast);
8007
- const regexps = literals.length ? await report.step("🧩", "Compiling the regular expressions", () => compileRegExps(cc ??= findCompiler(), literals), () => `Compiled ${count(literals.length, "regular expression")}`) : /* @__PURE__ */ new Map();
8438
+ const regexps = literals.length ? await report.step("🧩", "Compiling the regular expressions", () => withCompiler(compilers ??= findCompilers(), report, (cc) => compileRegExps(cc, literals)), () => `Compiled ${count(literals.length, "regular expression")}`) : /* @__PURE__ */ new Map();
8008
8439
  const unsupported = firstUnsupported(ast);
8009
8440
  if (unsupported) throw unsupported;
8010
8441
  const ir = await report.step("🔧", "Converting to IR and optimizing", () => optimize(lower(ast, info)), (ir) => `Converted ${count(ir.functions.length + 1, "function")} to IR and optimized them`);
@@ -8033,22 +8464,26 @@ async function build(entry, options, io) {
8033
8464
  report.finish("📂", (time) => `Wrote ${displayPath(resolve(options["emit-c"], "program.c"))} in ${time}`);
8034
8465
  return 0;
8035
8466
  }
8036
- const output = options.output ?? basename(entry).replace(/\.[cm]?js$/, "");
8037
- const tc = {
8038
- cc,
8039
- opt: options.debug ? ["-O0"] : ["-O2"],
8040
- strip: !options.debug
8041
- };
8467
+ let output = options.output ?? basename(entry).replace(/\.[cm]?js$/, "");
8468
+ if (process.platform === "win32" && !extname(output)) output += ".exe";
8469
+ const opt = options.debug ? ["-O0"] : ["-O2"];
8042
8470
  const dir = scratchDir();
8043
8471
  try {
8044
8472
  const file = join(dir, "program.c");
8045
8473
  writeFileSync(file, c);
8046
- const built = [];
8047
- const archives = await report.step("📚", "Preparing the runtime libraries", () => programArchives(tc, hosts, (name) => {
8048
- built.push(`lib${name}`);
8049
- report.relabel(`Building lib${name} (first build only: it's cached after)`);
8050
- }), () => built.length ? `Built ${built.join(", ")} (cached for next time)` : "Runtime libraries ready (cached ⚡)");
8051
- await report.step("🔨", `Compiling with ${describeCompiler(tc.cc)}`, () => compileProgram(tc, file, output, archives), () => `Compiled the binary (${tc.opt.join(" ")}, ${tc.strip ? "stripped" : "with debug info"})`);
8474
+ await withCompiler(compilers, report, async (cc) => {
8475
+ const tc = {
8476
+ cc,
8477
+ opt,
8478
+ strip: !options.debug
8479
+ };
8480
+ const built = [];
8481
+ const archives = await report.step("📚", "Preparing the runtime libraries", () => programArchives(tc, hosts, (name) => {
8482
+ built.push(`lib${name}`);
8483
+ report.relabel(`Building lib${name} with ${describeCompiler(cc)} (first build only: it's cached after)`);
8484
+ }), () => built.length ? `Built ${built.join(", ")} (cached for next time)` : "Runtime libraries ready (cached ⚡)");
8485
+ await report.step("🔨", `Compiling with ${describeCompiler(cc)}`, () => compileProgram(tc, file, output, archives), () => `Compiled the binary with ${describeCompiler(cc)} (${opt.join(" ")}, ${tc.strip ? "stripped" : "with debug info"})`);
8486
+ });
8052
8487
  } catch (e) {
8053
8488
  io.stderr(`visaljs: C compilation failed: ${e.message}\n`);
8054
8489
  return 1;
@@ -8062,12 +8497,36 @@ async function build(entry, options, io) {
8062
8497
  report.finish("🎉", (time) => `Built ${displayPath(resolve(output))} in ${time}: ${size(bytes)}, ${sizeQuip(bytes)}`);
8063
8498
  return 0;
8064
8499
  }
8500
+ /** "Detected GCC 13.3.0", else the compilers numbered in the order they're tried, under the
8501
+ * step's line (indented to its text). */
8502
+ function detected(compilers) {
8503
+ const names = compilers.map(describeCompiler);
8504
+ if (names.length === 1) return `Detected ${names[0]}${process.env.CC ? " (from $CC)" : ""}`;
8505
+ return [`Detected ${count(names.length, "C compiler")} (tried in this order, falling back to the next if one fails):`, ...names.map((name, i) => ` ${i + 1}. ${name}`)].join("\n");
8506
+ }
8507
+ /** Runs `run` with each compiler in turn until one succeeds. A failure that isn't the
8508
+ * program's (not a CompileError) is noted and moves on to the next; the compilers that failed
8509
+ * are dropped, so later steps start with the one that worked. The last failure is rethrown. */
8510
+ async function withCompiler(compilers, report, run) {
8511
+ for (;;) {
8512
+ const cc = compilers[0];
8513
+ try {
8514
+ return await run(cc);
8515
+ } catch (e) {
8516
+ if (e instanceof CompileError || compilers.length === 1) throw e;
8517
+ compilers.shift();
8518
+ const reason = e.message.split("\n")[0];
8519
+ const why = reason.startsWith("Command failed") ? "" : ` (${reason})`;
8520
+ report.note(` ⚠ ${describeCompiler(cc)} failed${why}, trying ${describeCompiler(compilers[0])}`);
8521
+ }
8522
+ }
8523
+ }
8065
8524
  /** How diagnostics and #line name an original file: relative to the working directory when
8066
8525
  * it's inside it, else absolute. Code the bundler generated keeps its own name. */
8067
8526
  function displayPath(source) {
8068
8527
  if (source.startsWith("\0")) return source.slice(1);
8069
8528
  const rel = relative(process.cwd(), source);
8070
- return rel.startsWith("..") || isAbsolute(rel) ? source : rel;
8529
+ return rel.startsWith("..") || isAbsolute(rel) ? normalize(source) : rel;
8071
8530
  }
8072
8531
  //#endregion
8073
8532
  //#region cli/src/cli.ts