visaljs 0.0.1 → 0.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1008) hide show
  1. package/README.md +17 -1
  2. package/cli.js +565 -75
  3. package/node/include/js_node.h +28 -5
  4. package/node/include/js_uv.h +36 -0
  5. package/node/prelude/crypto.js +7 -10
  6. package/node/prelude/dns.js +99 -0
  7. package/node/prelude/dns_promises.js +10 -0
  8. package/node/prelude/http.js +1039 -195
  9. package/node/prelude/internal/crypto/asym.js +39 -12
  10. package/node/prelude/internal/crypto/dh_groups.js +12 -0
  11. package/node/prelude/internal/crypto/diffiehellman.js +354 -0
  12. package/node/prelude/internal/crypto/hash.js +1 -1
  13. package/node/prelude/internal/crypto/key_type.js +3 -0
  14. package/node/prelude/internal/crypto/keys.js +39 -9
  15. package/node/prelude/internal/http_agent.js +249 -0
  16. package/node/prelude/internal/net.js +33 -0
  17. package/node/prelude/internal/socketaddress.js +249 -0
  18. package/node/prelude/internal/tls/common.js +306 -0
  19. package/node/prelude/internal/tls/wrap.js +1217 -0
  20. package/node/prelude/internal/tls/x509.js +394 -0
  21. package/node/prelude/net.js +1083 -50
  22. package/node/prelude/stream.js +6 -0
  23. package/node/prelude/tls.js +141 -0
  24. package/node/prelude/util.js +5 -2
  25. package/node/prelude/util_types.js +85 -0
  26. package/node/src/host_http.c +268 -270
  27. package/node/src/host_loop.c +84 -0
  28. package/node/src/host_net.c +495 -0
  29. package/node/src/host_sys.c +16 -0
  30. package/package.json +1 -1
  31. package/runtime/include/js_builtins.h +16 -0
  32. package/runtime/include/js_console.h +2 -0
  33. package/runtime/include/js_core.def +23 -0
  34. package/runtime/include/js_crypto.h +23 -0
  35. package/runtime/include/js_generator.h +2 -3
  36. package/runtime/include/js_promise.h +0 -2
  37. package/runtime/src/async_iter.c +4 -1
  38. package/runtime/src/boringssl_support.cc +34 -0
  39. package/runtime/src/builtin_table.c +8 -0
  40. package/runtime/src/components.c +10 -0
  41. package/runtime/src/console.c +6 -18
  42. package/runtime/src/core_all.c +1 -0
  43. package/runtime/src/crypto_asym.c +450 -241
  44. package/runtime/src/crypto_bn.c +91 -0
  45. package/runtime/src/crypto_cipher.c +153 -75
  46. package/runtime/src/crypto_hash.c +68 -53
  47. package/runtime/src/crypto_internal.h +55 -26
  48. package/runtime/src/crypto_pkey.c +198 -61
  49. package/runtime/src/crypto_subtle.c +42 -16
  50. package/runtime/src/crypto_tls.c +678 -0
  51. package/runtime/src/generator.c +8 -1
  52. package/runtime/src/global.c +2 -4
  53. package/runtime/src/internal.h +0 -1
  54. package/runtime/src/jobs.c +2 -1
  55. package/runtime/src/promise.c +4 -1
  56. package/runtime/src/tls_roots.gen.h +3215 -0
  57. package/runtime/src/util_types.c +52 -0
  58. package/runtime/src/weak.c +2 -1
  59. package/runtime/third_party/boringssl/LICENSE +238 -0
  60. package/runtime/third_party/boringssl/README.md +46 -0
  61. package/runtime/third_party/boringssl/VERSION +1 -0
  62. package/runtime/third_party/boringssl/crypto/aes/aes.cc +44 -0
  63. package/runtime/third_party/boringssl/crypto/armv8_feature_parsing.h +67 -0
  64. package/runtime/third_party/boringssl/crypto/asn1/a_bitstr.cc +297 -0
  65. package/runtime/third_party/boringssl/crypto/asn1/a_bool.cc +50 -0
  66. package/runtime/third_party/boringssl/crypto/asn1/a_d2i_fp.cc +47 -0
  67. package/runtime/third_party/boringssl/crypto/asn1/a_dup.cc +42 -0
  68. package/runtime/third_party/boringssl/crypto/asn1/a_gentm.cc +130 -0
  69. package/runtime/third_party/boringssl/crypto/asn1/a_i2d_fp.cc +44 -0
  70. package/runtime/third_party/boringssl/crypto/asn1/a_int.cc +467 -0
  71. package/runtime/third_party/boringssl/crypto/asn1/a_mbstr.cc +242 -0
  72. package/runtime/third_party/boringssl/crypto/asn1/a_object.cc +191 -0
  73. package/runtime/third_party/boringssl/crypto/asn1/a_octet.cc +32 -0
  74. package/runtime/third_party/boringssl/crypto/asn1/a_strex.cc +411 -0
  75. package/runtime/third_party/boringssl/crypto/asn1/a_strnid.cc +208 -0
  76. package/runtime/third_party/boringssl/crypto/asn1/a_time.cc +248 -0
  77. package/runtime/third_party/boringssl/crypto/asn1/a_type.cc +467 -0
  78. package/runtime/third_party/boringssl/crypto/asn1/a_utctm.cc +128 -0
  79. package/runtime/third_party/boringssl/crypto/asn1/asn1_lib.cc +453 -0
  80. package/runtime/third_party/boringssl/crypto/asn1/asn1_par.cc +61 -0
  81. package/runtime/third_party/boringssl/crypto/asn1/asn_pack.cc +56 -0
  82. package/runtime/third_party/boringssl/crypto/asn1/f_int.cc +63 -0
  83. package/runtime/third_party/boringssl/crypto/asn1/f_string.cc +52 -0
  84. package/runtime/third_party/boringssl/crypto/asn1/internal.h +430 -0
  85. package/runtime/third_party/boringssl/crypto/asn1/posix_time.cc +244 -0
  86. package/runtime/third_party/boringssl/crypto/asn1/tasn_dec.cc +611 -0
  87. package/runtime/third_party/boringssl/crypto/asn1/tasn_enc.cc +348 -0
  88. package/runtime/third_party/boringssl/crypto/asn1/tasn_fre.cc +163 -0
  89. package/runtime/third_party/boringssl/crypto/asn1/tasn_new.cc +274 -0
  90. package/runtime/third_party/boringssl/crypto/asn1/tasn_typ.cc +92 -0
  91. package/runtime/third_party/boringssl/crypto/asn1/tasn_utl.cc +218 -0
  92. package/runtime/third_party/boringssl/crypto/base64/base64.cc +433 -0
  93. package/runtime/third_party/boringssl/crypto/bcm_support.h +62 -0
  94. package/runtime/third_party/boringssl/crypto/bio/bio.cc +715 -0
  95. package/runtime/third_party/boringssl/crypto/bio/bio_mem.cc +260 -0
  96. package/runtime/third_party/boringssl/crypto/bio/connect.cc +463 -0
  97. package/runtime/third_party/boringssl/crypto/bio/errno.cc +52 -0
  98. package/runtime/third_party/boringssl/crypto/bio/fd.cc +193 -0
  99. package/runtime/third_party/boringssl/crypto/bio/file.cc +283 -0
  100. package/runtime/third_party/boringssl/crypto/bio/hexdump.cc +154 -0
  101. package/runtime/third_party/boringssl/crypto/bio/internal.h +128 -0
  102. package/runtime/third_party/boringssl/crypto/bio/pair.cc +426 -0
  103. package/runtime/third_party/boringssl/crypto/bio/printf.cc +59 -0
  104. package/runtime/third_party/boringssl/crypto/bio/socket.cc +210 -0
  105. package/runtime/third_party/boringssl/crypto/bio/socket_helper.cc +179 -0
  106. package/runtime/third_party/boringssl/crypto/blake2/blake2.cc +173 -0
  107. package/runtime/third_party/boringssl/crypto/bn/bn_asn1.cc +57 -0
  108. package/runtime/third_party/boringssl/crypto/bn/convert.cc +409 -0
  109. package/runtime/third_party/boringssl/crypto/bn/div.cc +102 -0
  110. package/runtime/third_party/boringssl/crypto/bn/exponentiation.cc +168 -0
  111. package/runtime/third_party/boringssl/crypto/bn/sqrt.cc +93 -0
  112. package/runtime/third_party/boringssl/crypto/buf/buf.cc +119 -0
  113. package/runtime/third_party/boringssl/crypto/bytestring/asn1_compat.cc +54 -0
  114. package/runtime/third_party/boringssl/crypto/bytestring/ber.cc +268 -0
  115. package/runtime/third_party/boringssl/crypto/bytestring/cbb.cc +787 -0
  116. package/runtime/third_party/boringssl/crypto/bytestring/cbs.cc +977 -0
  117. package/runtime/third_party/boringssl/crypto/bytestring/internal.h +134 -0
  118. package/runtime/third_party/boringssl/crypto/bytestring/unicode.cc +156 -0
  119. package/runtime/third_party/boringssl/crypto/chacha/chacha.cc +226 -0
  120. package/runtime/third_party/boringssl/crypto/chacha/internal.h +103 -0
  121. package/runtime/third_party/boringssl/crypto/cipher/derive_key.cc +106 -0
  122. package/runtime/third_party/boringssl/crypto/cipher/e_aesctrhmac.cc +294 -0
  123. package/runtime/third_party/boringssl/crypto/cipher/e_aeseax.cc +351 -0
  124. package/runtime/third_party/boringssl/crypto/cipher/e_aesgcmsiv.cc +918 -0
  125. package/runtime/third_party/boringssl/crypto/cipher/e_chacha20poly1305.cc +404 -0
  126. package/runtime/third_party/boringssl/crypto/cipher/e_des.cc +214 -0
  127. package/runtime/third_party/boringssl/crypto/cipher/e_null.cc +55 -0
  128. package/runtime/third_party/boringssl/crypto/cipher/e_rc2.cc +432 -0
  129. package/runtime/third_party/boringssl/crypto/cipher/e_rc4.cc +56 -0
  130. package/runtime/third_party/boringssl/crypto/cipher/e_tls.cc +615 -0
  131. package/runtime/third_party/boringssl/crypto/cipher/get_cipher.cc +85 -0
  132. package/runtime/third_party/boringssl/crypto/cipher/internal.h +399 -0
  133. package/runtime/third_party/boringssl/crypto/cipher/tls_cbc.cc +476 -0
  134. package/runtime/third_party/boringssl/crypto/cms/cms.cc +178 -0
  135. package/runtime/third_party/boringssl/crypto/conf/conf.cc +637 -0
  136. package/runtime/third_party/boringssl/crypto/conf/internal.h +54 -0
  137. package/runtime/third_party/boringssl/crypto/cpu_aarch64_apple.cc +76 -0
  138. package/runtime/third_party/boringssl/crypto/cpu_aarch64_fuchsia.cc +58 -0
  139. package/runtime/third_party/boringssl/crypto/cpu_aarch64_linux.cc +66 -0
  140. package/runtime/third_party/boringssl/crypto/cpu_aarch64_openbsd.cc +45 -0
  141. package/runtime/third_party/boringssl/crypto/cpu_aarch64_sysreg.cc +66 -0
  142. package/runtime/third_party/boringssl/crypto/cpu_aarch64_win.cc +52 -0
  143. package/runtime/third_party/boringssl/crypto/cpu_arm_freebsd.cc +55 -0
  144. package/runtime/third_party/boringssl/crypto/cpu_arm_linux.cc +173 -0
  145. package/runtime/third_party/boringssl/crypto/cpu_arm_linux.h +141 -0
  146. package/runtime/third_party/boringssl/crypto/cpu_intel.cc +287 -0
  147. package/runtime/third_party/boringssl/crypto/crypto.cc +152 -0
  148. package/runtime/third_party/boringssl/crypto/curve25519/asm/x25519-asm-arm.S +2124 -0
  149. package/runtime/third_party/boringssl/crypto/curve25519/cpace.cc +227 -0
  150. package/runtime/third_party/boringssl/crypto/curve25519/curve25519.cc +2436 -0
  151. package/runtime/third_party/boringssl/crypto/curve25519/curve25519_64_adx.cc +18 -0
  152. package/runtime/third_party/boringssl/crypto/curve25519/curve25519_tables.h +3264 -0
  153. package/runtime/third_party/boringssl/crypto/curve25519/internal.h +202 -0
  154. package/runtime/third_party/boringssl/crypto/curve25519/spake25519.cc +532 -0
  155. package/runtime/third_party/boringssl/crypto/des/des.cc +837 -0
  156. package/runtime/third_party/boringssl/crypto/des/internal.h +144 -0
  157. package/runtime/third_party/boringssl/crypto/dh/dh_asn1.cc +109 -0
  158. package/runtime/third_party/boringssl/crypto/dh/params.cc +411 -0
  159. package/runtime/third_party/boringssl/crypto/digest/digest_extra.cc +361 -0
  160. package/runtime/third_party/boringssl/crypto/dsa/dsa.cc +922 -0
  161. package/runtime/third_party/boringssl/crypto/dsa/dsa_asn1.cc +306 -0
  162. package/runtime/third_party/boringssl/crypto/dsa/internal.h +56 -0
  163. package/runtime/third_party/boringssl/crypto/ec/ec_asn1.cc +542 -0
  164. package/runtime/third_party/boringssl/crypto/ec/ec_derive.cc +94 -0
  165. package/runtime/third_party/boringssl/crypto/ec/hash_to_curve.cc +773 -0
  166. package/runtime/third_party/boringssl/crypto/ec/internal.h +114 -0
  167. package/runtime/third_party/boringssl/crypto/ecdh/ecdh.cc +75 -0
  168. package/runtime/third_party/boringssl/crypto/ecdsa/ecdsa_asn1.cc +337 -0
  169. package/runtime/third_party/boringssl/crypto/ecdsa/ecdsa_p1363.cc +54 -0
  170. package/runtime/third_party/boringssl/crypto/engine/engine.cc +95 -0
  171. package/runtime/third_party/boringssl/crypto/err/err.cc +820 -0
  172. package/runtime/third_party/boringssl/crypto/err/internal.h +45 -0
  173. package/runtime/third_party/boringssl/crypto/evp/evp.cc +454 -0
  174. package/runtime/third_party/boringssl/crypto/evp/evp_asn1.cc +439 -0
  175. package/runtime/third_party/boringssl/crypto/evp/evp_ctx.cc +541 -0
  176. package/runtime/third_party/boringssl/crypto/evp/evp_kem.cc +101 -0
  177. package/runtime/third_party/boringssl/crypto/evp/internal.h +427 -0
  178. package/runtime/third_party/boringssl/crypto/evp/p_dh.cc +326 -0
  179. package/runtime/third_party/boringssl/crypto/evp/p_dsa.cc +333 -0
  180. package/runtime/third_party/boringssl/crypto/evp/p_ec.cc +736 -0
  181. package/runtime/third_party/boringssl/crypto/evp/p_ed25519.cc +359 -0
  182. package/runtime/third_party/boringssl/crypto/evp/p_hkdf.cc +204 -0
  183. package/runtime/third_party/boringssl/crypto/evp/p_mldsa.cc +549 -0
  184. package/runtime/third_party/boringssl/crypto/evp/p_mlkem.cc +510 -0
  185. package/runtime/third_party/boringssl/crypto/evp/p_rsa.cc +1185 -0
  186. package/runtime/third_party/boringssl/crypto/evp/p_x25519.cc +371 -0
  187. package/runtime/third_party/boringssl/crypto/evp/p_xwing.cc +300 -0
  188. package/runtime/third_party/boringssl/crypto/evp/pbkdf.cc +105 -0
  189. package/runtime/third_party/boringssl/crypto/evp/print.cc +287 -0
  190. package/runtime/third_party/boringssl/crypto/evp/scrypt.cc +218 -0
  191. package/runtime/third_party/boringssl/crypto/evp/sign.cc +95 -0
  192. package/runtime/third_party/boringssl/crypto/ex_data.cc +140 -0
  193. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/aes.cc.inc +208 -0
  194. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/aes_nohw.cc.inc +1279 -0
  195. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/cbc.cc.inc +132 -0
  196. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/cfb.cc.inc +168 -0
  197. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/ctr.cc.inc +102 -0
  198. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/gcm.cc.inc +614 -0
  199. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/gcm_nohw.cc.inc +304 -0
  200. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/internal.h +590 -0
  201. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/key_wrap.cc.inc +211 -0
  202. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/mode_wrappers.cc.inc +97 -0
  203. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/ofb.cc.inc +55 -0
  204. package/runtime/third_party/boringssl/crypto/fipsmodule/bcm.cc +288 -0
  205. package/runtime/third_party/boringssl/crypto/fipsmodule/bcm_interface.h +953 -0
  206. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/add.cc.inc +276 -0
  207. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/asm/x86_64-gcc.cc.inc +573 -0
  208. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/bn.cc.inc +377 -0
  209. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/bytes.cc.inc +230 -0
  210. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/cmp.cc.inc +161 -0
  211. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/ctx.cc.inc +127 -0
  212. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/div.cc.inc +738 -0
  213. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/div_extra.cc.inc +90 -0
  214. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/exponentiation.cc.inc +743 -0
  215. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/gcd.cc.inc +281 -0
  216. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/gcd_extra.cc.inc +327 -0
  217. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/generic.cc.inc +579 -0
  218. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/internal.h +810 -0
  219. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/jacobi.cc.inc +101 -0
  220. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/montgomery.cc.inc +408 -0
  221. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/montgomery_inv.cc.inc +179 -0
  222. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/mul.cc.inc +347 -0
  223. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/prime.cc.inc +931 -0
  224. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/random.cc.inc +261 -0
  225. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/rsaz_exp.cc.inc +144 -0
  226. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/rsaz_exp.h +109 -0
  227. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/shift.cc.inc +317 -0
  228. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/sqrt.cc.inc +370 -0
  229. package/runtime/third_party/boringssl/crypto/fipsmodule/cipher/aead.cc.inc +619 -0
  230. package/runtime/third_party/boringssl/crypto/fipsmodule/cipher/cipher.cc.inc +837 -0
  231. package/runtime/third_party/boringssl/crypto/fipsmodule/cipher/e_aes.cc.inc +1240 -0
  232. package/runtime/third_party/boringssl/crypto/fipsmodule/cipher/e_aesccm.cc.inc +440 -0
  233. package/runtime/third_party/boringssl/crypto/fipsmodule/cipher/internal.h +461 -0
  234. package/runtime/third_party/boringssl/crypto/fipsmodule/cmac/cmac.cc.inc +293 -0
  235. package/runtime/third_party/boringssl/crypto/fipsmodule/delocate.h +95 -0
  236. package/runtime/third_party/boringssl/crypto/fipsmodule/dh/check.cc.inc +198 -0
  237. package/runtime/third_party/boringssl/crypto/fipsmodule/dh/dh.cc.inc +401 -0
  238. package/runtime/third_party/boringssl/crypto/fipsmodule/dh/internal.h +63 -0
  239. package/runtime/third_party/boringssl/crypto/fipsmodule/digest/digest.cc.inc +221 -0
  240. package/runtime/third_party/boringssl/crypto/fipsmodule/digest/digests.cc.inc +184 -0
  241. package/runtime/third_party/boringssl/crypto/fipsmodule/digest/internal.h +72 -0
  242. package/runtime/third_party/boringssl/crypto/fipsmodule/digest/md32_common.h +166 -0
  243. package/runtime/third_party/boringssl/crypto/fipsmodule/digestsign/digestsign.cc.inc +230 -0
  244. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/builtin_curves.h +277 -0
  245. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/ec.cc.inc +1024 -0
  246. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/ec_key.cc.inc +536 -0
  247. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/ec_montgomery.cc.inc +379 -0
  248. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/felem.cc.inc +250 -0
  249. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/internal.h +752 -0
  250. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/oct.cc.inc +174 -0
  251. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/p256-nistz-table.h +9502 -0
  252. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/p256-nistz.cc.inc +740 -0
  253. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/p256-nistz.h +207 -0
  254. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/p256.cc.inc +578 -0
  255. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/p256_table.h +297 -0
  256. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/scalar.cc.inc +184 -0
  257. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/simple.cc.inc +246 -0
  258. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/simple_mul.cc.inc +274 -0
  259. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/util.cc.inc +258 -0
  260. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/wnaf.cc.inc +224 -0
  261. package/runtime/third_party/boringssl/crypto/fipsmodule/ecdh/ecdh.cc.inc +91 -0
  262. package/runtime/third_party/boringssl/crypto/fipsmodule/ecdsa/ecdsa.cc.inc +288 -0
  263. package/runtime/third_party/boringssl/crypto/fipsmodule/ecdsa/internal.h +57 -0
  264. package/runtime/third_party/boringssl/crypto/fipsmodule/entropy/internal.h +38 -0
  265. package/runtime/third_party/boringssl/crypto/fipsmodule/entropy/jitter.cc.inc +487 -0
  266. package/runtime/third_party/boringssl/crypto/fipsmodule/entropy/sha512.cc.inc +329 -0
  267. package/runtime/third_party/boringssl/crypto/fipsmodule/fips_shared_support.cc +28 -0
  268. package/runtime/third_party/boringssl/crypto/fipsmodule/hkdf/hkdf.cc.inc +114 -0
  269. package/runtime/third_party/boringssl/crypto/fipsmodule/hmac/hmac.cc.inc +218 -0
  270. package/runtime/third_party/boringssl/crypto/fipsmodule/keccak/internal.h +165 -0
  271. package/runtime/third_party/boringssl/crypto/fipsmodule/keccak/keccak.cc.inc +647 -0
  272. package/runtime/third_party/boringssl/crypto/fipsmodule/mldsa/fips_known_values.inc +1345 -0
  273. package/runtime/third_party/boringssl/crypto/fipsmodule/mldsa/mldsa.cc.inc +3323 -0
  274. package/runtime/third_party/boringssl/crypto/fipsmodule/mlkem/fips_known_values.inc +411 -0
  275. package/runtime/third_party/boringssl/crypto/fipsmodule/mlkem/mlkem.cc.inc +1856 -0
  276. package/runtime/third_party/boringssl/crypto/fipsmodule/rand/android_entropy_client.cc.inc +82 -0
  277. package/runtime/third_party/boringssl/crypto/fipsmodule/rand/ctrdrbg.cc.inc +401 -0
  278. package/runtime/third_party/boringssl/crypto/fipsmodule/rand/internal.h +99 -0
  279. package/runtime/third_party/boringssl/crypto/fipsmodule/rand/rand.cc.inc +486 -0
  280. package/runtime/third_party/boringssl/crypto/fipsmodule/rsa/internal.h +167 -0
  281. package/runtime/third_party/boringssl/crypto/fipsmodule/rsa/padding.cc.inc +371 -0
  282. package/runtime/third_party/boringssl/crypto/fipsmodule/rsa/rsa.cc.inc +996 -0
  283. package/runtime/third_party/boringssl/crypto/fipsmodule/rsa/rsa_impl.cc.inc +1000 -0
  284. package/runtime/third_party/boringssl/crypto/fipsmodule/self_check/fips.cc.inc +129 -0
  285. package/runtime/third_party/boringssl/crypto/fipsmodule/self_check/self_check.cc.inc +1093 -0
  286. package/runtime/third_party/boringssl/crypto/fipsmodule/service_indicator/internal.h +112 -0
  287. package/runtime/third_party/boringssl/crypto/fipsmodule/service_indicator/service_indicator.cc.inc +330 -0
  288. package/runtime/third_party/boringssl/crypto/fipsmodule/sha/internal.h +205 -0
  289. package/runtime/third_party/boringssl/crypto/fipsmodule/sha/sha1.cc.inc +404 -0
  290. package/runtime/third_party/boringssl/crypto/fipsmodule/sha/sha256.cc.inc +315 -0
  291. package/runtime/third_party/boringssl/crypto/fipsmodule/sha/sha512.cc.inc +473 -0
  292. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/address.h +144 -0
  293. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/fips_known_values.inc +674 -0
  294. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/fors.cc.inc +179 -0
  295. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/fors.h +48 -0
  296. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/merkle.cc.inc +164 -0
  297. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/merkle.h +58 -0
  298. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/params.h +178 -0
  299. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/slhdsa.cc.inc +690 -0
  300. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/thash.cc.inc +326 -0
  301. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/thash.h +71 -0
  302. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/wots.cc.inc +172 -0
  303. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/wots.h +40 -0
  304. package/runtime/third_party/boringssl/crypto/fipsmodule/tls/internal.h +33 -0
  305. package/runtime/third_party/boringssl/crypto/fipsmodule/tls/kdf.cc.inc +180 -0
  306. package/runtime/third_party/boringssl/crypto/fuzzer_mode.cc +30 -0
  307. package/runtime/third_party/boringssl/crypto/hpke/hpke.cc +1514 -0
  308. package/runtime/third_party/boringssl/crypto/hrss/asm/poly_rq_mul.S +8489 -0
  309. package/runtime/third_party/boringssl/crypto/hrss/hrss.cc +2189 -0
  310. package/runtime/third_party/boringssl/crypto/hrss/internal.h +64 -0
  311. package/runtime/third_party/boringssl/crypto/internal.h +1767 -0
  312. package/runtime/third_party/boringssl/crypto/lhash/internal.h +222 -0
  313. package/runtime/third_party/boringssl/crypto/lhash/lhash.cc +312 -0
  314. package/runtime/third_party/boringssl/crypto/md4/md4.cc +207 -0
  315. package/runtime/third_party/boringssl/crypto/md5/internal.h +34 -0
  316. package/runtime/third_party/boringssl/crypto/md5/md5.cc +255 -0
  317. package/runtime/third_party/boringssl/crypto/mem.cc +577 -0
  318. package/runtime/third_party/boringssl/crypto/mem_internal.h +706 -0
  319. package/runtime/third_party/boringssl/crypto/mldsa/mldsa.cc +296 -0
  320. package/runtime/third_party/boringssl/crypto/mlkem/mlkem.cc +108 -0
  321. package/runtime/third_party/boringssl/crypto/obj/obj.cc +494 -0
  322. package/runtime/third_party/boringssl/crypto/obj/obj_dat.h +11722 -0
  323. package/runtime/third_party/boringssl/crypto/obj/obj_xref.cc +83 -0
  324. package/runtime/third_party/boringssl/crypto/params_internal.h +30 -0
  325. package/runtime/third_party/boringssl/crypto/pem/internal.h +135 -0
  326. package/runtime/third_party/boringssl/crypto/pem/pem_all.cc +153 -0
  327. package/runtime/third_party/boringssl/crypto/pem/pem_info.cc +250 -0
  328. package/runtime/third_party/boringssl/crypto/pem/pem_lib.cc +707 -0
  329. package/runtime/third_party/boringssl/crypto/pem/pem_oth.cc +45 -0
  330. package/runtime/third_party/boringssl/crypto/pem/pem_pk8.cc +211 -0
  331. package/runtime/third_party/boringssl/crypto/pem/pem_pkey.cc +147 -0
  332. package/runtime/third_party/boringssl/crypto/pem/pem_x509.cc +25 -0
  333. package/runtime/third_party/boringssl/crypto/pem/pem_xaux.cc +25 -0
  334. package/runtime/third_party/boringssl/crypto/pkcs7/internal.h +67 -0
  335. package/runtime/third_party/boringssl/crypto/pkcs7/pkcs7.cc +198 -0
  336. package/runtime/third_party/boringssl/crypto/pkcs7/pkcs7_x509.cc +527 -0
  337. package/runtime/third_party/boringssl/crypto/pkcs8/internal.h +98 -0
  338. package/runtime/third_party/boringssl/crypto/pkcs8/p5_pbev2.cc +286 -0
  339. package/runtime/third_party/boringssl/crypto/pkcs8/pkcs8.cc +473 -0
  340. package/runtime/third_party/boringssl/crypto/pkcs8/pkcs8_x509.cc +1328 -0
  341. package/runtime/third_party/boringssl/crypto/poly1305/internal.h +54 -0
  342. package/runtime/third_party/boringssl/crypto/poly1305/poly1305.cc +315 -0
  343. package/runtime/third_party/boringssl/crypto/poly1305/poly1305_arm.cc +294 -0
  344. package/runtime/third_party/boringssl/crypto/poly1305/poly1305_arm_asm.S +2017 -0
  345. package/runtime/third_party/boringssl/crypto/poly1305/poly1305_vec.cc +853 -0
  346. package/runtime/third_party/boringssl/crypto/pool/internal.h +95 -0
  347. package/runtime/third_party/boringssl/crypto/pool/pool.cc +282 -0
  348. package/runtime/third_party/boringssl/crypto/rand/deterministic.cc +58 -0
  349. package/runtime/third_party/boringssl/crypto/rand/fork_detect.cc +222 -0
  350. package/runtime/third_party/boringssl/crypto/rand/forkunsafe.cc +44 -0
  351. package/runtime/third_party/boringssl/crypto/rand/getentropy.cc +53 -0
  352. package/runtime/third_party/boringssl/crypto/rand/internal.h +67 -0
  353. package/runtime/third_party/boringssl/crypto/rand/ios.cc +35 -0
  354. package/runtime/third_party/boringssl/crypto/rand/rand.cc +79 -0
  355. package/runtime/third_party/boringssl/crypto/rand/trusty.cc +39 -0
  356. package/runtime/third_party/boringssl/crypto/rand/urandom.cc +149 -0
  357. package/runtime/third_party/boringssl/crypto/rand/windows.cc +91 -0
  358. package/runtime/third_party/boringssl/crypto/rc4/rc4.cc +56 -0
  359. package/runtime/third_party/boringssl/crypto/refcount.cc +49 -0
  360. package/runtime/third_party/boringssl/crypto/rsa/internal.h +51 -0
  361. package/runtime/third_party/boringssl/crypto/rsa/rsa_asn1.cc +404 -0
  362. package/runtime/third_party/boringssl/crypto/rsa/rsa_crypt.cc +530 -0
  363. package/runtime/third_party/boringssl/crypto/rsa/rsa_extra.cc +30 -0
  364. package/runtime/third_party/boringssl/crypto/rsa/rsa_print.cc +25 -0
  365. package/runtime/third_party/boringssl/crypto/sha/sha1.cc +55 -0
  366. package/runtime/third_party/boringssl/crypto/sha/sha256.cc +89 -0
  367. package/runtime/third_party/boringssl/crypto/sha/sha512.cc +106 -0
  368. package/runtime/third_party/boringssl/crypto/siphash/siphash.cc +81 -0
  369. package/runtime/third_party/boringssl/crypto/slhdsa/slhdsa.cc +167 -0
  370. package/runtime/third_party/boringssl/crypto/spake2plus/internal.h +204 -0
  371. package/runtime/third_party/boringssl/crypto/spake2plus/spake2plus.cc +501 -0
  372. package/runtime/third_party/boringssl/crypto/stack/stack.cc +462 -0
  373. package/runtime/third_party/boringssl/crypto/thread.cc +68 -0
  374. package/runtime/third_party/boringssl/crypto/thread_none.cc +48 -0
  375. package/runtime/third_party/boringssl/crypto/thread_pthread.cc +138 -0
  376. package/runtime/third_party/boringssl/crypto/thread_win.cc +227 -0
  377. package/runtime/third_party/boringssl/crypto/trust_token/internal.h +405 -0
  378. package/runtime/third_party/boringssl/crypto/trust_token/pmbtoken.cc +1672 -0
  379. package/runtime/third_party/boringssl/crypto/trust_token/trust_token.cc +701 -0
  380. package/runtime/third_party/boringssl/crypto/trust_token/voprf.cc +1266 -0
  381. package/runtime/third_party/boringssl/crypto/x509/a_digest.cc +52 -0
  382. package/runtime/third_party/boringssl/crypto/x509/a_sign.cc +100 -0
  383. package/runtime/third_party/boringssl/crypto/x509/a_verify.cc +77 -0
  384. package/runtime/third_party/boringssl/crypto/x509/algorithm.cc +167 -0
  385. package/runtime/third_party/boringssl/crypto/x509/asn1_gen.cc +540 -0
  386. package/runtime/third_party/boringssl/crypto/x509/by_dir.cc +301 -0
  387. package/runtime/third_party/boringssl/crypto/x509/by_file.cc +226 -0
  388. package/runtime/third_party/boringssl/crypto/x509/i2d_pr.cc +37 -0
  389. package/runtime/third_party/boringssl/crypto/x509/internal.h +697 -0
  390. package/runtime/third_party/boringssl/crypto/x509/name_print.cc +187 -0
  391. package/runtime/third_party/boringssl/crypto/x509/policy.cc +686 -0
  392. package/runtime/third_party/boringssl/crypto/x509/rsa_pss.cc +187 -0
  393. package/runtime/third_party/boringssl/crypto/x509/t_crl.cc +106 -0
  394. package/runtime/third_party/boringssl/crypto/x509/t_req.cc +206 -0
  395. package/runtime/third_party/boringssl/crypto/x509/t_x509.cc +292 -0
  396. package/runtime/third_party/boringssl/crypto/x509/t_x509a.cc +81 -0
  397. package/runtime/third_party/boringssl/crypto/x509/v3_akey.cc +174 -0
  398. package/runtime/third_party/boringssl/crypto/x509/v3_akeya.cc +31 -0
  399. package/runtime/third_party/boringssl/crypto/x509/v3_alt.cc +636 -0
  400. package/runtime/third_party/boringssl/crypto/x509/v3_bcons.cc +96 -0
  401. package/runtime/third_party/boringssl/crypto/x509/v3_bitst.cc +100 -0
  402. package/runtime/third_party/boringssl/crypto/x509/v3_conf.cc +369 -0
  403. package/runtime/third_party/boringssl/crypto/x509/v3_cpols.cc +417 -0
  404. package/runtime/third_party/boringssl/crypto/x509/v3_crld.cc +471 -0
  405. package/runtime/third_party/boringssl/crypto/x509/v3_enum.cc +74 -0
  406. package/runtime/third_party/boringssl/crypto/x509/v3_extku.cc +97 -0
  407. package/runtime/third_party/boringssl/crypto/x509/v3_genn.cc +238 -0
  408. package/runtime/third_party/boringssl/crypto/x509/v3_ia5.cc +83 -0
  409. package/runtime/third_party/boringssl/crypto/x509/v3_info.cc +162 -0
  410. package/runtime/third_party/boringssl/crypto/x509/v3_int.cc +83 -0
  411. package/runtime/third_party/boringssl/crypto/x509/v3_lib.cc +349 -0
  412. package/runtime/third_party/boringssl/crypto/x509/v3_ncons.cc +798 -0
  413. package/runtime/third_party/boringssl/crypto/x509/v3_ocsp.cc +92 -0
  414. package/runtime/third_party/boringssl/crypto/x509/v3_pcons.cc +102 -0
  415. package/runtime/third_party/boringssl/crypto/x509/v3_pmaps.cc +110 -0
  416. package/runtime/third_party/boringssl/crypto/x509/v3_prn.cc +183 -0
  417. package/runtime/third_party/boringssl/crypto/x509/v3_purp.cc +580 -0
  418. package/runtime/third_party/boringssl/crypto/x509/v3_skey.cc +128 -0
  419. package/runtime/third_party/boringssl/crypto/x509/v3_utl.cc +1311 -0
  420. package/runtime/third_party/boringssl/crypto/x509/x509.cc +47 -0
  421. package/runtime/third_party/boringssl/crypto/x509/x509_att.cc +188 -0
  422. package/runtime/third_party/boringssl/crypto/x509/x509_cmp.cc +243 -0
  423. package/runtime/third_party/boringssl/crypto/x509/x509_d2.cc +66 -0
  424. package/runtime/third_party/boringssl/crypto/x509/x509_def.cc +42 -0
  425. package/runtime/third_party/boringssl/crypto/x509/x509_ext.cc +161 -0
  426. package/runtime/third_party/boringssl/crypto/x509/x509_lu.cc +570 -0
  427. package/runtime/third_party/boringssl/crypto/x509/x509_mtc.cc +598 -0
  428. package/runtime/third_party/boringssl/crypto/x509/x509_obj.cc +169 -0
  429. package/runtime/third_party/boringssl/crypto/x509/x509_req.cc +248 -0
  430. package/runtime/third_party/boringssl/crypto/x509/x509_set.cc +166 -0
  431. package/runtime/third_party/boringssl/crypto/x509/x509_trs.cc +123 -0
  432. package/runtime/third_party/boringssl/crypto/x509/x509_txt.cc +147 -0
  433. package/runtime/third_party/boringssl/crypto/x509/x509_v3.cc +249 -0
  434. package/runtime/third_party/boringssl/crypto/x509/x509_vfy.cc +1531 -0
  435. package/runtime/third_party/boringssl/crypto/x509/x509_vpm.cc +449 -0
  436. package/runtime/third_party/boringssl/crypto/x509/x509cset.cc +222 -0
  437. package/runtime/third_party/boringssl/crypto/x509/x509name.cc +377 -0
  438. package/runtime/third_party/boringssl/crypto/x509/x509rset.cc +55 -0
  439. package/runtime/third_party/boringssl/crypto/x509/x509spki.cc +91 -0
  440. package/runtime/third_party/boringssl/crypto/x509/x_algor.cc +223 -0
  441. package/runtime/third_party/boringssl/crypto/x509/x_all.cc +352 -0
  442. package/runtime/third_party/boringssl/crypto/x509/x_attrib.cc +61 -0
  443. package/runtime/third_party/boringssl/crypto/x509/x_crl.cc +325 -0
  444. package/runtime/third_party/boringssl/crypto/x509/x_exten.cc +42 -0
  445. package/runtime/third_party/boringssl/crypto/x509/x_name.cc +407 -0
  446. package/runtime/third_party/boringssl/crypto/x509/x_pubkey.cc +199 -0
  447. package/runtime/third_party/boringssl/crypto/x509/x_req.cc +80 -0
  448. package/runtime/third_party/boringssl/crypto/x509/x_sig.cc +51 -0
  449. package/runtime/third_party/boringssl/crypto/x509/x_spki.cc +44 -0
  450. package/runtime/third_party/boringssl/crypto/x509/x_x509.cc +495 -0
  451. package/runtime/third_party/boringssl/crypto/x509/x_x509a.cc +169 -0
  452. package/runtime/third_party/boringssl/crypto/xwing/xwing.cc +257 -0
  453. package/runtime/third_party/boringssl/gen/bcm/aes-gcm-avx2-x86_64-apple.S +1326 -0
  454. package/runtime/third_party/boringssl/gen/bcm/aes-gcm-avx2-x86_64-linux.S +1327 -0
  455. package/runtime/third_party/boringssl/gen/bcm/aes-gcm-avx512-x86_64-apple.S +1252 -0
  456. package/runtime/third_party/boringssl/gen/bcm/aes-gcm-avx512-x86_64-linux.S +1253 -0
  457. package/runtime/third_party/boringssl/gen/bcm/aesni-gcm-x86_64-apple.S +873 -0
  458. package/runtime/third_party/boringssl/gen/bcm/aesni-gcm-x86_64-linux.S +885 -0
  459. package/runtime/third_party/boringssl/gen/bcm/aesni-x86-apple.S +2490 -0
  460. package/runtime/third_party/boringssl/gen/bcm/aesni-x86-linux.S +2530 -0
  461. package/runtime/third_party/boringssl/gen/bcm/aesni-x86_64-apple.S +2413 -0
  462. package/runtime/third_party/boringssl/gen/bcm/aesni-x86_64-linux.S +2397 -0
  463. package/runtime/third_party/boringssl/gen/bcm/aesv8-armv7-linux.S +784 -0
  464. package/runtime/third_party/boringssl/gen/bcm/aesv8-armv8-apple.S +792 -0
  465. package/runtime/third_party/boringssl/gen/bcm/aesv8-armv8-linux.S +786 -0
  466. package/runtime/third_party/boringssl/gen/bcm/aesv8-armv8-win.S +798 -0
  467. package/runtime/third_party/boringssl/gen/bcm/aesv8-gcm-armv8-apple.S +2912 -0
  468. package/runtime/third_party/boringssl/gen/bcm/aesv8-gcm-armv8-linux.S +2907 -0
  469. package/runtime/third_party/boringssl/gen/bcm/aesv8-gcm-armv8-win.S +2915 -0
  470. package/runtime/third_party/boringssl/gen/bcm/armv4-mont-linux.S +932 -0
  471. package/runtime/third_party/boringssl/gen/bcm/armv8-mont-apple.S +1440 -0
  472. package/runtime/third_party/boringssl/gen/bcm/armv8-mont-linux.S +1440 -0
  473. package/runtime/third_party/boringssl/gen/bcm/armv8-mont-win.S +1446 -0
  474. package/runtime/third_party/boringssl/gen/bcm/bn-586-apple.S +530 -0
  475. package/runtime/third_party/boringssl/gen/bcm/bn-586-linux.S +540 -0
  476. package/runtime/third_party/boringssl/gen/bcm/bn-armv8-apple.S +88 -0
  477. package/runtime/third_party/boringssl/gen/bcm/bn-armv8-linux.S +87 -0
  478. package/runtime/third_party/boringssl/gen/bcm/bn-armv8-win.S +87 -0
  479. package/runtime/third_party/boringssl/gen/bcm/bsaes-armv7-linux.S +1520 -0
  480. package/runtime/third_party/boringssl/gen/bcm/co-586-apple.S +1256 -0
  481. package/runtime/third_party/boringssl/gen/bcm/co-586-linux.S +1264 -0
  482. package/runtime/third_party/boringssl/gen/bcm/ghash-armv4-linux.S +242 -0
  483. package/runtime/third_party/boringssl/gen/bcm/ghash-neon-armv8-apple.S +337 -0
  484. package/runtime/third_party/boringssl/gen/bcm/ghash-neon-armv8-linux.S +335 -0
  485. package/runtime/third_party/boringssl/gen/bcm/ghash-neon-armv8-win.S +341 -0
  486. package/runtime/third_party/boringssl/gen/bcm/ghash-ssse3-x86-apple.S +288 -0
  487. package/runtime/third_party/boringssl/gen/bcm/ghash-ssse3-x86-linux.S +292 -0
  488. package/runtime/third_party/boringssl/gen/bcm/ghash-ssse3-x86_64-apple.S +426 -0
  489. package/runtime/third_party/boringssl/gen/bcm/ghash-ssse3-x86_64-linux.S +425 -0
  490. package/runtime/third_party/boringssl/gen/bcm/ghash-x86-apple.S +322 -0
  491. package/runtime/third_party/boringssl/gen/bcm/ghash-x86-linux.S +328 -0
  492. package/runtime/third_party/boringssl/gen/bcm/ghash-x86_64-apple.S +1134 -0
  493. package/runtime/third_party/boringssl/gen/bcm/ghash-x86_64-linux.S +1129 -0
  494. package/runtime/third_party/boringssl/gen/bcm/ghashv8-armv7-linux.S +244 -0
  495. package/runtime/third_party/boringssl/gen/bcm/ghashv8-armv8-apple.S +567 -0
  496. package/runtime/third_party/boringssl/gen/bcm/ghashv8-armv8-linux.S +563 -0
  497. package/runtime/third_party/boringssl/gen/bcm/ghashv8-armv8-win.S +571 -0
  498. package/runtime/third_party/boringssl/gen/bcm/p256-armv8-asm-apple.S +1744 -0
  499. package/runtime/third_party/boringssl/gen/bcm/p256-armv8-asm-linux.S +1725 -0
  500. package/runtime/third_party/boringssl/gen/bcm/p256-armv8-asm-win.S +1765 -0
  501. package/runtime/third_party/boringssl/gen/bcm/p256-x86_64-asm-apple.S +4544 -0
  502. package/runtime/third_party/boringssl/gen/bcm/p256-x86_64-asm-linux.S +4600 -0
  503. package/runtime/third_party/boringssl/gen/bcm/p256_beeu-armv8-asm-apple.S +310 -0
  504. package/runtime/third_party/boringssl/gen/bcm/p256_beeu-armv8-asm-linux.S +310 -0
  505. package/runtime/third_party/boringssl/gen/bcm/p256_beeu-armv8-asm-win.S +310 -0
  506. package/runtime/third_party/boringssl/gen/bcm/p256_beeu-x86_64-asm-apple.S +321 -0
  507. package/runtime/third_party/boringssl/gen/bcm/p256_beeu-x86_64-asm-linux.S +335 -0
  508. package/runtime/third_party/boringssl/gen/bcm/rdrand-x86_64-apple.S +58 -0
  509. package/runtime/third_party/boringssl/gen/bcm/rdrand-x86_64-linux.S +57 -0
  510. package/runtime/third_party/boringssl/gen/bcm/rsaz-avx2-apple.S +1756 -0
  511. package/runtime/third_party/boringssl/gen/bcm/rsaz-avx2-linux.S +1751 -0
  512. package/runtime/third_party/boringssl/gen/bcm/sha1-586-apple.S +3782 -0
  513. package/runtime/third_party/boringssl/gen/bcm/sha1-586-linux.S +3788 -0
  514. package/runtime/third_party/boringssl/gen/bcm/sha1-armv4-large-linux.S +1479 -0
  515. package/runtime/third_party/boringssl/gen/bcm/sha1-armv8-apple.S +1219 -0
  516. package/runtime/third_party/boringssl/gen/bcm/sha1-armv8-linux.S +1218 -0
  517. package/runtime/third_party/boringssl/gen/bcm/sha1-armv8-win.S +1222 -0
  518. package/runtime/third_party/boringssl/gen/bcm/sha1-x86_64-apple.S +5454 -0
  519. package/runtime/third_party/boringssl/gen/bcm/sha1-x86_64-linux.S +5450 -0
  520. package/runtime/third_party/boringssl/gen/bcm/sha256-586-apple.S +5593 -0
  521. package/runtime/third_party/boringssl/gen/bcm/sha256-586-linux.S +5599 -0
  522. package/runtime/third_party/boringssl/gen/bcm/sha256-armv4-linux.S +2840 -0
  523. package/runtime/third_party/boringssl/gen/bcm/sha256-armv8-apple.S +1195 -0
  524. package/runtime/third_party/boringssl/gen/bcm/sha256-armv8-linux.S +1194 -0
  525. package/runtime/third_party/boringssl/gen/bcm/sha256-armv8-win.S +1198 -0
  526. package/runtime/third_party/boringssl/gen/bcm/sha256-x86_64-apple.S +4173 -0
  527. package/runtime/third_party/boringssl/gen/bcm/sha256-x86_64-linux.S +4170 -0
  528. package/runtime/third_party/boringssl/gen/bcm/sha512-586-apple.S +2406 -0
  529. package/runtime/third_party/boringssl/gen/bcm/sha512-586-linux.S +2410 -0
  530. package/runtime/third_party/boringssl/gen/bcm/sha512-armv4-linux.S +1857 -0
  531. package/runtime/third_party/boringssl/gen/bcm/sha512-armv8-apple.S +1598 -0
  532. package/runtime/third_party/boringssl/gen/bcm/sha512-armv8-linux.S +1597 -0
  533. package/runtime/third_party/boringssl/gen/bcm/sha512-armv8-win.S +1601 -0
  534. package/runtime/third_party/boringssl/gen/bcm/sha512-x86_64-apple.S +2979 -0
  535. package/runtime/third_party/boringssl/gen/bcm/sha512-x86_64-linux.S +2978 -0
  536. package/runtime/third_party/boringssl/gen/bcm/vpaes-armv7-linux.S +1225 -0
  537. package/runtime/third_party/boringssl/gen/bcm/vpaes-armv8-apple.S +1238 -0
  538. package/runtime/third_party/boringssl/gen/bcm/vpaes-armv8-linux.S +1220 -0
  539. package/runtime/third_party/boringssl/gen/bcm/vpaes-armv8-win.S +1256 -0
  540. package/runtime/third_party/boringssl/gen/bcm/vpaes-x86-apple.S +680 -0
  541. package/runtime/third_party/boringssl/gen/bcm/vpaes-x86-linux.S +706 -0
  542. package/runtime/third_party/boringssl/gen/bcm/vpaes-x86_64-apple.S +1146 -0
  543. package/runtime/third_party/boringssl/gen/bcm/vpaes-x86_64-linux.S +1133 -0
  544. package/runtime/third_party/boringssl/gen/bcm/x86-mont-apple.S +216 -0
  545. package/runtime/third_party/boringssl/gen/bcm/x86-mont-linux.S +218 -0
  546. package/runtime/third_party/boringssl/gen/bcm/x86_64-mont-apple.S +1238 -0
  547. package/runtime/third_party/boringssl/gen/bcm/x86_64-mont-linux.S +1237 -0
  548. package/runtime/third_party/boringssl/gen/bcm/x86_64-mont5-apple.S +3644 -0
  549. package/runtime/third_party/boringssl/gen/bcm/x86_64-mont5-linux.S +3628 -0
  550. package/runtime/third_party/boringssl/gen/boringssl_prefix_symbols_internal_x86_64_win_asm.inc +325 -0
  551. package/runtime/third_party/boringssl/gen/boringssl_prefix_symbols_internal_x86_win_asm.inc +325 -0
  552. package/runtime/third_party/boringssl/gen/crypto/aes128gcmsiv-x86_64-apple.S +3113 -0
  553. package/runtime/third_party/boringssl/gen/crypto/aes128gcmsiv-x86_64-linux.S +3091 -0
  554. package/runtime/third_party/boringssl/gen/crypto/chacha-armv4-linux.S +1450 -0
  555. package/runtime/third_party/boringssl/gen/crypto/chacha-armv8-apple.S +1969 -0
  556. package/runtime/third_party/boringssl/gen/crypto/chacha-armv8-linux.S +1967 -0
  557. package/runtime/third_party/boringssl/gen/crypto/chacha-armv8-win.S +1973 -0
  558. package/runtime/third_party/boringssl/gen/crypto/chacha-x86-apple.S +957 -0
  559. package/runtime/third_party/boringssl/gen/crypto/chacha-x86-linux.S +961 -0
  560. package/runtime/third_party/boringssl/gen/crypto/chacha-x86_64-apple.S +1608 -0
  561. package/runtime/third_party/boringssl/gen/crypto/chacha-x86_64-linux.S +1611 -0
  562. package/runtime/third_party/boringssl/gen/crypto/chacha20_poly1305_armv8-apple.S +3010 -0
  563. package/runtime/third_party/boringssl/gen/crypto/chacha20_poly1305_armv8-linux.S +3008 -0
  564. package/runtime/third_party/boringssl/gen/crypto/chacha20_poly1305_armv8-win.S +3014 -0
  565. package/runtime/third_party/boringssl/gen/crypto/chacha20_poly1305_x86_64-apple.S +8903 -0
  566. package/runtime/third_party/boringssl/gen/crypto/chacha20_poly1305_x86_64-linux.S +8940 -0
  567. package/runtime/third_party/boringssl/gen/crypto/err_data.cc +1578 -0
  568. package/runtime/third_party/boringssl/gen/crypto/md5-586-apple.S +684 -0
  569. package/runtime/third_party/boringssl/gen/crypto/md5-586-linux.S +686 -0
  570. package/runtime/third_party/boringssl/gen/crypto/md5-x86_64-apple.S +690 -0
  571. package/runtime/third_party/boringssl/gen/crypto/md5-x86_64-linux.S +695 -0
  572. package/runtime/third_party/boringssl/include/openssl/aead.h +650 -0
  573. package/runtime/third_party/boringssl/include/openssl/aes.h +173 -0
  574. package/runtime/third_party/boringssl/include/openssl/arm_arch.h +24 -0
  575. package/runtime/third_party/boringssl/include/openssl/asm_base.h +219 -0
  576. package/runtime/third_party/boringssl/include/openssl/asn1.h +2002 -0
  577. package/runtime/third_party/boringssl/include/openssl/asn1_mac.h +18 -0
  578. package/runtime/third_party/boringssl/include/openssl/asn1t.h +584 -0
  579. package/runtime/third_party/boringssl/include/openssl/base.h +548 -0
  580. package/runtime/third_party/boringssl/include/openssl/base64.h +156 -0
  581. package/runtime/third_party/boringssl/include/openssl/bio.h +1061 -0
  582. package/runtime/third_party/boringssl/include/openssl/blake2.h +63 -0
  583. package/runtime/third_party/boringssl/include/openssl/blowfish.h +58 -0
  584. package/runtime/third_party/boringssl/include/openssl/bn.h +986 -0
  585. package/runtime/third_party/boringssl/include/openssl/buf.h +95 -0
  586. package/runtime/third_party/boringssl/include/openssl/buffer.h +18 -0
  587. package/runtime/third_party/boringssl/include/openssl/bytestring.h +798 -0
  588. package/runtime/third_party/boringssl/include/openssl/cast.h +91 -0
  589. package/runtime/third_party/boringssl/include/openssl/chacha.h +47 -0
  590. package/runtime/third_party/boringssl/include/openssl/cipher.h +819 -0
  591. package/runtime/third_party/boringssl/include/openssl/cmac.h +91 -0
  592. package/runtime/third_party/boringssl/include/openssl/cms.h +147 -0
  593. package/runtime/third_party/boringssl/include/openssl/conf.h +136 -0
  594. package/runtime/third_party/boringssl/include/openssl/configuration.h +18 -0
  595. package/runtime/third_party/boringssl/include/openssl/cpu.h +18 -0
  596. package/runtime/third_party/boringssl/include/openssl/crypto.h +235 -0
  597. package/runtime/third_party/boringssl/include/openssl/ctrdrbg.h +116 -0
  598. package/runtime/third_party/boringssl/include/openssl/curve25519.h +309 -0
  599. package/runtime/third_party/boringssl/include/openssl/des.h +134 -0
  600. package/runtime/third_party/boringssl/include/openssl/dh.h +336 -0
  601. package/runtime/third_party/boringssl/include/openssl/digest.h +399 -0
  602. package/runtime/third_party/boringssl/include/openssl/dsa.h +392 -0
  603. package/runtime/third_party/boringssl/include/openssl/dtls1.h +16 -0
  604. package/runtime/third_party/boringssl/include/openssl/e_os2.h +18 -0
  605. package/runtime/third_party/boringssl/include/openssl/ec.h +530 -0
  606. package/runtime/third_party/boringssl/include/openssl/ec_key.h +358 -0
  607. package/runtime/third_party/boringssl/include/openssl/ecdh.h +67 -0
  608. package/runtime/third_party/boringssl/include/openssl/ecdsa.h +242 -0
  609. package/runtime/third_party/boringssl/include/openssl/engine.h +109 -0
  610. package/runtime/third_party/boringssl/include/openssl/err.h +416 -0
  611. package/runtime/third_party/boringssl/include/openssl/evp.h +1645 -0
  612. package/runtime/third_party/boringssl/include/openssl/evp_errors.h +66 -0
  613. package/runtime/third_party/boringssl/include/openssl/ex_data.h +117 -0
  614. package/runtime/third_party/boringssl/include/openssl/hkdf.h +68 -0
  615. package/runtime/third_party/boringssl/include/openssl/hmac.h +151 -0
  616. package/runtime/third_party/boringssl/include/openssl/hpke.h +456 -0
  617. package/runtime/third_party/boringssl/include/openssl/hrss.h +108 -0
  618. package/runtime/third_party/boringssl/include/openssl/is_boringssl.h +16 -0
  619. package/runtime/third_party/boringssl/include/openssl/kdf.h +92 -0
  620. package/runtime/third_party/boringssl/include/openssl/lhash.h +18 -0
  621. package/runtime/third_party/boringssl/include/openssl/md4.h +73 -0
  622. package/runtime/third_party/boringssl/include/openssl/md5.h +67 -0
  623. package/runtime/third_party/boringssl/include/openssl/mem.h +215 -0
  624. package/runtime/third_party/boringssl/include/openssl/mldsa.h +486 -0
  625. package/runtime/third_party/boringssl/include/openssl/mlkem.h +222 -0
  626. package/runtime/third_party/boringssl/include/openssl/nid.h +5561 -0
  627. package/runtime/third_party/boringssl/include/openssl/obj.h +225 -0
  628. package/runtime/third_party/boringssl/include/openssl/obj_mac.h +18 -0
  629. package/runtime/third_party/boringssl/include/openssl/objects.h +18 -0
  630. package/runtime/third_party/boringssl/include/openssl/opensslconf.h +108 -0
  631. package/runtime/third_party/boringssl/include/openssl/opensslv.h +18 -0
  632. package/runtime/third_party/boringssl/include/openssl/ossl_typ.h +18 -0
  633. package/runtime/third_party/boringssl/include/openssl/params.h +42 -0
  634. package/runtime/third_party/boringssl/include/openssl/pem.h +769 -0
  635. package/runtime/third_party/boringssl/include/openssl/pkcs12.h +18 -0
  636. package/runtime/third_party/boringssl/include/openssl/pkcs7.h +239 -0
  637. package/runtime/third_party/boringssl/include/openssl/pkcs8.h +267 -0
  638. package/runtime/third_party/boringssl/include/openssl/poly1305.h +52 -0
  639. package/runtime/third_party/boringssl/include/openssl/pool.h +137 -0
  640. package/runtime/third_party/boringssl/include/openssl/posix_time.h +51 -0
  641. package/runtime/third_party/boringssl/include/openssl/prefix_symbols.h +8000 -0
  642. package/runtime/third_party/boringssl/include/openssl/prefix_symbols_internal_S.h +633 -0
  643. package/runtime/third_party/boringssl/include/openssl/prefix_symbols_internal_c.h +329 -0
  644. package/runtime/third_party/boringssl/include/openssl/rand.h +138 -0
  645. package/runtime/third_party/boringssl/include/openssl/rc4.h +54 -0
  646. package/runtime/third_party/boringssl/include/openssl/ripemd.h +71 -0
  647. package/runtime/third_party/boringssl/include/openssl/rsa.h +893 -0
  648. package/runtime/third_party/boringssl/include/openssl/safestack.h +16 -0
  649. package/runtime/third_party/boringssl/include/openssl/service_indicator.h +19 -0
  650. package/runtime/third_party/boringssl/include/openssl/sha.h +108 -0
  651. package/runtime/third_party/boringssl/include/openssl/sha2.h +201 -0
  652. package/runtime/third_party/boringssl/include/openssl/siphash.h +37 -0
  653. package/runtime/third_party/boringssl/include/openssl/slhdsa.h +250 -0
  654. package/runtime/third_party/boringssl/include/openssl/span.h +376 -0
  655. package/runtime/third_party/boringssl/include/openssl/srtp.h +18 -0
  656. package/runtime/third_party/boringssl/include/openssl/ssl.h +7211 -0
  657. package/runtime/third_party/boringssl/include/openssl/ssl3.h +171 -0
  658. package/runtime/third_party/boringssl/include/openssl/stack.h +688 -0
  659. package/runtime/third_party/boringssl/include/openssl/target.h +246 -0
  660. package/runtime/third_party/boringssl/include/openssl/thread.h +114 -0
  661. package/runtime/third_party/boringssl/include/openssl/time.h +22 -0
  662. package/runtime/third_party/boringssl/include/openssl/tls1.h +263 -0
  663. package/runtime/third_party/boringssl/include/openssl/tls_prf.h +47 -0
  664. package/runtime/third_party/boringssl/include/openssl/trust_token.h +349 -0
  665. package/runtime/third_party/boringssl/include/openssl/type_check.h +37 -0
  666. package/runtime/third_party/boringssl/include/openssl/types.h +18 -0
  667. package/runtime/third_party/boringssl/include/openssl/x509.h +5404 -0
  668. package/runtime/third_party/boringssl/include/openssl/x509_vfy.h +18 -0
  669. package/runtime/third_party/boringssl/include/openssl/x509v3.h +63 -0
  670. package/runtime/third_party/boringssl/include/openssl/x509v3_errors.h +84 -0
  671. package/runtime/third_party/boringssl/include/openssl/xwing.h +115 -0
  672. package/runtime/third_party/boringssl/sources.json +696 -0
  673. package/runtime/third_party/boringssl/ssl/bio_ssl.cc +196 -0
  674. package/runtime/third_party/boringssl/ssl/d1_both.cc +1137 -0
  675. package/runtime/third_party/boringssl/ssl/d1_lib.cc +245 -0
  676. package/runtime/third_party/boringssl/ssl/d1_pkt.cc +322 -0
  677. package/runtime/third_party/boringssl/ssl/d1_srtp.cc +128 -0
  678. package/runtime/third_party/boringssl/ssl/dtls_method.cc +216 -0
  679. package/runtime/third_party/boringssl/ssl/dtls_record.cc +586 -0
  680. package/runtime/third_party/boringssl/ssl/encrypted_client_hello.cc +1110 -0
  681. package/runtime/third_party/boringssl/ssl/extensions.cc +5368 -0
  682. package/runtime/third_party/boringssl/ssl/handoff.cc +625 -0
  683. package/runtime/third_party/boringssl/ssl/handshake.cc +694 -0
  684. package/runtime/third_party/boringssl/ssl/handshake_client.cc +1958 -0
  685. package/runtime/third_party/boringssl/ssl/handshake_server.cc +1875 -0
  686. package/runtime/third_party/boringssl/ssl/internal.h +4506 -0
  687. package/runtime/third_party/boringssl/ssl/s3_both.cc +555 -0
  688. package/runtime/third_party/boringssl/ssl/s3_lib.cc +88 -0
  689. package/runtime/third_party/boringssl/ssl/s3_pkt.cc +396 -0
  690. package/runtime/third_party/boringssl/ssl/ssl_aead_ctx.cc +416 -0
  691. package/runtime/third_party/boringssl/ssl/ssl_asn1.cc +851 -0
  692. package/runtime/third_party/boringssl/ssl/ssl_buffer.cc +304 -0
  693. package/runtime/third_party/boringssl/ssl/ssl_cert.cc +723 -0
  694. package/runtime/third_party/boringssl/ssl/ssl_cipher.cc +1762 -0
  695. package/runtime/third_party/boringssl/ssl/ssl_credential.cc +913 -0
  696. package/runtime/third_party/boringssl/ssl/ssl_file.cc +375 -0
  697. package/runtime/third_party/boringssl/ssl/ssl_key_share.cc +445 -0
  698. package/runtime/third_party/boringssl/ssl/ssl_lib.cc +4132 -0
  699. package/runtime/third_party/boringssl/ssl/ssl_privkey.cc +973 -0
  700. package/runtime/third_party/boringssl/ssl/ssl_session.cc +1273 -0
  701. package/runtime/third_party/boringssl/ssl/ssl_stat.cc +162 -0
  702. package/runtime/third_party/boringssl/ssl/ssl_transcript.cc +224 -0
  703. package/runtime/third_party/boringssl/ssl/ssl_versions.cc +436 -0
  704. package/runtime/third_party/boringssl/ssl/ssl_x509.cc +1229 -0
  705. package/runtime/third_party/boringssl/ssl/t1_enc.cc +266 -0
  706. package/runtime/third_party/boringssl/ssl/tls13_both.cc +764 -0
  707. package/runtime/third_party/boringssl/ssl/tls13_client.cc +1325 -0
  708. package/runtime/third_party/boringssl/ssl/tls13_enc.cc +746 -0
  709. package/runtime/third_party/boringssl/ssl/tls13_server.cc +1623 -0
  710. package/runtime/third_party/boringssl/ssl/tls_method.cc +266 -0
  711. package/runtime/third_party/boringssl/ssl/tls_record.cc +524 -0
  712. package/runtime/third_party/boringssl/third_party/fiat/asm/fiat_curve25519_adx_mul.S +178 -0
  713. package/runtime/third_party/boringssl/third_party/fiat/asm/fiat_curve25519_adx_square.S +146 -0
  714. package/runtime/third_party/boringssl/third_party/fiat/asm/fiat_p256_adx_mul.S +177 -0
  715. package/runtime/third_party/boringssl/third_party/fiat/asm/fiat_p256_adx_sqr.S +166 -0
  716. package/runtime/third_party/boringssl/third_party/fiat/bedrock_unverified_bareminimum.c.inc +47 -0
  717. package/runtime/third_party/boringssl/third_party/fiat/bedrock_unverified_platform.c.inc +137 -0
  718. package/runtime/third_party/boringssl/third_party/fiat/curve25519_32.h +1571 -0
  719. package/runtime/third_party/boringssl/third_party/fiat/curve25519_64.h +978 -0
  720. package/runtime/third_party/boringssl/third_party/fiat/curve25519_64_adx.h +700 -0
  721. package/runtime/third_party/boringssl/third_party/fiat/curve25519_64_msvc.h +1281 -0
  722. package/runtime/third_party/boringssl/third_party/fiat/p256_32.h +4760 -0
  723. package/runtime/third_party/boringssl/third_party/fiat/p256_64.h +1984 -0
  724. package/runtime/third_party/boringssl/third_party/fiat/p256_64_msvc.h +1939 -0
  725. package/runtime/third_party/boringssl/third_party/fiat/p256_field.c.inc +26 -0
  726. package/runtime/third_party/boringssl/third_party/fiat/p256_field_32.br.c.inc +71 -0
  727. package/runtime/third_party/boringssl/third_party/fiat/p256_field_64.br.c.inc +84 -0
  728. package/runtime/third_party/boringssl/third_party/fiat/p256_point.br.c.inc +112 -0
  729. package/runtime/third_party/v8-ieee754/README.md +2 -1
  730. package/runtime/third_party/v8-ieee754/convert.py +4 -0
  731. package/runtime/third_party/v8-ieee754/ieee754.c +1 -1
  732. package/runtime/third_party/bearssl/LICENSE.txt +0 -21
  733. package/runtime/third_party/bearssl/README.txt +0 -136
  734. package/runtime/third_party/bearssl/VERSION +0 -1
  735. package/runtime/third_party/bearssl/inc/bearssl.h +0 -183
  736. package/runtime/third_party/bearssl/inc/bearssl_aead.h +0 -1059
  737. package/runtime/third_party/bearssl/inc/bearssl_block.h +0 -2618
  738. package/runtime/third_party/bearssl/inc/bearssl_ec.h +0 -967
  739. package/runtime/third_party/bearssl/inc/bearssl_hash.h +0 -1346
  740. package/runtime/third_party/bearssl/inc/bearssl_hmac.h +0 -241
  741. package/runtime/third_party/bearssl/inc/bearssl_kdf.h +0 -284
  742. package/runtime/third_party/bearssl/inc/bearssl_pem.h +0 -294
  743. package/runtime/third_party/bearssl/inc/bearssl_prf.h +0 -150
  744. package/runtime/third_party/bearssl/inc/bearssl_rand.h +0 -397
  745. package/runtime/third_party/bearssl/inc/bearssl_rsa.h +0 -1655
  746. package/runtime/third_party/bearssl/inc/bearssl_ssl.h +0 -4296
  747. package/runtime/third_party/bearssl/inc/bearssl_x509.h +0 -1474
  748. package/runtime/third_party/bearssl/src/aead/ccm.c +0 -346
  749. package/runtime/third_party/bearssl/src/aead/eax.c +0 -525
  750. package/runtime/third_party/bearssl/src/aead/gcm.c +0 -318
  751. package/runtime/third_party/bearssl/src/codec/ccopy.c +0 -44
  752. package/runtime/third_party/bearssl/src/codec/dec16be.c +0 -38
  753. package/runtime/third_party/bearssl/src/codec/dec16le.c +0 -38
  754. package/runtime/third_party/bearssl/src/codec/dec32be.c +0 -38
  755. package/runtime/third_party/bearssl/src/codec/dec32le.c +0 -38
  756. package/runtime/third_party/bearssl/src/codec/dec64be.c +0 -38
  757. package/runtime/third_party/bearssl/src/codec/dec64le.c +0 -38
  758. package/runtime/third_party/bearssl/src/codec/enc16be.c +0 -38
  759. package/runtime/third_party/bearssl/src/codec/enc16le.c +0 -38
  760. package/runtime/third_party/bearssl/src/codec/enc32be.c +0 -38
  761. package/runtime/third_party/bearssl/src/codec/enc32le.c +0 -38
  762. package/runtime/third_party/bearssl/src/codec/enc64be.c +0 -38
  763. package/runtime/third_party/bearssl/src/codec/enc64le.c +0 -38
  764. package/runtime/third_party/bearssl/src/codec/pemdec.c +0 -526
  765. package/runtime/third_party/bearssl/src/codec/pemdec.t0 +0 -314
  766. package/runtime/third_party/bearssl/src/codec/pemenc.c +0 -173
  767. package/runtime/third_party/bearssl/src/config.h +0 -247
  768. package/runtime/third_party/bearssl/src/ec/ec_all_m15.c +0 -121
  769. package/runtime/third_party/bearssl/src/ec/ec_all_m31.c +0 -171
  770. package/runtime/third_party/bearssl/src/ec/ec_c25519_i15.c +0 -398
  771. package/runtime/third_party/bearssl/src/ec/ec_c25519_i31.c +0 -390
  772. package/runtime/third_party/bearssl/src/ec/ec_c25519_m15.c +0 -1478
  773. package/runtime/third_party/bearssl/src/ec/ec_c25519_m31.c +0 -800
  774. package/runtime/third_party/bearssl/src/ec/ec_c25519_m62.c +0 -605
  775. package/runtime/third_party/bearssl/src/ec/ec_c25519_m64.c +0 -831
  776. package/runtime/third_party/bearssl/src/ec/ec_curve25519.c +0 -46
  777. package/runtime/third_party/bearssl/src/ec/ec_default.c +0 -36
  778. package/runtime/third_party/bearssl/src/ec/ec_keygen.c +0 -86
  779. package/runtime/third_party/bearssl/src/ec/ec_p256_m15.c +0 -2124
  780. package/runtime/third_party/bearssl/src/ec/ec_p256_m31.c +0 -1469
  781. package/runtime/third_party/bearssl/src/ec/ec_p256_m62.c +0 -1765
  782. package/runtime/third_party/bearssl/src/ec/ec_p256_m64.c +0 -1781
  783. package/runtime/third_party/bearssl/src/ec/ec_prime_i15.c +0 -824
  784. package/runtime/third_party/bearssl/src/ec/ec_prime_i31.c +0 -826
  785. package/runtime/third_party/bearssl/src/ec/ec_pubkey.c +0 -85
  786. package/runtime/third_party/bearssl/src/ec/ec_secp256r1.c +0 -51
  787. package/runtime/third_party/bearssl/src/ec/ec_secp384r1.c +0 -57
  788. package/runtime/third_party/bearssl/src/ec/ec_secp521r1.c +0 -64
  789. package/runtime/third_party/bearssl/src/ec/ecdsa_atr.c +0 -134
  790. package/runtime/third_party/bearssl/src/ec/ecdsa_default_sign_asn1.c +0 -36
  791. package/runtime/third_party/bearssl/src/ec/ecdsa_default_sign_raw.c +0 -36
  792. package/runtime/third_party/bearssl/src/ec/ecdsa_default_vrfy_asn1.c +0 -36
  793. package/runtime/third_party/bearssl/src/ec/ecdsa_default_vrfy_raw.c +0 -36
  794. package/runtime/third_party/bearssl/src/ec/ecdsa_i15_bits.c +0 -47
  795. package/runtime/third_party/bearssl/src/ec/ecdsa_i15_sign_asn1.c +0 -45
  796. package/runtime/third_party/bearssl/src/ec/ecdsa_i15_sign_raw.c +0 -174
  797. package/runtime/third_party/bearssl/src/ec/ecdsa_i15_vrfy_asn1.c +0 -48
  798. package/runtime/third_party/bearssl/src/ec/ecdsa_i15_vrfy_raw.c +0 -166
  799. package/runtime/third_party/bearssl/src/ec/ecdsa_i31_bits.c +0 -47
  800. package/runtime/third_party/bearssl/src/ec/ecdsa_i31_sign_asn1.c +0 -45
  801. package/runtime/third_party/bearssl/src/ec/ecdsa_i31_sign_raw.c +0 -173
  802. package/runtime/third_party/bearssl/src/ec/ecdsa_i31_vrfy_asn1.c +0 -48
  803. package/runtime/third_party/bearssl/src/ec/ecdsa_i31_vrfy_raw.c +0 -165
  804. package/runtime/third_party/bearssl/src/ec/ecdsa_rta.c +0 -121
  805. package/runtime/third_party/bearssl/src/hash/dig_oid.c +0 -84
  806. package/runtime/third_party/bearssl/src/hash/dig_size.c +0 -50
  807. package/runtime/third_party/bearssl/src/hash/ghash_ctmul.c +0 -345
  808. package/runtime/third_party/bearssl/src/hash/ghash_ctmul32.c +0 -251
  809. package/runtime/third_party/bearssl/src/hash/ghash_ctmul64.c +0 -154
  810. package/runtime/third_party/bearssl/src/hash/ghash_pclmul.c +0 -389
  811. package/runtime/third_party/bearssl/src/hash/ghash_pwr8.c +0 -411
  812. package/runtime/third_party/bearssl/src/hash/md5.c +0 -208
  813. package/runtime/third_party/bearssl/src/hash/md5sha1.c +0 -141
  814. package/runtime/third_party/bearssl/src/hash/mgf1.c +0 -56
  815. package/runtime/third_party/bearssl/src/hash/multihash.c +0 -166
  816. package/runtime/third_party/bearssl/src/hash/sha1.c +0 -191
  817. package/runtime/third_party/bearssl/src/hash/sha2big.c +0 -285
  818. package/runtime/third_party/bearssl/src/hash/sha2small.c +0 -341
  819. package/runtime/third_party/bearssl/src/inner.h +0 -2577
  820. package/runtime/third_party/bearssl/src/int/i15_add.c +0 -46
  821. package/runtime/third_party/bearssl/src/int/i15_bitlen.c +0 -44
  822. package/runtime/third_party/bearssl/src/int/i15_decmod.c +0 -124
  823. package/runtime/third_party/bearssl/src/int/i15_decode.c +0 -56
  824. package/runtime/third_party/bearssl/src/int/i15_decred.c +0 -100
  825. package/runtime/third_party/bearssl/src/int/i15_encode.c +0 -56
  826. package/runtime/third_party/bearssl/src/int/i15_fmont.c +0 -59
  827. package/runtime/third_party/bearssl/src/int/i15_iszero.c +0 -39
  828. package/runtime/third_party/bearssl/src/int/i15_moddiv.c +0 -465
  829. package/runtime/third_party/bearssl/src/int/i15_modpow.c +0 -50
  830. package/runtime/third_party/bearssl/src/int/i15_modpow2.c +0 -160
  831. package/runtime/third_party/bearssl/src/int/i15_montmul.c +0 -184
  832. package/runtime/third_party/bearssl/src/int/i15_mulacc.c +0 -61
  833. package/runtime/third_party/bearssl/src/int/i15_muladd.c +0 -173
  834. package/runtime/third_party/bearssl/src/int/i15_ninv15.c +0 -38
  835. package/runtime/third_party/bearssl/src/int/i15_reduce.c +0 -66
  836. package/runtime/third_party/bearssl/src/int/i15_rshift.c +0 -47
  837. package/runtime/third_party/bearssl/src/int/i15_sub.c +0 -46
  838. package/runtime/third_party/bearssl/src/int/i15_tmont.c +0 -36
  839. package/runtime/third_party/bearssl/src/int/i31_add.c +0 -46
  840. package/runtime/third_party/bearssl/src/int/i31_bitlen.c +0 -44
  841. package/runtime/third_party/bearssl/src/int/i31_decmod.c +0 -124
  842. package/runtime/third_party/bearssl/src/int/i31_decode.c +0 -57
  843. package/runtime/third_party/bearssl/src/int/i31_decred.c +0 -103
  844. package/runtime/third_party/bearssl/src/int/i31_encode.c +0 -79
  845. package/runtime/third_party/bearssl/src/int/i31_fmont.c +0 -60
  846. package/runtime/third_party/bearssl/src/int/i31_iszero.c +0 -39
  847. package/runtime/third_party/bearssl/src/int/i31_moddiv.c +0 -488
  848. package/runtime/third_party/bearssl/src/int/i31_modpow.c +0 -65
  849. package/runtime/third_party/bearssl/src/int/i31_modpow2.c +0 -160
  850. package/runtime/third_party/bearssl/src/int/i31_montmul.c +0 -127
  851. package/runtime/third_party/bearssl/src/int/i31_mulacc.c +0 -74
  852. package/runtime/third_party/bearssl/src/int/i31_muladd.c +0 -157
  853. package/runtime/third_party/bearssl/src/int/i31_ninv31.c +0 -39
  854. package/runtime/third_party/bearssl/src/int/i31_reduce.c +0 -66
  855. package/runtime/third_party/bearssl/src/int/i31_rshift.c +0 -47
  856. package/runtime/third_party/bearssl/src/int/i31_sub.c +0 -46
  857. package/runtime/third_party/bearssl/src/int/i31_tmont.c +0 -36
  858. package/runtime/third_party/bearssl/src/int/i32_add.c +0 -51
  859. package/runtime/third_party/bearssl/src/int/i32_bitlen.c +0 -44
  860. package/runtime/third_party/bearssl/src/int/i32_decmod.c +0 -77
  861. package/runtime/third_party/bearssl/src/int/i32_decode.c +0 -63
  862. package/runtime/third_party/bearssl/src/int/i32_decred.c +0 -107
  863. package/runtime/third_party/bearssl/src/int/i32_div32.c +0 -56
  864. package/runtime/third_party/bearssl/src/int/i32_encode.c +0 -72
  865. package/runtime/third_party/bearssl/src/int/i32_fmont.c +0 -60
  866. package/runtime/third_party/bearssl/src/int/i32_iszero.c +0 -39
  867. package/runtime/third_party/bearssl/src/int/i32_modpow.c +0 -65
  868. package/runtime/third_party/bearssl/src/int/i32_montmul.c +0 -69
  869. package/runtime/third_party/bearssl/src/int/i32_mulacc.c +0 -56
  870. package/runtime/third_party/bearssl/src/int/i32_muladd.c +0 -138
  871. package/runtime/third_party/bearssl/src/int/i32_ninv32.c +0 -39
  872. package/runtime/third_party/bearssl/src/int/i32_reduce.c +0 -66
  873. package/runtime/third_party/bearssl/src/int/i32_sub.c +0 -51
  874. package/runtime/third_party/bearssl/src/int/i32_tmont.c +0 -36
  875. package/runtime/third_party/bearssl/src/int/i62_modpow2.c +0 -493
  876. package/runtime/third_party/bearssl/src/kdf/hkdf.c +0 -107
  877. package/runtime/third_party/bearssl/src/kdf/shake.c +0 -590
  878. package/runtime/third_party/bearssl/src/mac/hmac.c +0 -122
  879. package/runtime/third_party/bearssl/src/mac/hmac_ct.c +0 -193
  880. package/runtime/third_party/bearssl/src/rand/aesctr_drbg.c +0 -206
  881. package/runtime/third_party/bearssl/src/rand/hmac_drbg.c +0 -157
  882. package/runtime/third_party/bearssl/src/rand/sysrng.c +0 -252
  883. package/runtime/third_party/bearssl/src/rsa/rsa_default_keygen.c +0 -38
  884. package/runtime/third_party/bearssl/src/rsa/rsa_default_modulus.c +0 -36
  885. package/runtime/third_party/bearssl/src/rsa/rsa_default_oaep_decrypt.c +0 -38
  886. package/runtime/third_party/bearssl/src/rsa/rsa_default_oaep_encrypt.c +0 -38
  887. package/runtime/third_party/bearssl/src/rsa/rsa_default_pkcs1_sign.c +0 -38
  888. package/runtime/third_party/bearssl/src/rsa/rsa_default_pkcs1_vrfy.c +0 -38
  889. package/runtime/third_party/bearssl/src/rsa/rsa_default_priv.c +0 -38
  890. package/runtime/third_party/bearssl/src/rsa/rsa_default_privexp.c +0 -36
  891. package/runtime/third_party/bearssl/src/rsa/rsa_default_pss_sign.c +0 -38
  892. package/runtime/third_party/bearssl/src/rsa/rsa_default_pss_vrfy.c +0 -38
  893. package/runtime/third_party/bearssl/src/rsa/rsa_default_pub.c +0 -38
  894. package/runtime/third_party/bearssl/src/rsa/rsa_default_pubexp.c +0 -36
  895. package/runtime/third_party/bearssl/src/rsa/rsa_i15_keygen.c +0 -583
  896. package/runtime/third_party/bearssl/src/rsa/rsa_i15_modulus.c +0 -99
  897. package/runtime/third_party/bearssl/src/rsa/rsa_i15_oaep_decrypt.c +0 -41
  898. package/runtime/third_party/bearssl/src/rsa/rsa_i15_oaep_encrypt.c +0 -44
  899. package/runtime/third_party/bearssl/src/rsa/rsa_i15_pkcs1_sign.c +0 -37
  900. package/runtime/third_party/bearssl/src/rsa/rsa_i15_pkcs1_vrfy.c +0 -43
  901. package/runtime/third_party/bearssl/src/rsa/rsa_i15_priv.c +0 -209
  902. package/runtime/third_party/bearssl/src/rsa/rsa_i15_privexp.c +0 -320
  903. package/runtime/third_party/bearssl/src/rsa/rsa_i15_pss_sign.c +0 -40
  904. package/runtime/third_party/bearssl/src/rsa/rsa_i15_pss_vrfy.c +0 -44
  905. package/runtime/third_party/bearssl/src/rsa/rsa_i15_pub.c +0 -113
  906. package/runtime/third_party/bearssl/src/rsa/rsa_i15_pubexp.c +0 -152
  907. package/runtime/third_party/bearssl/src/rsa/rsa_i31_keygen.c +0 -37
  908. package/runtime/third_party/bearssl/src/rsa/rsa_i31_keygen_inner.c +0 -608
  909. package/runtime/third_party/bearssl/src/rsa/rsa_i31_modulus.c +0 -99
  910. package/runtime/third_party/bearssl/src/rsa/rsa_i31_oaep_decrypt.c +0 -41
  911. package/runtime/third_party/bearssl/src/rsa/rsa_i31_oaep_encrypt.c +0 -44
  912. package/runtime/third_party/bearssl/src/rsa/rsa_i31_pkcs1_sign.c +0 -37
  913. package/runtime/third_party/bearssl/src/rsa/rsa_i31_pkcs1_vrfy.c +0 -43
  914. package/runtime/third_party/bearssl/src/rsa/rsa_i31_priv.c +0 -203
  915. package/runtime/third_party/bearssl/src/rsa/rsa_i31_privexp.c +0 -318
  916. package/runtime/third_party/bearssl/src/rsa/rsa_i31_pss_sign.c +0 -40
  917. package/runtime/third_party/bearssl/src/rsa/rsa_i31_pss_vrfy.c +0 -44
  918. package/runtime/third_party/bearssl/src/rsa/rsa_i31_pub.c +0 -106
  919. package/runtime/third_party/bearssl/src/rsa/rsa_i31_pubexp.c +0 -152
  920. package/runtime/third_party/bearssl/src/rsa/rsa_i32_oaep_decrypt.c +0 -41
  921. package/runtime/third_party/bearssl/src/rsa/rsa_i32_oaep_encrypt.c +0 -44
  922. package/runtime/third_party/bearssl/src/rsa/rsa_i32_pkcs1_sign.c +0 -37
  923. package/runtime/third_party/bearssl/src/rsa/rsa_i32_pkcs1_vrfy.c +0 -43
  924. package/runtime/third_party/bearssl/src/rsa/rsa_i32_priv.c +0 -160
  925. package/runtime/third_party/bearssl/src/rsa/rsa_i32_pss_sign.c +0 -40
  926. package/runtime/third_party/bearssl/src/rsa/rsa_i32_pss_vrfy.c +0 -44
  927. package/runtime/third_party/bearssl/src/rsa/rsa_i32_pub.c +0 -77
  928. package/runtime/third_party/bearssl/src/rsa/rsa_i62_keygen.c +0 -57
  929. package/runtime/third_party/bearssl/src/rsa/rsa_i62_oaep_decrypt.c +0 -61
  930. package/runtime/third_party/bearssl/src/rsa/rsa_i62_oaep_encrypt.c +0 -64
  931. package/runtime/third_party/bearssl/src/rsa/rsa_i62_pkcs1_sign.c +0 -57
  932. package/runtime/third_party/bearssl/src/rsa/rsa_i62_pkcs1_vrfy.c +0 -63
  933. package/runtime/third_party/bearssl/src/rsa/rsa_i62_priv.c +0 -223
  934. package/runtime/third_party/bearssl/src/rsa/rsa_i62_pss_sign.c +0 -60
  935. package/runtime/third_party/bearssl/src/rsa/rsa_i62_pss_vrfy.c +0 -64
  936. package/runtime/third_party/bearssl/src/rsa/rsa_i62_pub.c +0 -125
  937. package/runtime/third_party/bearssl/src/rsa/rsa_oaep_pad.c +0 -112
  938. package/runtime/third_party/bearssl/src/rsa/rsa_oaep_unpad.c +0 -145
  939. package/runtime/third_party/bearssl/src/rsa/rsa_pkcs1_sig_pad.c +0 -100
  940. package/runtime/third_party/bearssl/src/rsa/rsa_pkcs1_sig_unpad.c +0 -121
  941. package/runtime/third_party/bearssl/src/rsa/rsa_pss_sig_pad.c +0 -106
  942. package/runtime/third_party/bearssl/src/rsa/rsa_pss_sig_unpad.c +0 -121
  943. package/runtime/third_party/bearssl/src/rsa/rsa_ssl_decrypt.c +0 -52
  944. package/runtime/third_party/bearssl/src/settings.c +0 -306
  945. package/runtime/third_party/bearssl/src/symcipher/aes_big_cbcdec.c +0 -69
  946. package/runtime/third_party/bearssl/src/symcipher/aes_big_cbcenc.c +0 -67
  947. package/runtime/third_party/bearssl/src/symcipher/aes_big_ctr.c +0 -84
  948. package/runtime/third_party/bearssl/src/symcipher/aes_big_ctrcbc.c +0 -142
  949. package/runtime/third_party/bearssl/src/symcipher/aes_big_dec.c +0 -254
  950. package/runtime/third_party/bearssl/src/symcipher/aes_big_enc.c +0 -157
  951. package/runtime/third_party/bearssl/src/symcipher/aes_common.c +0 -112
  952. package/runtime/third_party/bearssl/src/symcipher/aes_ct.c +0 -328
  953. package/runtime/third_party/bearssl/src/symcipher/aes_ct64.c +0 -398
  954. package/runtime/third_party/bearssl/src/symcipher/aes_ct64_cbcdec.c +0 -104
  955. package/runtime/third_party/bearssl/src/symcipher/aes_ct64_cbcenc.c +0 -81
  956. package/runtime/third_party/bearssl/src/symcipher/aes_ct64_ctr.c +0 -114
  957. package/runtime/third_party/bearssl/src/symcipher/aes_ct64_ctrcbc.c +0 -433
  958. package/runtime/third_party/bearssl/src/symcipher/aes_ct64_dec.c +0 -159
  959. package/runtime/third_party/bearssl/src/symcipher/aes_ct64_enc.c +0 -115
  960. package/runtime/third_party/bearssl/src/symcipher/aes_ct_cbcdec.c +0 -111
  961. package/runtime/third_party/bearssl/src/symcipher/aes_ct_cbcenc.c +0 -91
  962. package/runtime/third_party/bearssl/src/symcipher/aes_ct_ctr.c +0 -116
  963. package/runtime/third_party/bearssl/src/symcipher/aes_ct_ctrcbc.c +0 -422
  964. package/runtime/third_party/bearssl/src/symcipher/aes_ct_dec.c +0 -170
  965. package/runtime/third_party/bearssl/src/symcipher/aes_ct_enc.c +0 -112
  966. package/runtime/third_party/bearssl/src/symcipher/aes_pwr8.c +0 -445
  967. package/runtime/third_party/bearssl/src/symcipher/aes_pwr8_cbcdec.c +0 -670
  968. package/runtime/third_party/bearssl/src/symcipher/aes_pwr8_cbcenc.c +0 -417
  969. package/runtime/third_party/bearssl/src/symcipher/aes_pwr8_ctr.c +0 -717
  970. package/runtime/third_party/bearssl/src/symcipher/aes_pwr8_ctrcbc.c +0 -946
  971. package/runtime/third_party/bearssl/src/symcipher/aes_small_cbcdec.c +0 -69
  972. package/runtime/third_party/bearssl/src/symcipher/aes_small_cbcenc.c +0 -67
  973. package/runtime/third_party/bearssl/src/symcipher/aes_small_ctr.c +0 -84
  974. package/runtime/third_party/bearssl/src/symcipher/aes_small_ctrcbc.c +0 -142
  975. package/runtime/third_party/bearssl/src/symcipher/aes_small_dec.c +0 -176
  976. package/runtime/third_party/bearssl/src/symcipher/aes_small_enc.c +0 -129
  977. package/runtime/third_party/bearssl/src/symcipher/aes_x86ni.c +0 -240
  978. package/runtime/third_party/bearssl/src/symcipher/aes_x86ni_cbcdec.c +0 -223
  979. package/runtime/third_party/bearssl/src/symcipher/aes_x86ni_cbcenc.c +0 -122
  980. package/runtime/third_party/bearssl/src/symcipher/aes_x86ni_ctr.c +0 -211
  981. package/runtime/third_party/bearssl/src/symcipher/aes_x86ni_ctrcbc.c +0 -596
  982. package/runtime/third_party/bearssl/src/symcipher/chacha20_ct.c +0 -106
  983. package/runtime/third_party/bearssl/src/symcipher/chacha20_sse2.c +0 -237
  984. package/runtime/third_party/bearssl/src/symcipher/des_ct.c +0 -411
  985. package/runtime/third_party/bearssl/src/symcipher/des_ct_cbcdec.c +0 -87
  986. package/runtime/third_party/bearssl/src/symcipher/des_ct_cbcenc.c +0 -69
  987. package/runtime/third_party/bearssl/src/symcipher/des_support.c +0 -166
  988. package/runtime/third_party/bearssl/src/symcipher/des_tab.c +0 -310
  989. package/runtime/third_party/bearssl/src/symcipher/des_tab_cbcdec.c +0 -85
  990. package/runtime/third_party/bearssl/src/symcipher/des_tab_cbcenc.c +0 -67
  991. package/runtime/third_party/bearssl/src/symcipher/poly1305_ctmul.c +0 -260
  992. package/runtime/third_party/bearssl/src/symcipher/poly1305_ctmul32.c +0 -297
  993. package/runtime/third_party/bearssl/src/symcipher/poly1305_ctmulq.c +0 -475
  994. package/runtime/third_party/bearssl/src/symcipher/poly1305_i15.c +0 -221
  995. package/runtime/third_party/bearssl/src/x509/asn1.t0 +0 -757
  996. package/runtime/third_party/bearssl/src/x509/asn1enc.c +0 -93
  997. package/runtime/third_party/bearssl/src/x509/encode_ec_pk8der.c +0 -110
  998. package/runtime/third_party/bearssl/src/x509/encode_ec_rawder.c +0 -161
  999. package/runtime/third_party/bearssl/src/x509/encode_rsa_pk8der.c +0 -97
  1000. package/runtime/third_party/bearssl/src/x509/encode_rsa_rawder.c +0 -96
  1001. package/runtime/third_party/bearssl/src/x509/skey_decoder.c +0 -653
  1002. package/runtime/third_party/bearssl/src/x509/skey_decoder.t0 +0 -376
  1003. package/runtime/third_party/bearssl/src/x509/x509_decoder.c +0 -776
  1004. package/runtime/third_party/bearssl/src/x509/x509_decoder.t0 +0 -324
  1005. package/runtime/third_party/bearssl/src/x509/x509_knownkey.c +0 -105
  1006. package/runtime/third_party/bearssl/src/x509/x509_minimal.c +0 -1722
  1007. package/runtime/third_party/bearssl/src/x509/x509_minimal.t0 +0 -1526
  1008. package/runtime/third_party/bearssl/src/x509/x509_minimal_full.c +0 -59
