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,885 @@
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(__ELF__)
7
+ .text
8
+
9
+ .type _aesni_ctr32_ghash_6x,@function
10
+ .align 32
11
+ _aesni_ctr32_ghash_6x:
12
+ .cfi_startproc
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 .Loop6x
25
+
26
+ .align 32
27
+ .Loop6x:
28
+ addl $100663296,%ebx
29
+ jc .Lhandle_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
+ .Lresume_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 .Lenc_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 .Lenc_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 .Lenc_tail // 256-bit key
253
+
254
+ .align 32
255
+ .Lhandle_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 .Lresume_ctr32
275
+
276
+ .align 32
277
+ .Lenc_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 .L6x_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 .Loop6x
334
+
335
+ .L6x_done:
336
+ vpxor 16+8(%rsp),%xmm8,%xmm8 // modulo-scheduled
337
+ vpxor %xmm4,%xmm8,%xmm8 // modulo-scheduled
338
+
339
+ ret
340
+ .cfi_endproc
341
+ .size _aesni_ctr32_ghash_6x,.-_aesni_ctr32_ghash_6x
342
+ .globl aesni_gcm_decrypt
343
+ .hidden aesni_gcm_decrypt
344
+ .type aesni_gcm_decrypt,@function
345
+ .align 32
346
+ aesni_gcm_decrypt:
347
+ .cfi_startproc
348
+
349
+ _CET_ENDBR
350
+ xorq %rax,%rax
351
+
352
+ // We call |_aesni_ctr32_ghash_6x|, which requires at least 96 (0x60)
353
+ // bytes of input.
354
+ cmpq $0x60,%rdx // minimal accepted length
355
+ jb .Lgcm_dec_abort
356
+
357
+ pushq %rbp
358
+ .cfi_adjust_cfa_offset 8
359
+ .cfi_offset %rbp,-16
360
+
361
+ movq %rsp,%rbp // save stack pointer
362
+ .cfi_def_cfa_register %rbp
363
+ pushq %rbx
364
+ .cfi_offset %rbx,-24
365
+
366
+ pushq %r12
367
+ .cfi_offset %r12,-32
368
+
369
+ pushq %r13
370
+ .cfi_offset %r13,-40
371
+
372
+ pushq %r14
373
+ .cfi_offset %r14,-48
374
+
375
+ pushq %r15
376
+ .cfi_offset %r15,-56
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 .Lbswap_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 .Ldec_no_key_aliasing
399
+ cmpq $768,%r15
400
+ jnc .Ldec_no_key_aliasing
401
+ subq %r15,%rsp // avoid aliasing with key
402
+ .Ldec_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
+ .cfi_def_cfa %rsp, 0x38
450
+ popq %r15
451
+ .cfi_adjust_cfa_offset -8
452
+ .cfi_restore %r15
453
+ popq %r14
454
+ .cfi_adjust_cfa_offset -8
455
+ .cfi_restore %r14
456
+ popq %r13
457
+ .cfi_adjust_cfa_offset -8
458
+ .cfi_restore %r13
459
+ popq %r12
460
+ .cfi_adjust_cfa_offset -8
461
+ .cfi_restore %r12
462
+ popq %rbx
463
+ .cfi_adjust_cfa_offset -8
464
+ .cfi_restore %rbx
465
+ popq %rbp
466
+ .cfi_adjust_cfa_offset -8
467
+ .cfi_restore %rbp
468
+ .Lgcm_dec_abort:
469
+ ret
470
+
471
+ .cfi_endproc
472
+ .size aesni_gcm_decrypt,.-aesni_gcm_decrypt
473
+ .type _aesni_ctr32_6x,@function
474
+ .align 32
475
+ _aesni_ctr32_6x:
476
+ .cfi_startproc
477
+ vmovdqu 0-128(%rcx),%xmm4 // borrow %xmm4 for %xmm15
478
+ vmovdqu 32(%r11),%xmm2 // borrow %xmm2, .Lone_msb
479
+ leaq -1(%r10),%r13
480
+ vmovups 16-128(%rcx),%xmm15
481
+ leaq 32-128(%rcx),%r12
482
+ vpxor %xmm4,%xmm1,%xmm9
483
+ addl $100663296,%ebx
484
+ jc .Lhandle_ctr32_2
485
+ vpaddb %xmm2,%xmm1,%xmm10
486
+ vpaddb %xmm2,%xmm10,%xmm11
487
+ vpxor %xmm4,%xmm10,%xmm10
488
+ vpaddb %xmm2,%xmm11,%xmm12
489
+ vpxor %xmm4,%xmm11,%xmm11
490
+ vpaddb %xmm2,%xmm12,%xmm13
491
+ vpxor %xmm4,%xmm12,%xmm12
492
+ vpaddb %xmm2,%xmm13,%xmm14
493
+ vpxor %xmm4,%xmm13,%xmm13
494
+ vpaddb %xmm2,%xmm14,%xmm1
495
+ vpxor %xmm4,%xmm14,%xmm14
496
+ jmp .Loop_ctr32
497
+
498
+ .align 16
499
+ .Loop_ctr32:
500
+ vaesenc %xmm15,%xmm9,%xmm9
501
+ vaesenc %xmm15,%xmm10,%xmm10
502
+ vaesenc %xmm15,%xmm11,%xmm11
503
+ vaesenc %xmm15,%xmm12,%xmm12
504
+ vaesenc %xmm15,%xmm13,%xmm13
505
+ vaesenc %xmm15,%xmm14,%xmm14
506
+ vmovups (%r12),%xmm15
507
+ leaq 16(%r12),%r12
508
+ decl %r13d
509
+ jnz .Loop_ctr32
510
+
511
+ vmovdqu (%r12),%xmm3 // last round key
512
+ vaesenc %xmm15,%xmm9,%xmm9
513
+ vpxor 0(%rdi),%xmm3,%xmm4
514
+ vaesenc %xmm15,%xmm10,%xmm10
515
+ vpxor 16(%rdi),%xmm3,%xmm5
516
+ vaesenc %xmm15,%xmm11,%xmm11
517
+ vpxor 32(%rdi),%xmm3,%xmm6
518
+ vaesenc %xmm15,%xmm12,%xmm12
519
+ vpxor 48(%rdi),%xmm3,%xmm8
520
+ vaesenc %xmm15,%xmm13,%xmm13
521
+ vpxor 64(%rdi),%xmm3,%xmm2
522
+ vaesenc %xmm15,%xmm14,%xmm14
523
+ vpxor 80(%rdi),%xmm3,%xmm3
524
+ leaq 96(%rdi),%rdi
525
+
526
+ vaesenclast %xmm4,%xmm9,%xmm9
527
+ vaesenclast %xmm5,%xmm10,%xmm10
528
+ vaesenclast %xmm6,%xmm11,%xmm11
529
+ vaesenclast %xmm8,%xmm12,%xmm12
530
+ vaesenclast %xmm2,%xmm13,%xmm13
531
+ vaesenclast %xmm3,%xmm14,%xmm14
532
+ vmovups %xmm9,0(%rsi)
533
+ vmovups %xmm10,16(%rsi)
534
+ vmovups %xmm11,32(%rsi)
535
+ vmovups %xmm12,48(%rsi)
536
+ vmovups %xmm13,64(%rsi)
537
+ vmovups %xmm14,80(%rsi)
538
+ leaq 96(%rsi),%rsi
539
+
540
+ ret
541
+ .align 32
542
+ .Lhandle_ctr32_2:
543
+ vpshufb %xmm0,%xmm1,%xmm6 // byte-swap counter
544
+ vmovdqu 48(%r11),%xmm5 // borrow %xmm5, .Ltwo_lsb
545
+ vpaddd 64(%r11),%xmm6,%xmm10 // .Lone_lsb
546
+ vpaddd %xmm5,%xmm6,%xmm11
547
+ vpaddd %xmm5,%xmm10,%xmm12
548
+ vpshufb %xmm0,%xmm10,%xmm10
549
+ vpaddd %xmm5,%xmm11,%xmm13
550
+ vpshufb %xmm0,%xmm11,%xmm11
551
+ vpxor %xmm4,%xmm10,%xmm10
552
+ vpaddd %xmm5,%xmm12,%xmm14
553
+ vpshufb %xmm0,%xmm12,%xmm12
554
+ vpxor %xmm4,%xmm11,%xmm11
555
+ vpaddd %xmm5,%xmm13,%xmm1 // byte-swapped next counter value
556
+ vpshufb %xmm0,%xmm13,%xmm13
557
+ vpxor %xmm4,%xmm12,%xmm12
558
+ vpshufb %xmm0,%xmm14,%xmm14
559
+ vpxor %xmm4,%xmm13,%xmm13
560
+ vpshufb %xmm0,%xmm1,%xmm1 // next counter value
561
+ vpxor %xmm4,%xmm14,%xmm14
562
+ jmp .Loop_ctr32
563
+ .cfi_endproc
564
+ .size _aesni_ctr32_6x,.-_aesni_ctr32_6x
565
+
566
+ .globl aesni_gcm_encrypt
567
+ .hidden aesni_gcm_encrypt
568
+ .type aesni_gcm_encrypt,@function
569
+ .align 32
570
+ aesni_gcm_encrypt:
571
+ .cfi_startproc
572
+
573
+ _CET_ENDBR
574
+ #ifdef BORINGSSL_DISPATCH_TEST
575
+ .extern BORINGSSL_function_hit
576
+ .hidden BORINGSSL_function_hit
577
+ movb $1,BORINGSSL_function_hit+2(%rip)
578
+ #endif
579
+ xorq %rax,%rax
580
+
581
+ // We call |_aesni_ctr32_6x| twice, each call consuming 96 bytes of
582
+ // input. Then we call |_aesni_ctr32_ghash_6x|, which requires at
583
+ // least 96 more bytes of input.
584
+ cmpq $288,%rdx // minimal accepted length
585
+ jb .Lgcm_enc_abort
586
+
587
+ pushq %rbp
588
+ .cfi_adjust_cfa_offset 8
589
+ .cfi_offset %rbp,-16
590
+
591
+ movq %rsp,%rbp // save stack pointer
592
+ .cfi_def_cfa_register %rbp
593
+ pushq %rbx
594
+ .cfi_offset %rbx,-24
595
+
596
+ pushq %r12
597
+ .cfi_offset %r12,-32
598
+
599
+ pushq %r13
600
+ .cfi_offset %r13,-40
601
+
602
+ pushq %r14
603
+ .cfi_offset %r14,-48
604
+
605
+ pushq %r15
606
+ .cfi_offset %r15,-56
607
+
608
+ vzeroupper
609
+
610
+ vmovdqu (%r8),%xmm1 // input counter value
611
+ addq $-128,%rsp
612
+ movl 12(%r8),%ebx
613
+ leaq .Lbswap_mask(%rip),%r11
614
+ leaq -128(%rcx),%r14 // borrow %r14
615
+ movq $0xf80,%r15 // borrow %r15
616
+ leaq 128(%rcx),%rcx // size optimization
617
+ vmovdqu (%r11),%xmm0 // borrow %xmm0 for .Lbswap_mask
618
+ andq $-128,%rsp // ensure stack alignment
619
+ movl 240-128(%rcx),%r10d
620
+
621
+ andq %r15,%r14
622
+ andq %rsp,%r15
623
+ subq %r14,%r15
624
+ jc .Lenc_no_key_aliasing
625
+ cmpq $768,%r15
626
+ jnc .Lenc_no_key_aliasing
627
+ subq %r15,%rsp // avoid aliasing with key
628
+ .Lenc_no_key_aliasing:
629
+
630
+ movq %rsi,%r14
631
+
632
+ // |_aesni_ctr32_ghash_6x| requires |%r15| to point to 2*96 (0xc0)
633
+ // bytes before the end of the input. Note, in particular, that this is
634
+ // correct even if |%rdx| is not an even multiple of 96 or 16. Unlike in
635
+ // the decryption case, there's no caveat that |%rsi| must not be near
636
+ // the very beginning of the address space, because we know that
637
+ // |%rdx| >= 3*96 from the check above, and so we know
638
+ // |%rsi| + |%rdx| >= 2*96 (0xc0).
639
+ leaq -192(%rsi,%rdx,1),%r15
640
+
641
+ shrq $4,%rdx
642
+
643
+ call _aesni_ctr32_6x
644
+ vpshufb %xmm0,%xmm9,%xmm8 // save bswapped output on stack
645
+ vpshufb %xmm0,%xmm10,%xmm2
646
+ vmovdqu %xmm8,112(%rsp)
647
+ vpshufb %xmm0,%xmm11,%xmm4
648
+ vmovdqu %xmm2,96(%rsp)
649
+ vpshufb %xmm0,%xmm12,%xmm5
650
+ vmovdqu %xmm4,80(%rsp)
651
+ vpshufb %xmm0,%xmm13,%xmm6
652
+ vmovdqu %xmm5,64(%rsp)
653
+ vpshufb %xmm0,%xmm14,%xmm7 // passed to _aesni_ctr32_ghash_6x
654
+ vmovdqu %xmm6,48(%rsp)
655
+
656
+ call _aesni_ctr32_6x
657
+
658
+ movq 16(%rbp),%r12
659
+ leaq 32(%r9),%r9 // size optimization
660
+ vmovdqu (%r12),%xmm8 // load Xi
661
+ subq $12,%rdx
662
+ movq $192,%rax
663
+ vpshufb %xmm0,%xmm8,%xmm8
664
+
665
+ call _aesni_ctr32_ghash_6x
666
+ vmovdqu 32(%rsp),%xmm7 // I[5]
667
+ vmovdqu (%r11),%xmm0 // borrow %xmm0 for .Lbswap_mask
668
+ vmovdqu 0-32(%r9),%xmm3 // %xmm3^1
669
+ vpunpckhqdq %xmm7,%xmm7,%xmm1
670
+ vmovdqu 32-32(%r9),%xmm15 // borrow %xmm15 for
671
+ vmovups %xmm9,-96(%rsi) // save output
672
+ vpshufb %xmm0,%xmm9,%xmm9 // but keep bswapped copy
673
+ vpxor %xmm7,%xmm1,%xmm1
674
+ vmovups %xmm10,-80(%rsi)
675
+ vpshufb %xmm0,%xmm10,%xmm10
676
+ vmovups %xmm11,-64(%rsi)
677
+ vpshufb %xmm0,%xmm11,%xmm11
678
+ vmovups %xmm12,-48(%rsi)
679
+ vpshufb %xmm0,%xmm12,%xmm12
680
+ vmovups %xmm13,-32(%rsi)
681
+ vpshufb %xmm0,%xmm13,%xmm13
682
+ vmovups %xmm14,-16(%rsi)
683
+ vpshufb %xmm0,%xmm14,%xmm14
684
+ vmovdqu %xmm9,16(%rsp) // free %xmm9
685
+ vmovdqu 48(%rsp),%xmm6 // I[4]
686
+ vmovdqu 16-32(%r9),%xmm0 // borrow %xmm0 for %xmm3^2
687
+ vpunpckhqdq %xmm6,%xmm6,%xmm2
688
+ vpclmulqdq $0x00,%xmm3,%xmm7,%xmm5
689
+ vpxor %xmm6,%xmm2,%xmm2
690
+ vpclmulqdq $0x11,%xmm3,%xmm7,%xmm7
691
+ vpclmulqdq $0x00,%xmm15,%xmm1,%xmm1
692
+
693
+ vmovdqu 64(%rsp),%xmm9 // I[3]
694
+ vpclmulqdq $0x00,%xmm0,%xmm6,%xmm4
695
+ vmovdqu 48-32(%r9),%xmm3 // %xmm3^3
696
+ vpxor %xmm5,%xmm4,%xmm4
697
+ vpunpckhqdq %xmm9,%xmm9,%xmm5
698
+ vpclmulqdq $0x11,%xmm0,%xmm6,%xmm6
699
+ vpxor %xmm9,%xmm5,%xmm5
700
+ vpxor %xmm7,%xmm6,%xmm6
701
+ vpclmulqdq $0x10,%xmm15,%xmm2,%xmm2
702
+ vmovdqu 80-32(%r9),%xmm15
703
+ vpxor %xmm1,%xmm2,%xmm2
704
+
705
+ vmovdqu 80(%rsp),%xmm1 // I[2]
706
+ vpclmulqdq $0x00,%xmm3,%xmm9,%xmm7
707
+ vmovdqu 64-32(%r9),%xmm0 // borrow %xmm0 for %xmm3^4
708
+ vpxor %xmm4,%xmm7,%xmm7
709
+ vpunpckhqdq %xmm1,%xmm1,%xmm4
710
+ vpclmulqdq $0x11,%xmm3,%xmm9,%xmm9
711
+ vpxor %xmm1,%xmm4,%xmm4
712
+ vpxor %xmm6,%xmm9,%xmm9
713
+ vpclmulqdq $0x00,%xmm15,%xmm5,%xmm5
714
+ vpxor %xmm2,%xmm5,%xmm5
715
+
716
+ vmovdqu 96(%rsp),%xmm2 // I[1]
717
+ vpclmulqdq $0x00,%xmm0,%xmm1,%xmm6
718
+ vmovdqu 96-32(%r9),%xmm3 // %xmm3^5
719
+ vpxor %xmm7,%xmm6,%xmm6
720
+ vpunpckhqdq %xmm2,%xmm2,%xmm7
721
+ vpclmulqdq $0x11,%xmm0,%xmm1,%xmm1
722
+ vpxor %xmm2,%xmm7,%xmm7
723
+ vpxor %xmm9,%xmm1,%xmm1
724
+ vpclmulqdq $0x10,%xmm15,%xmm4,%xmm4
725
+ vmovdqu 128-32(%r9),%xmm15
726
+ vpxor %xmm5,%xmm4,%xmm4
727
+
728
+ vpxor 112(%rsp),%xmm8,%xmm8 // accumulate I[0]
729
+ vpclmulqdq $0x00,%xmm3,%xmm2,%xmm5
730
+ vmovdqu 112-32(%r9),%xmm0 // borrow %xmm0 for %xmm3^6
731
+ vpunpckhqdq %xmm8,%xmm8,%xmm9
732
+ vpxor %xmm6,%xmm5,%xmm5
733
+ vpclmulqdq $0x11,%xmm3,%xmm2,%xmm2
734
+ vpxor %xmm8,%xmm9,%xmm9
735
+ vpxor %xmm1,%xmm2,%xmm2
736
+ vpclmulqdq $0x00,%xmm15,%xmm7,%xmm7
737
+ vpxor %xmm4,%xmm7,%xmm4
738
+
739
+ vpclmulqdq $0x00,%xmm0,%xmm8,%xmm6
740
+ vmovdqu 0-32(%r9),%xmm3 // %xmm3^1
741
+ vpunpckhqdq %xmm14,%xmm14,%xmm1
742
+ vpclmulqdq $0x11,%xmm0,%xmm8,%xmm8
743
+ vpxor %xmm14,%xmm1,%xmm1
744
+ vpxor %xmm5,%xmm6,%xmm5
745
+ vpclmulqdq $0x10,%xmm15,%xmm9,%xmm9
746
+ vmovdqu 32-32(%r9),%xmm15
747
+ vpxor %xmm2,%xmm8,%xmm7
748
+ vpxor %xmm4,%xmm9,%xmm6
749
+
750
+ vmovdqu 16-32(%r9),%xmm0 // borrow %xmm0 for %xmm3^2
751
+ vpxor %xmm5,%xmm7,%xmm9 // aggregated Karatsuba post-processing
752
+ vpclmulqdq $0x00,%xmm3,%xmm14,%xmm4
753
+ vpxor %xmm9,%xmm6,%xmm6
754
+ vpunpckhqdq %xmm13,%xmm13,%xmm2
755
+ vpclmulqdq $0x11,%xmm3,%xmm14,%xmm14
756
+ vpxor %xmm13,%xmm2,%xmm2
757
+ vpslldq $8,%xmm6,%xmm9
758
+ vpclmulqdq $0x00,%xmm15,%xmm1,%xmm1
759
+ vpxor %xmm9,%xmm5,%xmm8
760
+ vpsrldq $8,%xmm6,%xmm6
761
+ vpxor %xmm6,%xmm7,%xmm7
762
+
763
+ vpclmulqdq $0x00,%xmm0,%xmm13,%xmm5
764
+ vmovdqu 48-32(%r9),%xmm3 // %xmm3^3
765
+ vpxor %xmm4,%xmm5,%xmm5
766
+ vpunpckhqdq %xmm12,%xmm12,%xmm9
767
+ vpclmulqdq $0x11,%xmm0,%xmm13,%xmm13
768
+ vpxor %xmm12,%xmm9,%xmm9
769
+ vpxor %xmm14,%xmm13,%xmm13
770
+ vpalignr $8,%xmm8,%xmm8,%xmm14 // 1st phase
771
+ vpclmulqdq $0x10,%xmm15,%xmm2,%xmm2
772
+ vmovdqu 80-32(%r9),%xmm15
773
+ vpxor %xmm1,%xmm2,%xmm2
774
+
775
+ vpclmulqdq $0x00,%xmm3,%xmm12,%xmm4
776
+ vmovdqu 64-32(%r9),%xmm0 // borrow %xmm0 for %xmm3^4
777
+ vpxor %xmm5,%xmm4,%xmm4
778
+ vpunpckhqdq %xmm11,%xmm11,%xmm1
779
+ vpclmulqdq $0x11,%xmm3,%xmm12,%xmm12
780
+ vpxor %xmm11,%xmm1,%xmm1
781
+ vpxor %xmm13,%xmm12,%xmm12
782
+ vxorps 16(%rsp),%xmm7,%xmm7 // accumulate %xmm9
783
+ vpclmulqdq $0x00,%xmm15,%xmm9,%xmm9
784
+ vpxor %xmm2,%xmm9,%xmm9
785
+
786
+ vpclmulqdq $0x10,16(%r11),%xmm8,%xmm8
787
+ vxorps %xmm14,%xmm8,%xmm8
788
+
789
+ vpclmulqdq $0x00,%xmm0,%xmm11,%xmm5
790
+ vmovdqu 96-32(%r9),%xmm3 // %xmm3^5
791
+ vpxor %xmm4,%xmm5,%xmm5
792
+ vpunpckhqdq %xmm10,%xmm10,%xmm2
793
+ vpclmulqdq $0x11,%xmm0,%xmm11,%xmm11
794
+ vpxor %xmm10,%xmm2,%xmm2
795
+ vpalignr $8,%xmm8,%xmm8,%xmm14 // 2nd phase
796
+ vpxor %xmm12,%xmm11,%xmm11
797
+ vpclmulqdq $0x10,%xmm15,%xmm1,%xmm1
798
+ vmovdqu 128-32(%r9),%xmm15
799
+ vpxor %xmm9,%xmm1,%xmm1
800
+
801
+ vxorps %xmm7,%xmm14,%xmm14
802
+ vpclmulqdq $0x10,16(%r11),%xmm8,%xmm8
803
+ vxorps %xmm14,%xmm8,%xmm8
804
+
805
+ vpclmulqdq $0x00,%xmm3,%xmm10,%xmm4
806
+ vmovdqu 112-32(%r9),%xmm0 // borrow %xmm0 for %xmm3^6
807
+ vpxor %xmm5,%xmm4,%xmm4
808
+ vpunpckhqdq %xmm8,%xmm8,%xmm9
809
+ vpclmulqdq $0x11,%xmm3,%xmm10,%xmm10
810
+ vpxor %xmm8,%xmm9,%xmm9
811
+ vpxor %xmm11,%xmm10,%xmm10
812
+ vpclmulqdq $0x00,%xmm15,%xmm2,%xmm2
813
+ vpxor %xmm1,%xmm2,%xmm2
814
+
815
+ vpclmulqdq $0x00,%xmm0,%xmm8,%xmm5
816
+ vpclmulqdq $0x11,%xmm0,%xmm8,%xmm7
817
+ vpxor %xmm4,%xmm5,%xmm5
818
+ vpclmulqdq $0x10,%xmm15,%xmm9,%xmm6
819
+ vpxor %xmm10,%xmm7,%xmm7
820
+ vpxor %xmm2,%xmm6,%xmm6
821
+
822
+ vpxor %xmm5,%xmm7,%xmm4 // aggregated Karatsuba post-processing
823
+ vpxor %xmm4,%xmm6,%xmm6
824
+ vpslldq $8,%xmm6,%xmm1
825
+ vmovdqu 16(%r11),%xmm3 // .Lpoly
826
+ vpsrldq $8,%xmm6,%xmm6
827
+ vpxor %xmm1,%xmm5,%xmm8
828
+ vpxor %xmm6,%xmm7,%xmm7
829
+
830
+ vpalignr $8,%xmm8,%xmm8,%xmm2 // 1st phase
831
+ vpclmulqdq $0x10,%xmm3,%xmm8,%xmm8
832
+ vpxor %xmm2,%xmm8,%xmm8
833
+
834
+ vpalignr $8,%xmm8,%xmm8,%xmm2 // 2nd phase
835
+ vpclmulqdq $0x10,%xmm3,%xmm8,%xmm8
836
+ vpxor %xmm7,%xmm2,%xmm2
837
+ vpxor %xmm2,%xmm8,%xmm8
838
+ movq 16(%rbp),%r12
839
+ vpshufb (%r11),%xmm8,%xmm8 // .Lbswap_mask
840
+ vmovdqu %xmm8,(%r12) // output Xi
841
+
842
+ vzeroupper
843
+ leaq -40(%rbp),%rsp // restore %rsp to fixed allocation
844
+ .cfi_def_cfa %rsp, 0x38
845
+ popq %r15
846
+ .cfi_adjust_cfa_offset -8
847
+ .cfi_restore %r15
848
+ popq %r14
849
+ .cfi_adjust_cfa_offset -8
850
+ .cfi_restore %r14
851
+ popq %r13
852
+ .cfi_adjust_cfa_offset -8
853
+ .cfi_restore %r13
854
+ popq %r12
855
+ .cfi_adjust_cfa_offset -8
856
+ .cfi_restore %r12
857
+ popq %rbx
858
+ .cfi_adjust_cfa_offset -8
859
+ .cfi_restore %rbx
860
+ popq %rbp
861
+ .cfi_adjust_cfa_offset -8
862
+ .cfi_restore %rbp
863
+ .Lgcm_enc_abort:
864
+ ret
865
+
866
+ .cfi_endproc
867
+ .size aesni_gcm_encrypt,.-aesni_gcm_encrypt
868
+ .section .rodata
869
+
870
+ .align 64
871
+ aesni_gcm_constants:
872
+ .Lbswap_mask:
873
+ .byte 15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0
874
+ .Lpoly:
875
+ .byte 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0xc2
876
+ .Lone_msb:
877
+ .byte 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1
878
+ .Ltwo_lsb:
879
+ .byte 2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
880
+ .Lone_lsb:
881
+ .byte 1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
882
+ .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
883
+ .align 64
884
+ .text
885
+ #endif