libmongocrypt-helper 1.7.4.0.1001 → 1.8.0.0.1001

Sign up to get free protection for your applications and to get access to all the features.
Files changed (398) hide show
  1. checksums.yaml +4 -4
  2. checksums.yaml.gz.sig +0 -0
  3. data/ext/libmongocrypt/extconf.rb +2 -2
  4. data/ext/libmongocrypt/libmongocrypt/CHANGELOG.md +9 -7
  5. data/ext/libmongocrypt/libmongocrypt/CMakeLists.txt +17 -23
  6. data/ext/libmongocrypt/libmongocrypt/Earthfile +374 -0
  7. data/ext/libmongocrypt/libmongocrypt/README.md +7 -7
  8. data/ext/libmongocrypt/libmongocrypt/VERSION_CURRENT +1 -1
  9. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt/CryptClient.cs +25 -6
  10. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt/Library.cs +25 -3
  11. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt.Example/MongoDB.Libmongocrypt.Example.csproj +1 -1
  12. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt.Test/BasicTests.cs +1 -1
  13. data/ext/libmongocrypt/libmongocrypt/bindings/cs/Scripts/build.cake +3 -2
  14. data/ext/libmongocrypt/libmongocrypt/bindings/cs/cs.sln +79 -0
  15. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/build.gradle.kts +2 -2
  16. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/test/java/com/mongodb/crypt/capi/MongoCryptTest.java +6 -4
  17. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/test/resources/fle2-find-range-explicit-v2/int32/encrypted-payload.json +26 -0
  18. data/ext/libmongocrypt/libmongocrypt/bindings/node/CHANGELOG.md +24 -0
  19. data/ext/libmongocrypt/libmongocrypt/bindings/node/README.md +134 -5
  20. data/ext/libmongocrypt/libmongocrypt/bindings/node/etc/build-static.sh +3 -6
  21. data/ext/libmongocrypt/libmongocrypt/bindings/node/index.d.ts +203 -77
  22. data/ext/libmongocrypt/libmongocrypt/bindings/node/lib/autoEncrypter.js +1 -1
  23. data/ext/libmongocrypt/libmongocrypt/bindings/node/lib/clientEncryption.js +165 -43
  24. data/ext/libmongocrypt/libmongocrypt/bindings/node/lib/common.js +12 -14
  25. data/ext/libmongocrypt/libmongocrypt/bindings/node/lib/errors.js +75 -0
  26. data/ext/libmongocrypt/libmongocrypt/bindings/node/lib/index.js +34 -3
  27. data/ext/libmongocrypt/libmongocrypt/bindings/node/lib/providers/aws.js +26 -0
  28. data/ext/libmongocrypt/libmongocrypt/bindings/node/lib/providers/azure.js +178 -0
  29. data/ext/libmongocrypt/libmongocrypt/bindings/node/lib/providers/gcp.js +24 -0
  30. data/ext/libmongocrypt/libmongocrypt/bindings/node/lib/providers/index.js +54 -0
  31. data/ext/libmongocrypt/libmongocrypt/bindings/node/lib/providers/utils.js +39 -0
  32. data/ext/libmongocrypt/libmongocrypt/bindings/node/lib/stateMachine.js +9 -4
  33. data/ext/libmongocrypt/libmongocrypt/bindings/node/package-lock.json +4440 -5189
  34. data/ext/libmongocrypt/libmongocrypt/bindings/node/package.json +27 -8
  35. data/ext/libmongocrypt/libmongocrypt/bindings/node/src/mongocrypt.cc +65 -38
  36. data/ext/libmongocrypt/libmongocrypt/bindings/node/test/autoEncrypter.test.js +4 -7
  37. data/ext/libmongocrypt/libmongocrypt/bindings/node/test/clientEncryption.test.js +434 -42
  38. data/ext/libmongocrypt/libmongocrypt/bindings/node/test/common.test.js +94 -0
  39. data/ext/libmongocrypt/libmongocrypt/bindings/node/test/cryptoCallbacks.test.js +1 -45
  40. data/ext/libmongocrypt/libmongocrypt/bindings/node/test/index.test.js +45 -0
  41. data/ext/libmongocrypt/libmongocrypt/bindings/node/test/mongocryptdManager.test.js +1 -1
  42. data/ext/libmongocrypt/libmongocrypt/bindings/node/test/providers/credentialsProvider.test.js +551 -0
  43. data/ext/libmongocrypt/libmongocrypt/bindings/node/test/release.test.js +10 -3
  44. data/ext/libmongocrypt/libmongocrypt/bindings/node/test/requirements.helper.js +23 -1
  45. data/ext/libmongocrypt/libmongocrypt/bindings/node/test/stateMachine.test.js +1 -1
  46. data/ext/libmongocrypt/libmongocrypt/bindings/node/test/tools/chai-addons.js +8 -0
  47. data/ext/libmongocrypt/libmongocrypt/bindings/node/test/types/index.test-d.ts +63 -0
  48. data/ext/libmongocrypt/libmongocrypt/bindings/python/CHANGELOG.rst +26 -0
  49. data/ext/libmongocrypt/libmongocrypt/bindings/python/README.rst +2 -2
  50. data/ext/libmongocrypt/libmongocrypt/bindings/python/build-manylinux-wheel.sh +1 -1
  51. data/ext/libmongocrypt/libmongocrypt/bindings/python/pymongocrypt/binding.py +128 -238
  52. data/ext/libmongocrypt/libmongocrypt/bindings/python/pymongocrypt/compat.py +0 -27
  53. data/ext/libmongocrypt/libmongocrypt/bindings/python/pymongocrypt/explicit_encrypter.py +1 -1
  54. data/ext/libmongocrypt/libmongocrypt/bindings/python/pymongocrypt/mongocrypt.py +5 -21
  55. data/ext/libmongocrypt/libmongocrypt/bindings/python/pymongocrypt/version.py +2 -2
  56. data/ext/libmongocrypt/libmongocrypt/bindings/python/release.sh +5 -5
  57. data/ext/libmongocrypt/libmongocrypt/bindings/python/setup.py +14 -9
  58. data/ext/libmongocrypt/libmongocrypt/bindings/python/test/__init__.py +1 -10
  59. data/ext/libmongocrypt/libmongocrypt/bindings/python/test/data/fle2-find-range-explicit-v2/int32/encrypted-payload.json +26 -0
  60. data/ext/libmongocrypt/libmongocrypt/bindings/python/test/test_mongocrypt.py +5 -5
  61. data/ext/libmongocrypt/libmongocrypt/bindings/python/test-requirements.txt +4 -12
  62. data/ext/libmongocrypt/libmongocrypt/cmake/ImportBSON.cmake +8 -6
  63. data/ext/libmongocrypt/libmongocrypt/cmake/IntelDFP.cmake +2 -1
  64. data/ext/libmongocrypt/libmongocrypt/cmake/Platform.cmake +50 -0
  65. data/ext/libmongocrypt/libmongocrypt/cmake/mongocrypt-config.cmake +21 -0
  66. data/ext/libmongocrypt/libmongocrypt/debian/gbp.conf +2 -2
  67. data/ext/libmongocrypt/libmongocrypt/etc/c6-vault.repo +39 -0
  68. data/ext/libmongocrypt/libmongocrypt/etc/fle2_aead_generate_tests.py +15 -24
  69. data/ext/libmongocrypt/libmongocrypt/etc/fle2_crypto.py +66 -54
  70. data/ext/libmongocrypt/libmongocrypt/etc/fle2_generate_tests.py +14 -23
  71. data/ext/libmongocrypt/libmongocrypt/etc/fle2v2_aead_generate_tests.py +32 -0
  72. data/ext/libmongocrypt/libmongocrypt/etc/format-all.sh +12 -0
  73. data/ext/libmongocrypt/libmongocrypt/etc/format.sh +16 -0
  74. data/ext/libmongocrypt/libmongocrypt/etc/install-package.sh +48 -0
  75. data/ext/libmongocrypt/libmongocrypt/etc/mongo-inteldfp-libmongocrypt-pr-625.patch +13 -0
  76. data/ext/libmongocrypt/libmongocrypt/src/crypto/cng.c +381 -436
  77. data/ext/libmongocrypt/libmongocrypt/src/crypto/commoncrypto.c +162 -227
  78. data/ext/libmongocrypt/libmongocrypt/src/crypto/libcrypto.c +180 -248
  79. data/ext/libmongocrypt/libmongocrypt/src/crypto/none.c +33 -55
  80. data/ext/libmongocrypt/libmongocrypt/src/csfle-markup.cpp +175 -205
  81. data/ext/libmongocrypt/libmongocrypt/src/mc-array-private.h +10 -21
  82. data/ext/libmongocrypt/libmongocrypt/src/mc-array.c +44 -56
  83. data/ext/libmongocrypt/libmongocrypt/src/mc-check-conversions-private.h +4 -8
  84. data/ext/libmongocrypt/libmongocrypt/src/mc-dec128.h +351 -463
  85. data/ext/libmongocrypt/libmongocrypt/src/mc-dec128.test.cpp +59 -66
  86. data/ext/libmongocrypt/libmongocrypt/src/mc-efc-private.h +7 -11
  87. data/ext/libmongocrypt/libmongocrypt/src/mc-efc.c +80 -92
  88. data/ext/libmongocrypt/libmongocrypt/src/mc-fle-blob-subtype-private.h +18 -10
  89. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-encryption-placeholder-private.h +59 -70
  90. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-encryption-placeholder.c +384 -439
  91. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-find-equality-payload-private-v2.h +41 -0
  92. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-find-equality-payload-private.h +11 -18
  93. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-find-equality-payload-v2.c +135 -0
  94. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-find-equality-payload.c +109 -126
  95. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-find-range-payload-private-v2.h +88 -0
  96. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-find-range-payload-private.h +24 -27
  97. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-find-range-payload-v2.c +137 -0
  98. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-find-range-payload.c +106 -125
  99. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-insert-update-payload-private-v2.h +117 -0
  100. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-insert-update-payload-private.h +28 -36
  101. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-insert-update-payload-v2.c +294 -0
  102. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-insert-update-payload.c +237 -278
  103. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-payload-iev-private-v2.h +133 -0
  104. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-payload-iev-private.h +67 -56
  105. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-payload-iev-v2.c +437 -0
  106. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-payload-iev.c +476 -325
  107. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-payload-uev-common-private.h +69 -0
  108. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-payload-uev-common.c +182 -0
  109. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-payload-uev-private.h +23 -31
  110. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-payload-uev-v2-private.h +85 -0
  111. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-payload-uev-v2.c +142 -0
  112. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-payload-uev.c +104 -231
  113. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-range-operator-private.h +8 -7
  114. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-rfds-private.h +55 -56
  115. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-rfds.c +517 -580
  116. data/ext/libmongocrypt/libmongocrypt/src/mc-optional-private.h +36 -66
  117. data/ext/libmongocrypt/libmongocrypt/src/mc-range-edge-generation-private.h +57 -76
  118. data/ext/libmongocrypt/libmongocrypt/src/mc-range-edge-generation.c +158 -189
  119. data/ext/libmongocrypt/libmongocrypt/src/mc-range-encoding-private.h +36 -42
  120. data/ext/libmongocrypt/libmongocrypt/src/mc-range-encoding.c +515 -558
  121. data/ext/libmongocrypt/libmongocrypt/src/mc-range-mincover-generator.template.h +155 -191
  122. data/ext/libmongocrypt/libmongocrypt/src/mc-range-mincover-private.h +43 -53
  123. data/ext/libmongocrypt/libmongocrypt/src/mc-range-mincover.c +170 -240
  124. data/ext/libmongocrypt/libmongocrypt/src/mc-rangeopts-private.h +29 -34
  125. data/ext/libmongocrypt/libmongocrypt/src/mc-rangeopts.c +289 -338
  126. data/ext/libmongocrypt/libmongocrypt/src/mc-reader-private.h +36 -71
  127. data/ext/libmongocrypt/libmongocrypt/src/mc-reader.c +111 -164
  128. data/ext/libmongocrypt/libmongocrypt/src/mc-tokens-private.h +55 -49
  129. data/ext/libmongocrypt/libmongocrypt/src/mc-tokens.c +109 -125
  130. data/ext/libmongocrypt/libmongocrypt/src/mc-writer-private.h +66 -0
  131. data/ext/libmongocrypt/libmongocrypt/src/mc-writer.c +141 -0
  132. data/ext/libmongocrypt/libmongocrypt/src/mlib/check.hpp +37 -55
  133. data/ext/libmongocrypt/libmongocrypt/src/mlib/endian.h +11 -11
  134. data/ext/libmongocrypt/libmongocrypt/src/mlib/error.h +27 -32
  135. data/ext/libmongocrypt/libmongocrypt/src/mlib/int128.h +444 -499
  136. data/ext/libmongocrypt/libmongocrypt/src/mlib/int128.test.cpp +251 -334
  137. data/ext/libmongocrypt/libmongocrypt/src/mlib/macros.h +4 -5
  138. data/ext/libmongocrypt/libmongocrypt/src/mlib/path.h +196 -231
  139. data/ext/libmongocrypt/libmongocrypt/src/mlib/path.test.c +56 -79
  140. data/ext/libmongocrypt/libmongocrypt/src/mlib/str.h +411 -530
  141. data/ext/libmongocrypt/libmongocrypt/src/mlib/str.test.c +116 -131
  142. data/ext/libmongocrypt/libmongocrypt/src/mlib/thread.h +17 -26
  143. data/ext/libmongocrypt/libmongocrypt/src/mlib/user-check.h +2 -2
  144. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-binary-private.h +3 -6
  145. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-binary.c +31 -48
  146. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-buffer-private.h +55 -131
  147. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-buffer.c +444 -565
  148. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-cache-collinfo-private.h +1 -2
  149. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-cache-collinfo.c +28 -45
  150. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-cache-key-private.h +11 -17
  151. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-cache-key.c +103 -132
  152. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-cache-oauth-private.h +8 -14
  153. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-cache-oauth.c +78 -90
  154. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-cache-private.h +26 -45
  155. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-cache.c +220 -273
  156. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-ciphertext-private.h +13 -25
  157. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-ciphertext.c +147 -166
  158. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-compat.h +2 -2
  159. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-crypto-private.h +110 -204
  160. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-crypto.c +1137 -1565
  161. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-ctx-datakey.c +425 -472
  162. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-ctx-decrypt.c +817 -694
  163. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-ctx-encrypt.c +2394 -2697
  164. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-ctx-private.h +166 -186
  165. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-ctx-rewrap-many-datakey.c +308 -351
  166. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-ctx.c +921 -1138
  167. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-dll-private.h +16 -24
  168. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-endian-private.h +44 -58
  169. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-endpoint-private.h +21 -25
  170. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-endpoint.c +167 -181
  171. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-kek-private.h +37 -43
  172. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-kek.c +215 -253
  173. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-key-broker-private.h +73 -108
  174. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-key-broker.c +889 -1034
  175. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-key-private.h +27 -44
  176. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-key.c +349 -402
  177. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-kms-ctx-private.h +92 -120
  178. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-kms-ctx.c +1397 -1612
  179. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-log-private.h +35 -67
  180. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-log.c +49 -83
  181. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-marking-private.h +30 -36
  182. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-marking.c +1821 -1470
  183. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-mutex-private.h +7 -12
  184. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-opts-private.h +80 -108
  185. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-opts.c +354 -424
  186. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-private.h +101 -117
  187. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-status-private.h +3 -8
  188. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-status.c +92 -119
  189. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-traverse-util-private.h +19 -29
  190. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-traverse-util.c +136 -176
  191. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-util-private.h +11 -21
  192. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-util.c +96 -135
  193. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt.c +1092 -1320
  194. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt.h +130 -295
  195. data/ext/libmongocrypt/libmongocrypt/src/os_posix/os_dll.c +66 -78
  196. data/ext/libmongocrypt/libmongocrypt/src/os_posix/os_mutex.c +20 -28
  197. data/ext/libmongocrypt/libmongocrypt/src/os_win/os_dll.c +60 -73
  198. data/ext/libmongocrypt/libmongocrypt/src/os_win/os_mutex.c +8 -16
  199. data/ext/libmongocrypt/libmongocrypt/test/crypt_shared-stub.cpp +57 -87
  200. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-delete/empty/encrypted-payload-v2.json +60 -0
  201. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-delete/success/encrypted-payload-v2.json +67 -0
  202. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-explain/with-csfle/encrypted-payload.json +2 -2
  203. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-explicit/find-indexed-contentionFactor1-v2.json +8 -0
  204. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-explicit/find-indexed-v2.json +8 -0
  205. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-explicit/insert-indexed-contentionFactor1-v2.json +8 -0
  206. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-explicit/insert-indexed-same-user-and-index-key-v2.json +8 -0
  207. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-explicit/insert-indexed-v2.json +8 -0
  208. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-equality-v2/cmd.json +6 -0
  209. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-equality-v2/encrypted-field-map.json +22 -0
  210. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-equality-v2/encrypted-payload.json +40 -0
  211. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-equality-v2/mongocryptd-reply.json +19 -0
  212. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/date-v2/cmd.json +10 -0
  213. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/date-v2/encrypted-field-map.json +27 -0
  214. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/date-v2/encrypted-payload.json +41 -0
  215. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/date-v2/mongocryptd-reply.json +49 -0
  216. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/decimal128-precision-v2/cmd.json +6 -0
  217. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/decimal128-precision-v2/encrypted-field-map.json +30 -0
  218. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/decimal128-precision-v2/encrypted-payload.json +50 -0
  219. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/decimal128-precision-v2/mongocryptd-reply.json +58 -0
  220. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/decimal128-v2/cmd.json +6 -0
  221. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/decimal128-v2/encrypted-field-map.json +27 -0
  222. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/decimal128-v2/encrypted-payload.json +41 -0
  223. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/decimal128-v2/mongocryptd-reply.json +49 -0
  224. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/double-precision-v2/cmd.json +8 -0
  225. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/double-precision-v2/encrypted-field-map.json +30 -0
  226. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/double-precision-v2/encrypted-payload.json +44 -0
  227. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/double-precision-v2/mongocryptd-reply.json +52 -0
  228. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/double-v2/cmd.json +8 -0
  229. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/double-v2/encrypted-field-map.json +27 -0
  230. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/double-v2/encrypted-payload.json +41 -0
  231. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/double-v2/mongocryptd-reply.json +49 -0
  232. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/int32-v2/cmd.json +8 -0
  233. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/int32-v2/encrypted-field-map.json +27 -0
  234. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/int32-v2/encrypted-payload.json +41 -0
  235. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/int32-v2/mongocryptd-reply.json +49 -0
  236. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/int64-v2/cmd.json +8 -0
  237. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/int64-v2/encrypted-field-map.json +27 -0
  238. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/int64-v2/encrypted-payload.json +41 -0
  239. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/int64-v2/mongocryptd-reply.json +49 -0
  240. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range-explicit/double/encrypted-payload-v2.json +26 -0
  241. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range-explicit/double-precision/encrypted-payload-v2.json +26 -0
  242. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range-explicit/int32/encrypted-payload-v2.json +26 -0
  243. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range-explicit/int32-nominmax/encrypted-payload-v2.json +26 -0
  244. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range-explicit/int32-openinterval/encrypted-payload-v2.json +16 -0
  245. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert/cmd.json +1 -1
  246. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/date/RNG_DATA.h +65 -65
  247. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/date-v2/cmd.json +13 -0
  248. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/date-v2/encrypted-field-map.json +27 -0
  249. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/date-v2/encrypted-payload.json +44 -0
  250. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/date-v2/mongocryptd-reply.json +52 -0
  251. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/decimal128/RNG_DATA.h +132 -132
  252. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/decimal128-precision/RNG_DATA.h +71 -71
  253. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/decimal128-precision-v2/cmd.json +9 -0
  254. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/decimal128-precision-v2/encrypted-field-map.json +30 -0
  255. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/decimal128-precision-v2/encrypted-payload.json +53 -0
  256. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/decimal128-precision-v2/mongocryptd-reply.json +61 -0
  257. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/decimal128-v2/cmd.json +9 -0
  258. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/decimal128-v2/encrypted-field-map.json +27 -0
  259. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/decimal128-v2/encrypted-payload.json +44 -0
  260. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/decimal128-v2/mongocryptd-reply.json +52 -0
  261. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/double/RNG_DATA.h +68 -68
  262. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/double-precision/RNG_DATA.h +19 -19
  263. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/double-precision-v2/cmd.json +11 -0
  264. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/double-precision-v2/encrypted-field-map.json +30 -0
  265. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/double-precision-v2/encrypted-payload.json +47 -0
  266. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/double-precision-v2/mongocryptd-reply.json +55 -0
  267. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/double-v2/cmd.json +11 -0
  268. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/double-v2/encrypted-field-map.json +27 -0
  269. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/double-v2/encrypted-payload.json +44 -0
  270. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/double-v2/mongocryptd-reply.json +52 -0
  271. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/int32/RNG_DATA.h +25 -25
  272. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/int32-v2/cmd.json +11 -0
  273. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/int32-v2/encrypted-field-map.json +27 -0
  274. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/int32-v2/encrypted-payload.json +44 -0
  275. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/int32-v2/mongocryptd-reply.json +52 -0
  276. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/int64/RNG_DATA.h +65 -65
  277. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/int64-v2/cmd.json +11 -0
  278. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/int64-v2/encrypted-field-map.json +27 -0
  279. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/int64-v2/encrypted-payload.json +44 -0
  280. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/int64-v2/mongocryptd-reply.json +52 -0
  281. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range-explicit/double/RNG_DATA.h +68 -68
  282. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range-explicit/double/encrypted-payload-v2.json +8 -0
  283. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range-explicit/double-precision/RNG_DATA.h +19 -19
  284. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range-explicit/double-precision/encrypted-payload-v2.json +8 -0
  285. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range-explicit/int32/RNG_DATA.h +25 -25
  286. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range-explicit/int32/encrypted-payload-v2.json +8 -0
  287. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range-explicit/int32-nominmax/encrypted-payload-v2.json +8 -0
  288. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range-explicit/sparsity-2/RNG_DATA.h +15 -15
  289. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range-explicit/sparsity-2/encrypted-payload-v2.json +8 -0
  290. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-unindexed-v2/cmd.json +9 -0
  291. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-unindexed-v2/encrypted-field-map.json +18 -0
  292. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-unindexed-v2/encrypted-payload.json +14 -0
  293. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-unindexed-v2/mongocryptd-reply.json +41 -0
  294. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-v2/cmd.json +9 -0
  295. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-v2/encrypted-field-map.json +22 -0
  296. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-v2/encrypted-payload.json +39 -0
  297. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-v2/mongocryptd-reply.json +49 -0
  298. data/ext/libmongocrypt/libmongocrypt/test/data/iev-v2/FLECrudTest-insertOneRangeV2.json +10 -0
  299. data/ext/libmongocrypt/libmongocrypt/test/data/iev-v2/FLECrudTest-insertOneV2.json +10 -0
  300. data/ext/libmongocrypt/libmongocrypt/test/data/roundtrip/README.md +17 -0
  301. data/ext/libmongocrypt/libmongocrypt/test/data/roundtrip/aes-ctr.json +29 -0
  302. data/ext/libmongocrypt/libmongocrypt/test/data/roundtrip/fle2-fixed.json +10 -0
  303. data/ext/libmongocrypt/libmongocrypt/test/data/roundtrip/fle2-generated.json +38 -0
  304. data/ext/libmongocrypt/libmongocrypt/test/data/roundtrip/fle2aead-decrypt.json +35 -0
  305. data/ext/libmongocrypt/libmongocrypt/test/data/roundtrip/fle2aead-fixed.json +29 -0
  306. data/ext/libmongocrypt/libmongocrypt/test/data/roundtrip/fle2aead-generated.json +122 -0
  307. data/ext/libmongocrypt/libmongocrypt/test/data/roundtrip/fle2v2-aead-fixed.json +29 -0
  308. data/ext/libmongocrypt/libmongocrypt/test/data/roundtrip/fle2v2-aead-generated.json +122 -0
  309. data/ext/libmongocrypt/libmongocrypt/test/data/roundtrip/mcgrew.json +12 -0
  310. data/ext/libmongocrypt/libmongocrypt/test/data/roundtrip/nist.json +20 -0
  311. data/ext/libmongocrypt/libmongocrypt/test/data/tokens/README.md +27 -0
  312. data/ext/libmongocrypt/libmongocrypt/test/data/tokens/mc.json +21 -0
  313. data/ext/libmongocrypt/libmongocrypt/test/data/tokens/server.json +21 -0
  314. data/ext/libmongocrypt/libmongocrypt/test/example-no-bson.c +4 -4
  315. data/ext/libmongocrypt/libmongocrypt/test/example-state-machine.c +278 -323
  316. data/ext/libmongocrypt/libmongocrypt/test/fuzz_kms.c +8 -7
  317. data/ext/libmongocrypt/libmongocrypt/test/test-dll.cpp +6 -7
  318. data/ext/libmongocrypt/libmongocrypt/test/test-gcp-auth.c +221 -283
  319. data/ext/libmongocrypt/libmongocrypt/test/test-mc-efc.c +58 -73
  320. data/ext/libmongocrypt/libmongocrypt/test/test-mc-fle2-find-equality-payload-v2.c +78 -0
  321. data/ext/libmongocrypt/libmongocrypt/test/test-mc-fle2-find-range-payload-v2.c +89 -0
  322. data/ext/libmongocrypt/libmongocrypt/test/test-mc-fle2-payload-iev-v2.c +248 -0
  323. data/ext/libmongocrypt/libmongocrypt/test/test-mc-fle2-payload-iev.c +467 -414
  324. data/ext/libmongocrypt/libmongocrypt/test/test-mc-fle2-payload-iup-v2.c +172 -0
  325. data/ext/libmongocrypt/libmongocrypt/test/test-mc-fle2-payload-iup.c +141 -159
  326. data/ext/libmongocrypt/libmongocrypt/test/test-mc-fle2-payload-uev-v2.c +338 -0
  327. data/ext/libmongocrypt/libmongocrypt/test/test-mc-fle2-payload-uev.c +238 -176
  328. data/ext/libmongocrypt/libmongocrypt/test/test-mc-fle2-rfds.c +373 -474
  329. data/ext/libmongocrypt/libmongocrypt/test/test-mc-range-edge-generation.c +346 -388
  330. data/ext/libmongocrypt/libmongocrypt/test/test-mc-range-encoding.c +708 -825
  331. data/ext/libmongocrypt/libmongocrypt/test/test-mc-range-mincover.c +417 -481
  332. data/ext/libmongocrypt/libmongocrypt/test/test-mc-rangeopts.c +110 -144
  333. data/ext/libmongocrypt/libmongocrypt/test/test-mc-reader.c +124 -207
  334. data/ext/libmongocrypt/libmongocrypt/test/test-mc-tokens.c +223 -213
  335. data/ext/libmongocrypt/libmongocrypt/test/test-mc-writer.c +176 -0
  336. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-assert-match-bson.c +634 -807
  337. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-assert-match-bson.h +1 -2
  338. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-assert.h +168 -189
  339. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-buffer.c +187 -211
  340. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-cache-oauth.c +34 -36
  341. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-cache.c +210 -233
  342. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-ciphertext.c +185 -220
  343. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-compact.c +331 -445
  344. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-crypto-hooks.c +670 -814
  345. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-crypto-std-hooks.c +102 -135
  346. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-crypto-std-hooks.h +54 -71
  347. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-crypto.c +394 -846
  348. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-csfle-lib.c +159 -183
  349. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-ctx-decrypt.c +867 -1045
  350. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-ctx-encrypt.c +4349 -4713
  351. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-ctx-rewrap-many-datakey.c +750 -964
  352. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-ctx-setopt.c +991 -1178
  353. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-datakey.c +342 -419
  354. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-dll.c +23 -30
  355. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-endpoint.c +98 -111
  356. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-kek.c +49 -52
  357. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-key-broker.c +770 -920
  358. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-key-cache.c +354 -407
  359. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-key.c +197 -245
  360. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-kms-ctx.c +286 -370
  361. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-kms-responses.c +147 -166
  362. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-local-kms.c +50 -61
  363. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-log.c +85 -100
  364. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-marking.c +656 -692
  365. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-status.c +46 -58
  366. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-traverse-util.c +377 -451
  367. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-util.c +48 -67
  368. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-util.h +4 -10
  369. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt.c +827 -918
  370. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt.h +111 -172
  371. data/ext/libmongocrypt/libmongocrypt/test/util/csfle.c +508 -559
  372. data/ext/libmongocrypt/libmongocrypt/test/util/util.c +735 -881
  373. data/ext/libmongocrypt/libmongocrypt/test/util/util.h +33 -55
  374. data/lib/libmongocrypt_helper/version.rb +2 -2
  375. data/lib/libmongocrypt_helper.rb +2 -2
  376. data.tar.gz.sig +0 -0
  377. metadata +154 -26
  378. metadata.gz.sig +0 -0
  379. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/test/resources/fle2-find-range-explicit/int32/encrypted-payload.json +0 -26
  380. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/test/resources/fle2-find-range-explicit/int32/key-document.json +0 -0
  381. data/ext/libmongocrypt/libmongocrypt/bindings/node/lib/credentialsProvider.js +0 -33
  382. data/ext/libmongocrypt/libmongocrypt/bindings/node/test/credentialsProvider.test.js +0 -163
  383. data/ext/libmongocrypt/libmongocrypt/bindings/python/test/data/fle2-find-range-explicit/int32/encrypted-payload.json +0 -26
  384. data/ext/libmongocrypt/libmongocrypt/test/data/aes-ctr.cstructs +0 -359
  385. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-aead.cstructs +0 -109
  386. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range-explicit/int32-nominmax/encrypted-payload.json +0 -26
  387. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range-explicit/int32-nominmax/rangeopts.json +0 -5
  388. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range-explicit/int32-nominmax/value-to-encrypt.json +0 -20
  389. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range-explicit/int32-nominmax/RNG_DATA.h +0 -70
  390. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range-explicit/int32-nominmax/encrypted-payload.json +0 -8
  391. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range-explicit/int32-nominmax/rangeopts.json +0 -5
  392. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range-explicit/int32-nominmax/value-to-encrypt.json +0 -5
  393. data/ext/libmongocrypt/libmongocrypt/test/data/fle2.cstructs +0 -33
  394. /data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/test/resources/{fle2-find-range-explicit → fle2-find-range-explicit-v2}/int32/key-filter.json +0 -0
  395. /data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/test/resources/{fle2-find-range-explicit → fle2-find-range-explicit-v2}/int32/rangeopts.json +0 -0
  396. /data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/test/resources/{fle2-find-range-explicit → fle2-find-range-explicit-v2}/int32/value-to-encrypt.json +0 -0
  397. /data/ext/libmongocrypt/libmongocrypt/bindings/python/test/data/{fle2-find-range-explicit → fle2-find-range-explicit-v2}/int32/rangeopts.json +0 -0
  398. /data/ext/libmongocrypt/libmongocrypt/bindings/python/test/data/{fle2-find-range-explicit → fle2-find-range-explicit-v2}/int32/value-to-encrypt.json +0 -0