@@ -0,0 +1,893 @@
1
+ // Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved.
2
+ //
3
+ // Licensed under the Apache License, Version 2.0 (the "License");
4
+ // you may not use this file except in compliance with the License.
5
+ // You may obtain a copy of the License at
6
+ //
7
+ // https://www.apache.org/licenses/LICENSE-2.0
8
+ //
9
+ // Unless required by applicable law or agreed to in writing, software
10
+ // distributed under the License is distributed on an "AS IS" BASIS,
11
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ // See the License for the specific language governing permissions and
13
+ // limitations under the License.
14
+
15
+ #ifndef OPENSSL_HEADER_RSA_H
16
+ #define OPENSSL_HEADER_RSA_H
17
+
18
+ #include <openssl/base.h> // IWYU pragma: export
19
+
20
+ #include <openssl/engine.h>
21
+ #include <openssl/ex_data.h>
22
+
23
+ #if defined(__cplusplus)
24
+ extern "C" {
25
+ #endif
26
+
27
+
28
+ // rsa.h contains functions for handling encryption and signature using RSA.
29
+
30
+
31
+ // Allocation and destruction.
32
+ //
33
+ // An `RSA` object represents a public or private RSA key. A given object may be
34
+ // used concurrently on multiple threads by non-mutating functions, provided no
35
+ // other thread is concurrently calling a mutating function. Unless otherwise
36
+ // documented, functions which take a `const` pointer are non-mutating and
37
+ // functions which take a non-`const` pointer are mutating.
38
+
39
+ // RSA_new_public_key returns a new `RSA` object containing a public key with
40
+ // the specified parameters, or NULL on error or invalid input.
41
+ OPENSSL_EXPORT RSA *RSA_new_public_key(const BIGNUM *n, const BIGNUM *e);
42
+
43
+ // RSA_new_private_key returns a new `RSA` object containing a private key with
44
+ // the specified parameters, or NULL on error or invalid input. All parameters
45
+ // are mandatory and may not be NULL.
46
+ //
47
+ // This function creates standard RSA private keys with CRT parameters.
48
+ OPENSSL_EXPORT RSA *RSA_new_private_key(const BIGNUM *n, const BIGNUM *e,
49
+ const BIGNUM *d, const BIGNUM *p,
50
+ const BIGNUM *q, const BIGNUM *dmp1,
51
+ const BIGNUM *dmq1, const BIGNUM *iqmp);
52
+
53
+ // RSA_new returns a new, empty `RSA` object or NULL on error. Prefer using
54
+ // `RSA_new_public_key` or `RSA_new_private_key` to import an RSA key.
55
+ OPENSSL_EXPORT RSA *RSA_new(void);
56
+
57
+ // RSA_new_method acts the same as `RSA_new` but takes an explicit `ENGINE`.
58
+ OPENSSL_EXPORT RSA *RSA_new_method(const ENGINE *engine);
59
+
60
+ // RSA_free decrements the reference count of `rsa` and frees it if the
61
+ // reference count drops to zero.
62
+ OPENSSL_EXPORT void RSA_free(RSA *rsa);
63
+
64
+ // RSA_up_ref increments the reference count of `rsa` and returns one. It does
65
+ // not mutate `rsa` for thread-safety purposes and may be used concurrently.
66
+ OPENSSL_EXPORT int RSA_up_ref(RSA *rsa);
67
+
68
+
69
+ // Properties.
70
+
71
+ // OPENSSL_RSA_MAX_MODULUS_BITS is the maximum supported RSA modulus, in bits.
72
+ //
73
+ // WARNING: RSA-16384 is extremely slow and may be a DoS risk. This value is set
74
+ // based on the largest RSA keys any caller of BoringSSL may need to use, and
75
+ // may be too high for a general-purpose application. Applications should impose
76
+ // their own limits before importing an RSA key. RSA-16384 is of particular DoS
77
+ // risk for RSA private key operations, which scale cubicly.
78
+ //
79
+ // In the future, BoringSSL may limit overly large RSA key sizes to application
80
+ // opt-in, or impose a tighter limit on private key operations.
81
+ #define OPENSSL_RSA_MAX_MODULUS_BITS 16384
82
+
83
+ // RSA_bits returns the size of `rsa`, in bits.
84
+ OPENSSL_EXPORT unsigned RSA_bits(const RSA *rsa);
85
+
86
+ // RSA_get0_n returns `rsa`'s public modulus.
87
+ OPENSSL_EXPORT const BIGNUM *RSA_get0_n(const RSA *rsa);
88
+
89
+ // RSA_get0_e returns `rsa`'s public exponent.
90
+ OPENSSL_EXPORT const BIGNUM *RSA_get0_e(const RSA *rsa);
91
+
92
+ // RSA_get0_d returns `rsa`'s private exponent. If `rsa` is a public key, this
93
+ // value will be NULL.
94
+ OPENSSL_EXPORT const BIGNUM *RSA_get0_d(const RSA *rsa);
95
+
96
+ // RSA_get0_p returns `rsa`'s first private prime factor. If `rsa` is a public
97
+ // key or lacks its prime factors, this value will be NULL.
98
+ OPENSSL_EXPORT const BIGNUM *RSA_get0_p(const RSA *rsa);
99
+
100
+ // RSA_get0_q returns `rsa`'s second private prime factor. If `rsa` is a public
101
+ // key or lacks its prime factors, this value will be NULL.
102
+ OPENSSL_EXPORT const BIGNUM *RSA_get0_q(const RSA *rsa);
103
+
104
+ // RSA_get0_dmp1 returns d (mod p-1) for `rsa`. If `rsa` is a public key or
105
+ // lacks CRT parameters, this value will be NULL.
106
+ OPENSSL_EXPORT const BIGNUM *RSA_get0_dmp1(const RSA *rsa);
107
+
108
+ // RSA_get0_dmq1 returns d (mod q-1) for `rsa`. If `rsa` is a public key or
109
+ // lacks CRT parameters, this value will be NULL.
110
+ OPENSSL_EXPORT const BIGNUM *RSA_get0_dmq1(const RSA *rsa);
111
+
112
+ // RSA_get0_iqmp returns q^-1 (mod p). If `rsa` is a public key or lacks CRT
113
+ // parameters, this value will be NULL.
114
+ OPENSSL_EXPORT const BIGNUM *RSA_get0_iqmp(const RSA *rsa);
115
+
116
+ // RSA_get0_key sets `*out_n`, `*out_e`, and `*out_d`, if non-NULL, to `rsa`'s
117
+ // modulus, public exponent, and private exponent, respectively. If `rsa` is a
118
+ // public key, the private exponent will be set to NULL.
119
+ OPENSSL_EXPORT void RSA_get0_key(const RSA *rsa, const BIGNUM **out_n,
120
+ const BIGNUM **out_e, const BIGNUM **out_d);
121
+
122
+ // RSA_get0_factors sets `*out_p` and `*out_q`, if non-NULL, to `rsa`'s prime
123
+ // factors. If `rsa` is a public key, they will be set to NULL.
124
+ OPENSSL_EXPORT void RSA_get0_factors(const RSA *rsa, const BIGNUM **out_p,
125
+ const BIGNUM **out_q);
126
+
127
+ // RSA_get0_crt_params sets `*out_dmp1`, `*out_dmq1`, and `*out_iqmp`, if
128
+ // non-NULL, to `rsa`'s CRT parameters. These are d (mod p-1), d (mod q-1) and
129
+ // q^-1 (mod p), respectively. If `rsa` is a public key, each parameter will be
130
+ // set to NULL.
131
+ OPENSSL_EXPORT void RSA_get0_crt_params(const RSA *rsa, const BIGNUM **out_dmp1,
132
+ const BIGNUM **out_dmq1,
133
+ const BIGNUM **out_iqmp);
134
+
135
+
136
+ // Setting individual properties.
137
+ //
138
+ // These functions allow setting individual properties of an `RSA` object. This
139
+ // is typically used with `RSA_new` to construct an RSA key field by field.
140
+ // Prefer instead to use `RSA_new_public_key` and `RSA_new_private_key`. These
141
+ // functions defer some initialization to the first use of an `RSA` object. This
142
+ // means invalid inputs may be caught late.
143
+ //
144
+ // TODO(crbug.com/boringssl/316): This deferred initialization also causes
145
+ // performance problems in multi-threaded applications. The preferred APIs
146
+ // currently have the same issues, but they will initialize eagerly in the
147
+ // future.
148
+
149
+ // RSA_set0_key sets `rsa`'s modulus, public exponent, and private exponent to
150
+ // `n`, `e`, and `d` respectively, if non-NULL. On success, it takes ownership
151
+ // of each argument and returns one. Otherwise, it returns zero.
152
+ //
153
+ // `d` may be NULL, but `n` and `e` must either be non-NULL or already
154
+ // configured on `rsa`.
155
+ //
156
+ // It is an error to call this function after `rsa` has been used for a
157
+ // cryptographic operation. Construct a new `RSA` object instead.
158
+ OPENSSL_EXPORT int RSA_set0_key(RSA *rsa, BIGNUM *n, BIGNUM *e, BIGNUM *d);
159
+
160
+ // RSA_set0_factors sets `rsa`'s prime factors to `p` and `q`, if non-NULL, and
161
+ // takes ownership of them. On success, it takes ownership of each argument and
162
+ // returns one. Otherwise, it returns zero.
163
+ //
164
+ // Each argument must either be non-NULL or already configured on `rsa`.
165
+ //
166
+ // It is an error to call this function after `rsa` has been used for a
167
+ // cryptographic operation. Construct a new `RSA` object instead.
168
+ OPENSSL_EXPORT int RSA_set0_factors(RSA *rsa, BIGNUM *p, BIGNUM *q);
169
+
170
+ // RSA_set0_crt_params sets `rsa`'s CRT parameters to `dmp1`, `dmq1`, and
171
+ // `iqmp`, if non-NULL, and takes ownership of them. On success, it takes
172
+ // ownership of its parameters and returns one. Otherwise, it returns zero.
173
+ //
174
+ // Each argument must either be non-NULL or already configured on `rsa`.
175
+ //
176
+ // It is an error to call this function after `rsa` has been used for a
177
+ // cryptographic operation. Construct a new `RSA` object instead.
178
+ OPENSSL_EXPORT int RSA_set0_crt_params(RSA *rsa, BIGNUM *dmp1, BIGNUM *dmq1,
179
+ BIGNUM *iqmp);
180
+
181
+
182
+ // Key generation.
183
+
184
+ // RSA_generate_key_ex generates a new RSA key where the modulus has size
185
+ // `bits` and the public exponent is `e`. If unsure, `RSA_F4` is a good value
186
+ // for `e`. If `cb` is not NULL then it is called during the key generation
187
+ // process. In addition to the calls documented for `BN_generate_prime_ex`, it
188
+ // is called with event=2 when the n'th prime is rejected as unsuitable and
189
+ // with event=3 when a suitable value for `p` is found.
190
+ //
191
+ // It returns one on success or zero on error.
192
+ OPENSSL_EXPORT int RSA_generate_key_ex(RSA *rsa, int bits, const BIGNUM *e,
193
+ BN_GENCB *cb);
194
+
195
+ // RSA_generate_key_fips behaves like `RSA_generate_key_ex` but performs
196
+ // additional checks for FIPS compliance. The public exponent is always 65537
197
+ // and `bits` must be either 2048 or 3072.
198
+ OPENSSL_EXPORT int RSA_generate_key_fips(RSA *rsa, int bits, BN_GENCB *cb);
199
+
200
+
201
+ // Encryption / Decryption
202
+ //
203
+ // These functions are considered non-mutating for thread-safety purposes and
204
+ // may be used concurrently.
205
+
206
+ // RSA_PKCS1_PADDING denotes PKCS#1 v1.5 padding. When used with encryption,
207
+ // this is RSAES-PKCS1-v1_5. When used with signing, this is RSASSA-PKCS1-v1_5.
208
+ //
209
+ // WARNING: The RSAES-PKCS1-v1_5 encryption scheme is vulnerable to a
210
+ // chosen-ciphertext attack. Decrypting attacker-supplied ciphertext with
211
+ // RSAES-PKCS1-v1_5 may give the attacker control over your private key. This
212
+ // does not impact the RSASSA-PKCS1-v1_5 signature scheme. See "Chosen
213
+ // Ciphertext Attacks Against Protocols Based on the RSA Encryption Standard
214
+ // PKCS #1", Daniel Bleichenbacher, Advances in Cryptology (Crypto '98).
215
+ #define RSA_PKCS1_PADDING 1
216
+
217
+ // RSA_NO_PADDING denotes a raw RSA operation.
218
+ #define RSA_NO_PADDING 3
219
+
220
+ // RSA_PKCS1_OAEP_PADDING denotes the RSAES-OAEP encryption scheme.
221
+ #define RSA_PKCS1_OAEP_PADDING 4
222
+
223
+ // RSA_PKCS1_PSS_PADDING denotes the RSASSA-PSS signature scheme. This value may
224
+ // not be passed into `RSA_sign_raw`, only `EVP_PKEY_CTX_set_rsa_padding`. See
225
+ // also `RSA_sign_pss_mgf1` and `RSA_verify_pss_mgf1`.
226
+ #define RSA_PKCS1_PSS_PADDING 6
227
+
228
+ // RSA_encrypt encrypts `in_len` bytes from `in` to the public key from `rsa`
229
+ // and writes, at most, `max_out` bytes of encrypted data to `out`. The
230
+ // `max_out` argument must be, at least, `RSA_size` in order to ensure success.
231
+ //
232
+ // It returns 1 on success or zero on error.
233
+ //
234
+ // The `padding` argument must be one of the `RSA_*_PADDING` values. If in
235
+ // doubt, use `RSA_PKCS1_OAEP_PADDING` for new protocols. When `padding` is
236
+ // `RSA_PKCS1_OAEP_PADDING`, this function has no way to set the OAEP or MGF-1
237
+ // digest, so it is always SHA-1. For other OAEP parameters, wrap `rsa` in an
238
+ // `EVP_PKEY` and use `EVP_PKEY_encrypt` with `EVP_PKEY_CTX_set_rsa_padding` and
239
+ // related functions.
240
+ OPENSSL_EXPORT int RSA_encrypt(RSA *rsa, size_t *out_len, uint8_t *out,
241
+ size_t max_out, const uint8_t *in, size_t in_len,
242
+ int padding);
243
+
244
+ // RSA_decrypt decrypts `in_len` bytes from `in` with the private key from
245
+ // `rsa` and writes, at most, `max_out` bytes of plaintext to `out`. The
246
+ // `max_out` argument must be, at least, `RSA_size` in order to ensure success.
247
+ //
248
+ // It returns 1 on success or zero on error.
249
+ //
250
+ // The `padding` argument must be one of the `RSA_*_PADDING` values. If in
251
+ // doubt, use `RSA_PKCS1_OAEP_PADDING` for new protocols. When `padding` is
252
+ // `RSA_PKCS1_OAEP_PADDING`, this function has no way to set the OAEP or MGF-1
253
+ // digest, so it is always SHA-1. For other OAEP parameters, wrap `rsa` in an
254
+ // `EVP_PKEY` and use `EVP_PKEY_decrypt` with `EVP_PKEY_CTX_set_rsa_padding` and
255
+ // related functions.
256
+ //
257
+ // WARNING: Passing `RSA_PKCS1_PADDING` into this function is deprecated and
258
+ // insecure. RSAES-PKCS1-v1_5 is vulnerable to a chosen-ciphertext attack.
259
+ // Decrypting attacker-supplied ciphertext with RSAES-PKCS1-v1_5 may give the
260
+ // attacker control over your private key. See "Chosen Ciphertext Attacks
261
+ // Against Protocols Based on the RSA Encryption Standard PKCS #1", Daniel
262
+ // Bleichenbacher, Advances in Cryptology (Crypto '98).
263
+ //
264
+ // In some limited cases, such as TLS RSA key exchange, it is possible to
265
+ // mitigate this flaw with custom, protocol-specific padding logic. This
266
+ // should be implemented with `RSA_NO_PADDING`, not `RSA_PKCS1_PADDING`.
267
+ OPENSSL_EXPORT int RSA_decrypt(RSA *rsa, size_t *out_len, uint8_t *out,
268
+ size_t max_out, const uint8_t *in, size_t in_len,
269
+ int padding);
270
+
271
+ // RSA_public_encrypt encrypts `flen` bytes from `from` to the public key in
272
+ // `rsa` and writes the encrypted data to `to`. The `to` buffer must have at
273
+ // least `RSA_size` bytes of space. It returns the number of bytes written, or
274
+ // -1 on error. The `padding` argument must be one of the `RSA_*_PADDING`
275
+ // values. If in doubt, use `RSA_PKCS1_OAEP_PADDING` for new protocols.
276
+ //
277
+ // When `padding` is `RSA_PKCS1_OAEP_PADDING`, this function has no way to set
278
+ // the OAEP or MGF-1 digest, so it is always SHA-1. For other OAEP parameters,
279
+ // wrap `rsa` in an `EVP_PKEY` and use `EVP_PKEY_encrypt` with
280
+ // `EVP_PKEY_CTX_set_rsa_padding` and related functions.
281
+ //
282
+ // WARNING: this function is dangerous because it breaks the usual return value
283
+ // convention. Use `RSA_encrypt` instead.
284
+ OPENSSL_EXPORT int RSA_public_encrypt(size_t flen, const uint8_t *from,
285
+ uint8_t *to, RSA *rsa, int padding);
286
+
287
+ // RSA_private_decrypt decrypts `flen` bytes from `from` with the public key in
288
+ // `rsa` and writes the plaintext to `to`. The `to` buffer must have at least
289
+ // `RSA_size` bytes of space. It returns the number of bytes written, or -1 on
290
+ // error. The `padding` argument must be one of the `RSA_*_PADDING` values. If
291
+ // in doubt, use `RSA_PKCS1_OAEP_PADDING` for new protocols. Passing
292
+ // `RSA_PKCS1_PADDING` into this function is deprecated and insecure. See
293
+ // `RSA_decrypt`.
294
+ //
295
+ // When `padding` is `RSA_PKCS1_OAEP_PADDING`, this function has no way to set
296
+ // the OAEP or MGF-1 digest, so it is always SHA-1. For other OAEP parameters,
297
+ // wrap `rsa` in an `EVP_PKEY` and use `EVP_PKEY_decrypt` with
298
+ // `EVP_PKEY_CTX_set_rsa_padding` and related functions.
299
+ //
300
+ // WARNING: this function is dangerous because it breaks the usual return value
301
+ // convention. Use `RSA_decrypt` instead.
302
+ OPENSSL_EXPORT int RSA_private_decrypt(size_t flen, const uint8_t *from,
303
+ uint8_t *to, RSA *rsa, int padding);
304
+
305
+
306
+ // Signing / Verification
307
+ //
308
+ // These functions are considered non-mutating for thread-safety purposes and
309
+ // may be used concurrently.
310
+
311
+ // RSA_sign signs `digest_len` bytes of digest from `digest` with `rsa` using
312
+ // RSASSA-PKCS1-v1_5. It writes, at most, `RSA_size(rsa)` bytes to `out`. On
313
+ // successful return, the actual number of bytes written is written to
314
+ // `*out_len`.
315
+ //
316
+ // The `hash_nid` argument identifies the hash function used to calculate
317
+ // `digest` and is embedded in the resulting signature. For example, it might be
318
+ // `NID_sha256`.
319
+ //
320
+ // It returns 1 on success and zero on error.
321
+ //
322
+ // WARNING: `digest` must be the result of hashing the data to be signed with
323
+ // `hash_nid`. Passing unhashed inputs will not result in a secure signature
324
+ // scheme.
325
+ OPENSSL_EXPORT int RSA_sign(int hash_nid, const uint8_t *digest,
326
+ size_t digest_len, uint8_t *out, unsigned *out_len,
327
+ RSA *rsa);
328
+
329
+ // RSA_PSS_SALTLEN_DIGEST indicates a PSS salt length that matches the digest
330
+ // length. This is recommended.
331
+ #define RSA_PSS_SALTLEN_DIGEST (-1)
332
+ // RSA_PSS_SALTLEN_AUTO indicates a maximum possible PSS salt length when
333
+ // signing, and automatically detecting the salt length when verifying. This is
334
+ // not recommended. Neither the signing nor verifying behaviors are compliant
335
+ // with FIPS 186-5.
336
+ #define RSA_PSS_SALTLEN_AUTO (-2)
337
+
338
+ // RSA_sign_pss_mgf1 signs `digest_len` bytes from `digest` with the public key
339
+ // from `rsa` using RSASSA-PSS with MGF1 as the mask generation function. It
340
+ // writes, at most, `max_out` bytes of signature data to `out`. The `max_out`
341
+ // argument must be, at least, `RSA_size` in order to ensure success. It returns
342
+ // 1 on success or zero on error.
343
+ //
344
+ // The `md` and `mgf1_md` arguments identify the hash used to calculate `digest`
345
+ // and the MGF1 hash, respectively. If `mgf1_md` is NULL, `md` is
346
+ // used.
347
+ //
348
+ // `salt_len` specifies the expected salt length in bytes. If `salt_len` is
349
+ // `RSA_PSS_SALTLEN_DIGEST`, then the salt length is the same as the hash
350
+ // length. If `RSA_PSS_SALTLEN_AUTO`, then the salt length is maximal given the
351
+ // size of `rsa`. If unsure, use `RSA_PSS_SALTLEN_DIGEST`.
352
+ //
353
+ // WARNING: `digest` must be the result of hashing the data to be signed with
354
+ // `md`. Passing unhashed inputs will not result in a secure signature scheme.
355
+ OPENSSL_EXPORT int RSA_sign_pss_mgf1(RSA *rsa, size_t *out_len, uint8_t *out,
356
+ size_t max_out, const uint8_t *digest,
357
+ size_t digest_len, const EVP_MD *md,
358
+ const EVP_MD *mgf1_md, int salt_len);
359
+
360
+ // RSA_sign_raw performs the private key portion of computing a signature with
361
+ // `rsa`. It writes, at most, `max_out` bytes of signature data to `out`. The
362
+ // `max_out` argument must be, at least, `RSA_size` in order to ensure the
363
+ // output fits. It returns 1 on success or zero on error.
364
+ //
365
+ // If `padding` is `RSA_PKCS1_PADDING`, this function wraps `in` with the
366
+ // padding portion of RSASSA-PKCS1-v1_5 and then performs the raw private key
367
+ // operation. The caller is responsible for hashing the input and wrapping it in
368
+ // a DigestInfo structure.
369
+ //
370
+ // If `padding` is `RSA_NO_PADDING`, this function only performs the raw private
371
+ // key operation, interpreting `in` as an integer modulo n. The caller is
372
+ // responsible for hashing the input and encoding it for the signature scheme
373
+ // being implemented.
374
+ //
375
+ // WARNING: This function is a building block for a signature scheme, not a
376
+ // complete one. `in` must be the result of hashing and encoding the data as
377
+ // needed for the scheme being implemented. Passing in arbitrary inputs will not
378
+ // result in a secure signature scheme.
379
+ OPENSSL_EXPORT int RSA_sign_raw(RSA *rsa, size_t *out_len, uint8_t *out,
380
+ size_t max_out, const uint8_t *in,
381
+ size_t in_len, int padding);
382
+
383
+ // RSA_verify verifies that `sig_len` bytes from `sig` are a valid,
384
+ // RSASSA-PKCS1-v1_5 signature of `digest_len` bytes at `digest` by `rsa`.
385
+ //
386
+ // The `hash_nid` argument identifies the hash function used to calculate
387
+ // `digest` and is embedded in the resulting signature in order to prevent hash
388
+ // confusion attacks. For example, it might be `NID_sha256`.
389
+ //
390
+ // It returns one if the signature is valid and zero otherwise.
391
+ //
392
+ // WARNING: this differs from the original, OpenSSL function which additionally
393
+ // returned -1 on error.
394
+ //
395
+ // WARNING: `digest` must be the result of hashing the data to be verified with
396
+ // `hash_nid`. Passing unhashed input will not result in a secure signature
397
+ // scheme.
398
+ OPENSSL_EXPORT int RSA_verify(int hash_nid, const uint8_t *digest,
399
+ size_t digest_len, const uint8_t *sig,
400
+ size_t sig_len, RSA *rsa);
401
+
402
+ // RSA_verify_pss_mgf1 verifies that `sig_len` bytes from `sig` are a valid,
403
+ // RSASSA-PSS signature of `digest_len` bytes at `digest` by `rsa`. It returns
404
+ // one if the signature is valid and zero otherwise. MGF1 is used as the mask
405
+ // generation function.
406
+ //
407
+ // The `md` and `mgf1_md` arguments identify the hash used to calculate `digest`
408
+ // and the MGF1 hash, respectively. If `mgf1_md` is NULL, `md` is
409
+ // used. `salt_len` specifies the expected salt length in bytes.
410
+ //
411
+ // If `salt_len` is `RSA_PSS_SALTLEN_DIGEST`, then the salt length is the same
412
+ // as the hash length. If `RSA_PSS_SALTLEN_AUTO`, then the salt length is
413
+ // recovered and all values accepted. If unsure, use `RSA_PSS_SALTLEN_DIGEST`.
414
+ //
415
+ // WARNING: `digest` must be the result of hashing the data to be verified with
416
+ // `md`. Passing unhashed input will not result in a secure signature scheme.
417
+ OPENSSL_EXPORT int RSA_verify_pss_mgf1(RSA *rsa, const uint8_t *digest,
418
+ size_t digest_len, const EVP_MD *md,
419
+ const EVP_MD *mgf1_md, int salt_len,
420
+ const uint8_t *sig, size_t sig_len);
421
+
422
+ // RSA_verify_raw performs the public key portion of verifying `in_len` bytes of
423
+ // signature from `in` using the public key from `rsa`. On success, it returns
424
+ // one and writes, at most, `max_out` bytes of output to `out`. The `max_out`
425
+ // argument must be, at least, `RSA_size` in order to ensure the output fits. On
426
+ // failure or invalid input, it returns zero.
427
+ //
428
+ // If `padding` is `RSA_PKCS1_PADDING`, this function checks the padding portion
429
+ // of RSASSA-PKCS1-v1_5 and outputs the remainder of the encoded digest. The
430
+ // caller is responsible for checking the output is a DigestInfo-wrapped digest
431
+ // of the message.
432
+ //
433
+ // If `padding` is `RSA_NO_PADDING`, this function only performs the raw public
434
+ // key operation. The caller is responsible for checking the output is a valid
435
+ // result for the signature scheme being implemented.
436
+ //
437
+ // WARNING: This function is a building block for a signature scheme, not a
438
+ // complete one. Checking for arbitrary strings in `out` will not result in a
439
+ // secure signature scheme.
440
+ OPENSSL_EXPORT int RSA_verify_raw(RSA *rsa, size_t *out_len, uint8_t *out,
441
+ size_t max_out, const uint8_t *in,
442
+ size_t in_len, int padding);
443
+
444
+ // RSA_private_encrypt performs the private key portion of computing a signature
445
+ // with `rsa`. It takes `flen` bytes from `from` as input and writes the result
446
+ // to `to`. The `to` buffer must have at least `RSA_size` bytes of space. It
447
+ // returns the number of bytes written, or -1 on error.
448
+ //
449
+ // For the interpretation of `padding` and the input, see `RSA_sign_raw`.
450
+ //
451
+ // WARNING: This function is a building block for a signature scheme, not a
452
+ // complete one. See `RSA_sign_raw` for details.
453
+ //
454
+ // WARNING: This function is dangerous because it breaks the usual return value
455
+ // convention. Use `RSA_sign_raw` instead.
456
+ OPENSSL_EXPORT int RSA_private_encrypt(size_t flen, const uint8_t *from,
457
+ uint8_t *to, RSA *rsa, int padding);
458
+
459
+ // RSA_public_decrypt performs the public key portion of verifying `flen` bytes
460
+ // of signature from `from` using the public key from `rsa`. It writes the
461
+ // result to `to`, which must have at least `RSA_size` bytes of space. It
462
+ // returns the number of bytes written, or -1 on error.
463
+ //
464
+ // For the interpretation of `padding` and the result, see `RSA_verify_raw`.
465
+ //
466
+ // WARNING: This function is a building block for a signature scheme, not a
467
+ // complete one. See `RSA_verify_raw` for details.
468
+ //
469
+ // WARNING: This function is dangerous because it breaks the usual return value
470
+ // convention. Use `RSA_verify_raw` instead.
471
+ OPENSSL_EXPORT int RSA_public_decrypt(size_t flen, const uint8_t *from,
472
+ uint8_t *to, RSA *rsa, int padding);
473
+
474
+
475
+ // Utility functions.
476
+
477
+ // RSA_size returns the number of bytes in the modulus, which is also the size
478
+ // of a signature or encrypted value using `rsa`.
479
+ OPENSSL_EXPORT unsigned RSA_size(const RSA *rsa);
480
+
481
+ // RSA_is_opaque returns one if `rsa` is opaque and doesn't expose its key
482
+ // material. Otherwise it returns zero.
483
+ OPENSSL_EXPORT int RSA_is_opaque(const RSA *rsa);
484
+
485
+ // RSAPublicKey_dup allocates a fresh `RSA` and copies the public key from
486
+ // `rsa` into it. It returns the fresh `RSA` object, or NULL on error.
487
+ OPENSSL_EXPORT RSA *RSAPublicKey_dup(const RSA *rsa);
488
+
489
+ // RSAPrivateKey_dup allocates a fresh `RSA` and copies the private key from
490
+ // `rsa` into it. It returns the fresh `RSA` object, or NULL on error.
491
+ OPENSSL_EXPORT RSA *RSAPrivateKey_dup(const RSA *rsa);
492
+
493
+ // RSA_check_key performs basic validity tests on `rsa`. It returns one if
494
+ // they pass and zero otherwise. Opaque keys and public keys always pass. If it
495
+ // returns zero then a more detailed error is available on the error queue.
496
+ OPENSSL_EXPORT int RSA_check_key(const RSA *rsa);
497
+
498
+ // RSA_check_fips performs public key validity tests on `key`. It returns one if
499
+ // they pass and zero otherwise. Opaque keys always fail. This function does not
500
+ // mutate `rsa` for thread-safety purposes and may be used concurrently.
501
+ OPENSSL_EXPORT int RSA_check_fips(RSA *key);
502
+
503
+ // RSA_verify_PKCS1_PSS_mgf1 verifies that `EM` is a correct PSS padding of
504
+ // `mHash`, where `mHash` is a digest produced by `Hash`. `EM` must point to
505
+ // exactly `RSA_size(rsa)` bytes of data. The `mgf1Hash` argument specifies the
506
+ // hash function for generating the mask. If NULL, `Hash` is used. The `sLen`
507
+ // argument specifies the expected salt length in bytes. If `sLen` is -1 then
508
+ // the salt length is the same as the hash length. If -2, then the salt length
509
+ // is recovered and all values accepted.
510
+ //
511
+ // If unsure, use -1.
512
+ //
513
+ // It returns one on success or zero on error.
514
+ //
515
+ // This function implements only the low-level padding logic. Use
516
+ // `RSA_verify_pss_mgf1` instead.
517
+ OPENSSL_EXPORT int RSA_verify_PKCS1_PSS_mgf1(const RSA *rsa,
518
+ const uint8_t *mHash,
519
+ const EVP_MD *Hash,
520
+ const EVP_MD *mgf1Hash,
521
+ const uint8_t *EM, int sLen);
522
+
523
+ // RSA_padding_add_PKCS1_PSS_mgf1 writes a PSS padding of `mHash` to `EM`,
524
+ // where `mHash` is a digest produced by `Hash`. `RSA_size(rsa)` bytes of
525
+ // output will be written to `EM`. The `mgf1Hash` argument specifies the hash
526
+ // function for generating the mask. If NULL, `Hash` is used. The `sLen`
527
+ // argument specifies the expected salt length in bytes. If `sLen` is -1 then
528
+ // the salt length is the same as the hash length. If -2, then the salt length
529
+ // is maximal given the space in `EM`.
530
+ //
531
+ // It returns one on success or zero on error.
532
+ //
533
+ // This function implements only the low-level padding logic. Use
534
+ // `RSA_sign_pss_mgf1` instead.
535
+ OPENSSL_EXPORT int RSA_padding_add_PKCS1_PSS_mgf1(const RSA *rsa, uint8_t *EM,
536
+ const uint8_t *mHash,
537
+ const EVP_MD *Hash,
538
+ const EVP_MD *mgf1Hash,
539
+ int sLen);
540
+
541
+ // RSA_padding_add_PKCS1_OAEP_mgf1 writes an OAEP padding of `from` to `to`
542
+ // with the given parameters and hash functions. If `md` is NULL then SHA-1 is
543
+ // used. If `mgf1md` is NULL then the value of `md` is used (which means SHA-1
544
+ // if that, in turn, is NULL).
545
+ //
546
+ // It returns one on success or zero on error.
547
+ OPENSSL_EXPORT int RSA_padding_add_PKCS1_OAEP_mgf1(
548
+ uint8_t *to, size_t to_len, const uint8_t *from, size_t from_len,
549
+ const uint8_t *param, size_t param_len, const EVP_MD *md,
550
+ const EVP_MD *mgf1md);
551
+
552
+ // RSA_add_pkcs1_prefix builds a version of `digest` prefixed with the
553
+ // DigestInfo header for the given hash function and sets `out_msg` to point to
554
+ // it. On successful return, if `*is_alloced` is one, the caller must release
555
+ // `*out_msg` with `OPENSSL_free`.
556
+ OPENSSL_EXPORT int RSA_add_pkcs1_prefix(uint8_t **out_msg, size_t *out_msg_len,
557
+ int *is_alloced, int hash_nid,
558
+ const uint8_t *digest,
559
+ size_t digest_len);
560
+
561
+
562
+ // ASN.1 functions.
563
+
564
+ // RSA_parse_public_key parses a DER-encoded RSAPublicKey structure (RFC 8017)
565
+ // from `cbs` and advances `cbs`. It returns a newly-allocated `RSA` or NULL on
566
+ // error.
567
+ OPENSSL_EXPORT RSA *RSA_parse_public_key(CBS *cbs);
568
+
569
+ // RSA_public_key_from_bytes parses `in` as a DER-encoded RSAPublicKey structure
570
+ // (RFC 8017). It returns a newly-allocated `RSA` or NULL on error.
571
+ OPENSSL_EXPORT RSA *RSA_public_key_from_bytes(const uint8_t *in, size_t in_len);
572
+
573
+ // RSA_marshal_public_key marshals `rsa` as a DER-encoded RSAPublicKey structure
574
+ // (RFC 8017) and appends the result to `cbb`. It returns one on success and
575
+ // zero on failure.
576
+ OPENSSL_EXPORT int RSA_marshal_public_key(CBB *cbb, const RSA *rsa);
577
+
578
+ // RSA_public_key_to_bytes marshals `rsa` as a DER-encoded RSAPublicKey
579
+ // structure (RFC 8017) and, on success, sets `*out_bytes` to a newly allocated
580
+ // buffer containing the result and returns one. Otherwise, it returns zero. The
581
+ // result should be freed with `OPENSSL_free`.
582
+ OPENSSL_EXPORT int RSA_public_key_to_bytes(uint8_t **out_bytes, size_t *out_len,
583
+ const RSA *rsa);
584
+
585
+ // RSA_parse_private_key parses a DER-encoded RSAPrivateKey structure (RFC 8017)
586
+ // from `cbs` and advances `cbs`. It returns a newly-allocated `RSA` or NULL on
587
+ // error.
588
+ OPENSSL_EXPORT RSA *RSA_parse_private_key(CBS *cbs);
589
+
590
+ // RSA_private_key_from_bytes parses `in` as a DER-encoded RSAPrivateKey
591
+ // structure (RFC 8017). It returns a newly-allocated `RSA` or NULL on error.
592
+ OPENSSL_EXPORT RSA *RSA_private_key_from_bytes(const uint8_t *in,
593
+ size_t in_len);
594
+
595
+ // RSA_marshal_private_key marshals `rsa` as a DER-encoded RSAPrivateKey
596
+ // structure (RFC 8017) and appends the result to `cbb`. It returns one on
597
+ // success and zero on failure.
598
+ OPENSSL_EXPORT int RSA_marshal_private_key(CBB *cbb, const RSA *rsa);
599
+
600
+ // RSA_private_key_to_bytes marshals `rsa` as a DER-encoded RSAPrivateKey
601
+ // structure (RFC 8017) and, on success, sets `*out_bytes` to a newly allocated
602
+ // buffer containing the result and returns one. Otherwise, it returns zero. The
603
+ // result should be freed with `OPENSSL_free`.
604
+ OPENSSL_EXPORT int RSA_private_key_to_bytes(uint8_t **out_bytes,
605
+ size_t *out_len, const RSA *rsa);
606
+
607
+
608
+ // Obscure RSA variants.
609
+ //
610
+ // These functions allow creating RSA keys with obscure combinations of
611
+ // parameters.
612
+
613
+ // RSA_new_private_key_no_crt behaves like `RSA_new_private_key` but constructs
614
+ // an RSA key without CRT coefficients.
615
+ //
616
+ // Keys created by this function will be less performant and cannot be
617
+ // serialized.
618
+ OPENSSL_EXPORT RSA *RSA_new_private_key_no_crt(const BIGNUM *n, const BIGNUM *e,
619
+ const BIGNUM *d);
620
+
621
+ // RSA_new_private_key_no_e behaves like `RSA_new_private_key` but constructs an
622
+ // RSA key without CRT parameters or public exponent.
623
+ //
624
+ // Keys created by this function will be less performant, cannot be serialized,
625
+ // and lack hardening measures that protect against side channels and fault
626
+ // attacks.
627
+ OPENSSL_EXPORT RSA *RSA_new_private_key_no_e(const BIGNUM *n, const BIGNUM *d);
628
+
629
+ // RSA_new_public_key_large_e behaves like `RSA_new_public_key` but allows any
630
+ // `e` up to `n`.
631
+ //
632
+ // BoringSSL typically bounds public exponents as a denial-of-service
633
+ // mitigation. Keys created by this function may perform worse than those
634
+ // created by `RSA_new_public_key`.
635
+ OPENSSL_EXPORT RSA *RSA_new_public_key_large_e(const BIGNUM *n,
636
+ const BIGNUM *e);
637
+
638
+ // RSA_new_private_key_large_e behaves like `RSA_new_private_key` but allows any
639
+ // `e` up to `n`.
640
+ //
641
+ // BoringSSL typically bounds public exponents as a denial-of-service
642
+ // mitigation. Keys created by this function may perform worse than those
643
+ // created by `RSA_new_private_key`.
644
+ OPENSSL_EXPORT RSA *RSA_new_private_key_large_e(
645
+ const BIGNUM *n, const BIGNUM *e, const BIGNUM *d, const BIGNUM *p,
646
+ const BIGNUM *q, const BIGNUM *dmp1, const BIGNUM *dmq1,
647
+ const BIGNUM *iqmp);
648
+
649
+
650
+ // ex_data functions.
651
+ //
652
+ // See `ex_data.h` for details.
653
+
654
+ OPENSSL_EXPORT int RSA_get_ex_new_index(long argl, void *argp,
655
+ CRYPTO_EX_unused *unused,
656
+ CRYPTO_EX_dup *dup_unused,
657
+ CRYPTO_EX_free *free_func);
658
+ OPENSSL_EXPORT int RSA_set_ex_data(RSA *rsa, int idx, void *arg);
659
+ OPENSSL_EXPORT void *RSA_get_ex_data(const RSA *rsa, int idx);
660
+
661
+
662
+ // Flags.
663
+
664
+ // RSA_FLAG_OPAQUE specifies that this RSA_METHOD does not expose its key
665
+ // material. This may be set if, for instance, it is wrapping some other crypto
666
+ // API, like a platform key store.
667
+ #define RSA_FLAG_OPAQUE 1
668
+
669
+ // RSA_FLAG_NO_BLINDING does nothing.
670
+ #define RSA_FLAG_NO_BLINDING 8
671
+
672
+ // RSA_FLAG_EXT_PKEY is deprecated and ignored.
673
+ #define RSA_FLAG_EXT_PKEY 0x20
674
+
675
+ // RSA_FLAG_NO_PUBLIC_EXPONENT indicates that private keys without a public
676
+ // exponent are allowed. This is an internal constant. Use
677
+ // `RSA_new_private_key_no_e` to construct such keys.
678
+ #define RSA_FLAG_NO_PUBLIC_EXPONENT 0x40
679
+
680
+ // RSA_FLAG_LARGE_PUBLIC_EXPONENT indicates that keys with a large public
681
+ // exponent are allowed. This is an internal constant. Use
682
+ // `RSA_new_public_key_large_e` and `RSA_new_private_key_large_e` to construct
683
+ // such keys.
684
+ #define RSA_FLAG_LARGE_PUBLIC_EXPONENT 0x80
685
+
686
+
687
+ // RSA public exponent values.
688
+
689
+ #define RSA_3 0x3
690
+ #define RSA_F4 0x10001
691
+
692
+
693
+ // Deprecated functions.
694
+
695
+ #define RSA_METHOD_FLAG_NO_CHECK RSA_FLAG_OPAQUE
696
+
697
+ // RSA_flags returns the flags for `rsa`. These are a bitwise OR of `RSA_FLAG_*`
698
+ // constants.
699
+ OPENSSL_EXPORT int RSA_flags(const RSA *rsa);
700
+
701
+ // RSA_test_flags returns the subset of flags in `flags` which are set in `rsa`.
702
+ OPENSSL_EXPORT int RSA_test_flags(const RSA *rsa, int flags);
703
+
704
+ // RSA_blinding_on returns one.
705
+ OPENSSL_EXPORT int RSA_blinding_on(RSA *rsa, BN_CTX *ctx);
706
+
707
+ // RSA_blinding_off does nothing.
708
+ OPENSSL_EXPORT void RSA_blinding_off(RSA *rsa);
709
+
710
+ // RSA_generate_key behaves like `RSA_generate_key_ex`, which is what you
711
+ // should use instead. It returns NULL on error, or a newly-allocated `RSA` on
712
+ // success. This function is provided for compatibility only. The `callback`
713
+ // and `cb_arg` parameters must be NULL.
714
+ OPENSSL_EXPORT RSA *RSA_generate_key(int bits, uint64_t e, void *callback,
715
+ void *cb_arg);
716
+
717
+ // d2i_RSAPublicKey parses a DER-encoded RSAPublicKey structure (RFC 8017) from
718
+ // `len` bytes at `*inp`, as described in `d2i_SAMPLE`.
719
+ //
720
+ // Use `RSA_parse_public_key` instead.
721
+ OPENSSL_EXPORT RSA *d2i_RSAPublicKey(RSA **out, const uint8_t **inp, long len);
722
+
723
+ // i2d_RSAPublicKey marshals `in` to a DER-encoded RSAPublicKey structure (RFC
724
+ // 8017), as described in `i2d_SAMPLE`.
725
+ //
726
+ // Use `RSA_marshal_public_key` instead.
727
+ OPENSSL_EXPORT int i2d_RSAPublicKey(const RSA *in, uint8_t **outp);
728
+
729
+ // d2i_RSAPrivateKey parses a DER-encoded RSAPrivateKey structure (RFC 8017)
730
+ // from `len` bytes at `*inp`, as described in `d2i_SAMPLE`.
731
+ //
732
+ // Use `RSA_parse_private_key` instead.
733
+ OPENSSL_EXPORT RSA *d2i_RSAPrivateKey(RSA **out, const uint8_t **inp, long len);
734
+
735
+ // i2d_RSAPrivateKey marshals `in` to a DER-encoded RSAPrivateKey structure (RFC
736
+ // 8017), as described in `i2d_SAMPLE`.
737
+ //
738
+ // Use `RSA_marshal_private_key` instead.
739
+ OPENSSL_EXPORT int i2d_RSAPrivateKey(const RSA *in, uint8_t **outp);
740
+
741
+ // RSA_padding_add_PKCS1_PSS acts like `RSA_padding_add_PKCS1_PSS_mgf1` but the
742
+ // `mgf1Hash` parameter of the latter is implicitly set to `Hash`.
743
+ //
744
+ // This function implements only the low-level padding logic. Use
745
+ // `RSA_sign_pss_mgf1` instead.
746
+ OPENSSL_EXPORT int RSA_padding_add_PKCS1_PSS(const RSA *rsa, uint8_t *EM,
747
+ const uint8_t *mHash,
748
+ const EVP_MD *Hash, int sLen);
749
+
750
+ // RSA_verify_PKCS1_PSS acts like `RSA_verify_PKCS1_PSS_mgf1` but the
751
+ // `mgf1Hash` parameter of the latter is implicitly set to `Hash`.
752
+ //
753
+ // This function implements only the low-level padding logic. Use
754
+ // `RSA_verify_pss_mgf1` instead.
755
+ OPENSSL_EXPORT int RSA_verify_PKCS1_PSS(const RSA *rsa, const uint8_t *mHash,
756
+ const EVP_MD *Hash, const uint8_t *EM,
757
+ int sLen);
758
+
759
+ // RSA_padding_add_PKCS1_OAEP acts like `RSA_padding_add_PKCS1_OAEP_mgf1` but
760
+ // the `md` and `mgf1md` parameters of the latter are implicitly set to NULL,
761
+ // which means SHA-1.
762
+ OPENSSL_EXPORT int RSA_padding_add_PKCS1_OAEP(uint8_t *to, size_t to_len,
763
+ const uint8_t *from,
764
+ size_t from_len,
765
+ const uint8_t *param,
766
+ size_t param_len);
767
+
768
+ // RSA_print prints a textual representation of `rsa` to `bio`. It returns one
769
+ // on success or zero otherwise.
770
+ OPENSSL_EXPORT int RSA_print(BIO *bio, const RSA *rsa, int indent);
771
+
772
+ // RSA_get0_pss_params returns NULL. In OpenSSL, this function retries RSA-PSS
773
+ // parameters associated with `RSA` objects, but BoringSSL does not enable the
774
+ // id-RSASSA-PSS key encoding by default.
775
+ //
776
+ // WARNING: BoringSSL does support id-RSASSA-PSS parameters when callers opt in
777
+ // (see `EVP_pkey_rsa_pss_sha256` and others). We currently assume such callers
778
+ // do not need this function. Callers that opt into id-RSASSA-PSS support and
779
+ // require this functionality should contact the BoringSSL team.
780
+ OPENSSL_EXPORT const RSA_PSS_PARAMS *RSA_get0_pss_params(const RSA *rsa);
781
+
782
+ // RSA_new_method_no_e returns a newly-allocated `RSA` object backed by
783
+ // `engine`, with a public modulus of `n` and no known public exponent.
784
+ //
785
+ // Do not use this function. It exists only to support Conscrypt, whose use
786
+ // should be replaced with a more sound mechanism. See
787
+ // https://crbug.com/boringssl/602.
788
+ OPENSSL_EXPORT RSA *RSA_new_method_no_e(const ENGINE *engine, const BIGNUM *n);
789
+
790
+
791
+ struct rsa_meth_st {
792
+ struct openssl_method_common_st common;
793
+
794
+ void *app_data;
795
+
796
+ int (*init)(RSA *rsa);
797
+ int (*finish)(RSA *rsa);
798
+
799
+ int (*sign)(int type, const uint8_t *m, unsigned int m_length,
800
+ uint8_t *sigret, unsigned int *siglen, const RSA *rsa);
801
+
802
+ // These functions mirror the `RSA_*` functions of the same name.
803
+ int (*sign_raw)(RSA *rsa, size_t *out_len, uint8_t *out, size_t max_out,
804
+ const uint8_t *in, size_t in_len, int padding);
805
+ int (*decrypt)(RSA *rsa, size_t *out_len, uint8_t *out, size_t max_out,
806
+ const uint8_t *in, size_t in_len, int padding);
807
+
808
+ // private_transform takes a big-endian integer from `in`, calculates the
809
+ // d'th power of it, modulo the RSA modulus and writes the result as a
810
+ // big-endian integer to `out`. Both `in` and `out` are `len` bytes long and
811
+ // `len` is always equal to `RSA_size(rsa)`. If the result of the transform
812
+ // can be represented in fewer than `len` bytes, then `out` must be zero
813
+ // padded on the left.
814
+ //
815
+ // It returns one on success and zero otherwise.
816
+ //
817
+ // RSA decrypt and sign operations will call this, thus an ENGINE might wish
818
+ // to override it in order to avoid having to implement the padding
819
+ // functionality demanded by those, higher level, operations.
820
+ int (*private_transform)(RSA *rsa, uint8_t *out, const uint8_t *in,
821
+ size_t len);
822
+
823
+ int flags;
824
+ };
825
+
826
+
827
+ #if defined(__cplusplus)
828
+ } // extern C
829
+
830
+ extern "C++" {
831
+
832
+ BSSL_NAMESPACE_BEGIN
833
+
834
+ BORINGSSL_MAKE_DELETER(RSA, RSA_free)
835
+ BORINGSSL_MAKE_UP_REF(RSA, RSA_up_ref)
836
+
837
+ BSSL_NAMESPACE_END
838
+
839
+ } // extern C++
840
+
841
+ #endif
842
+
843
+ #define RSA_R_BAD_ENCODING 100
844
+ #define RSA_R_BAD_E_VALUE 101
845
+ #define RSA_R_BAD_FIXED_HEADER_DECRYPT 102
846
+ #define RSA_R_BAD_PAD_BYTE_COUNT 103
847
+ #define RSA_R_BAD_RSA_PARAMETERS 104
848
+ #define RSA_R_BAD_SIGNATURE 105
849
+ #define RSA_R_BAD_VERSION 106
850
+ #define RSA_R_BLOCK_TYPE_IS_NOT_01 107
851
+ #define RSA_R_BN_NOT_INITIALIZED 108
852
+ #define RSA_R_CANNOT_RECOVER_MULTI_PRIME_KEY 109
853
+ #define RSA_R_CRT_PARAMS_ALREADY_GIVEN 110
854
+ #define RSA_R_CRT_VALUES_INCORRECT 111
855
+ #define RSA_R_DATA_LEN_NOT_EQUAL_TO_MOD_LEN 112
856
+ #define RSA_R_DATA_TOO_LARGE 113
857
+ #define RSA_R_DATA_TOO_LARGE_FOR_KEY_SIZE 114
858
+ #define RSA_R_DATA_TOO_LARGE_FOR_MODULUS 115
859
+ #define RSA_R_DATA_TOO_SMALL 116
860
+ #define RSA_R_DATA_TOO_SMALL_FOR_KEY_SIZE 117
861
+ #define RSA_R_DIGEST_TOO_BIG_FOR_RSA_KEY 118
862
+ #define RSA_R_D_E_NOT_CONGRUENT_TO_1 119
863
+ #define RSA_R_EMPTY_PUBLIC_KEY 120
864
+ #define RSA_R_ENCODE_ERROR 121
865
+ #define RSA_R_FIRST_OCTET_INVALID 122
866
+ #define RSA_R_INCONSISTENT_SET_OF_CRT_VALUES 123
867
+ #define RSA_R_INTERNAL_ERROR 124
868
+ #define RSA_R_INVALID_MESSAGE_LENGTH 125
869
+ #define RSA_R_KEY_SIZE_TOO_SMALL 126
870
+ #define RSA_R_LAST_OCTET_INVALID 127
871
+ #define RSA_R_MODULUS_TOO_LARGE 128
872
+ #define RSA_R_MUST_HAVE_AT_LEAST_TWO_PRIMES 129
873
+ #define RSA_R_NO_PUBLIC_EXPONENT 130
874
+ #define RSA_R_NULL_BEFORE_BLOCK_MISSING 131
875
+ #define RSA_R_N_NOT_EQUAL_P_Q 132
876
+ #define RSA_R_OAEP_DECODING_ERROR 133
877
+ #define RSA_R_ONLY_ONE_OF_P_Q_GIVEN 134
878
+ #define RSA_R_OUTPUT_BUFFER_TOO_SMALL 135
879
+ #define RSA_R_PADDING_CHECK_FAILED 136
880
+ #define RSA_R_PKCS_DECODING_ERROR 137
881
+ #define RSA_R_SLEN_CHECK_FAILED 138
882
+ #define RSA_R_SLEN_RECOVERY_FAILED 139
883
+ #define RSA_R_TOO_LONG 140
884
+ #define RSA_R_TOO_MANY_ITERATIONS 141
885
+ #define RSA_R_UNKNOWN_ALGORITHM_TYPE 142
886
+ #define RSA_R_UNKNOWN_PADDING_TYPE 143
887
+ #define RSA_R_VALUE_MISSING 144
888
+ #define RSA_R_WRONG_SIGNATURE_LENGTH 145
889
+ #define RSA_R_PUBLIC_KEY_VALIDATION_FAILED 146
890
+ #define RSA_R_D_OUT_OF_RANGE 147
891
+ #define RSA_R_BLOCK_TYPE_IS_NOT_02 148
892
+
893
+ #endif // OPENSSL_HEADER_RSA_H