visaljs 0.0.1 → 0.0.3

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 (1008) hide show
  1. package/README.md +17 -1
  2. package/cli.js +565 -75
  3. package/node/include/js_node.h +28 -5
  4. package/node/include/js_uv.h +36 -0
  5. package/node/prelude/crypto.js +7 -10
  6. package/node/prelude/dns.js +99 -0
  7. package/node/prelude/dns_promises.js +10 -0
  8. package/node/prelude/http.js +1039 -195
  9. package/node/prelude/internal/crypto/asym.js +39 -12
  10. package/node/prelude/internal/crypto/dh_groups.js +12 -0
  11. package/node/prelude/internal/crypto/diffiehellman.js +354 -0
  12. package/node/prelude/internal/crypto/hash.js +1 -1
  13. package/node/prelude/internal/crypto/key_type.js +3 -0
  14. package/node/prelude/internal/crypto/keys.js +39 -9
  15. package/node/prelude/internal/http_agent.js +249 -0
  16. package/node/prelude/internal/net.js +33 -0
  17. package/node/prelude/internal/socketaddress.js +249 -0
  18. package/node/prelude/internal/tls/common.js +306 -0
  19. package/node/prelude/internal/tls/wrap.js +1217 -0
  20. package/node/prelude/internal/tls/x509.js +394 -0
  21. package/node/prelude/net.js +1083 -50
  22. package/node/prelude/stream.js +6 -0
  23. package/node/prelude/tls.js +141 -0
  24. package/node/prelude/util.js +5 -2
  25. package/node/prelude/util_types.js +85 -0
  26. package/node/src/host_http.c +268 -270
  27. package/node/src/host_loop.c +84 -0
  28. package/node/src/host_net.c +495 -0
  29. package/node/src/host_sys.c +16 -0
  30. package/package.json +1 -1
  31. package/runtime/include/js_builtins.h +16 -0
  32. package/runtime/include/js_console.h +2 -0
  33. package/runtime/include/js_core.def +23 -0
  34. package/runtime/include/js_crypto.h +23 -0
  35. package/runtime/include/js_generator.h +2 -3
  36. package/runtime/include/js_promise.h +0 -2
  37. package/runtime/src/async_iter.c +4 -1
  38. package/runtime/src/boringssl_support.cc +34 -0
  39. package/runtime/src/builtin_table.c +8 -0
  40. package/runtime/src/components.c +10 -0
  41. package/runtime/src/console.c +6 -18
  42. package/runtime/src/core_all.c +1 -0
  43. package/runtime/src/crypto_asym.c +450 -241
  44. package/runtime/src/crypto_bn.c +91 -0
  45. package/runtime/src/crypto_cipher.c +153 -75
  46. package/runtime/src/crypto_hash.c +68 -53
  47. package/runtime/src/crypto_internal.h +55 -26
  48. package/runtime/src/crypto_pkey.c +198 -61
  49. package/runtime/src/crypto_subtle.c +42 -16
  50. package/runtime/src/crypto_tls.c +678 -0
  51. package/runtime/src/generator.c +8 -1
  52. package/runtime/src/global.c +2 -4
  53. package/runtime/src/internal.h +0 -1
  54. package/runtime/src/jobs.c +2 -1
  55. package/runtime/src/promise.c +4 -1
  56. package/runtime/src/tls_roots.gen.h +3215 -0
  57. package/runtime/src/util_types.c +52 -0
  58. package/runtime/src/weak.c +2 -1
  59. package/runtime/third_party/boringssl/LICENSE +238 -0
  60. package/runtime/third_party/boringssl/README.md +46 -0
  61. package/runtime/third_party/boringssl/VERSION +1 -0
  62. package/runtime/third_party/boringssl/crypto/aes/aes.cc +44 -0
  63. package/runtime/third_party/boringssl/crypto/armv8_feature_parsing.h +67 -0
  64. package/runtime/third_party/boringssl/crypto/asn1/a_bitstr.cc +297 -0
  65. package/runtime/third_party/boringssl/crypto/asn1/a_bool.cc +50 -0
  66. package/runtime/third_party/boringssl/crypto/asn1/a_d2i_fp.cc +47 -0
  67. package/runtime/third_party/boringssl/crypto/asn1/a_dup.cc +42 -0
  68. package/runtime/third_party/boringssl/crypto/asn1/a_gentm.cc +130 -0
  69. package/runtime/third_party/boringssl/crypto/asn1/a_i2d_fp.cc +44 -0
  70. package/runtime/third_party/boringssl/crypto/asn1/a_int.cc +467 -0
  71. package/runtime/third_party/boringssl/crypto/asn1/a_mbstr.cc +242 -0
  72. package/runtime/third_party/boringssl/crypto/asn1/a_object.cc +191 -0
  73. package/runtime/third_party/boringssl/crypto/asn1/a_octet.cc +32 -0
  74. package/runtime/third_party/boringssl/crypto/asn1/a_strex.cc +411 -0
  75. package/runtime/third_party/boringssl/crypto/asn1/a_strnid.cc +208 -0
  76. package/runtime/third_party/boringssl/crypto/asn1/a_time.cc +248 -0
  77. package/runtime/third_party/boringssl/crypto/asn1/a_type.cc +467 -0
  78. package/runtime/third_party/boringssl/crypto/asn1/a_utctm.cc +128 -0
  79. package/runtime/third_party/boringssl/crypto/asn1/asn1_lib.cc +453 -0
  80. package/runtime/third_party/boringssl/crypto/asn1/asn1_par.cc +61 -0
  81. package/runtime/third_party/boringssl/crypto/asn1/asn_pack.cc +56 -0
  82. package/runtime/third_party/boringssl/crypto/asn1/f_int.cc +63 -0
  83. package/runtime/third_party/boringssl/crypto/asn1/f_string.cc +52 -0
  84. package/runtime/third_party/boringssl/crypto/asn1/internal.h +430 -0
  85. package/runtime/third_party/boringssl/crypto/asn1/posix_time.cc +244 -0
  86. package/runtime/third_party/boringssl/crypto/asn1/tasn_dec.cc +611 -0
  87. package/runtime/third_party/boringssl/crypto/asn1/tasn_enc.cc +348 -0
  88. package/runtime/third_party/boringssl/crypto/asn1/tasn_fre.cc +163 -0
  89. package/runtime/third_party/boringssl/crypto/asn1/tasn_new.cc +274 -0
  90. package/runtime/third_party/boringssl/crypto/asn1/tasn_typ.cc +92 -0
  91. package/runtime/third_party/boringssl/crypto/asn1/tasn_utl.cc +218 -0
  92. package/runtime/third_party/boringssl/crypto/base64/base64.cc +433 -0
  93. package/runtime/third_party/boringssl/crypto/bcm_support.h +62 -0
  94. package/runtime/third_party/boringssl/crypto/bio/bio.cc +715 -0
  95. package/runtime/third_party/boringssl/crypto/bio/bio_mem.cc +260 -0
  96. package/runtime/third_party/boringssl/crypto/bio/connect.cc +463 -0
  97. package/runtime/third_party/boringssl/crypto/bio/errno.cc +52 -0
  98. package/runtime/third_party/boringssl/crypto/bio/fd.cc +193 -0
  99. package/runtime/third_party/boringssl/crypto/bio/file.cc +283 -0
  100. package/runtime/third_party/boringssl/crypto/bio/hexdump.cc +154 -0
  101. package/runtime/third_party/boringssl/crypto/bio/internal.h +128 -0
  102. package/runtime/third_party/boringssl/crypto/bio/pair.cc +426 -0
  103. package/runtime/third_party/boringssl/crypto/bio/printf.cc +59 -0
  104. package/runtime/third_party/boringssl/crypto/bio/socket.cc +210 -0
  105. package/runtime/third_party/boringssl/crypto/bio/socket_helper.cc +179 -0
  106. package/runtime/third_party/boringssl/crypto/blake2/blake2.cc +173 -0
  107. package/runtime/third_party/boringssl/crypto/bn/bn_asn1.cc +57 -0
  108. package/runtime/third_party/boringssl/crypto/bn/convert.cc +409 -0
  109. package/runtime/third_party/boringssl/crypto/bn/div.cc +102 -0
  110. package/runtime/third_party/boringssl/crypto/bn/exponentiation.cc +168 -0
  111. package/runtime/third_party/boringssl/crypto/bn/sqrt.cc +93 -0
  112. package/runtime/third_party/boringssl/crypto/buf/buf.cc +119 -0
  113. package/runtime/third_party/boringssl/crypto/bytestring/asn1_compat.cc +54 -0
  114. package/runtime/third_party/boringssl/crypto/bytestring/ber.cc +268 -0
  115. package/runtime/third_party/boringssl/crypto/bytestring/cbb.cc +787 -0
  116. package/runtime/third_party/boringssl/crypto/bytestring/cbs.cc +977 -0
  117. package/runtime/third_party/boringssl/crypto/bytestring/internal.h +134 -0
  118. package/runtime/third_party/boringssl/crypto/bytestring/unicode.cc +156 -0
  119. package/runtime/third_party/boringssl/crypto/chacha/chacha.cc +226 -0
  120. package/runtime/third_party/boringssl/crypto/chacha/internal.h +103 -0
  121. package/runtime/third_party/boringssl/crypto/cipher/derive_key.cc +106 -0
  122. package/runtime/third_party/boringssl/crypto/cipher/e_aesctrhmac.cc +294 -0
  123. package/runtime/third_party/boringssl/crypto/cipher/e_aeseax.cc +351 -0
  124. package/runtime/third_party/boringssl/crypto/cipher/e_aesgcmsiv.cc +918 -0
  125. package/runtime/third_party/boringssl/crypto/cipher/e_chacha20poly1305.cc +404 -0
  126. package/runtime/third_party/boringssl/crypto/cipher/e_des.cc +214 -0
  127. package/runtime/third_party/boringssl/crypto/cipher/e_null.cc +55 -0
  128. package/runtime/third_party/boringssl/crypto/cipher/e_rc2.cc +432 -0
  129. package/runtime/third_party/boringssl/crypto/cipher/e_rc4.cc +56 -0
  130. package/runtime/third_party/boringssl/crypto/cipher/e_tls.cc +615 -0
  131. package/runtime/third_party/boringssl/crypto/cipher/get_cipher.cc +85 -0
  132. package/runtime/third_party/boringssl/crypto/cipher/internal.h +399 -0
  133. package/runtime/third_party/boringssl/crypto/cipher/tls_cbc.cc +476 -0
  134. package/runtime/third_party/boringssl/crypto/cms/cms.cc +178 -0
  135. package/runtime/third_party/boringssl/crypto/conf/conf.cc +637 -0
  136. package/runtime/third_party/boringssl/crypto/conf/internal.h +54 -0
  137. package/runtime/third_party/boringssl/crypto/cpu_aarch64_apple.cc +76 -0
  138. package/runtime/third_party/boringssl/crypto/cpu_aarch64_fuchsia.cc +58 -0
  139. package/runtime/third_party/boringssl/crypto/cpu_aarch64_linux.cc +66 -0
  140. package/runtime/third_party/boringssl/crypto/cpu_aarch64_openbsd.cc +45 -0
  141. package/runtime/third_party/boringssl/crypto/cpu_aarch64_sysreg.cc +66 -0
  142. package/runtime/third_party/boringssl/crypto/cpu_aarch64_win.cc +52 -0
  143. package/runtime/third_party/boringssl/crypto/cpu_arm_freebsd.cc +55 -0
  144. package/runtime/third_party/boringssl/crypto/cpu_arm_linux.cc +173 -0
  145. package/runtime/third_party/boringssl/crypto/cpu_arm_linux.h +141 -0
  146. package/runtime/third_party/boringssl/crypto/cpu_intel.cc +287 -0
  147. package/runtime/third_party/boringssl/crypto/crypto.cc +152 -0
  148. package/runtime/third_party/boringssl/crypto/curve25519/asm/x25519-asm-arm.S +2124 -0
  149. package/runtime/third_party/boringssl/crypto/curve25519/cpace.cc +227 -0
  150. package/runtime/third_party/boringssl/crypto/curve25519/curve25519.cc +2436 -0
  151. package/runtime/third_party/boringssl/crypto/curve25519/curve25519_64_adx.cc +18 -0
  152. package/runtime/third_party/boringssl/crypto/curve25519/curve25519_tables.h +3264 -0
  153. package/runtime/third_party/boringssl/crypto/curve25519/internal.h +202 -0
  154. package/runtime/third_party/boringssl/crypto/curve25519/spake25519.cc +532 -0
  155. package/runtime/third_party/boringssl/crypto/des/des.cc +837 -0
  156. package/runtime/third_party/boringssl/crypto/des/internal.h +144 -0
  157. package/runtime/third_party/boringssl/crypto/dh/dh_asn1.cc +109 -0
  158. package/runtime/third_party/boringssl/crypto/dh/params.cc +411 -0
  159. package/runtime/third_party/boringssl/crypto/digest/digest_extra.cc +361 -0
  160. package/runtime/third_party/boringssl/crypto/dsa/dsa.cc +922 -0
  161. package/runtime/third_party/boringssl/crypto/dsa/dsa_asn1.cc +306 -0
  162. package/runtime/third_party/boringssl/crypto/dsa/internal.h +56 -0
  163. package/runtime/third_party/boringssl/crypto/ec/ec_asn1.cc +542 -0
  164. package/runtime/third_party/boringssl/crypto/ec/ec_derive.cc +94 -0
  165. package/runtime/third_party/boringssl/crypto/ec/hash_to_curve.cc +773 -0
  166. package/runtime/third_party/boringssl/crypto/ec/internal.h +114 -0
  167. package/runtime/third_party/boringssl/crypto/ecdh/ecdh.cc +75 -0
  168. package/runtime/third_party/boringssl/crypto/ecdsa/ecdsa_asn1.cc +337 -0
  169. package/runtime/third_party/boringssl/crypto/ecdsa/ecdsa_p1363.cc +54 -0
  170. package/runtime/third_party/boringssl/crypto/engine/engine.cc +95 -0
  171. package/runtime/third_party/boringssl/crypto/err/err.cc +820 -0
  172. package/runtime/third_party/boringssl/crypto/err/internal.h +45 -0
  173. package/runtime/third_party/boringssl/crypto/evp/evp.cc +454 -0
  174. package/runtime/third_party/boringssl/crypto/evp/evp_asn1.cc +439 -0
  175. package/runtime/third_party/boringssl/crypto/evp/evp_ctx.cc +541 -0
  176. package/runtime/third_party/boringssl/crypto/evp/evp_kem.cc +101 -0
  177. package/runtime/third_party/boringssl/crypto/evp/internal.h +427 -0
  178. package/runtime/third_party/boringssl/crypto/evp/p_dh.cc +326 -0
  179. package/runtime/third_party/boringssl/crypto/evp/p_dsa.cc +333 -0
  180. package/runtime/third_party/boringssl/crypto/evp/p_ec.cc +736 -0
  181. package/runtime/third_party/boringssl/crypto/evp/p_ed25519.cc +359 -0
  182. package/runtime/third_party/boringssl/crypto/evp/p_hkdf.cc +204 -0
  183. package/runtime/third_party/boringssl/crypto/evp/p_mldsa.cc +549 -0
  184. package/runtime/third_party/boringssl/crypto/evp/p_mlkem.cc +510 -0
  185. package/runtime/third_party/boringssl/crypto/evp/p_rsa.cc +1185 -0
  186. package/runtime/third_party/boringssl/crypto/evp/p_x25519.cc +371 -0
  187. package/runtime/third_party/boringssl/crypto/evp/p_xwing.cc +300 -0
  188. package/runtime/third_party/boringssl/crypto/evp/pbkdf.cc +105 -0
  189. package/runtime/third_party/boringssl/crypto/evp/print.cc +287 -0
  190. package/runtime/third_party/boringssl/crypto/evp/scrypt.cc +218 -0
  191. package/runtime/third_party/boringssl/crypto/evp/sign.cc +95 -0
  192. package/runtime/third_party/boringssl/crypto/ex_data.cc +140 -0
  193. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/aes.cc.inc +208 -0
  194. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/aes_nohw.cc.inc +1279 -0
  195. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/cbc.cc.inc +132 -0
  196. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/cfb.cc.inc +168 -0
  197. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/ctr.cc.inc +102 -0
  198. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/gcm.cc.inc +614 -0
  199. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/gcm_nohw.cc.inc +304 -0
  200. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/internal.h +590 -0
  201. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/key_wrap.cc.inc +211 -0
  202. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/mode_wrappers.cc.inc +97 -0
  203. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/ofb.cc.inc +55 -0
  204. package/runtime/third_party/boringssl/crypto/fipsmodule/bcm.cc +288 -0
  205. package/runtime/third_party/boringssl/crypto/fipsmodule/bcm_interface.h +953 -0
  206. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/add.cc.inc +276 -0
  207. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/asm/x86_64-gcc.cc.inc +573 -0
  208. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/bn.cc.inc +377 -0
  209. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/bytes.cc.inc +230 -0
  210. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/cmp.cc.inc +161 -0
  211. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/ctx.cc.inc +127 -0
  212. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/div.cc.inc +738 -0
  213. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/div_extra.cc.inc +90 -0
  214. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/exponentiation.cc.inc +743 -0
  215. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/gcd.cc.inc +281 -0
  216. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/gcd_extra.cc.inc +327 -0
  217. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/generic.cc.inc +579 -0
  218. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/internal.h +810 -0
  219. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/jacobi.cc.inc +101 -0
  220. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/montgomery.cc.inc +408 -0
  221. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/montgomery_inv.cc.inc +179 -0
  222. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/mul.cc.inc +347 -0
  223. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/prime.cc.inc +931 -0
  224. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/random.cc.inc +261 -0
  225. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/rsaz_exp.cc.inc +144 -0
  226. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/rsaz_exp.h +109 -0
  227. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/shift.cc.inc +317 -0
  228. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/sqrt.cc.inc +370 -0
  229. package/runtime/third_party/boringssl/crypto/fipsmodule/cipher/aead.cc.inc +619 -0
  230. package/runtime/third_party/boringssl/crypto/fipsmodule/cipher/cipher.cc.inc +837 -0
  231. package/runtime/third_party/boringssl/crypto/fipsmodule/cipher/e_aes.cc.inc +1240 -0
  232. package/runtime/third_party/boringssl/crypto/fipsmodule/cipher/e_aesccm.cc.inc +440 -0
  233. package/runtime/third_party/boringssl/crypto/fipsmodule/cipher/internal.h +461 -0
  234. package/runtime/third_party/boringssl/crypto/fipsmodule/cmac/cmac.cc.inc +293 -0
  235. package/runtime/third_party/boringssl/crypto/fipsmodule/delocate.h +95 -0
  236. package/runtime/third_party/boringssl/crypto/fipsmodule/dh/check.cc.inc +198 -0
  237. package/runtime/third_party/boringssl/crypto/fipsmodule/dh/dh.cc.inc +401 -0
  238. package/runtime/third_party/boringssl/crypto/fipsmodule/dh/internal.h +63 -0
  239. package/runtime/third_party/boringssl/crypto/fipsmodule/digest/digest.cc.inc +221 -0
  240. package/runtime/third_party/boringssl/crypto/fipsmodule/digest/digests.cc.inc +184 -0
  241. package/runtime/third_party/boringssl/crypto/fipsmodule/digest/internal.h +72 -0
  242. package/runtime/third_party/boringssl/crypto/fipsmodule/digest/md32_common.h +166 -0
  243. package/runtime/third_party/boringssl/crypto/fipsmodule/digestsign/digestsign.cc.inc +230 -0
  244. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/builtin_curves.h +277 -0
  245. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/ec.cc.inc +1024 -0
  246. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/ec_key.cc.inc +536 -0
  247. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/ec_montgomery.cc.inc +379 -0
  248. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/felem.cc.inc +250 -0
  249. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/internal.h +752 -0
  250. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/oct.cc.inc +174 -0
  251. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/p256-nistz-table.h +9502 -0
  252. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/p256-nistz.cc.inc +740 -0
  253. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/p256-nistz.h +207 -0
  254. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/p256.cc.inc +578 -0
  255. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/p256_table.h +297 -0
  256. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/scalar.cc.inc +184 -0
  257. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/simple.cc.inc +246 -0
  258. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/simple_mul.cc.inc +274 -0
  259. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/util.cc.inc +258 -0
  260. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/wnaf.cc.inc +224 -0
  261. package/runtime/third_party/boringssl/crypto/fipsmodule/ecdh/ecdh.cc.inc +91 -0
  262. package/runtime/third_party/boringssl/crypto/fipsmodule/ecdsa/ecdsa.cc.inc +288 -0
  263. package/runtime/third_party/boringssl/crypto/fipsmodule/ecdsa/internal.h +57 -0
  264. package/runtime/third_party/boringssl/crypto/fipsmodule/entropy/internal.h +38 -0
  265. package/runtime/third_party/boringssl/crypto/fipsmodule/entropy/jitter.cc.inc +487 -0
  266. package/runtime/third_party/boringssl/crypto/fipsmodule/entropy/sha512.cc.inc +329 -0
  267. package/runtime/third_party/boringssl/crypto/fipsmodule/fips_shared_support.cc +28 -0
  268. package/runtime/third_party/boringssl/crypto/fipsmodule/hkdf/hkdf.cc.inc +114 -0
  269. package/runtime/third_party/boringssl/crypto/fipsmodule/hmac/hmac.cc.inc +218 -0
  270. package/runtime/third_party/boringssl/crypto/fipsmodule/keccak/internal.h +165 -0
  271. package/runtime/third_party/boringssl/crypto/fipsmodule/keccak/keccak.cc.inc +647 -0
  272. package/runtime/third_party/boringssl/crypto/fipsmodule/mldsa/fips_known_values.inc +1345 -0
  273. package/runtime/third_party/boringssl/crypto/fipsmodule/mldsa/mldsa.cc.inc +3323 -0
  274. package/runtime/third_party/boringssl/crypto/fipsmodule/mlkem/fips_known_values.inc +411 -0
  275. package/runtime/third_party/boringssl/crypto/fipsmodule/mlkem/mlkem.cc.inc +1856 -0
  276. package/runtime/third_party/boringssl/crypto/fipsmodule/rand/android_entropy_client.cc.inc +82 -0
  277. package/runtime/third_party/boringssl/crypto/fipsmodule/rand/ctrdrbg.cc.inc +401 -0
  278. package/runtime/third_party/boringssl/crypto/fipsmodule/rand/internal.h +99 -0
  279. package/runtime/third_party/boringssl/crypto/fipsmodule/rand/rand.cc.inc +486 -0
  280. package/runtime/third_party/boringssl/crypto/fipsmodule/rsa/internal.h +167 -0
  281. package/runtime/third_party/boringssl/crypto/fipsmodule/rsa/padding.cc.inc +371 -0
  282. package/runtime/third_party/boringssl/crypto/fipsmodule/rsa/rsa.cc.inc +996 -0
  283. package/runtime/third_party/boringssl/crypto/fipsmodule/rsa/rsa_impl.cc.inc +1000 -0
  284. package/runtime/third_party/boringssl/crypto/fipsmodule/self_check/fips.cc.inc +129 -0
  285. package/runtime/third_party/boringssl/crypto/fipsmodule/self_check/self_check.cc.inc +1093 -0
  286. package/runtime/third_party/boringssl/crypto/fipsmodule/service_indicator/internal.h +112 -0
  287. package/runtime/third_party/boringssl/crypto/fipsmodule/service_indicator/service_indicator.cc.inc +330 -0
  288. package/runtime/third_party/boringssl/crypto/fipsmodule/sha/internal.h +205 -0
  289. package/runtime/third_party/boringssl/crypto/fipsmodule/sha/sha1.cc.inc +404 -0
  290. package/runtime/third_party/boringssl/crypto/fipsmodule/sha/sha256.cc.inc +315 -0
  291. package/runtime/third_party/boringssl/crypto/fipsmodule/sha/sha512.cc.inc +473 -0
  292. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/address.h +144 -0
  293. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/fips_known_values.inc +674 -0
  294. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/fors.cc.inc +179 -0
  295. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/fors.h +48 -0
  296. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/merkle.cc.inc +164 -0
  297. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/merkle.h +58 -0
  298. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/params.h +178 -0
  299. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/slhdsa.cc.inc +690 -0
  300. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/thash.cc.inc +326 -0
  301. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/thash.h +71 -0
  302. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/wots.cc.inc +172 -0
  303. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/wots.h +40 -0
  304. package/runtime/third_party/boringssl/crypto/fipsmodule/tls/internal.h +33 -0
  305. package/runtime/third_party/boringssl/crypto/fipsmodule/tls/kdf.cc.inc +180 -0
  306. package/runtime/third_party/boringssl/crypto/fuzzer_mode.cc +30 -0
  307. package/runtime/third_party/boringssl/crypto/hpke/hpke.cc +1514 -0
  308. package/runtime/third_party/boringssl/crypto/hrss/asm/poly_rq_mul.S +8489 -0
  309. package/runtime/third_party/boringssl/crypto/hrss/hrss.cc +2189 -0
  310. package/runtime/third_party/boringssl/crypto/hrss/internal.h +64 -0
  311. package/runtime/third_party/boringssl/crypto/internal.h +1767 -0
  312. package/runtime/third_party/boringssl/crypto/lhash/internal.h +222 -0
  313. package/runtime/third_party/boringssl/crypto/lhash/lhash.cc +312 -0
  314. package/runtime/third_party/boringssl/crypto/md4/md4.cc +207 -0
  315. package/runtime/third_party/boringssl/crypto/md5/internal.h +34 -0
  316. package/runtime/third_party/boringssl/crypto/md5/md5.cc +255 -0
  317. package/runtime/third_party/boringssl/crypto/mem.cc +577 -0
  318. package/runtime/third_party/boringssl/crypto/mem_internal.h +706 -0
  319. package/runtime/third_party/boringssl/crypto/mldsa/mldsa.cc +296 -0
  320. package/runtime/third_party/boringssl/crypto/mlkem/mlkem.cc +108 -0
  321. package/runtime/third_party/boringssl/crypto/obj/obj.cc +494 -0
  322. package/runtime/third_party/boringssl/crypto/obj/obj_dat.h +11722 -0
  323. package/runtime/third_party/boringssl/crypto/obj/obj_xref.cc +83 -0
  324. package/runtime/third_party/boringssl/crypto/params_internal.h +30 -0
  325. package/runtime/third_party/boringssl/crypto/pem/internal.h +135 -0
  326. package/runtime/third_party/boringssl/crypto/pem/pem_all.cc +153 -0
  327. package/runtime/third_party/boringssl/crypto/pem/pem_info.cc +250 -0
  328. package/runtime/third_party/boringssl/crypto/pem/pem_lib.cc +707 -0
  329. package/runtime/third_party/boringssl/crypto/pem/pem_oth.cc +45 -0
  330. package/runtime/third_party/boringssl/crypto/pem/pem_pk8.cc +211 -0
  331. package/runtime/third_party/boringssl/crypto/pem/pem_pkey.cc +147 -0
  332. package/runtime/third_party/boringssl/crypto/pem/pem_x509.cc +25 -0
  333. package/runtime/third_party/boringssl/crypto/pem/pem_xaux.cc +25 -0
  334. package/runtime/third_party/boringssl/crypto/pkcs7/internal.h +67 -0
  335. package/runtime/third_party/boringssl/crypto/pkcs7/pkcs7.cc +198 -0
  336. package/runtime/third_party/boringssl/crypto/pkcs7/pkcs7_x509.cc +527 -0
  337. package/runtime/third_party/boringssl/crypto/pkcs8/internal.h +98 -0
  338. package/runtime/third_party/boringssl/crypto/pkcs8/p5_pbev2.cc +286 -0
  339. package/runtime/third_party/boringssl/crypto/pkcs8/pkcs8.cc +473 -0
  340. package/runtime/third_party/boringssl/crypto/pkcs8/pkcs8_x509.cc +1328 -0
  341. package/runtime/third_party/boringssl/crypto/poly1305/internal.h +54 -0
  342. package/runtime/third_party/boringssl/crypto/poly1305/poly1305.cc +315 -0
  343. package/runtime/third_party/boringssl/crypto/poly1305/poly1305_arm.cc +294 -0
  344. package/runtime/third_party/boringssl/crypto/poly1305/poly1305_arm_asm.S +2017 -0
  345. package/runtime/third_party/boringssl/crypto/poly1305/poly1305_vec.cc +853 -0
  346. package/runtime/third_party/boringssl/crypto/pool/internal.h +95 -0
  347. package/runtime/third_party/boringssl/crypto/pool/pool.cc +282 -0
  348. package/runtime/third_party/boringssl/crypto/rand/deterministic.cc +58 -0
  349. package/runtime/third_party/boringssl/crypto/rand/fork_detect.cc +222 -0
  350. package/runtime/third_party/boringssl/crypto/rand/forkunsafe.cc +44 -0
  351. package/runtime/third_party/boringssl/crypto/rand/getentropy.cc +53 -0
  352. package/runtime/third_party/boringssl/crypto/rand/internal.h +67 -0
  353. package/runtime/third_party/boringssl/crypto/rand/ios.cc +35 -0
  354. package/runtime/third_party/boringssl/crypto/rand/rand.cc +79 -0
  355. package/runtime/third_party/boringssl/crypto/rand/trusty.cc +39 -0
  356. package/runtime/third_party/boringssl/crypto/rand/urandom.cc +149 -0
  357. package/runtime/third_party/boringssl/crypto/rand/windows.cc +91 -0
  358. package/runtime/third_party/boringssl/crypto/rc4/rc4.cc +56 -0
  359. package/runtime/third_party/boringssl/crypto/refcount.cc +49 -0
  360. package/runtime/third_party/boringssl/crypto/rsa/internal.h +51 -0
  361. package/runtime/third_party/boringssl/crypto/rsa/rsa_asn1.cc +404 -0
  362. package/runtime/third_party/boringssl/crypto/rsa/rsa_crypt.cc +530 -0
  363. package/runtime/third_party/boringssl/crypto/rsa/rsa_extra.cc +30 -0
  364. package/runtime/third_party/boringssl/crypto/rsa/rsa_print.cc +25 -0
  365. package/runtime/third_party/boringssl/crypto/sha/sha1.cc +55 -0
  366. package/runtime/third_party/boringssl/crypto/sha/sha256.cc +89 -0
  367. package/runtime/third_party/boringssl/crypto/sha/sha512.cc +106 -0
  368. package/runtime/third_party/boringssl/crypto/siphash/siphash.cc +81 -0
  369. package/runtime/third_party/boringssl/crypto/slhdsa/slhdsa.cc +167 -0
  370. package/runtime/third_party/boringssl/crypto/spake2plus/internal.h +204 -0
  371. package/runtime/third_party/boringssl/crypto/spake2plus/spake2plus.cc +501 -0
  372. package/runtime/third_party/boringssl/crypto/stack/stack.cc +462 -0
  373. package/runtime/third_party/boringssl/crypto/thread.cc +68 -0
  374. package/runtime/third_party/boringssl/crypto/thread_none.cc +48 -0
  375. package/runtime/third_party/boringssl/crypto/thread_pthread.cc +138 -0
  376. package/runtime/third_party/boringssl/crypto/thread_win.cc +227 -0
  377. package/runtime/third_party/boringssl/crypto/trust_token/internal.h +405 -0
  378. package/runtime/third_party/boringssl/crypto/trust_token/pmbtoken.cc +1672 -0
  379. package/runtime/third_party/boringssl/crypto/trust_token/trust_token.cc +701 -0
  380. package/runtime/third_party/boringssl/crypto/trust_token/voprf.cc +1266 -0
  381. package/runtime/third_party/boringssl/crypto/x509/a_digest.cc +52 -0
  382. package/runtime/third_party/boringssl/crypto/x509/a_sign.cc +100 -0
  383. package/runtime/third_party/boringssl/crypto/x509/a_verify.cc +77 -0
  384. package/runtime/third_party/boringssl/crypto/x509/algorithm.cc +167 -0
  385. package/runtime/third_party/boringssl/crypto/x509/asn1_gen.cc +540 -0
  386. package/runtime/third_party/boringssl/crypto/x509/by_dir.cc +301 -0
  387. package/runtime/third_party/boringssl/crypto/x509/by_file.cc +226 -0
  388. package/runtime/third_party/boringssl/crypto/x509/i2d_pr.cc +37 -0
  389. package/runtime/third_party/boringssl/crypto/x509/internal.h +697 -0
  390. package/runtime/third_party/boringssl/crypto/x509/name_print.cc +187 -0
  391. package/runtime/third_party/boringssl/crypto/x509/policy.cc +686 -0
  392. package/runtime/third_party/boringssl/crypto/x509/rsa_pss.cc +187 -0
  393. package/runtime/third_party/boringssl/crypto/x509/t_crl.cc +106 -0
  394. package/runtime/third_party/boringssl/crypto/x509/t_req.cc +206 -0
  395. package/runtime/third_party/boringssl/crypto/x509/t_x509.cc +292 -0
  396. package/runtime/third_party/boringssl/crypto/x509/t_x509a.cc +81 -0
  397. package/runtime/third_party/boringssl/crypto/x509/v3_akey.cc +174 -0
  398. package/runtime/third_party/boringssl/crypto/x509/v3_akeya.cc +31 -0
  399. package/runtime/third_party/boringssl/crypto/x509/v3_alt.cc +636 -0
  400. package/runtime/third_party/boringssl/crypto/x509/v3_bcons.cc +96 -0
  401. package/runtime/third_party/boringssl/crypto/x509/v3_bitst.cc +100 -0
  402. package/runtime/third_party/boringssl/crypto/x509/v3_conf.cc +369 -0
  403. package/runtime/third_party/boringssl/crypto/x509/v3_cpols.cc +417 -0
  404. package/runtime/third_party/boringssl/crypto/x509/v3_crld.cc +471 -0
  405. package/runtime/third_party/boringssl/crypto/x509/v3_enum.cc +74 -0
  406. package/runtime/third_party/boringssl/crypto/x509/v3_extku.cc +97 -0
  407. package/runtime/third_party/boringssl/crypto/x509/v3_genn.cc +238 -0
  408. package/runtime/third_party/boringssl/crypto/x509/v3_ia5.cc +83 -0
  409. package/runtime/third_party/boringssl/crypto/x509/v3_info.cc +162 -0
  410. package/runtime/third_party/boringssl/crypto/x509/v3_int.cc +83 -0
  411. package/runtime/third_party/boringssl/crypto/x509/v3_lib.cc +349 -0
  412. package/runtime/third_party/boringssl/crypto/x509/v3_ncons.cc +798 -0
  413. package/runtime/third_party/boringssl/crypto/x509/v3_ocsp.cc +92 -0
  414. package/runtime/third_party/boringssl/crypto/x509/v3_pcons.cc +102 -0
  415. package/runtime/third_party/boringssl/crypto/x509/v3_pmaps.cc +110 -0
  416. package/runtime/third_party/boringssl/crypto/x509/v3_prn.cc +183 -0
  417. package/runtime/third_party/boringssl/crypto/x509/v3_purp.cc +580 -0
  418. package/runtime/third_party/boringssl/crypto/x509/v3_skey.cc +128 -0
  419. package/runtime/third_party/boringssl/crypto/x509/v3_utl.cc +1311 -0
  420. package/runtime/third_party/boringssl/crypto/x509/x509.cc +47 -0
  421. package/runtime/third_party/boringssl/crypto/x509/x509_att.cc +188 -0
  422. package/runtime/third_party/boringssl/crypto/x509/x509_cmp.cc +243 -0
  423. package/runtime/third_party/boringssl/crypto/x509/x509_d2.cc +66 -0
  424. package/runtime/third_party/boringssl/crypto/x509/x509_def.cc +42 -0
  425. package/runtime/third_party/boringssl/crypto/x509/x509_ext.cc +161 -0
  426. package/runtime/third_party/boringssl/crypto/x509/x509_lu.cc +570 -0
  427. package/runtime/third_party/boringssl/crypto/x509/x509_mtc.cc +598 -0
  428. package/runtime/third_party/boringssl/crypto/x509/x509_obj.cc +169 -0
  429. package/runtime/third_party/boringssl/crypto/x509/x509_req.cc +248 -0
  430. package/runtime/third_party/boringssl/crypto/x509/x509_set.cc +166 -0
  431. package/runtime/third_party/boringssl/crypto/x509/x509_trs.cc +123 -0
  432. package/runtime/third_party/boringssl/crypto/x509/x509_txt.cc +147 -0
  433. package/runtime/third_party/boringssl/crypto/x509/x509_v3.cc +249 -0
  434. package/runtime/third_party/boringssl/crypto/x509/x509_vfy.cc +1531 -0
  435. package/runtime/third_party/boringssl/crypto/x509/x509_vpm.cc +449 -0
  436. package/runtime/third_party/boringssl/crypto/x509/x509cset.cc +222 -0
  437. package/runtime/third_party/boringssl/crypto/x509/x509name.cc +377 -0
  438. package/runtime/third_party/boringssl/crypto/x509/x509rset.cc +55 -0
  439. package/runtime/third_party/boringssl/crypto/x509/x509spki.cc +91 -0
  440. package/runtime/third_party/boringssl/crypto/x509/x_algor.cc +223 -0
  441. package/runtime/third_party/boringssl/crypto/x509/x_all.cc +352 -0
  442. package/runtime/third_party/boringssl/crypto/x509/x_attrib.cc +61 -0
  443. package/runtime/third_party/boringssl/crypto/x509/x_crl.cc +325 -0
  444. package/runtime/third_party/boringssl/crypto/x509/x_exten.cc +42 -0
  445. package/runtime/third_party/boringssl/crypto/x509/x_name.cc +407 -0
  446. package/runtime/third_party/boringssl/crypto/x509/x_pubkey.cc +199 -0
  447. package/runtime/third_party/boringssl/crypto/x509/x_req.cc +80 -0
  448. package/runtime/third_party/boringssl/crypto/x509/x_sig.cc +51 -0
  449. package/runtime/third_party/boringssl/crypto/x509/x_spki.cc +44 -0
  450. package/runtime/third_party/boringssl/crypto/x509/x_x509.cc +495 -0
  451. package/runtime/third_party/boringssl/crypto/x509/x_x509a.cc +169 -0
  452. package/runtime/third_party/boringssl/crypto/xwing/xwing.cc +257 -0
  453. package/runtime/third_party/boringssl/gen/bcm/aes-gcm-avx2-x86_64-apple.S +1326 -0
  454. package/runtime/third_party/boringssl/gen/bcm/aes-gcm-avx2-x86_64-linux.S +1327 -0
  455. package/runtime/third_party/boringssl/gen/bcm/aes-gcm-avx512-x86_64-apple.S +1252 -0
  456. package/runtime/third_party/boringssl/gen/bcm/aes-gcm-avx512-x86_64-linux.S +1253 -0
  457. package/runtime/third_party/boringssl/gen/bcm/aesni-gcm-x86_64-apple.S +873 -0
  458. package/runtime/third_party/boringssl/gen/bcm/aesni-gcm-x86_64-linux.S +885 -0
  459. package/runtime/third_party/boringssl/gen/bcm/aesni-x86-apple.S +2490 -0
  460. package/runtime/third_party/boringssl/gen/bcm/aesni-x86-linux.S +2530 -0
  461. package/runtime/third_party/boringssl/gen/bcm/aesni-x86_64-apple.S +2413 -0
  462. package/runtime/third_party/boringssl/gen/bcm/aesni-x86_64-linux.S +2397 -0
  463. package/runtime/third_party/boringssl/gen/bcm/aesv8-armv7-linux.S +784 -0
  464. package/runtime/third_party/boringssl/gen/bcm/aesv8-armv8-apple.S +792 -0
  465. package/runtime/third_party/boringssl/gen/bcm/aesv8-armv8-linux.S +786 -0
  466. package/runtime/third_party/boringssl/gen/bcm/aesv8-armv8-win.S +798 -0
  467. package/runtime/third_party/boringssl/gen/bcm/aesv8-gcm-armv8-apple.S +2912 -0
  468. package/runtime/third_party/boringssl/gen/bcm/aesv8-gcm-armv8-linux.S +2907 -0
  469. package/runtime/third_party/boringssl/gen/bcm/aesv8-gcm-armv8-win.S +2915 -0
  470. package/runtime/third_party/boringssl/gen/bcm/armv4-mont-linux.S +932 -0
  471. package/runtime/third_party/boringssl/gen/bcm/armv8-mont-apple.S +1440 -0
  472. package/runtime/third_party/boringssl/gen/bcm/armv8-mont-linux.S +1440 -0
  473. package/runtime/third_party/boringssl/gen/bcm/armv8-mont-win.S +1446 -0
  474. package/runtime/third_party/boringssl/gen/bcm/bn-586-apple.S +530 -0
  475. package/runtime/third_party/boringssl/gen/bcm/bn-586-linux.S +540 -0
  476. package/runtime/third_party/boringssl/gen/bcm/bn-armv8-apple.S +88 -0
  477. package/runtime/third_party/boringssl/gen/bcm/bn-armv8-linux.S +87 -0
  478. package/runtime/third_party/boringssl/gen/bcm/bn-armv8-win.S +87 -0
  479. package/runtime/third_party/boringssl/gen/bcm/bsaes-armv7-linux.S +1520 -0
  480. package/runtime/third_party/boringssl/gen/bcm/co-586-apple.S +1256 -0
  481. package/runtime/third_party/boringssl/gen/bcm/co-586-linux.S +1264 -0
  482. package/runtime/third_party/boringssl/gen/bcm/ghash-armv4-linux.S +242 -0
  483. package/runtime/third_party/boringssl/gen/bcm/ghash-neon-armv8-apple.S +337 -0
  484. package/runtime/third_party/boringssl/gen/bcm/ghash-neon-armv8-linux.S +335 -0
  485. package/runtime/third_party/boringssl/gen/bcm/ghash-neon-armv8-win.S +341 -0
  486. package/runtime/third_party/boringssl/gen/bcm/ghash-ssse3-x86-apple.S +288 -0
  487. package/runtime/third_party/boringssl/gen/bcm/ghash-ssse3-x86-linux.S +292 -0
  488. package/runtime/third_party/boringssl/gen/bcm/ghash-ssse3-x86_64-apple.S +426 -0
  489. package/runtime/third_party/boringssl/gen/bcm/ghash-ssse3-x86_64-linux.S +425 -0
  490. package/runtime/third_party/boringssl/gen/bcm/ghash-x86-apple.S +322 -0
  491. package/runtime/third_party/boringssl/gen/bcm/ghash-x86-linux.S +328 -0
  492. package/runtime/third_party/boringssl/gen/bcm/ghash-x86_64-apple.S +1134 -0
  493. package/runtime/third_party/boringssl/gen/bcm/ghash-x86_64-linux.S +1129 -0
  494. package/runtime/third_party/boringssl/gen/bcm/ghashv8-armv7-linux.S +244 -0
  495. package/runtime/third_party/boringssl/gen/bcm/ghashv8-armv8-apple.S +567 -0
  496. package/runtime/third_party/boringssl/gen/bcm/ghashv8-armv8-linux.S +563 -0
  497. package/runtime/third_party/boringssl/gen/bcm/ghashv8-armv8-win.S +571 -0
  498. package/runtime/third_party/boringssl/gen/bcm/p256-armv8-asm-apple.S +1744 -0
  499. package/runtime/third_party/boringssl/gen/bcm/p256-armv8-asm-linux.S +1725 -0
  500. package/runtime/third_party/boringssl/gen/bcm/p256-armv8-asm-win.S +1765 -0
  501. package/runtime/third_party/boringssl/gen/bcm/p256-x86_64-asm-apple.S +4544 -0
  502. package/runtime/third_party/boringssl/gen/bcm/p256-x86_64-asm-linux.S +4600 -0
  503. package/runtime/third_party/boringssl/gen/bcm/p256_beeu-armv8-asm-apple.S +310 -0
  504. package/runtime/third_party/boringssl/gen/bcm/p256_beeu-armv8-asm-linux.S +310 -0
  505. package/runtime/third_party/boringssl/gen/bcm/p256_beeu-armv8-asm-win.S +310 -0
  506. package/runtime/third_party/boringssl/gen/bcm/p256_beeu-x86_64-asm-apple.S +321 -0
  507. package/runtime/third_party/boringssl/gen/bcm/p256_beeu-x86_64-asm-linux.S +335 -0
  508. package/runtime/third_party/boringssl/gen/bcm/rdrand-x86_64-apple.S +58 -0
  509. package/runtime/third_party/boringssl/gen/bcm/rdrand-x86_64-linux.S +57 -0
  510. package/runtime/third_party/boringssl/gen/bcm/rsaz-avx2-apple.S +1756 -0
  511. package/runtime/third_party/boringssl/gen/bcm/rsaz-avx2-linux.S +1751 -0
  512. package/runtime/third_party/boringssl/gen/bcm/sha1-586-apple.S +3782 -0
  513. package/runtime/third_party/boringssl/gen/bcm/sha1-586-linux.S +3788 -0
  514. package/runtime/third_party/boringssl/gen/bcm/sha1-armv4-large-linux.S +1479 -0
  515. package/runtime/third_party/boringssl/gen/bcm/sha1-armv8-apple.S +1219 -0
  516. package/runtime/third_party/boringssl/gen/bcm/sha1-armv8-linux.S +1218 -0
  517. package/runtime/third_party/boringssl/gen/bcm/sha1-armv8-win.S +1222 -0
  518. package/runtime/third_party/boringssl/gen/bcm/sha1-x86_64-apple.S +5454 -0
  519. package/runtime/third_party/boringssl/gen/bcm/sha1-x86_64-linux.S +5450 -0
  520. package/runtime/third_party/boringssl/gen/bcm/sha256-586-apple.S +5593 -0
  521. package/runtime/third_party/boringssl/gen/bcm/sha256-586-linux.S +5599 -0
  522. package/runtime/third_party/boringssl/gen/bcm/sha256-armv4-linux.S +2840 -0
  523. package/runtime/third_party/boringssl/gen/bcm/sha256-armv8-apple.S +1195 -0
  524. package/runtime/third_party/boringssl/gen/bcm/sha256-armv8-linux.S +1194 -0
  525. package/runtime/third_party/boringssl/gen/bcm/sha256-armv8-win.S +1198 -0
  526. package/runtime/third_party/boringssl/gen/bcm/sha256-x86_64-apple.S +4173 -0
  527. package/runtime/third_party/boringssl/gen/bcm/sha256-x86_64-linux.S +4170 -0
  528. package/runtime/third_party/boringssl/gen/bcm/sha512-586-apple.S +2406 -0
  529. package/runtime/third_party/boringssl/gen/bcm/sha512-586-linux.S +2410 -0
  530. package/runtime/third_party/boringssl/gen/bcm/sha512-armv4-linux.S +1857 -0
  531. package/runtime/third_party/boringssl/gen/bcm/sha512-armv8-apple.S +1598 -0
  532. package/runtime/third_party/boringssl/gen/bcm/sha512-armv8-linux.S +1597 -0
  533. package/runtime/third_party/boringssl/gen/bcm/sha512-armv8-win.S +1601 -0
  534. package/runtime/third_party/boringssl/gen/bcm/sha512-x86_64-apple.S +2979 -0
  535. package/runtime/third_party/boringssl/gen/bcm/sha512-x86_64-linux.S +2978 -0
  536. package/runtime/third_party/boringssl/gen/bcm/vpaes-armv7-linux.S +1225 -0
  537. package/runtime/third_party/boringssl/gen/bcm/vpaes-armv8-apple.S +1238 -0
  538. package/runtime/third_party/boringssl/gen/bcm/vpaes-armv8-linux.S +1220 -0
  539. package/runtime/third_party/boringssl/gen/bcm/vpaes-armv8-win.S +1256 -0
  540. package/runtime/third_party/boringssl/gen/bcm/vpaes-x86-apple.S +680 -0
  541. package/runtime/third_party/boringssl/gen/bcm/vpaes-x86-linux.S +706 -0
  542. package/runtime/third_party/boringssl/gen/bcm/vpaes-x86_64-apple.S +1146 -0
  543. package/runtime/third_party/boringssl/gen/bcm/vpaes-x86_64-linux.S +1133 -0
  544. package/runtime/third_party/boringssl/gen/bcm/x86-mont-apple.S +216 -0
  545. package/runtime/third_party/boringssl/gen/bcm/x86-mont-linux.S +218 -0
  546. package/runtime/third_party/boringssl/gen/bcm/x86_64-mont-apple.S +1238 -0
  547. package/runtime/third_party/boringssl/gen/bcm/x86_64-mont-linux.S +1237 -0
  548. package/runtime/third_party/boringssl/gen/bcm/x86_64-mont5-apple.S +3644 -0
  549. package/runtime/third_party/boringssl/gen/bcm/x86_64-mont5-linux.S +3628 -0
  550. package/runtime/third_party/boringssl/gen/boringssl_prefix_symbols_internal_x86_64_win_asm.inc +325 -0
  551. package/runtime/third_party/boringssl/gen/boringssl_prefix_symbols_internal_x86_win_asm.inc +325 -0
  552. package/runtime/third_party/boringssl/gen/crypto/aes128gcmsiv-x86_64-apple.S +3113 -0
  553. package/runtime/third_party/boringssl/gen/crypto/aes128gcmsiv-x86_64-linux.S +3091 -0
  554. package/runtime/third_party/boringssl/gen/crypto/chacha-armv4-linux.S +1450 -0
  555. package/runtime/third_party/boringssl/gen/crypto/chacha-armv8-apple.S +1969 -0
  556. package/runtime/third_party/boringssl/gen/crypto/chacha-armv8-linux.S +1967 -0
  557. package/runtime/third_party/boringssl/gen/crypto/chacha-armv8-win.S +1973 -0
  558. package/runtime/third_party/boringssl/gen/crypto/chacha-x86-apple.S +957 -0
  559. package/runtime/third_party/boringssl/gen/crypto/chacha-x86-linux.S +961 -0
  560. package/runtime/third_party/boringssl/gen/crypto/chacha-x86_64-apple.S +1608 -0
  561. package/runtime/third_party/boringssl/gen/crypto/chacha-x86_64-linux.S +1611 -0
  562. package/runtime/third_party/boringssl/gen/crypto/chacha20_poly1305_armv8-apple.S +3010 -0
  563. package/runtime/third_party/boringssl/gen/crypto/chacha20_poly1305_armv8-linux.S +3008 -0
  564. package/runtime/third_party/boringssl/gen/crypto/chacha20_poly1305_armv8-win.S +3014 -0
  565. package/runtime/third_party/boringssl/gen/crypto/chacha20_poly1305_x86_64-apple.S +8903 -0
  566. package/runtime/third_party/boringssl/gen/crypto/chacha20_poly1305_x86_64-linux.S +8940 -0
  567. package/runtime/third_party/boringssl/gen/crypto/err_data.cc +1578 -0
  568. package/runtime/third_party/boringssl/gen/crypto/md5-586-apple.S +684 -0
  569. package/runtime/third_party/boringssl/gen/crypto/md5-586-linux.S +686 -0
  570. package/runtime/third_party/boringssl/gen/crypto/md5-x86_64-apple.S +690 -0
  571. package/runtime/third_party/boringssl/gen/crypto/md5-x86_64-linux.S +695 -0
  572. package/runtime/third_party/boringssl/include/openssl/aead.h +650 -0
  573. package/runtime/third_party/boringssl/include/openssl/aes.h +173 -0
  574. package/runtime/third_party/boringssl/include/openssl/arm_arch.h +24 -0
  575. package/runtime/third_party/boringssl/include/openssl/asm_base.h +219 -0
  576. package/runtime/third_party/boringssl/include/openssl/asn1.h +2002 -0
  577. package/runtime/third_party/boringssl/include/openssl/asn1_mac.h +18 -0
  578. package/runtime/third_party/boringssl/include/openssl/asn1t.h +584 -0
  579. package/runtime/third_party/boringssl/include/openssl/base.h +548 -0
  580. package/runtime/third_party/boringssl/include/openssl/base64.h +156 -0
  581. package/runtime/third_party/boringssl/include/openssl/bio.h +1061 -0
  582. package/runtime/third_party/boringssl/include/openssl/blake2.h +63 -0
  583. package/runtime/third_party/boringssl/include/openssl/blowfish.h +58 -0
  584. package/runtime/third_party/boringssl/include/openssl/bn.h +986 -0
  585. package/runtime/third_party/boringssl/include/openssl/buf.h +95 -0
  586. package/runtime/third_party/boringssl/include/openssl/buffer.h +18 -0
  587. package/runtime/third_party/boringssl/include/openssl/bytestring.h +798 -0
  588. package/runtime/third_party/boringssl/include/openssl/cast.h +91 -0
  589. package/runtime/third_party/boringssl/include/openssl/chacha.h +47 -0
  590. package/runtime/third_party/boringssl/include/openssl/cipher.h +819 -0
  591. package/runtime/third_party/boringssl/include/openssl/cmac.h +91 -0
  592. package/runtime/third_party/boringssl/include/openssl/cms.h +147 -0
  593. package/runtime/third_party/boringssl/include/openssl/conf.h +136 -0
  594. package/runtime/third_party/boringssl/include/openssl/configuration.h +18 -0
  595. package/runtime/third_party/boringssl/include/openssl/cpu.h +18 -0
  596. package/runtime/third_party/boringssl/include/openssl/crypto.h +235 -0
  597. package/runtime/third_party/boringssl/include/openssl/ctrdrbg.h +116 -0
  598. package/runtime/third_party/boringssl/include/openssl/curve25519.h +309 -0
  599. package/runtime/third_party/boringssl/include/openssl/des.h +134 -0
  600. package/runtime/third_party/boringssl/include/openssl/dh.h +336 -0
  601. package/runtime/third_party/boringssl/include/openssl/digest.h +399 -0
  602. package/runtime/third_party/boringssl/include/openssl/dsa.h +392 -0
  603. package/runtime/third_party/boringssl/include/openssl/dtls1.h +16 -0
  604. package/runtime/third_party/boringssl/include/openssl/e_os2.h +18 -0
  605. package/runtime/third_party/boringssl/include/openssl/ec.h +530 -0
  606. package/runtime/third_party/boringssl/include/openssl/ec_key.h +358 -0
  607. package/runtime/third_party/boringssl/include/openssl/ecdh.h +67 -0
  608. package/runtime/third_party/boringssl/include/openssl/ecdsa.h +242 -0
  609. package/runtime/third_party/boringssl/include/openssl/engine.h +109 -0
  610. package/runtime/third_party/boringssl/include/openssl/err.h +416 -0
  611. package/runtime/third_party/boringssl/include/openssl/evp.h +1645 -0
  612. package/runtime/third_party/boringssl/include/openssl/evp_errors.h +66 -0
  613. package/runtime/third_party/boringssl/include/openssl/ex_data.h +117 -0
  614. package/runtime/third_party/boringssl/include/openssl/hkdf.h +68 -0
  615. package/runtime/third_party/boringssl/include/openssl/hmac.h +151 -0
  616. package/runtime/third_party/boringssl/include/openssl/hpke.h +456 -0
  617. package/runtime/third_party/boringssl/include/openssl/hrss.h +108 -0
  618. package/runtime/third_party/boringssl/include/openssl/is_boringssl.h +16 -0
  619. package/runtime/third_party/boringssl/include/openssl/kdf.h +92 -0
  620. package/runtime/third_party/boringssl/include/openssl/lhash.h +18 -0
  621. package/runtime/third_party/boringssl/include/openssl/md4.h +73 -0
  622. package/runtime/third_party/boringssl/include/openssl/md5.h +67 -0
  623. package/runtime/third_party/boringssl/include/openssl/mem.h +215 -0
  624. package/runtime/third_party/boringssl/include/openssl/mldsa.h +486 -0
  625. package/runtime/third_party/boringssl/include/openssl/mlkem.h +222 -0
  626. package/runtime/third_party/boringssl/include/openssl/nid.h +5561 -0
  627. package/runtime/third_party/boringssl/include/openssl/obj.h +225 -0
  628. package/runtime/third_party/boringssl/include/openssl/obj_mac.h +18 -0
  629. package/runtime/third_party/boringssl/include/openssl/objects.h +18 -0
  630. package/runtime/third_party/boringssl/include/openssl/opensslconf.h +108 -0
  631. package/runtime/third_party/boringssl/include/openssl/opensslv.h +18 -0
  632. package/runtime/third_party/boringssl/include/openssl/ossl_typ.h +18 -0
  633. package/runtime/third_party/boringssl/include/openssl/params.h +42 -0
  634. package/runtime/third_party/boringssl/include/openssl/pem.h +769 -0
  635. package/runtime/third_party/boringssl/include/openssl/pkcs12.h +18 -0
  636. package/runtime/third_party/boringssl/include/openssl/pkcs7.h +239 -0
  637. package/runtime/third_party/boringssl/include/openssl/pkcs8.h +267 -0
  638. package/runtime/third_party/boringssl/include/openssl/poly1305.h +52 -0
  639. package/runtime/third_party/boringssl/include/openssl/pool.h +137 -0
  640. package/runtime/third_party/boringssl/include/openssl/posix_time.h +51 -0
  641. package/runtime/third_party/boringssl/include/openssl/prefix_symbols.h +8000 -0
  642. package/runtime/third_party/boringssl/include/openssl/prefix_symbols_internal_S.h +633 -0
  643. package/runtime/third_party/boringssl/include/openssl/prefix_symbols_internal_c.h +329 -0
  644. package/runtime/third_party/boringssl/include/openssl/rand.h +138 -0
  645. package/runtime/third_party/boringssl/include/openssl/rc4.h +54 -0
  646. package/runtime/third_party/boringssl/include/openssl/ripemd.h +71 -0
  647. package/runtime/third_party/boringssl/include/openssl/rsa.h +893 -0
  648. package/runtime/third_party/boringssl/include/openssl/safestack.h +16 -0
  649. package/runtime/third_party/boringssl/include/openssl/service_indicator.h +19 -0
  650. package/runtime/third_party/boringssl/include/openssl/sha.h +108 -0
  651. package/runtime/third_party/boringssl/include/openssl/sha2.h +201 -0
  652. package/runtime/third_party/boringssl/include/openssl/siphash.h +37 -0
  653. package/runtime/third_party/boringssl/include/openssl/slhdsa.h +250 -0
  654. package/runtime/third_party/boringssl/include/openssl/span.h +376 -0
  655. package/runtime/third_party/boringssl/include/openssl/srtp.h +18 -0
  656. package/runtime/third_party/boringssl/include/openssl/ssl.h +7211 -0
  657. package/runtime/third_party/boringssl/include/openssl/ssl3.h +171 -0
  658. package/runtime/third_party/boringssl/include/openssl/stack.h +688 -0
  659. package/runtime/third_party/boringssl/include/openssl/target.h +246 -0
  660. package/runtime/third_party/boringssl/include/openssl/thread.h +114 -0
  661. package/runtime/third_party/boringssl/include/openssl/time.h +22 -0
  662. package/runtime/third_party/boringssl/include/openssl/tls1.h +263 -0
  663. package/runtime/third_party/boringssl/include/openssl/tls_prf.h +47 -0
  664. package/runtime/third_party/boringssl/include/openssl/trust_token.h +349 -0
  665. package/runtime/third_party/boringssl/include/openssl/type_check.h +37 -0
  666. package/runtime/third_party/boringssl/include/openssl/types.h +18 -0
  667. package/runtime/third_party/boringssl/include/openssl/x509.h +5404 -0
  668. package/runtime/third_party/boringssl/include/openssl/x509_vfy.h +18 -0
  669. package/runtime/third_party/boringssl/include/openssl/x509v3.h +63 -0
  670. package/runtime/third_party/boringssl/include/openssl/x509v3_errors.h +84 -0
  671. package/runtime/third_party/boringssl/include/openssl/xwing.h +115 -0
  672. package/runtime/third_party/boringssl/sources.json +696 -0
  673. package/runtime/third_party/boringssl/ssl/bio_ssl.cc +196 -0
  674. package/runtime/third_party/boringssl/ssl/d1_both.cc +1137 -0
  675. package/runtime/third_party/boringssl/ssl/d1_lib.cc +245 -0
  676. package/runtime/third_party/boringssl/ssl/d1_pkt.cc +322 -0
  677. package/runtime/third_party/boringssl/ssl/d1_srtp.cc +128 -0
  678. package/runtime/third_party/boringssl/ssl/dtls_method.cc +216 -0
  679. package/runtime/third_party/boringssl/ssl/dtls_record.cc +586 -0
  680. package/runtime/third_party/boringssl/ssl/encrypted_client_hello.cc +1110 -0
  681. package/runtime/third_party/boringssl/ssl/extensions.cc +5368 -0
  682. package/runtime/third_party/boringssl/ssl/handoff.cc +625 -0
  683. package/runtime/third_party/boringssl/ssl/handshake.cc +694 -0
  684. package/runtime/third_party/boringssl/ssl/handshake_client.cc +1958 -0
  685. package/runtime/third_party/boringssl/ssl/handshake_server.cc +1875 -0
  686. package/runtime/third_party/boringssl/ssl/internal.h +4506 -0
  687. package/runtime/third_party/boringssl/ssl/s3_both.cc +555 -0
  688. package/runtime/third_party/boringssl/ssl/s3_lib.cc +88 -0
  689. package/runtime/third_party/boringssl/ssl/s3_pkt.cc +396 -0
  690. package/runtime/third_party/boringssl/ssl/ssl_aead_ctx.cc +416 -0
  691. package/runtime/third_party/boringssl/ssl/ssl_asn1.cc +851 -0
  692. package/runtime/third_party/boringssl/ssl/ssl_buffer.cc +304 -0
  693. package/runtime/third_party/boringssl/ssl/ssl_cert.cc +723 -0
  694. package/runtime/third_party/boringssl/ssl/ssl_cipher.cc +1762 -0
  695. package/runtime/third_party/boringssl/ssl/ssl_credential.cc +913 -0
  696. package/runtime/third_party/boringssl/ssl/ssl_file.cc +375 -0
  697. package/runtime/third_party/boringssl/ssl/ssl_key_share.cc +445 -0
  698. package/runtime/third_party/boringssl/ssl/ssl_lib.cc +4132 -0
  699. package/runtime/third_party/boringssl/ssl/ssl_privkey.cc +973 -0
  700. package/runtime/third_party/boringssl/ssl/ssl_session.cc +1273 -0
  701. package/runtime/third_party/boringssl/ssl/ssl_stat.cc +162 -0
  702. package/runtime/third_party/boringssl/ssl/ssl_transcript.cc +224 -0
  703. package/runtime/third_party/boringssl/ssl/ssl_versions.cc +436 -0
  704. package/runtime/third_party/boringssl/ssl/ssl_x509.cc +1229 -0
  705. package/runtime/third_party/boringssl/ssl/t1_enc.cc +266 -0
  706. package/runtime/third_party/boringssl/ssl/tls13_both.cc +764 -0
  707. package/runtime/third_party/boringssl/ssl/tls13_client.cc +1325 -0
  708. package/runtime/third_party/boringssl/ssl/tls13_enc.cc +746 -0
  709. package/runtime/third_party/boringssl/ssl/tls13_server.cc +1623 -0
  710. package/runtime/third_party/boringssl/ssl/tls_method.cc +266 -0
  711. package/runtime/third_party/boringssl/ssl/tls_record.cc +524 -0
  712. package/runtime/third_party/boringssl/third_party/fiat/asm/fiat_curve25519_adx_mul.S +178 -0
  713. package/runtime/third_party/boringssl/third_party/fiat/asm/fiat_curve25519_adx_square.S +146 -0
  714. package/runtime/third_party/boringssl/third_party/fiat/asm/fiat_p256_adx_mul.S +177 -0
  715. package/runtime/third_party/boringssl/third_party/fiat/asm/fiat_p256_adx_sqr.S +166 -0
  716. package/runtime/third_party/boringssl/third_party/fiat/bedrock_unverified_bareminimum.c.inc +47 -0
  717. package/runtime/third_party/boringssl/third_party/fiat/bedrock_unverified_platform.c.inc +137 -0
  718. package/runtime/third_party/boringssl/third_party/fiat/curve25519_32.h +1571 -0
  719. package/runtime/third_party/boringssl/third_party/fiat/curve25519_64.h +978 -0
  720. package/runtime/third_party/boringssl/third_party/fiat/curve25519_64_adx.h +700 -0
  721. package/runtime/third_party/boringssl/third_party/fiat/curve25519_64_msvc.h +1281 -0
  722. package/runtime/third_party/boringssl/third_party/fiat/p256_32.h +4760 -0
  723. package/runtime/third_party/boringssl/third_party/fiat/p256_64.h +1984 -0
  724. package/runtime/third_party/boringssl/third_party/fiat/p256_64_msvc.h +1939 -0
  725. package/runtime/third_party/boringssl/third_party/fiat/p256_field.c.inc +26 -0
  726. package/runtime/third_party/boringssl/third_party/fiat/p256_field_32.br.c.inc +71 -0
  727. package/runtime/third_party/boringssl/third_party/fiat/p256_field_64.br.c.inc +84 -0
  728. package/runtime/third_party/boringssl/third_party/fiat/p256_point.br.c.inc +112 -0
  729. package/runtime/third_party/v8-ieee754/README.md +2 -1
  730. package/runtime/third_party/v8-ieee754/convert.py +4 -0
  731. package/runtime/third_party/v8-ieee754/ieee754.c +1 -1
  732. package/runtime/third_party/bearssl/LICENSE.txt +0 -21
  733. package/runtime/third_party/bearssl/README.txt +0 -136
  734. package/runtime/third_party/bearssl/VERSION +0 -1
  735. package/runtime/third_party/bearssl/inc/bearssl.h +0 -183
  736. package/runtime/third_party/bearssl/inc/bearssl_aead.h +0 -1059
  737. package/runtime/third_party/bearssl/inc/bearssl_block.h +0 -2618
  738. package/runtime/third_party/bearssl/inc/bearssl_ec.h +0 -967
  739. package/runtime/third_party/bearssl/inc/bearssl_hash.h +0 -1346
  740. package/runtime/third_party/bearssl/inc/bearssl_hmac.h +0 -241
  741. package/runtime/third_party/bearssl/inc/bearssl_kdf.h +0 -284
  742. package/runtime/third_party/bearssl/inc/bearssl_pem.h +0 -294
  743. package/runtime/third_party/bearssl/inc/bearssl_prf.h +0 -150
  744. package/runtime/third_party/bearssl/inc/bearssl_rand.h +0 -397
  745. package/runtime/third_party/bearssl/inc/bearssl_rsa.h +0 -1655
  746. package/runtime/third_party/bearssl/inc/bearssl_ssl.h +0 -4296
  747. package/runtime/third_party/bearssl/inc/bearssl_x509.h +0 -1474
  748. package/runtime/third_party/bearssl/src/aead/ccm.c +0 -346
  749. package/runtime/third_party/bearssl/src/aead/eax.c +0 -525
  750. package/runtime/third_party/bearssl/src/aead/gcm.c +0 -318
  751. package/runtime/third_party/bearssl/src/codec/ccopy.c +0 -44
  752. package/runtime/third_party/bearssl/src/codec/dec16be.c +0 -38
  753. package/runtime/third_party/bearssl/src/codec/dec16le.c +0 -38
  754. package/runtime/third_party/bearssl/src/codec/dec32be.c +0 -38
  755. package/runtime/third_party/bearssl/src/codec/dec32le.c +0 -38
  756. package/runtime/third_party/bearssl/src/codec/dec64be.c +0 -38
  757. package/runtime/third_party/bearssl/src/codec/dec64le.c +0 -38
  758. package/runtime/third_party/bearssl/src/codec/enc16be.c +0 -38
  759. package/runtime/third_party/bearssl/src/codec/enc16le.c +0 -38
  760. package/runtime/third_party/bearssl/src/codec/enc32be.c +0 -38
  761. package/runtime/third_party/bearssl/src/codec/enc32le.c +0 -38
  762. package/runtime/third_party/bearssl/src/codec/enc64be.c +0 -38
  763. package/runtime/third_party/bearssl/src/codec/enc64le.c +0 -38
  764. package/runtime/third_party/bearssl/src/codec/pemdec.c +0 -526
  765. package/runtime/third_party/bearssl/src/codec/pemdec.t0 +0 -314
  766. package/runtime/third_party/bearssl/src/codec/pemenc.c +0 -173
  767. package/runtime/third_party/bearssl/src/config.h +0 -247
  768. package/runtime/third_party/bearssl/src/ec/ec_all_m15.c +0 -121
  769. package/runtime/third_party/bearssl/src/ec/ec_all_m31.c +0 -171
  770. package/runtime/third_party/bearssl/src/ec/ec_c25519_i15.c +0 -398
  771. package/runtime/third_party/bearssl/src/ec/ec_c25519_i31.c +0 -390
  772. package/runtime/third_party/bearssl/src/ec/ec_c25519_m15.c +0 -1478
  773. package/runtime/third_party/bearssl/src/ec/ec_c25519_m31.c +0 -800
  774. package/runtime/third_party/bearssl/src/ec/ec_c25519_m62.c +0 -605
  775. package/runtime/third_party/bearssl/src/ec/ec_c25519_m64.c +0 -831
  776. package/runtime/third_party/bearssl/src/ec/ec_curve25519.c +0 -46
  777. package/runtime/third_party/bearssl/src/ec/ec_default.c +0 -36
  778. package/runtime/third_party/bearssl/src/ec/ec_keygen.c +0 -86
  779. package/runtime/third_party/bearssl/src/ec/ec_p256_m15.c +0 -2124
  780. package/runtime/third_party/bearssl/src/ec/ec_p256_m31.c +0 -1469
  781. package/runtime/third_party/bearssl/src/ec/ec_p256_m62.c +0 -1765
  782. package/runtime/third_party/bearssl/src/ec/ec_p256_m64.c +0 -1781
  783. package/runtime/third_party/bearssl/src/ec/ec_prime_i15.c +0 -824
  784. package/runtime/third_party/bearssl/src/ec/ec_prime_i31.c +0 -826
  785. package/runtime/third_party/bearssl/src/ec/ec_pubkey.c +0 -85
  786. package/runtime/third_party/bearssl/src/ec/ec_secp256r1.c +0 -51
  787. package/runtime/third_party/bearssl/src/ec/ec_secp384r1.c +0 -57
  788. package/runtime/third_party/bearssl/src/ec/ec_secp521r1.c +0 -64
  789. package/runtime/third_party/bearssl/src/ec/ecdsa_atr.c +0 -134
  790. package/runtime/third_party/bearssl/src/ec/ecdsa_default_sign_asn1.c +0 -36
  791. package/runtime/third_party/bearssl/src/ec/ecdsa_default_sign_raw.c +0 -36
  792. package/runtime/third_party/bearssl/src/ec/ecdsa_default_vrfy_asn1.c +0 -36
  793. package/runtime/third_party/bearssl/src/ec/ecdsa_default_vrfy_raw.c +0 -36
  794. package/runtime/third_party/bearssl/src/ec/ecdsa_i15_bits.c +0 -47
  795. package/runtime/third_party/bearssl/src/ec/ecdsa_i15_sign_asn1.c +0 -45
  796. package/runtime/third_party/bearssl/src/ec/ecdsa_i15_sign_raw.c +0 -174
  797. package/runtime/third_party/bearssl/src/ec/ecdsa_i15_vrfy_asn1.c +0 -48
  798. package/runtime/third_party/bearssl/src/ec/ecdsa_i15_vrfy_raw.c +0 -166
  799. package/runtime/third_party/bearssl/src/ec/ecdsa_i31_bits.c +0 -47
  800. package/runtime/third_party/bearssl/src/ec/ecdsa_i31_sign_asn1.c +0 -45
  801. package/runtime/third_party/bearssl/src/ec/ecdsa_i31_sign_raw.c +0 -173
  802. package/runtime/third_party/bearssl/src/ec/ecdsa_i31_vrfy_asn1.c +0 -48
  803. package/runtime/third_party/bearssl/src/ec/ecdsa_i31_vrfy_raw.c +0 -165
  804. package/runtime/third_party/bearssl/src/ec/ecdsa_rta.c +0 -121
  805. package/runtime/third_party/bearssl/src/hash/dig_oid.c +0 -84
  806. package/runtime/third_party/bearssl/src/hash/dig_size.c +0 -50
  807. package/runtime/third_party/bearssl/src/hash/ghash_ctmul.c +0 -345
  808. package/runtime/third_party/bearssl/src/hash/ghash_ctmul32.c +0 -251
  809. package/runtime/third_party/bearssl/src/hash/ghash_ctmul64.c +0 -154
  810. package/runtime/third_party/bearssl/src/hash/ghash_pclmul.c +0 -389
  811. package/runtime/third_party/bearssl/src/hash/ghash_pwr8.c +0 -411
  812. package/runtime/third_party/bearssl/src/hash/md5.c +0 -208
  813. package/runtime/third_party/bearssl/src/hash/md5sha1.c +0 -141
  814. package/runtime/third_party/bearssl/src/hash/mgf1.c +0 -56
  815. package/runtime/third_party/bearssl/src/hash/multihash.c +0 -166
  816. package/runtime/third_party/bearssl/src/hash/sha1.c +0 -191
  817. package/runtime/third_party/bearssl/src/hash/sha2big.c +0 -285
  818. package/runtime/third_party/bearssl/src/hash/sha2small.c +0 -341
  819. package/runtime/third_party/bearssl/src/inner.h +0 -2577
  820. package/runtime/third_party/bearssl/src/int/i15_add.c +0 -46
  821. package/runtime/third_party/bearssl/src/int/i15_bitlen.c +0 -44
  822. package/runtime/third_party/bearssl/src/int/i15_decmod.c +0 -124
  823. package/runtime/third_party/bearssl/src/int/i15_decode.c +0 -56
  824. package/runtime/third_party/bearssl/src/int/i15_decred.c +0 -100
  825. package/runtime/third_party/bearssl/src/int/i15_encode.c +0 -56
  826. package/runtime/third_party/bearssl/src/int/i15_fmont.c +0 -59
  827. package/runtime/third_party/bearssl/src/int/i15_iszero.c +0 -39
  828. package/runtime/third_party/bearssl/src/int/i15_moddiv.c +0 -465
  829. package/runtime/third_party/bearssl/src/int/i15_modpow.c +0 -50
  830. package/runtime/third_party/bearssl/src/int/i15_modpow2.c +0 -160
  831. package/runtime/third_party/bearssl/src/int/i15_montmul.c +0 -184
  832. package/runtime/third_party/bearssl/src/int/i15_mulacc.c +0 -61
  833. package/runtime/third_party/bearssl/src/int/i15_muladd.c +0 -173
  834. package/runtime/third_party/bearssl/src/int/i15_ninv15.c +0 -38
  835. package/runtime/third_party/bearssl/src/int/i15_reduce.c +0 -66
  836. package/runtime/third_party/bearssl/src/int/i15_rshift.c +0 -47
  837. package/runtime/third_party/bearssl/src/int/i15_sub.c +0 -46
  838. package/runtime/third_party/bearssl/src/int/i15_tmont.c +0 -36
  839. package/runtime/third_party/bearssl/src/int/i31_add.c +0 -46
  840. package/runtime/third_party/bearssl/src/int/i31_bitlen.c +0 -44
  841. package/runtime/third_party/bearssl/src/int/i31_decmod.c +0 -124
  842. package/runtime/third_party/bearssl/src/int/i31_decode.c +0 -57
  843. package/runtime/third_party/bearssl/src/int/i31_decred.c +0 -103
  844. package/runtime/third_party/bearssl/src/int/i31_encode.c +0 -79
  845. package/runtime/third_party/bearssl/src/int/i31_fmont.c +0 -60
  846. package/runtime/third_party/bearssl/src/int/i31_iszero.c +0 -39
  847. package/runtime/third_party/bearssl/src/int/i31_moddiv.c +0 -488
  848. package/runtime/third_party/bearssl/src/int/i31_modpow.c +0 -65
  849. package/runtime/third_party/bearssl/src/int/i31_modpow2.c +0 -160
  850. package/runtime/third_party/bearssl/src/int/i31_montmul.c +0 -127
  851. package/runtime/third_party/bearssl/src/int/i31_mulacc.c +0 -74
  852. package/runtime/third_party/bearssl/src/int/i31_muladd.c +0 -157
  853. package/runtime/third_party/bearssl/src/int/i31_ninv31.c +0 -39
  854. package/runtime/third_party/bearssl/src/int/i31_reduce.c +0 -66
  855. package/runtime/third_party/bearssl/src/int/i31_rshift.c +0 -47
  856. package/runtime/third_party/bearssl/src/int/i31_sub.c +0 -46
  857. package/runtime/third_party/bearssl/src/int/i31_tmont.c +0 -36
  858. package/runtime/third_party/bearssl/src/int/i32_add.c +0 -51
  859. package/runtime/third_party/bearssl/src/int/i32_bitlen.c +0 -44
  860. package/runtime/third_party/bearssl/src/int/i32_decmod.c +0 -77
  861. package/runtime/third_party/bearssl/src/int/i32_decode.c +0 -63
  862. package/runtime/third_party/bearssl/src/int/i32_decred.c +0 -107
  863. package/runtime/third_party/bearssl/src/int/i32_div32.c +0 -56
  864. package/runtime/third_party/bearssl/src/int/i32_encode.c +0 -72
  865. package/runtime/third_party/bearssl/src/int/i32_fmont.c +0 -60
  866. package/runtime/third_party/bearssl/src/int/i32_iszero.c +0 -39
  867. package/runtime/third_party/bearssl/src/int/i32_modpow.c +0 -65
  868. package/runtime/third_party/bearssl/src/int/i32_montmul.c +0 -69
  869. package/runtime/third_party/bearssl/src/int/i32_mulacc.c +0 -56
  870. package/runtime/third_party/bearssl/src/int/i32_muladd.c +0 -138
  871. package/runtime/third_party/bearssl/src/int/i32_ninv32.c +0 -39
  872. package/runtime/third_party/bearssl/src/int/i32_reduce.c +0 -66
  873. package/runtime/third_party/bearssl/src/int/i32_sub.c +0 -51
  874. package/runtime/third_party/bearssl/src/int/i32_tmont.c +0 -36
  875. package/runtime/third_party/bearssl/src/int/i62_modpow2.c +0 -493
  876. package/runtime/third_party/bearssl/src/kdf/hkdf.c +0 -107
  877. package/runtime/third_party/bearssl/src/kdf/shake.c +0 -590
  878. package/runtime/third_party/bearssl/src/mac/hmac.c +0 -122
  879. package/runtime/third_party/bearssl/src/mac/hmac_ct.c +0 -193
  880. package/runtime/third_party/bearssl/src/rand/aesctr_drbg.c +0 -206
  881. package/runtime/third_party/bearssl/src/rand/hmac_drbg.c +0 -157
  882. package/runtime/third_party/bearssl/src/rand/sysrng.c +0 -252
  883. package/runtime/third_party/bearssl/src/rsa/rsa_default_keygen.c +0 -38
  884. package/runtime/third_party/bearssl/src/rsa/rsa_default_modulus.c +0 -36
  885. package/runtime/third_party/bearssl/src/rsa/rsa_default_oaep_decrypt.c +0 -38
  886. package/runtime/third_party/bearssl/src/rsa/rsa_default_oaep_encrypt.c +0 -38
  887. package/runtime/third_party/bearssl/src/rsa/rsa_default_pkcs1_sign.c +0 -38
  888. package/runtime/third_party/bearssl/src/rsa/rsa_default_pkcs1_vrfy.c +0 -38
  889. package/runtime/third_party/bearssl/src/rsa/rsa_default_priv.c +0 -38
  890. package/runtime/third_party/bearssl/src/rsa/rsa_default_privexp.c +0 -36
  891. package/runtime/third_party/bearssl/src/rsa/rsa_default_pss_sign.c +0 -38
  892. package/runtime/third_party/bearssl/src/rsa/rsa_default_pss_vrfy.c +0 -38
  893. package/runtime/third_party/bearssl/src/rsa/rsa_default_pub.c +0 -38
  894. package/runtime/third_party/bearssl/src/rsa/rsa_default_pubexp.c +0 -36
  895. package/runtime/third_party/bearssl/src/rsa/rsa_i15_keygen.c +0 -583
  896. package/runtime/third_party/bearssl/src/rsa/rsa_i15_modulus.c +0 -99
  897. package/runtime/third_party/bearssl/src/rsa/rsa_i15_oaep_decrypt.c +0 -41
  898. package/runtime/third_party/bearssl/src/rsa/rsa_i15_oaep_encrypt.c +0 -44
  899. package/runtime/third_party/bearssl/src/rsa/rsa_i15_pkcs1_sign.c +0 -37
  900. package/runtime/third_party/bearssl/src/rsa/rsa_i15_pkcs1_vrfy.c +0 -43
  901. package/runtime/third_party/bearssl/src/rsa/rsa_i15_priv.c +0 -209
  902. package/runtime/third_party/bearssl/src/rsa/rsa_i15_privexp.c +0 -320
  903. package/runtime/third_party/bearssl/src/rsa/rsa_i15_pss_sign.c +0 -40
  904. package/runtime/third_party/bearssl/src/rsa/rsa_i15_pss_vrfy.c +0 -44
  905. package/runtime/third_party/bearssl/src/rsa/rsa_i15_pub.c +0 -113
  906. package/runtime/third_party/bearssl/src/rsa/rsa_i15_pubexp.c +0 -152
  907. package/runtime/third_party/bearssl/src/rsa/rsa_i31_keygen.c +0 -37
  908. package/runtime/third_party/bearssl/src/rsa/rsa_i31_keygen_inner.c +0 -608
  909. package/runtime/third_party/bearssl/src/rsa/rsa_i31_modulus.c +0 -99
  910. package/runtime/third_party/bearssl/src/rsa/rsa_i31_oaep_decrypt.c +0 -41
  911. package/runtime/third_party/bearssl/src/rsa/rsa_i31_oaep_encrypt.c +0 -44
  912. package/runtime/third_party/bearssl/src/rsa/rsa_i31_pkcs1_sign.c +0 -37
  913. package/runtime/third_party/bearssl/src/rsa/rsa_i31_pkcs1_vrfy.c +0 -43
  914. package/runtime/third_party/bearssl/src/rsa/rsa_i31_priv.c +0 -203
  915. package/runtime/third_party/bearssl/src/rsa/rsa_i31_privexp.c +0 -318
  916. package/runtime/third_party/bearssl/src/rsa/rsa_i31_pss_sign.c +0 -40
  917. package/runtime/third_party/bearssl/src/rsa/rsa_i31_pss_vrfy.c +0 -44
  918. package/runtime/third_party/bearssl/src/rsa/rsa_i31_pub.c +0 -106
  919. package/runtime/third_party/bearssl/src/rsa/rsa_i31_pubexp.c +0 -152
  920. package/runtime/third_party/bearssl/src/rsa/rsa_i32_oaep_decrypt.c +0 -41
  921. package/runtime/third_party/bearssl/src/rsa/rsa_i32_oaep_encrypt.c +0 -44
  922. package/runtime/third_party/bearssl/src/rsa/rsa_i32_pkcs1_sign.c +0 -37
  923. package/runtime/third_party/bearssl/src/rsa/rsa_i32_pkcs1_vrfy.c +0 -43
  924. package/runtime/third_party/bearssl/src/rsa/rsa_i32_priv.c +0 -160
  925. package/runtime/third_party/bearssl/src/rsa/rsa_i32_pss_sign.c +0 -40
  926. package/runtime/third_party/bearssl/src/rsa/rsa_i32_pss_vrfy.c +0 -44
  927. package/runtime/third_party/bearssl/src/rsa/rsa_i32_pub.c +0 -77
  928. package/runtime/third_party/bearssl/src/rsa/rsa_i62_keygen.c +0 -57
  929. package/runtime/third_party/bearssl/src/rsa/rsa_i62_oaep_decrypt.c +0 -61
  930. package/runtime/third_party/bearssl/src/rsa/rsa_i62_oaep_encrypt.c +0 -64
  931. package/runtime/third_party/bearssl/src/rsa/rsa_i62_pkcs1_sign.c +0 -57
  932. package/runtime/third_party/bearssl/src/rsa/rsa_i62_pkcs1_vrfy.c +0 -63
  933. package/runtime/third_party/bearssl/src/rsa/rsa_i62_priv.c +0 -223
  934. package/runtime/third_party/bearssl/src/rsa/rsa_i62_pss_sign.c +0 -60
  935. package/runtime/third_party/bearssl/src/rsa/rsa_i62_pss_vrfy.c +0 -64
  936. package/runtime/third_party/bearssl/src/rsa/rsa_i62_pub.c +0 -125
  937. package/runtime/third_party/bearssl/src/rsa/rsa_oaep_pad.c +0 -112
  938. package/runtime/third_party/bearssl/src/rsa/rsa_oaep_unpad.c +0 -145
  939. package/runtime/third_party/bearssl/src/rsa/rsa_pkcs1_sig_pad.c +0 -100
  940. package/runtime/third_party/bearssl/src/rsa/rsa_pkcs1_sig_unpad.c +0 -121
  941. package/runtime/third_party/bearssl/src/rsa/rsa_pss_sig_pad.c +0 -106
  942. package/runtime/third_party/bearssl/src/rsa/rsa_pss_sig_unpad.c +0 -121
  943. package/runtime/third_party/bearssl/src/rsa/rsa_ssl_decrypt.c +0 -52
  944. package/runtime/third_party/bearssl/src/settings.c +0 -306
  945. package/runtime/third_party/bearssl/src/symcipher/aes_big_cbcdec.c +0 -69
  946. package/runtime/third_party/bearssl/src/symcipher/aes_big_cbcenc.c +0 -67
  947. package/runtime/third_party/bearssl/src/symcipher/aes_big_ctr.c +0 -84
  948. package/runtime/third_party/bearssl/src/symcipher/aes_big_ctrcbc.c +0 -142
  949. package/runtime/third_party/bearssl/src/symcipher/aes_big_dec.c +0 -254
  950. package/runtime/third_party/bearssl/src/symcipher/aes_big_enc.c +0 -157
  951. package/runtime/third_party/bearssl/src/symcipher/aes_common.c +0 -112
  952. package/runtime/third_party/bearssl/src/symcipher/aes_ct.c +0 -328
  953. package/runtime/third_party/bearssl/src/symcipher/aes_ct64.c +0 -398
  954. package/runtime/third_party/bearssl/src/symcipher/aes_ct64_cbcdec.c +0 -104
  955. package/runtime/third_party/bearssl/src/symcipher/aes_ct64_cbcenc.c +0 -81
  956. package/runtime/third_party/bearssl/src/symcipher/aes_ct64_ctr.c +0 -114
  957. package/runtime/third_party/bearssl/src/symcipher/aes_ct64_ctrcbc.c +0 -433
  958. package/runtime/third_party/bearssl/src/symcipher/aes_ct64_dec.c +0 -159
  959. package/runtime/third_party/bearssl/src/symcipher/aes_ct64_enc.c +0 -115
  960. package/runtime/third_party/bearssl/src/symcipher/aes_ct_cbcdec.c +0 -111
  961. package/runtime/third_party/bearssl/src/symcipher/aes_ct_cbcenc.c +0 -91
  962. package/runtime/third_party/bearssl/src/symcipher/aes_ct_ctr.c +0 -116
  963. package/runtime/third_party/bearssl/src/symcipher/aes_ct_ctrcbc.c +0 -422
  964. package/runtime/third_party/bearssl/src/symcipher/aes_ct_dec.c +0 -170
  965. package/runtime/third_party/bearssl/src/symcipher/aes_ct_enc.c +0 -112
  966. package/runtime/third_party/bearssl/src/symcipher/aes_pwr8.c +0 -445
  967. package/runtime/third_party/bearssl/src/symcipher/aes_pwr8_cbcdec.c +0 -670
  968. package/runtime/third_party/bearssl/src/symcipher/aes_pwr8_cbcenc.c +0 -417
  969. package/runtime/third_party/bearssl/src/symcipher/aes_pwr8_ctr.c +0 -717
  970. package/runtime/third_party/bearssl/src/symcipher/aes_pwr8_ctrcbc.c +0 -946
  971. package/runtime/third_party/bearssl/src/symcipher/aes_small_cbcdec.c +0 -69
  972. package/runtime/third_party/bearssl/src/symcipher/aes_small_cbcenc.c +0 -67
  973. package/runtime/third_party/bearssl/src/symcipher/aes_small_ctr.c +0 -84
  974. package/runtime/third_party/bearssl/src/symcipher/aes_small_ctrcbc.c +0 -142
  975. package/runtime/third_party/bearssl/src/symcipher/aes_small_dec.c +0 -176
  976. package/runtime/third_party/bearssl/src/symcipher/aes_small_enc.c +0 -129
  977. package/runtime/third_party/bearssl/src/symcipher/aes_x86ni.c +0 -240
  978. package/runtime/third_party/bearssl/src/symcipher/aes_x86ni_cbcdec.c +0 -223
  979. package/runtime/third_party/bearssl/src/symcipher/aes_x86ni_cbcenc.c +0 -122
  980. package/runtime/third_party/bearssl/src/symcipher/aes_x86ni_ctr.c +0 -211
  981. package/runtime/third_party/bearssl/src/symcipher/aes_x86ni_ctrcbc.c +0 -596
  982. package/runtime/third_party/bearssl/src/symcipher/chacha20_ct.c +0 -106
  983. package/runtime/third_party/bearssl/src/symcipher/chacha20_sse2.c +0 -237
  984. package/runtime/third_party/bearssl/src/symcipher/des_ct.c +0 -411
  985. package/runtime/third_party/bearssl/src/symcipher/des_ct_cbcdec.c +0 -87
  986. package/runtime/third_party/bearssl/src/symcipher/des_ct_cbcenc.c +0 -69
  987. package/runtime/third_party/bearssl/src/symcipher/des_support.c +0 -166
  988. package/runtime/third_party/bearssl/src/symcipher/des_tab.c +0 -310
  989. package/runtime/third_party/bearssl/src/symcipher/des_tab_cbcdec.c +0 -85
  990. package/runtime/third_party/bearssl/src/symcipher/des_tab_cbcenc.c +0 -67
  991. package/runtime/third_party/bearssl/src/symcipher/poly1305_ctmul.c +0 -260
  992. package/runtime/third_party/bearssl/src/symcipher/poly1305_ctmul32.c +0 -297
  993. package/runtime/third_party/bearssl/src/symcipher/poly1305_ctmulq.c +0 -475
  994. package/runtime/third_party/bearssl/src/symcipher/poly1305_i15.c +0 -221
  995. package/runtime/third_party/bearssl/src/x509/asn1.t0 +0 -757
  996. package/runtime/third_party/bearssl/src/x509/asn1enc.c +0 -93
  997. package/runtime/third_party/bearssl/src/x509/encode_ec_pk8der.c +0 -110
  998. package/runtime/third_party/bearssl/src/x509/encode_ec_rawder.c +0 -161
  999. package/runtime/third_party/bearssl/src/x509/encode_rsa_pk8der.c +0 -97
  1000. package/runtime/third_party/bearssl/src/x509/encode_rsa_rawder.c +0 -96
  1001. package/runtime/third_party/bearssl/src/x509/skey_decoder.c +0 -653
  1002. package/runtime/third_party/bearssl/src/x509/skey_decoder.t0 +0 -376
  1003. package/runtime/third_party/bearssl/src/x509/x509_decoder.c +0 -776
  1004. package/runtime/third_party/bearssl/src/x509/x509_decoder.t0 +0 -324
  1005. package/runtime/third_party/bearssl/src/x509/x509_knownkey.c +0 -105
  1006. package/runtime/third_party/bearssl/src/x509/x509_minimal.c +0 -1722
  1007. package/runtime/third_party/bearssl/src/x509/x509_minimal.t0 +0 -1526
  1008. package/runtime/third_party/bearssl/src/x509/x509_minimal_full.c +0 -59
