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