@@ -0,0 +1,41 @@
1
+ {
2
+ "find": "test",
3
+ "filter": {
4
+ "encrypted": {
5
+ "$binary": {
6
+ "base64": "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",
7
+ "subType": "6"
8
+ }
9
+ }
10
+ },
11
+ "encryptionInformation": {
12
+ "type": 1,
13
+ "schema": {
14
+ "db.test": {
15
+ "escCollection": "fle2.test.esc",
16
+ "ecocCollection": "fle2.test.ecoc",
17
+ "fields": [
18
+ {
19
+ "keyId": {
20
+ "$binary": {
21
+ "base64": "EjRWeBI0mHYSNBI0VniQEg==",
22
+ "subType": "04"
23
+ }
24
+ },
25
+ "path": "encrypted",
26
+ "bsonType": "decimal",
27
+ "queries": {
28
+ "queryType": "rangePreview",
29
+ "contention": {
30
+ "$numberInt": "0"
31
+ },
32
+ "sparsity": {
33
+ "$numberInt": "1"
34
+ }
35
+ }
36
+ }
37
+ ]
38
+ }
39
+ }
40
+ }
41
+ }
@@ -0,0 +1,49 @@
1
+ {
2
+ "ok": {
3
+ "$numberInt": "1"
4
+ },
5
+ "result": {
6
+ "find": "test",
7
+ "filter": {
8
+ "encrypted": {
9
+ "$binary": {
10
+ "base64": "AxwBAAAQdAACAAAAEGEAAwAAAAVraQAQAAAABBI0VngSNJh2EjQSNFZ4kBIFa3UAEAAAAASrze+rEjSYdhI0EjRWeJASA3YAvQAAAANlZGdlc0luZm8AiwAAABNsb3dlckJvdW5kAAAAAAAAAAAAAAAAAAAAQDAIbGJJbmNsdWRlZAABE3VwcGVyQm91bmQAFYHpffQQIhEAAAAAAABAMAh1YkluY2x1ZGVkAAETaW5kZXhNaW4A/////2OOjTfAh62+Ce3/3xNpbmRleE1heAD/////Y46NN8CHrb4J7f9fABBwYXlsb2FkSWQA0gQAABBmaXJzdE9wZXJhdG9yAAEAAAAAEmNtAAAAAAAAAAAAEnMAAQAAAAAAAAAA",
11
+ "subType": "6"
12
+ }
13
+ }
14
+ },
15
+ "encryptionInformation": {
16
+ "type": {
17
+ "$numberInt": "1"
18
+ },
19
+ "schema": {
20
+ "db.test": {
21
+ "escCollection": "fle2.test.esc",
22
+ "ecocCollection": "fle2.test.ecoc",
23
+ "fields": [
24
+ {
25
+ "keyId": {
26
+ "$binary": {
27
+ "base64": "EjRWeBI0mHYSNBI0VniQEg==",
28
+ "subType": "04"
29
+ }
30
+ },
31
+ "path": "encrypted",
32
+ "bsonType": "decimal",
33
+ "queries": {
34
+ "queryType": "rangePreview",
35
+ "contention": {
36
+ "$numberInt": "0"
37
+ },
38
+ "sparsity": {
39
+ "$numberInt": "1"
40
+ }
41
+ }
42
+ }
43
+ ]
44
+ }
45
+ }
46
+ }
47
+ },
48
+ "hasEncryptedPlaceholders": true
49
+ }
@@ -0,0 +1,8 @@
1
+ {
2
+ "find": "test",
3
+ "filter": {
4
+ "encrypted": {
5
+ "$numberDouble": "123.456"
6
+ }
7
+ }
8
+ }
@@ -0,0 +1,30 @@
1
+ {
2
+ "db.test": {
3
+ "escCollection": "fle2.test.esc",
4
+ "ecocCollection": "fle2.test.ecoc",
5
+ "fields": [
6
+ {
7
+ "keyId": {
8
+ "$binary": {
9
+ "base64": "EjRWeBI0mHYSNBI0VniQEg==",
10
+ "subType": "04"
11
+ }
12
+ },
13
+ "path": "encrypted",
14
+ "bsonType": "double",
15
+ "queries": {
16
+ "queryType": "range",
17
+ "contention": {
18
+ "$numberInt": "0"
19
+ },
20
+ "sparsity": {
21
+ "$numberInt": "1"
22
+ },
23
+ "min": 0.0,
24
+ "max": 200.0,
25
+ "precision": 2
26
+ }
27
+ }
28
+ ]
29
+ }
30
+ }
@@ -0,0 +1,44 @@
1
+ {
2
+ "find": "test",
3
+ "filter": {
4
+ "encrypted": {
5
+ "$binary": {
6
+ "base64": "DUkDAAADcGF5bG9hZAAZAwAABGcABQMAAAMwAH0AAAAFZAAgAAAAAKfR876j77BmHaWxFf7Px/B695Rn7JAN3upnEpaEqFT+BXMAIAAAAACXqoD16/Q8tNDRR7gP222DxV0SBOSZ4bqsxYILo8a/0wVsACAAAAAA1y7ThR8e87l/kWKzGJThtIrT+i+4I690g9vJeevhk3cAAzEAfQAAAAVkACAAAAAAlpFiajzOojYERTN1LCni1VGk+ZVax/J2Rg3dQeHpMy4FcwAgAAAAAB4PqYOdB4uVsL2LSxWATz5EfrL573g4lDS0nQ+9uVVKBWwAIAAAAABaniO+t61sMSyoQzM/9YtOfA6InAK1+sKIHqbyT7IQygADMgB9AAAABWQAIAAAAAAGWed/HKDT8MkY4RMK+T/F8N9qFjiRfkfp3whoMtqjtwVzACAAAAAAjjy5yZSsBjTwwUXkSpx37XqtMBW93s4a3OwVV7PEVB8FbAAgAAAAAPpRnrDZN/ksgf+tK0r3UNmjdr3yT0e5ZSVYbnxkzYR5AAMzAH0AAAAFZAAgAAAAAFH9l9GGA1I52atJV5jNUf1lx8jBjoEoVoME97v5GFJiBXMAIAAAAAC1qH3Kd78Dr9NGbw7y9D/XYBwv5h1LLO8la5OU7g8UkQVsACAAAAAArZ6atJCYrVfHB8dSNPOFf6nnDADBMJcIEj8ljPvxHp8AAzQAfQAAAAVkACAAAAAAO1tUQja12SujAQx2RpwPbDRjdPc5+Ls8foeYDqw/Rz8FcwAgAAAAAO4FJE6dkcD42BQ8fx3QudYWIOwzZtjxvOMLX56VKwjKBWwAIAAAAABHQbab64A2haSeSv816sVwb58QJXE0izRyptjW39T/QwADNQB9AAAABWQAIAAAAAAId1qXjFZYpDxWI/YS4/n5iKlbeqJgkhe+Vt0zxMclqQVzACAAAAAALEJEZsKnlY9oBhNN6K2+j7ayMw7enQ1N4YEkIvBNsCoFbAAgAAAAANxh2kRNkQHGgUXfFc5mM1ngQ9hpsvdXkytZPGHVjm2XAAASY20AAAAAAAAAAAAAEHBheWxvYWRJZADSBAAAEGZpcnN0T3BlcmF0b3IAAQAAAAA=",
7
+ "subType": "6"
8
+ }
9
+ }
10
+ },
11
+ "encryptionInformation": {
12
+ "type": 1,
13
+ "schema": {
14
+ "db.test": {
15
+ "escCollection": "fle2.test.esc",
16
+ "ecocCollection": "fle2.test.ecoc",
17
+ "fields": [
18
+ {
19
+ "keyId": {
20
+ "$binary": {
21
+ "base64": "EjRWeBI0mHYSNBI0VniQEg==",
22
+ "subType": "04"
23
+ }
24
+ },
25
+ "path": "encrypted",
26
+ "bsonType": "double",
27
+ "queries": {
28
+ "queryType": "range",
29
+ "contention": {
30
+ "$numberInt": "0"
31
+ },
32
+ "sparsity": {
33
+ "$numberInt": "1"
34
+ },
35
+ "min": 0.0,
36
+ "max": 200.0,
37
+ "precision": 2
38
+ }
39
+ }
40
+ ]
41
+ }
42
+ }
43
+ }
44
+ }
@@ -0,0 +1,52 @@
1
+ {
2
+ "ok": {
3
+ "$numberInt": "1"
4
+ },
5
+ "result": {
6
+ "find": "test",
7
+ "filter": {
8
+ "encrypted": {
9
+ "$binary": {
10
+ "base64": "AwsBAAAQdAACAAAAEGEAAwAAAAVraQAQAAAABBI0VngSNJh2EjQSNFZ4kBIFa3UAEAAAAASrze+rEjSYdhI0EjRWeJASA3YArAAAAANlZGdlc0luZm8AegAAAAFsb3dlckJvdW5kAAAAAAAAAAAACGxiSW5jbHVkZWQAAQF1cHBlckJvdW5kAAAAAAAAAGlACHViSW5jbHVkZWQAARBwcmVjaXNpb24AAgAAAAFpbmRleE1pbgAAAAAAAAAAAAFpbmRleE1heAAAAAAAAABpQAAQcGF5bG9hZElkANIEAAAQZmlyc3RPcGVyYXRvcgABAAAAABJjbQAAAAAAAAAAABJzAAEAAAAAAAAAAA==",
11
+ "subType": "6"
12
+ }
13
+ }
14
+ },
15
+ "encryptionInformation": {
16
+ "type": {
17
+ "$numberInt": "1"
18
+ },
19
+ "schema": {
20
+ "db.test": {
21
+ "escCollection": "fle2.test.esc",
22
+ "ecocCollection": "fle2.test.ecoc",
23
+ "fields": [
24
+ {
25
+ "keyId": {
26
+ "$binary": {
27
+ "base64": "EjRWeBI0mHYSNBI0VniQEg==",
28
+ "subType": "04"
29
+ }
30
+ },
31
+ "path": "encrypted",
32
+ "bsonType": "double",
33
+ "queries": {
34
+ "queryType": "range",
35
+ "contention": {
36
+ "$numberInt": "0"
37
+ },
38
+ "sparsity": {
39
+ "$numberInt": "1"
40
+ },
41
+ "min": 0.0,
42
+ "max": 200.0,
43
+ "precision": 2
44
+ }
45
+ }
46
+ ]
47
+ }
48
+ }
49
+ }
50
+ },
51
+ "hasEncryptedPlaceholders": true
52
+ }
@@ -0,0 +1,8 @@
1
+ {
2
+ "find": "test",
3
+ "filter": {
4
+ "encrypted": {
5
+ "$numberDouble": "123.456"
6
+ }
7
+ }
8
+ }
@@ -0,0 +1,27 @@
1
+ {
2
+ "db.test": {
3
+ "escCollection": "fle2.test.esc",
4
+ "ecocCollection": "fle2.test.ecoc",
5
+ "fields": [
6
+ {
7
+ "keyId": {
8
+ "$binary": {
9
+ "base64": "EjRWeBI0mHYSNBI0VniQEg==",
10
+ "subType": "04"
11
+ }
12
+ },
13
+ "path": "encrypted",
14
+ "bsonType": "double",
15
+ "queries": {
16
+ "queryType": "rangePreview",
17
+ "contention": {
18
+ "$numberInt": "0"
19
+ },
20
+ "sparsity": {
21
+ "$numberInt": "1"
22
+ }
23
+ }
24
+ }
25
+ ]
26
+ }
27
+ }
@@ -0,0 +1,41 @@
1
+ {
2
+ "find": "test",
3
+ "filter": {
4
+ "encrypted": {
5
+ "$binary": {
6
+ "base64": "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",
7
+ "subType": "6"
8
+ }
9
+ }
10
+ },
11
+ "encryptionInformation": {
12
+ "type": 1,
13
+ "schema": {
14
+ "db.test": {
15
+ "escCollection": "fle2.test.esc",
16
+ "ecocCollection": "fle2.test.ecoc",
17
+ "fields": [
18
+ {
19
+ "keyId": {
20
+ "$binary": {
21
+ "base64": "EjRWeBI0mHYSNBI0VniQEg==",
22
+ "subType": "04"
23
+ }
24
+ },
25
+ "path": "encrypted",
26
+ "bsonType": "double",
27
+ "queries": {
28
+ "queryType": "rangePreview",
29
+ "contention": {
30
+ "$numberInt": "0"
31
+ },
32
+ "sparsity": {
33
+ "$numberInt": "1"
34
+ }
35
+ }
36
+ }
37
+ ]
38
+ }
39
+ }
40
+ }
41
+ }
@@ -0,0 +1,49 @@
1
+ {
2
+ "ok": {
3
+ "$numberInt": "1"
4
+ },
5
+ "result": {
6
+ "find": "test",
7
+ "filter": {
8
+ "encrypted": {
9
+ "$binary": {
10
+ "base64": "A/wAAAAQdAACAAAAEGEAAwAAAAVraQAQAAAABBI0VngSNJh2EjQSNFZ4kBIFa3UAEAAAAASrze+rEjSYdhI0EjRWeJASA3YAnQAAAANlZGdlc0luZm8AawAAAAFsb3dlckJvdW5kAAAAAAAAABAACGxiSW5jbHVkZWQAAQF1cHBlckJvdW5kAP///////+9/CHViSW5jbHVkZWQAAQFpbmRleE1pbgAAAAAAAAAQAAFpbmRleE1heAD////////vfwAQcGF5bG9hZElkANIEAAAQZmlyc3RPcGVyYXRvcgABAAAAABJjbQAAAAAAAAAAABJzAAEAAAAAAAAAAA==",
11
+ "subType": "6"
12
+ }
13
+ }
14
+ },
15
+ "encryptionInformation": {
16
+ "type": {
17
+ "$numberInt": "1"
18
+ },
19
+ "schema": {
20
+ "db.test": {
21
+ "escCollection": "fle2.test.esc",
22
+ "ecocCollection": "fle2.test.ecoc",
23
+ "fields": [
24
+ {
25
+ "keyId": {
26
+ "$binary": {
27
+ "base64": "EjRWeBI0mHYSNBI0VniQEg==",
28
+ "subType": "04"
29
+ }
30
+ },
31
+ "path": "encrypted",
32
+ "bsonType": "double",
33
+ "queries": {
34
+ "queryType": "rangePreview",
35
+ "contention": {
36
+ "$numberInt": "0"
37
+ },
38
+ "sparsity": {
39
+ "$numberInt": "1"
40
+ }
41
+ }
42
+ }
43
+ ]
44
+ }
45
+ }
46
+ }
47
+ },
48
+ "hasEncryptedPlaceholders": true
49
+ }
@@ -0,0 +1,8 @@
1
+ {
2
+ "find": "test",
3
+ "filter": {
4
+ "encrypted": {
5
+ "$numberInt": "123456"
6
+ }
7
+ }
8
+ }
@@ -0,0 +1,27 @@
1
+ {
2
+ "db.test": {
3
+ "escCollection": "fle2.test.esc",
4
+ "ecocCollection": "fle2.test.ecoc",
5
+ "fields": [
6
+ {
7
+ "keyId": {
8
+ "$binary": {
9
+ "base64": "EjRWeBI0mHYSNBI0VniQEg==",
10
+ "subType": "04"
11
+ }
12
+ },
13
+ "path": "encrypted",
14
+ "bsonType": "int",
15
+ "queries": {
16
+ "queryType": "rangePreview",
17
+ "contention": {
18
+ "$numberInt": "0"
19
+ },
20
+ "sparsity": {
21
+ "$numberInt": "1"
22
+ }
23
+ }
24
+ }
25
+ ]
26
+ }
27
+ }
@@ -0,0 +1,41 @@
1
+ {
2
+ "find": "test",
3
+ "filter": {
4
+ "encrypted": {
5
+ "$binary": {
6
+ "base64": "DckEAAADcGF5bG9hZACZBAAABGcAhQQAAAMwAH0AAAAFZAAgAAAAAKfR876j77BmHaWxFf7Px/B695Rn7JAN3upnEpaEqFT+BXMAIAAAAACXqoD16/Q8tNDRR7gP222DxV0SBOSZ4bqsxYILo8a/0wVsACAAAAAA1y7ThR8e87l/kWKzGJThtIrT+i+4I690g9vJeevhk3cAAzEAfQAAAAVkACAAAAAAlpFiajzOojYERTN1LCni1VGk+ZVax/J2Rg3dQeHpMy4FcwAgAAAAAB4PqYOdB4uVsL2LSxWATz5EfrL573g4lDS0nQ+9uVVKBWwAIAAAAABaniO+t61sMSyoQzM/9YtOfA6InAK1+sKIHqbyT7IQygADMgB9AAAABWQAIAAAAACEoDdR4neyFrwxEjf97csBWYgbGT2GqTlMff0Iww8S3wVzACAAAAAAO5caRM9/ghnb+v1iiAJSMEWFEURCoJ+/krcDaFXpJA8FbAAgAAAAAMfjmtr9XtUe1aJn7L3CjvFZGOHk5ey84zUEC+go+hgUAAMzAH0AAAAFZAAgAAAAACFSn9LbHIGoJEDxQm+l/VhB1Qp2sDHEDDH/n/c8F8n8BXMAIAAAAACBO4bhRYkAW8TOvy65UHl7YNTK+4vge++76cn1G8/dugVsACAAAAAAzG6xXvdYOA8Myyt5WXWt0BWkQNQQtmstxsv5gCZsd54AAzQAfQAAAAVkACAAAAAAGj22/+aFr+8l9CLnrDZ5NhzCgz++msotwjPmSF9OM+gFcwAgAAAAAC9cqJy///jAYzdKgtwFSx75wY+WX47DOOpPRbkb78OPBWwAIAAAAAAGFIMLMvvz+5jqPPxU4J6K0zt8Au0G+ZQeqAioWidVjAADNQB9AAAABWQAIAAAAADbZ5AD/5OvYukqwD1ouIm1JCicqneF8Irq6sPhgRe20wVzACAAAAAAdP03rg0E4wfRAUdu6SaaQOZi4JxoX9bUAFENSuB38wQFbAAgAAAAAHA7IE4pXO053jFajvK//gEl99NHzxtkM2HbOlkgHox5AAM2AH0AAAAFZAAgAAAAACSbt5cVtVjP7BGAWK09HRCwAyV9It3zsFV0xaSVTkCYBXMAIAAAAAB2oDy5xJX9PzwQxDkT/mZcL4L8MEH2iAQkbFRJX8uDnwVsACAAAAAA9gBAm/VjmIxxyxjC3WYtk5garVKwbEaKA4ehcrTrV0AAAzcAfQAAAAVkACAAAAAAPLjGwQ+DBcHE6XSH+knrIFTqq1zCgbltUvFW7wQwib0FcwAgAAAAAOfj/lP3YxmHoZBYlp60ZOnxx38JpMeougcNBUoWQfl0BWwAIAAAAACEzswX85ONfNBaAkc8gU2uGDfsAFrSy7k24snonwgmhwADOAB9AAAABWQAIAAAAADAg4r1xbwXaXEYn9Xc0gZ/ZTDqKRye52R4+M9yw1JoMwVzACAAAAAAPgpORYCcoS+SKCMf2IC1b7sHYFG0LtmWJmTlogsl81YFbAAgAAAAAL44mfvmJUV2pYwYEVRBEpTxcvc2tcu/1wYEmsS50ybtAAASY20AAAAAAAAAAAAAEHBheWxvYWRJZADSBAAAEGZpcnN0T3BlcmF0b3IAAQAAAAA=",
7
+ "subType": "6"
8
+ }
9
+ }
10
+ },
11
+ "encryptionInformation": {
12
+ "type": 1,
13
+ "schema": {
14
+ "db.test": {
15
+ "escCollection": "fle2.test.esc",
16
+ "ecocCollection": "fle2.test.ecoc",
17
+ "fields": [
18
+ {
19
+ "keyId": {
20
+ "$binary": {
21
+ "base64": "EjRWeBI0mHYSNBI0VniQEg==",
22
+ "subType": "04"
23
+ }
24
+ },
25
+ "path": "encrypted",
26
+ "bsonType": "int",
27
+ "queries": {
28
+ "queryType": "rangePreview",
29
+ "contention": {
30
+ "$numberInt": "0"
31
+ },
32
+ "sparsity": {
33
+ "$numberInt": "1"
34
+ }
35
+ }
36
+ }
37
+ ]
38
+ }
39
+ }
40
+ }
41
+ }
@@ -0,0 +1,49 @@
1
+ {
2
+ "ok": {
3
+ "$numberInt": "1"
4
+ },
5
+ "result": {
6
+ "find": "test",
7
+ "filter": {
8
+ "encrypted": {
9
+ "$binary": {
10
+ "base64": "A+wAAAAQdAACAAAAEGEAAwAAAAVraQAQAAAABBI0VngSNJh2EjQSNFZ4kBIFa3UAEAAAAASrze+rEjSYdhI0EjRWeJASA3YAjQAAAANlZGdlc0luZm8AWwAAABBsb3dlckJvdW5kAAAAAAAIbGJJbmNsdWRlZAABEHVwcGVyQm91bmQAh9YSAAh1YkluY2x1ZGVkAAEQaW5kZXhNaW4AAAAAABBpbmRleE1heACH1hIAABBwYXlsb2FkSWQA0gQAABBmaXJzdE9wZXJhdG9yAAEAAAAAEmNtAAAAAAAAAAAAEnMAAQAAAAAAAAAA",
11
+ "subType": "6"
12
+ }
13
+ }
14
+ },
15
+ "encryptionInformation": {
16
+ "type": {
17
+ "$numberInt": "1"
18
+ },
19
+ "schema": {
20
+ "db.test": {
21
+ "escCollection": "fle2.test.esc",
22
+ "ecocCollection": "fle2.test.ecoc",
23
+ "fields": [
24
+ {
25
+ "keyId": {
26
+ "$binary": {
27
+ "base64": "EjRWeBI0mHYSNBI0VniQEg==",
28
+ "subType": "04"
29
+ }
30
+ },
31
+ "path": "encrypted",
32
+ "bsonType": "int",
33
+ "queries": {
34
+ "queryType": "rangePreview",
35
+ "contention": {
36
+ "$numberInt": "0"
37
+ },
38
+ "sparsity": {
39
+ "$numberInt": "1"
40
+ }
41
+ }
42
+ }
43
+ ]
44
+ }
45
+ }
46
+ }
47
+ },
48
+ "hasEncryptedPlaceholders": true
49
+ }
@@ -0,0 +1,8 @@
1
+ {
2
+ "find": "test",
3
+ "filter": {
4
+ "encrypted": {
5
+ "$numberLong": "12345678901234567"
6
+ }
7
+ }
8
+ }
@@ -0,0 +1,27 @@
1
+ {
2
+ "db.test": {
3
+ "escCollection": "fle2.test.esc",
4
+ "ecocCollection": "fle2.test.ecoc",
5
+ "fields": [
6
+ {
7
+ "keyId": {
8
+ "$binary": {
9
+ "base64": "EjRWeBI0mHYSNBI0VniQEg==",
10
+ "subType": "04"
11
+ }
12
+ },
13
+ "path": "encrypted",
14
+ "bsonType": "long",
15
+ "queries": {
16
+ "queryType": "rangePreview",
17
+ "contention": {
18
+ "$numberInt": "0"
19
+ },
20
+ "sparsity": {
21
+ "$numberInt": "1"
22
+ }
23
+ }
24
+ }
25
+ ]
26
+ }
27
+ }
@@ -0,0 +1,41 @@
1
+ {
2
+ "find": "test",
3
+ "filter": {
4
+ "encrypted": {
5
+ "$binary": {
6
+ "base64": "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",
7
+ "subType": "6"
8
+ }
9
+ }
10
+ },
11
+ "encryptionInformation": {
12
+ "type": 1,
13
+ "schema": {
14
+ "db.test": {
15
+ "escCollection": "fle2.test.esc",
16
+ "ecocCollection": "fle2.test.ecoc",
17
+ "fields": [
18
+ {
19
+ "keyId": {
20
+ "$binary": {
21
+ "base64": "EjRWeBI0mHYSNBI0VniQEg==",
22
+ "subType": "04"
23
+ }
24
+ },
25
+ "path": "encrypted",
26
+ "bsonType": "long",
27
+ "queries": {
28
+ "queryType": "rangePreview",
29
+ "contention": {
30
+ "$numberInt": "0"
31
+ },
32
+ "sparsity": {
33
+ "$numberInt": "1"
34
+ }
35
+ }
36
+ }
37
+ ]
38
+ }
39
+ }
40
+ }
41
+ }