@@ -0,0 +1,873 @@
1
+ // This file is generated from a similarly-named Perl script in the BoringSSL
2
+ // source tree. Do not edit by hand.
3
+
4
+ #include <openssl/asm_base.h>
5
+
6
+ #if !defined(OPENSSL_NO_ASM) && defined(OPENSSL_X86_64) && defined(__APPLE__)
7
+ .text
8
+
9
+
10
+ .p2align 5
11
+ _aesni_ctr32_ghash_6x:
12
+
13
+ vmovdqu 32(%r11),%xmm2 // borrow %xmm2, .Lone_msb
14
+ subq $6,%rdx
15
+ vpxor %xmm4,%xmm4,%xmm4 // %xmm4 = 0
16
+ vmovdqu 0-128(%rcx),%xmm15
17
+ vpaddb %xmm2,%xmm1,%xmm10
18
+ vpaddb %xmm2,%xmm10,%xmm11
19
+ vpaddb %xmm2,%xmm11,%xmm12
20
+ vpaddb %xmm2,%xmm12,%xmm13
21
+ vpaddb %xmm2,%xmm13,%xmm14
22
+ vpxor %xmm15,%xmm1,%xmm9
23
+ vmovdqu %xmm4,16+8(%rsp) // "%xmm7" = 0
24
+ jmp L$oop6x
25
+
26
+ .p2align 5
27
+ L$oop6x:
28
+ addl $100663296,%ebx
29
+ jc L$handle_ctr32 // discard ?
30
+ vmovdqu 0-32(%r9),%xmm3 // %xmm3^1
31
+ vpaddb %xmm2,%xmm14,%xmm1 // next counter value
32
+ vpxor %xmm15,%xmm10,%xmm10
33
+ vpxor %xmm15,%xmm11,%xmm11
34
+
35
+ L$resume_ctr32:
36
+ vmovdqu %xmm1,(%r8) // save next counter value
37
+ vpclmulqdq $0x10,%xmm3,%xmm7,%xmm5
38
+ vpxor %xmm15,%xmm12,%xmm12
39
+ vmovups 16-128(%rcx),%xmm2 // borrow %xmm2 for %xmm15
40
+ vpclmulqdq $0x01,%xmm3,%xmm7,%xmm6
41
+
42
+ // At this point, the current block of 96 (0x60) bytes has already been
43
+ // loaded into registers. Concurrently with processing it, we want to
44
+ // load the next 96 bytes of input for the next round. Obviously, we can
45
+ // only do this if there are at least 96 more bytes of input beyond the
46
+ // input we're currently processing, or else we'd read past the end of
47
+ // the input buffer. Here, we set |%r12| to 96 if there are at least 96
48
+ // bytes of input beyond the 96 bytes we're already processing, and we
49
+ // set |%r12| to 0 otherwise. In the case where we set |%r12| to 96,
50
+ // we'll read in the next block so that it is in registers for the next
51
+ // loop iteration. In the case where we set |%r12| to 0, we'll re-read
52
+ // the current block and then ignore what we re-read.
53
+ //
54
+ // At this point, |%r14| points to the current (already read into
55
+ // registers) block, and |%r15| points to 2*96 bytes before the end of
56
+ // the input. Thus, |%r14| > |%r15| means that we do not have the next
57
+ // 96-byte block to read in, and |%r14| <= |%r15| means we do.
58
+ xorq %r12,%r12
59
+ cmpq %r14,%r15
60
+
61
+ vaesenc %xmm2,%xmm9,%xmm9
62
+ vmovdqu 48+8(%rsp),%xmm0 // I[4]
63
+ vpxor %xmm15,%xmm13,%xmm13
64
+ vpclmulqdq $0x00,%xmm3,%xmm7,%xmm1
65
+ vaesenc %xmm2,%xmm10,%xmm10
66
+ vpxor %xmm15,%xmm14,%xmm14
67
+ setnc %r12b
68
+ vpclmulqdq $0x11,%xmm3,%xmm7,%xmm7
69
+ vaesenc %xmm2,%xmm11,%xmm11
70
+ vmovdqu 16-32(%r9),%xmm3 // %xmm3^2
71
+ negq %r12
72
+ vaesenc %xmm2,%xmm12,%xmm12
73
+ vpxor %xmm5,%xmm6,%xmm6
74
+ vpclmulqdq $0x00,%xmm3,%xmm0,%xmm5
75
+ vpxor %xmm4,%xmm8,%xmm8 // modulo-scheduled
76
+ vaesenc %xmm2,%xmm13,%xmm13
77
+ vpxor %xmm5,%xmm1,%xmm4
78
+ andq $0x60,%r12
79
+ vmovups 32-128(%rcx),%xmm15
80
+ vpclmulqdq $0x10,%xmm3,%xmm0,%xmm1
81
+ vaesenc %xmm2,%xmm14,%xmm14
82
+
83
+ vpclmulqdq $0x01,%xmm3,%xmm0,%xmm2
84
+ leaq (%r14,%r12,1),%r14
85
+ vaesenc %xmm15,%xmm9,%xmm9
86
+ vpxor 16+8(%rsp),%xmm8,%xmm8 // modulo-scheduled [vpxor %xmm7,%xmm8,%xmm8]
87
+ vpclmulqdq $0x11,%xmm3,%xmm0,%xmm3
88
+ vmovdqu 64+8(%rsp),%xmm0 // I[3]
89
+ vaesenc %xmm15,%xmm10,%xmm10
90
+ movbeq 88(%r14),%r13
91
+ vaesenc %xmm15,%xmm11,%xmm11
92
+ movbeq 80(%r14),%r12
93
+ vaesenc %xmm15,%xmm12,%xmm12
94
+ movq %r13,32+8(%rsp)
95
+ vaesenc %xmm15,%xmm13,%xmm13
96
+ movq %r12,40+8(%rsp)
97
+ vmovdqu 48-32(%r9),%xmm5 // borrow %xmm5 for %xmm3^3
98
+ vaesenc %xmm15,%xmm14,%xmm14
99
+
100
+ vmovups 48-128(%rcx),%xmm15
101
+ vpxor %xmm1,%xmm6,%xmm6
102
+ vpclmulqdq $0x00,%xmm5,%xmm0,%xmm1
103
+ vaesenc %xmm15,%xmm9,%xmm9
104
+ vpxor %xmm2,%xmm6,%xmm6
105
+ vpclmulqdq $0x10,%xmm5,%xmm0,%xmm2
106
+ vaesenc %xmm15,%xmm10,%xmm10
107
+ vpxor %xmm3,%xmm7,%xmm7
108
+ vpclmulqdq $0x01,%xmm5,%xmm0,%xmm3
109
+ vaesenc %xmm15,%xmm11,%xmm11
110
+ vpclmulqdq $0x11,%xmm5,%xmm0,%xmm5
111
+ vmovdqu 80+8(%rsp),%xmm0 // I[2]
112
+ vaesenc %xmm15,%xmm12,%xmm12
113
+ vaesenc %xmm15,%xmm13,%xmm13
114
+ vpxor %xmm1,%xmm4,%xmm4
115
+ vmovdqu 64-32(%r9),%xmm1 // borrow %xmm1 for %xmm3^4
116
+ vaesenc %xmm15,%xmm14,%xmm14
117
+
118
+ vmovups 64-128(%rcx),%xmm15
119
+ vpxor %xmm2,%xmm6,%xmm6
120
+ vpclmulqdq $0x00,%xmm1,%xmm0,%xmm2
121
+ vaesenc %xmm15,%xmm9,%xmm9
122
+ vpxor %xmm3,%xmm6,%xmm6
123
+ vpclmulqdq $0x10,%xmm1,%xmm0,%xmm3
124
+ vaesenc %xmm15,%xmm10,%xmm10
125
+ movbeq 72(%r14),%r13
126
+ vpxor %xmm5,%xmm7,%xmm7
127
+ vpclmulqdq $0x01,%xmm1,%xmm0,%xmm5
128
+ vaesenc %xmm15,%xmm11,%xmm11
129
+ movbeq 64(%r14),%r12
130
+ vpclmulqdq $0x11,%xmm1,%xmm0,%xmm1
131
+ vmovdqu 96+8(%rsp),%xmm0 // I[1]
132
+ vaesenc %xmm15,%xmm12,%xmm12
133
+ movq %r13,48+8(%rsp)
134
+ vaesenc %xmm15,%xmm13,%xmm13
135
+ movq %r12,56+8(%rsp)
136
+ vpxor %xmm2,%xmm4,%xmm4
137
+ vmovdqu 96-32(%r9),%xmm2 // borrow %xmm2 for %xmm3^5
138
+ vaesenc %xmm15,%xmm14,%xmm14
139
+
140
+ vmovups 80-128(%rcx),%xmm15
141
+ vpxor %xmm3,%xmm6,%xmm6
142
+ vpclmulqdq $0x00,%xmm2,%xmm0,%xmm3
143
+ vaesenc %xmm15,%xmm9,%xmm9
144
+ vpxor %xmm5,%xmm6,%xmm6
145
+ vpclmulqdq $0x10,%xmm2,%xmm0,%xmm5
146
+ vaesenc %xmm15,%xmm10,%xmm10
147
+ movbeq 56(%r14),%r13
148
+ vpxor %xmm1,%xmm7,%xmm7
149
+ vpclmulqdq $0x01,%xmm2,%xmm0,%xmm1
150
+ vpxor 112+8(%rsp),%xmm8,%xmm8 // accumulate I[0]
151
+ vaesenc %xmm15,%xmm11,%xmm11
152
+ movbeq 48(%r14),%r12
153
+ vpclmulqdq $0x11,%xmm2,%xmm0,%xmm2
154
+ vaesenc %xmm15,%xmm12,%xmm12
155
+ movq %r13,64+8(%rsp)
156
+ vaesenc %xmm15,%xmm13,%xmm13
157
+ movq %r12,72+8(%rsp)
158
+ vpxor %xmm3,%xmm4,%xmm4
159
+ vmovdqu 112-32(%r9),%xmm3 // %xmm3^6
160
+ vaesenc %xmm15,%xmm14,%xmm14
161
+
162
+ vmovups 96-128(%rcx),%xmm15
163
+ vpxor %xmm5,%xmm6,%xmm6
164
+ vpclmulqdq $0x10,%xmm3,%xmm8,%xmm5
165
+ vaesenc %xmm15,%xmm9,%xmm9
166
+ vpxor %xmm1,%xmm6,%xmm6
167
+ vpclmulqdq $0x01,%xmm3,%xmm8,%xmm1
168
+ vaesenc %xmm15,%xmm10,%xmm10
169
+ movbeq 40(%r14),%r13
170
+ vpxor %xmm2,%xmm7,%xmm7
171
+ vpclmulqdq $0x00,%xmm3,%xmm8,%xmm2
172
+ vaesenc %xmm15,%xmm11,%xmm11
173
+ movbeq 32(%r14),%r12
174
+ vpclmulqdq $0x11,%xmm3,%xmm8,%xmm8
175
+ vaesenc %xmm15,%xmm12,%xmm12
176
+ movq %r13,80+8(%rsp)
177
+ vaesenc %xmm15,%xmm13,%xmm13
178
+ movq %r12,88+8(%rsp)
179
+ vpxor %xmm5,%xmm6,%xmm6
180
+ vaesenc %xmm15,%xmm14,%xmm14
181
+ vpxor %xmm1,%xmm6,%xmm6
182
+
183
+ vmovups 112-128(%rcx),%xmm15
184
+ vpslldq $8,%xmm6,%xmm5
185
+ vpxor %xmm2,%xmm4,%xmm4
186
+ vmovdqu 16(%r11),%xmm3 // .Lpoly
187
+
188
+ vaesenc %xmm15,%xmm9,%xmm9
189
+ vpxor %xmm8,%xmm7,%xmm7
190
+ vaesenc %xmm15,%xmm10,%xmm10
191
+ vpxor %xmm5,%xmm4,%xmm4
192
+ movbeq 24(%r14),%r13
193
+ vaesenc %xmm15,%xmm11,%xmm11
194
+ movbeq 16(%r14),%r12
195
+ vpalignr $8,%xmm4,%xmm4,%xmm0 // 1st phase
196
+ vpclmulqdq $0x10,%xmm3,%xmm4,%xmm4
197
+ movq %r13,96+8(%rsp)
198
+ vaesenc %xmm15,%xmm12,%xmm12
199
+ movq %r12,104+8(%rsp)
200
+ vaesenc %xmm15,%xmm13,%xmm13
201
+ vmovups 128-128(%rcx),%xmm1 // borrow %xmm1 for %xmm15
202
+ vaesenc %xmm15,%xmm14,%xmm14
203
+
204
+ vaesenc %xmm1,%xmm9,%xmm9
205
+ vmovups 144-128(%rcx),%xmm15
206
+ vaesenc %xmm1,%xmm10,%xmm10
207
+ vpsrldq $8,%xmm6,%xmm6
208
+ vaesenc %xmm1,%xmm11,%xmm11
209
+ vpxor %xmm6,%xmm7,%xmm7
210
+ vaesenc %xmm1,%xmm12,%xmm12
211
+ vpxor %xmm0,%xmm4,%xmm4
212
+ movbeq 8(%r14),%r13
213
+ vaesenc %xmm1,%xmm13,%xmm13
214
+ movbeq 0(%r14),%r12
215
+ vaesenc %xmm1,%xmm14,%xmm14
216
+ vmovups 160-128(%rcx),%xmm1
217
+ cmpl $11,%r10d
218
+ jb L$enc_tail // 128-bit key
219
+
220
+ vaesenc %xmm15,%xmm9,%xmm9
221
+ vaesenc %xmm15,%xmm10,%xmm10
222
+ vaesenc %xmm15,%xmm11,%xmm11
223
+ vaesenc %xmm15,%xmm12,%xmm12
224
+ vaesenc %xmm15,%xmm13,%xmm13
225
+ vaesenc %xmm15,%xmm14,%xmm14
226
+
227
+ vaesenc %xmm1,%xmm9,%xmm9
228
+ vaesenc %xmm1,%xmm10,%xmm10
229
+ vaesenc %xmm1,%xmm11,%xmm11
230
+ vaesenc %xmm1,%xmm12,%xmm12
231
+ vaesenc %xmm1,%xmm13,%xmm13
232
+ vmovups 176-128(%rcx),%xmm15
233
+ vaesenc %xmm1,%xmm14,%xmm14
234
+ vmovups 192-128(%rcx),%xmm1
235
+ je L$enc_tail // 192-bit key
236
+
237
+ vaesenc %xmm15,%xmm9,%xmm9
238
+ vaesenc %xmm15,%xmm10,%xmm10
239
+ vaesenc %xmm15,%xmm11,%xmm11
240
+ vaesenc %xmm15,%xmm12,%xmm12
241
+ vaesenc %xmm15,%xmm13,%xmm13
242
+ vaesenc %xmm15,%xmm14,%xmm14
243
+
244
+ vaesenc %xmm1,%xmm9,%xmm9
245
+ vaesenc %xmm1,%xmm10,%xmm10
246
+ vaesenc %xmm1,%xmm11,%xmm11
247
+ vaesenc %xmm1,%xmm12,%xmm12
248
+ vaesenc %xmm1,%xmm13,%xmm13
249
+ vmovups 208-128(%rcx),%xmm15
250
+ vaesenc %xmm1,%xmm14,%xmm14
251
+ vmovups 224-128(%rcx),%xmm1
252
+ jmp L$enc_tail // 256-bit key
253
+
254
+ .p2align 5
255
+ L$handle_ctr32:
256
+ vmovdqu (%r11),%xmm0 // borrow %xmm0 for .Lbswap_mask
257
+ vpshufb %xmm0,%xmm1,%xmm6 // byte-swap counter
258
+ vmovdqu 48(%r11),%xmm5 // borrow %xmm5, .Ltwo_lsb
259
+ vpaddd 64(%r11),%xmm6,%xmm10 // .Lone_lsb
260
+ vpaddd %xmm5,%xmm6,%xmm11
261
+ vmovdqu 0-32(%r9),%xmm3 // %xmm3^1
262
+ vpaddd %xmm5,%xmm10,%xmm12
263
+ vpshufb %xmm0,%xmm10,%xmm10
264
+ vpaddd %xmm5,%xmm11,%xmm13
265
+ vpshufb %xmm0,%xmm11,%xmm11
266
+ vpxor %xmm15,%xmm10,%xmm10
267
+ vpaddd %xmm5,%xmm12,%xmm14
268
+ vpshufb %xmm0,%xmm12,%xmm12
269
+ vpxor %xmm15,%xmm11,%xmm11
270
+ vpaddd %xmm5,%xmm13,%xmm1 // byte-swapped next counter value
271
+ vpshufb %xmm0,%xmm13,%xmm13
272
+ vpshufb %xmm0,%xmm14,%xmm14
273
+ vpshufb %xmm0,%xmm1,%xmm1 // next counter value
274
+ jmp L$resume_ctr32
275
+
276
+ .p2align 5
277
+ L$enc_tail:
278
+ vaesenc %xmm15,%xmm9,%xmm9
279
+ vmovdqu %xmm7,16+8(%rsp) // postpone vpxor %xmm7,%xmm8,%xmm8
280
+ vpalignr $8,%xmm4,%xmm4,%xmm8 // 2nd phase
281
+ vaesenc %xmm15,%xmm10,%xmm10
282
+ vpclmulqdq $0x10,%xmm3,%xmm4,%xmm4
283
+ vpxor 0(%rdi),%xmm1,%xmm2
284
+ vaesenc %xmm15,%xmm11,%xmm11
285
+ vpxor 16(%rdi),%xmm1,%xmm0
286
+ vaesenc %xmm15,%xmm12,%xmm12
287
+ vpxor 32(%rdi),%xmm1,%xmm5
288
+ vaesenc %xmm15,%xmm13,%xmm13
289
+ vpxor 48(%rdi),%xmm1,%xmm6
290
+ vaesenc %xmm15,%xmm14,%xmm14
291
+ vpxor 64(%rdi),%xmm1,%xmm7
292
+ vpxor 80(%rdi),%xmm1,%xmm3
293
+ vmovdqu (%r8),%xmm1 // load next counter value
294
+
295
+ vaesenclast %xmm2,%xmm9,%xmm9
296
+ vmovdqu 32(%r11),%xmm2 // borrow %xmm2, .Lone_msb
297
+ vaesenclast %xmm0,%xmm10,%xmm10
298
+ vpaddb %xmm2,%xmm1,%xmm0
299
+ movq %r13,112+8(%rsp)
300
+ leaq 96(%rdi),%rdi
301
+ // These two prefetches were added in BoringSSL. See change that added them.
302
+ prefetcht0 512(%rdi) // We use 96-byte block so prefetch 2 lines (128 bytes)
303
+ prefetcht0 576(%rdi)
304
+ vaesenclast %xmm5,%xmm11,%xmm11
305
+ vpaddb %xmm2,%xmm0,%xmm5
306
+ movq %r12,120+8(%rsp)
307
+ leaq 96(%rsi),%rsi
308
+ vmovdqu 0-128(%rcx),%xmm15
309
+ vaesenclast %xmm6,%xmm12,%xmm12
310
+ vpaddb %xmm2,%xmm5,%xmm6
311
+ vaesenclast %xmm7,%xmm13,%xmm13
312
+ vpaddb %xmm2,%xmm6,%xmm7
313
+ vaesenclast %xmm3,%xmm14,%xmm14
314
+ vpaddb %xmm2,%xmm7,%xmm3
315
+
316
+ addq $0x60,%rax
317
+ subq $0x6,%rdx
318
+ jc L$6x_done
319
+
320
+ vmovups %xmm9,-96(%rsi) // save output
321
+ vpxor %xmm15,%xmm1,%xmm9
322
+ vmovups %xmm10,-80(%rsi)
323
+ vmovdqa %xmm0,%xmm10 // 0 latency
324
+ vmovups %xmm11,-64(%rsi)
325
+ vmovdqa %xmm5,%xmm11 // 0 latency
326
+ vmovups %xmm12,-48(%rsi)
327
+ vmovdqa %xmm6,%xmm12 // 0 latency
328
+ vmovups %xmm13,-32(%rsi)
329
+ vmovdqa %xmm7,%xmm13 // 0 latency
330
+ vmovups %xmm14,-16(%rsi)
331
+ vmovdqa %xmm3,%xmm14 // 0 latency
332
+ vmovdqu 32+8(%rsp),%xmm7 // I[5]
333
+ jmp L$oop6x
334
+
335
+ L$6x_done:
336
+ vpxor 16+8(%rsp),%xmm8,%xmm8 // modulo-scheduled
337
+ vpxor %xmm4,%xmm8,%xmm8 // modulo-scheduled
338
+
339
+ ret
340
+
341
+
342
+ .globl _aesni_gcm_decrypt
343
+ .private_extern _aesni_gcm_decrypt
344
+
345
+ .p2align 5
346
+ .alt_entry _aesni_gcm_decrypt
347
+ _aesni_gcm_decrypt:
348
+
349
+
350
+ _CET_ENDBR
351
+ xorq %rax,%rax
352
+
353
+ // We call |_aesni_ctr32_ghash_6x|, which requires at least 96 (0x60)
354
+ // bytes of input.
355
+ cmpq $0x60,%rdx // minimal accepted length
356
+ jb L$gcm_dec_abort
357
+
358
+ pushq %rbp
359
+
360
+
361
+ movq %rsp,%rbp // save stack pointer
362
+
363
+ pushq %rbx
364
+
365
+
366
+ pushq %r12
367
+
368
+
369
+ pushq %r13
370
+
371
+
372
+ pushq %r14
373
+
374
+
375
+ pushq %r15
376
+
377
+
378
+ vzeroupper
379
+
380
+ movq 16(%rbp),%r12
381
+ vmovdqu (%r8),%xmm1 // input counter value
382
+ addq $-128,%rsp
383
+ movl 12(%r8),%ebx
384
+ leaq L$bswap_mask(%rip),%r11
385
+ leaq -128(%rcx),%r14 // borrow %r14
386
+ movq $0xf80,%r15 // borrow %r15
387
+ vmovdqu (%r12),%xmm8 // load Xi
388
+ andq $-128,%rsp // ensure stack alignment
389
+ vmovdqu (%r11),%xmm0 // borrow %xmm0 for .Lbswap_mask
390
+ leaq 128(%rcx),%rcx // size optimization
391
+ leaq 32(%r9),%r9 // size optimization
392
+ movl 240-128(%rcx),%r10d
393
+ vpshufb %xmm0,%xmm8,%xmm8
394
+
395
+ andq %r15,%r14
396
+ andq %rsp,%r15
397
+ subq %r14,%r15
398
+ jc L$dec_no_key_aliasing
399
+ cmpq $768,%r15
400
+ jnc L$dec_no_key_aliasing
401
+ subq %r15,%rsp // avoid aliasing with key
402
+ L$dec_no_key_aliasing:
403
+
404
+ vmovdqu 80(%rdi),%xmm7 // I[5]
405
+ movq %rdi,%r14
406
+ vmovdqu 64(%rdi),%xmm4
407
+
408
+ // |_aesni_ctr32_ghash_6x| requires |%r15| to point to 2*96 (0xc0)
409
+ // bytes before the end of the input. Note, in particular, that this is
410
+ // correct even if |%rdx| is not an even multiple of 96 or 16. XXX: This
411
+ // seems to require that |%rdi| + |%rdx| >= 2*96 (0xc0); i.e. |%rdi| must
412
+ // not be near the very beginning of the address space when |%rdx| < 2*96
413
+ // (0xc0).
414
+ leaq -192(%rdi,%rdx,1),%r15
415
+
416
+ vmovdqu 48(%rdi),%xmm5
417
+ shrq $4,%rdx
418
+ xorq %rax,%rax
419
+ vmovdqu 32(%rdi),%xmm6
420
+ vpshufb %xmm0,%xmm7,%xmm7 // passed to _aesni_ctr32_ghash_6x
421
+ vmovdqu 16(%rdi),%xmm2
422
+ vpshufb %xmm0,%xmm4,%xmm4
423
+ vmovdqu (%rdi),%xmm3
424
+ vpshufb %xmm0,%xmm5,%xmm5
425
+ vmovdqu %xmm4,48(%rsp)
426
+ vpshufb %xmm0,%xmm6,%xmm6
427
+ vmovdqu %xmm5,64(%rsp)
428
+ vpshufb %xmm0,%xmm2,%xmm2
429
+ vmovdqu %xmm6,80(%rsp)
430
+ vpshufb %xmm0,%xmm3,%xmm3
431
+ vmovdqu %xmm2,96(%rsp)
432
+ vmovdqu %xmm3,112(%rsp)
433
+
434
+ call _aesni_ctr32_ghash_6x
435
+
436
+ movq 16(%rbp),%r12
437
+ vmovups %xmm9,-96(%rsi) // save output
438
+ vmovups %xmm10,-80(%rsi)
439
+ vmovups %xmm11,-64(%rsi)
440
+ vmovups %xmm12,-48(%rsi)
441
+ vmovups %xmm13,-32(%rsi)
442
+ vmovups %xmm14,-16(%rsi)
443
+
444
+ vpshufb (%r11),%xmm8,%xmm8 // .Lbswap_mask
445
+ vmovdqu %xmm8,(%r12) // output Xi
446
+
447
+ vzeroupper
448
+ leaq -40(%rbp),%rsp // restore %rsp to fixed allocation
449
+
450
+ popq %r15
451
+
452
+ popq %r14
453
+
454
+ popq %r13
455
+
456
+ popq %r12
457
+
458
+ popq %rbx
459
+
460
+ popq %rbp
461
+
462
+ L$gcm_dec_abort:
463
+ ret
464
+
465
+
466
+
467
+
468
+ .p2align 5
469
+ .alt_entry _aesni_ctr32_6x
470
+ _aesni_ctr32_6x:
471
+
472
+ vmovdqu 0-128(%rcx),%xmm4 // borrow %xmm4 for %xmm15
473
+ vmovdqu 32(%r11),%xmm2 // borrow %xmm2, .Lone_msb
474
+ leaq -1(%r10),%r13
475
+ vmovups 16-128(%rcx),%xmm15
476
+ leaq 32-128(%rcx),%r12
477
+ vpxor %xmm4,%xmm1,%xmm9
478
+ addl $100663296,%ebx
479
+ jc L$handle_ctr32_2
480
+ vpaddb %xmm2,%xmm1,%xmm10
481
+ vpaddb %xmm2,%xmm10,%xmm11
482
+ vpxor %xmm4,%xmm10,%xmm10
483
+ vpaddb %xmm2,%xmm11,%xmm12
484
+ vpxor %xmm4,%xmm11,%xmm11
485
+ vpaddb %xmm2,%xmm12,%xmm13
486
+ vpxor %xmm4,%xmm12,%xmm12
487
+ vpaddb %xmm2,%xmm13,%xmm14
488
+ vpxor %xmm4,%xmm13,%xmm13
489
+ vpaddb %xmm2,%xmm14,%xmm1
490
+ vpxor %xmm4,%xmm14,%xmm14
491
+ jmp L$oop_ctr32
492
+
493
+ .p2align 4
494
+ L$oop_ctr32:
495
+ vaesenc %xmm15,%xmm9,%xmm9
496
+ vaesenc %xmm15,%xmm10,%xmm10
497
+ vaesenc %xmm15,%xmm11,%xmm11
498
+ vaesenc %xmm15,%xmm12,%xmm12
499
+ vaesenc %xmm15,%xmm13,%xmm13
500
+ vaesenc %xmm15,%xmm14,%xmm14
501
+ vmovups (%r12),%xmm15
502
+ leaq 16(%r12),%r12
503
+ decl %r13d
504
+ jnz L$oop_ctr32
505
+
506
+ vmovdqu (%r12),%xmm3 // last round key
507
+ vaesenc %xmm15,%xmm9,%xmm9
508
+ vpxor 0(%rdi),%xmm3,%xmm4
509
+ vaesenc %xmm15,%xmm10,%xmm10
510
+ vpxor 16(%rdi),%xmm3,%xmm5
511
+ vaesenc %xmm15,%xmm11,%xmm11
512
+ vpxor 32(%rdi),%xmm3,%xmm6
513
+ vaesenc %xmm15,%xmm12,%xmm12
514
+ vpxor 48(%rdi),%xmm3,%xmm8
515
+ vaesenc %xmm15,%xmm13,%xmm13
516
+ vpxor 64(%rdi),%xmm3,%xmm2
517
+ vaesenc %xmm15,%xmm14,%xmm14
518
+ vpxor 80(%rdi),%xmm3,%xmm3
519
+ leaq 96(%rdi),%rdi
520
+
521
+ vaesenclast %xmm4,%xmm9,%xmm9
522
+ vaesenclast %xmm5,%xmm10,%xmm10
523
+ vaesenclast %xmm6,%xmm11,%xmm11
524
+ vaesenclast %xmm8,%xmm12,%xmm12
525
+ vaesenclast %xmm2,%xmm13,%xmm13
526
+ vaesenclast %xmm3,%xmm14,%xmm14
527
+ vmovups %xmm9,0(%rsi)
528
+ vmovups %xmm10,16(%rsi)
529
+ vmovups %xmm11,32(%rsi)
530
+ vmovups %xmm12,48(%rsi)
531
+ vmovups %xmm13,64(%rsi)
532
+ vmovups %xmm14,80(%rsi)
533
+ leaq 96(%rsi),%rsi
534
+
535
+ ret
536
+ .p2align 5
537
+ L$handle_ctr32_2:
538
+ vpshufb %xmm0,%xmm1,%xmm6 // byte-swap counter
539
+ vmovdqu 48(%r11),%xmm5 // borrow %xmm5, .Ltwo_lsb
540
+ vpaddd 64(%r11),%xmm6,%xmm10 // .Lone_lsb
541
+ vpaddd %xmm5,%xmm6,%xmm11
542
+ vpaddd %xmm5,%xmm10,%xmm12
543
+ vpshufb %xmm0,%xmm10,%xmm10
544
+ vpaddd %xmm5,%xmm11,%xmm13
545
+ vpshufb %xmm0,%xmm11,%xmm11
546
+ vpxor %xmm4,%xmm10,%xmm10
547
+ vpaddd %xmm5,%xmm12,%xmm14
548
+ vpshufb %xmm0,%xmm12,%xmm12
549
+ vpxor %xmm4,%xmm11,%xmm11
550
+ vpaddd %xmm5,%xmm13,%xmm1 // byte-swapped next counter value
551
+ vpshufb %xmm0,%xmm13,%xmm13
552
+ vpxor %xmm4,%xmm12,%xmm12
553
+ vpshufb %xmm0,%xmm14,%xmm14
554
+ vpxor %xmm4,%xmm13,%xmm13
555
+ vpshufb %xmm0,%xmm1,%xmm1 // next counter value
556
+ vpxor %xmm4,%xmm14,%xmm14
557
+ jmp L$oop_ctr32
558
+
559
+
560
+
561
+ .globl _aesni_gcm_encrypt
562
+ .private_extern _aesni_gcm_encrypt
563
+
564
+ .p2align 5
565
+ .alt_entry _aesni_gcm_encrypt
566
+ _aesni_gcm_encrypt:
567
+
568
+
569
+ _CET_ENDBR
570
+ #ifdef BORINGSSL_DISPATCH_TEST
571
+
572
+ movb $1,_BORINGSSL_function_hit+2(%rip)
573
+ #endif
574
+ xorq %rax,%rax
575
+
576
+ // We call |_aesni_ctr32_6x| twice, each call consuming 96 bytes of
577
+ // input. Then we call |_aesni_ctr32_ghash_6x|, which requires at
578
+ // least 96 more bytes of input.
579
+ cmpq $288,%rdx // minimal accepted length
580
+ jb L$gcm_enc_abort
581
+
582
+ pushq %rbp
583
+
584
+
585
+ movq %rsp,%rbp // save stack pointer
586
+
587
+ pushq %rbx
588
+
589
+
590
+ pushq %r12
591
+
592
+
593
+ pushq %r13
594
+
595
+
596
+ pushq %r14
597
+
598
+
599
+ pushq %r15
600
+
601
+
602
+ vzeroupper
603
+
604
+ vmovdqu (%r8),%xmm1 // input counter value
605
+ addq $-128,%rsp
606
+ movl 12(%r8),%ebx
607
+ leaq L$bswap_mask(%rip),%r11
608
+ leaq -128(%rcx),%r14 // borrow %r14
609
+ movq $0xf80,%r15 // borrow %r15
610
+ leaq 128(%rcx),%rcx // size optimization
611
+ vmovdqu (%r11),%xmm0 // borrow %xmm0 for .Lbswap_mask
612
+ andq $-128,%rsp // ensure stack alignment
613
+ movl 240-128(%rcx),%r10d
614
+
615
+ andq %r15,%r14
616
+ andq %rsp,%r15
617
+ subq %r14,%r15
618
+ jc L$enc_no_key_aliasing
619
+ cmpq $768,%r15
620
+ jnc L$enc_no_key_aliasing
621
+ subq %r15,%rsp // avoid aliasing with key
622
+ L$enc_no_key_aliasing:
623
+
624
+ movq %rsi,%r14
625
+
626
+ // |_aesni_ctr32_ghash_6x| requires |%r15| to point to 2*96 (0xc0)
627
+ // bytes before the end of the input. Note, in particular, that this is
628
+ // correct even if |%rdx| is not an even multiple of 96 or 16. Unlike in
629
+ // the decryption case, there's no caveat that |%rsi| must not be near
630
+ // the very beginning of the address space, because we know that
631
+ // |%rdx| >= 3*96 from the check above, and so we know
632
+ // |%rsi| + |%rdx| >= 2*96 (0xc0).
633
+ leaq -192(%rsi,%rdx,1),%r15
634
+
635
+ shrq $4,%rdx
636
+
637
+ call _aesni_ctr32_6x
638
+ vpshufb %xmm0,%xmm9,%xmm8 // save bswapped output on stack
639
+ vpshufb %xmm0,%xmm10,%xmm2
640
+ vmovdqu %xmm8,112(%rsp)
641
+ vpshufb %xmm0,%xmm11,%xmm4
642
+ vmovdqu %xmm2,96(%rsp)
643
+ vpshufb %xmm0,%xmm12,%xmm5
644
+ vmovdqu %xmm4,80(%rsp)
645
+ vpshufb %xmm0,%xmm13,%xmm6
646
+ vmovdqu %xmm5,64(%rsp)
647
+ vpshufb %xmm0,%xmm14,%xmm7 // passed to _aesni_ctr32_ghash_6x
648
+ vmovdqu %xmm6,48(%rsp)
649
+
650
+ call _aesni_ctr32_6x
651
+
652
+ movq 16(%rbp),%r12
653
+ leaq 32(%r9),%r9 // size optimization
654
+ vmovdqu (%r12),%xmm8 // load Xi
655
+ subq $12,%rdx
656
+ movq $192,%rax
657
+ vpshufb %xmm0,%xmm8,%xmm8
658
+
659
+ call _aesni_ctr32_ghash_6x
660
+ vmovdqu 32(%rsp),%xmm7 // I[5]
661
+ vmovdqu (%r11),%xmm0 // borrow %xmm0 for .Lbswap_mask
662
+ vmovdqu 0-32(%r9),%xmm3 // %xmm3^1
663
+ vpunpckhqdq %xmm7,%xmm7,%xmm1
664
+ vmovdqu 32-32(%r9),%xmm15 // borrow %xmm15 for
665
+ vmovups %xmm9,-96(%rsi) // save output
666
+ vpshufb %xmm0,%xmm9,%xmm9 // but keep bswapped copy
667
+ vpxor %xmm7,%xmm1,%xmm1
668
+ vmovups %xmm10,-80(%rsi)
669
+ vpshufb %xmm0,%xmm10,%xmm10
670
+ vmovups %xmm11,-64(%rsi)
671
+ vpshufb %xmm0,%xmm11,%xmm11
672
+ vmovups %xmm12,-48(%rsi)
673
+ vpshufb %xmm0,%xmm12,%xmm12
674
+ vmovups %xmm13,-32(%rsi)
675
+ vpshufb %xmm0,%xmm13,%xmm13
676
+ vmovups %xmm14,-16(%rsi)
677
+ vpshufb %xmm0,%xmm14,%xmm14
678
+ vmovdqu %xmm9,16(%rsp) // free %xmm9
679
+ vmovdqu 48(%rsp),%xmm6 // I[4]
680
+ vmovdqu 16-32(%r9),%xmm0 // borrow %xmm0 for %xmm3^2
681
+ vpunpckhqdq %xmm6,%xmm6,%xmm2
682
+ vpclmulqdq $0x00,%xmm3,%xmm7,%xmm5
683
+ vpxor %xmm6,%xmm2,%xmm2
684
+ vpclmulqdq $0x11,%xmm3,%xmm7,%xmm7
685
+ vpclmulqdq $0x00,%xmm15,%xmm1,%xmm1
686
+
687
+ vmovdqu 64(%rsp),%xmm9 // I[3]
688
+ vpclmulqdq $0x00,%xmm0,%xmm6,%xmm4
689
+ vmovdqu 48-32(%r9),%xmm3 // %xmm3^3
690
+ vpxor %xmm5,%xmm4,%xmm4
691
+ vpunpckhqdq %xmm9,%xmm9,%xmm5
692
+ vpclmulqdq $0x11,%xmm0,%xmm6,%xmm6
693
+ vpxor %xmm9,%xmm5,%xmm5
694
+ vpxor %xmm7,%xmm6,%xmm6
695
+ vpclmulqdq $0x10,%xmm15,%xmm2,%xmm2
696
+ vmovdqu 80-32(%r9),%xmm15
697
+ vpxor %xmm1,%xmm2,%xmm2
698
+
699
+ vmovdqu 80(%rsp),%xmm1 // I[2]
700
+ vpclmulqdq $0x00,%xmm3,%xmm9,%xmm7
701
+ vmovdqu 64-32(%r9),%xmm0 // borrow %xmm0 for %xmm3^4
702
+ vpxor %xmm4,%xmm7,%xmm7
703
+ vpunpckhqdq %xmm1,%xmm1,%xmm4
704
+ vpclmulqdq $0x11,%xmm3,%xmm9,%xmm9
705
+ vpxor %xmm1,%xmm4,%xmm4
706
+ vpxor %xmm6,%xmm9,%xmm9
707
+ vpclmulqdq $0x00,%xmm15,%xmm5,%xmm5
708
+ vpxor %xmm2,%xmm5,%xmm5
709
+
710
+ vmovdqu 96(%rsp),%xmm2 // I[1]
711
+ vpclmulqdq $0x00,%xmm0,%xmm1,%xmm6
712
+ vmovdqu 96-32(%r9),%xmm3 // %xmm3^5
713
+ vpxor %xmm7,%xmm6,%xmm6
714
+ vpunpckhqdq %xmm2,%xmm2,%xmm7
715
+ vpclmulqdq $0x11,%xmm0,%xmm1,%xmm1
716
+ vpxor %xmm2,%xmm7,%xmm7
717
+ vpxor %xmm9,%xmm1,%xmm1
718
+ vpclmulqdq $0x10,%xmm15,%xmm4,%xmm4
719
+ vmovdqu 128-32(%r9),%xmm15
720
+ vpxor %xmm5,%xmm4,%xmm4
721
+
722
+ vpxor 112(%rsp),%xmm8,%xmm8 // accumulate I[0]
723
+ vpclmulqdq $0x00,%xmm3,%xmm2,%xmm5
724
+ vmovdqu 112-32(%r9),%xmm0 // borrow %xmm0 for %xmm3^6
725
+ vpunpckhqdq %xmm8,%xmm8,%xmm9
726
+ vpxor %xmm6,%xmm5,%xmm5
727
+ vpclmulqdq $0x11,%xmm3,%xmm2,%xmm2
728
+ vpxor %xmm8,%xmm9,%xmm9
729
+ vpxor %xmm1,%xmm2,%xmm2
730
+ vpclmulqdq $0x00,%xmm15,%xmm7,%xmm7
731
+ vpxor %xmm4,%xmm7,%xmm4
732
+
733
+ vpclmulqdq $0x00,%xmm0,%xmm8,%xmm6
734
+ vmovdqu 0-32(%r9),%xmm3 // %xmm3^1
735
+ vpunpckhqdq %xmm14,%xmm14,%xmm1
736
+ vpclmulqdq $0x11,%xmm0,%xmm8,%xmm8
737
+ vpxor %xmm14,%xmm1,%xmm1
738
+ vpxor %xmm5,%xmm6,%xmm5
739
+ vpclmulqdq $0x10,%xmm15,%xmm9,%xmm9
740
+ vmovdqu 32-32(%r9),%xmm15
741
+ vpxor %xmm2,%xmm8,%xmm7
742
+ vpxor %xmm4,%xmm9,%xmm6
743
+
744
+ vmovdqu 16-32(%r9),%xmm0 // borrow %xmm0 for %xmm3^2
745
+ vpxor %xmm5,%xmm7,%xmm9 // aggregated Karatsuba post-processing
746
+ vpclmulqdq $0x00,%xmm3,%xmm14,%xmm4
747
+ vpxor %xmm9,%xmm6,%xmm6
748
+ vpunpckhqdq %xmm13,%xmm13,%xmm2
749
+ vpclmulqdq $0x11,%xmm3,%xmm14,%xmm14
750
+ vpxor %xmm13,%xmm2,%xmm2
751
+ vpslldq $8,%xmm6,%xmm9
752
+ vpclmulqdq $0x00,%xmm15,%xmm1,%xmm1
753
+ vpxor %xmm9,%xmm5,%xmm8
754
+ vpsrldq $8,%xmm6,%xmm6
755
+ vpxor %xmm6,%xmm7,%xmm7
756
+
757
+ vpclmulqdq $0x00,%xmm0,%xmm13,%xmm5
758
+ vmovdqu 48-32(%r9),%xmm3 // %xmm3^3
759
+ vpxor %xmm4,%xmm5,%xmm5
760
+ vpunpckhqdq %xmm12,%xmm12,%xmm9
761
+ vpclmulqdq $0x11,%xmm0,%xmm13,%xmm13
762
+ vpxor %xmm12,%xmm9,%xmm9
763
+ vpxor %xmm14,%xmm13,%xmm13
764
+ vpalignr $8,%xmm8,%xmm8,%xmm14 // 1st phase
765
+ vpclmulqdq $0x10,%xmm15,%xmm2,%xmm2
766
+ vmovdqu 80-32(%r9),%xmm15
767
+ vpxor %xmm1,%xmm2,%xmm2
768
+
769
+ vpclmulqdq $0x00,%xmm3,%xmm12,%xmm4
770
+ vmovdqu 64-32(%r9),%xmm0 // borrow %xmm0 for %xmm3^4
771
+ vpxor %xmm5,%xmm4,%xmm4
772
+ vpunpckhqdq %xmm11,%xmm11,%xmm1
773
+ vpclmulqdq $0x11,%xmm3,%xmm12,%xmm12
774
+ vpxor %xmm11,%xmm1,%xmm1
775
+ vpxor %xmm13,%xmm12,%xmm12
776
+ vxorps 16(%rsp),%xmm7,%xmm7 // accumulate %xmm9
777
+ vpclmulqdq $0x00,%xmm15,%xmm9,%xmm9
778
+ vpxor %xmm2,%xmm9,%xmm9
779
+
780
+ vpclmulqdq $0x10,16(%r11),%xmm8,%xmm8
781
+ vxorps %xmm14,%xmm8,%xmm8
782
+
783
+ vpclmulqdq $0x00,%xmm0,%xmm11,%xmm5
784
+ vmovdqu 96-32(%r9),%xmm3 // %xmm3^5
785
+ vpxor %xmm4,%xmm5,%xmm5
786
+ vpunpckhqdq %xmm10,%xmm10,%xmm2
787
+ vpclmulqdq $0x11,%xmm0,%xmm11,%xmm11
788
+ vpxor %xmm10,%xmm2,%xmm2
789
+ vpalignr $8,%xmm8,%xmm8,%xmm14 // 2nd phase
790
+ vpxor %xmm12,%xmm11,%xmm11
791
+ vpclmulqdq $0x10,%xmm15,%xmm1,%xmm1
792
+ vmovdqu 128-32(%r9),%xmm15
793
+ vpxor %xmm9,%xmm1,%xmm1
794
+
795
+ vxorps %xmm7,%xmm14,%xmm14
796
+ vpclmulqdq $0x10,16(%r11),%xmm8,%xmm8
797
+ vxorps %xmm14,%xmm8,%xmm8
798
+
799
+ vpclmulqdq $0x00,%xmm3,%xmm10,%xmm4
800
+ vmovdqu 112-32(%r9),%xmm0 // borrow %xmm0 for %xmm3^6
801
+ vpxor %xmm5,%xmm4,%xmm4
802
+ vpunpckhqdq %xmm8,%xmm8,%xmm9
803
+ vpclmulqdq $0x11,%xmm3,%xmm10,%xmm10
804
+ vpxor %xmm8,%xmm9,%xmm9
805
+ vpxor %xmm11,%xmm10,%xmm10
806
+ vpclmulqdq $0x00,%xmm15,%xmm2,%xmm2
807
+ vpxor %xmm1,%xmm2,%xmm2
808
+
809
+ vpclmulqdq $0x00,%xmm0,%xmm8,%xmm5
810
+ vpclmulqdq $0x11,%xmm0,%xmm8,%xmm7
811
+ vpxor %xmm4,%xmm5,%xmm5
812
+ vpclmulqdq $0x10,%xmm15,%xmm9,%xmm6
813
+ vpxor %xmm10,%xmm7,%xmm7
814
+ vpxor %xmm2,%xmm6,%xmm6
815
+
816
+ vpxor %xmm5,%xmm7,%xmm4 // aggregated Karatsuba post-processing
817
+ vpxor %xmm4,%xmm6,%xmm6
818
+ vpslldq $8,%xmm6,%xmm1
819
+ vmovdqu 16(%r11),%xmm3 // .Lpoly
820
+ vpsrldq $8,%xmm6,%xmm6
821
+ vpxor %xmm1,%xmm5,%xmm8
822
+ vpxor %xmm6,%xmm7,%xmm7
823
+
824
+ vpalignr $8,%xmm8,%xmm8,%xmm2 // 1st phase
825
+ vpclmulqdq $0x10,%xmm3,%xmm8,%xmm8
826
+ vpxor %xmm2,%xmm8,%xmm8
827
+
828
+ vpalignr $8,%xmm8,%xmm8,%xmm2 // 2nd phase
829
+ vpclmulqdq $0x10,%xmm3,%xmm8,%xmm8
830
+ vpxor %xmm7,%xmm2,%xmm2
831
+ vpxor %xmm2,%xmm8,%xmm8
832
+ movq 16(%rbp),%r12
833
+ vpshufb (%r11),%xmm8,%xmm8 // .Lbswap_mask
834
+ vmovdqu %xmm8,(%r12) // output Xi
835
+
836
+ vzeroupper
837
+ leaq -40(%rbp),%rsp // restore %rsp to fixed allocation
838
+
839
+ popq %r15
840
+
841
+ popq %r14
842
+
843
+ popq %r13
844
+
845
+ popq %r12
846
+
847
+ popq %rbx
848
+
849
+ popq %rbp
850
+
851
+ L$gcm_enc_abort:
852
+ ret
853
+
854
+
855
+
856
+ .section __DATA,__const
857
+
858
+ .p2align 6
859
+ aesni_gcm_constants:
860
+ L$bswap_mask:
861
+ .byte 15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0
862
+ L$poly:
863
+ .byte 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0xc2
864
+ L$one_msb:
865
+ .byte 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1
866
+ L$two_lsb:
867
+ .byte 2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
868
+ L$one_lsb:
869
+ .byte 1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
870
+ .byte 65,69,83,45,78,73,32,71,67,77,32,109,111,100,117,108,101,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0
871
+ .p2align 6
872
+ .text
873
+ #endif