mongo 2.19.3 → 2.20.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (178) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +37 -1
  3. data/Rakefile +81 -172
  4. data/lib/mongo/cluster/topology/base.rb +16 -0
  5. data/lib/mongo/cluster.rb +27 -1
  6. data/lib/mongo/collection/view/iterable.rb +1 -0
  7. data/lib/mongo/collection.rb +4 -2
  8. data/lib/mongo/config.rb +2 -2
  9. data/lib/mongo/error/transactions_not_supported.rb +34 -0
  10. data/lib/mongo/error.rb +1 -0
  11. data/lib/mongo/grid/fs_bucket.rb +6 -0
  12. data/lib/mongo/monitoring/event/secure.rb +1 -1
  13. data/lib/mongo/operation/shared/executable.rb +43 -27
  14. data/lib/mongo/operation/shared/response_handling.rb +23 -25
  15. data/lib/mongo/retryable/base_worker.rb +28 -3
  16. data/lib/mongo/retryable/read_worker.rb +16 -14
  17. data/lib/mongo/retryable/write_worker.rb +11 -8
  18. data/lib/mongo/retryable.rb +2 -2
  19. data/lib/mongo/server/app_metadata/environment.rb +64 -9
  20. data/lib/mongo/server/app_metadata.rb +5 -4
  21. data/lib/mongo/server/description/features.rb +1 -0
  22. data/lib/mongo/server/pending_connection.rb +19 -6
  23. data/lib/mongo/server_selector/base.rb +32 -6
  24. data/lib/mongo/session/server_session/dirtyable.rb +52 -0
  25. data/lib/mongo/session/server_session.rb +3 -0
  26. data/lib/mongo/session/session_pool.rb +12 -18
  27. data/lib/mongo/session.rb +32 -0
  28. data/lib/mongo/socket/ssl.rb +22 -1
  29. data/lib/mongo/uri.rb +0 -4
  30. data/lib/mongo/version.rb +1 -5
  31. data/mongo.gemspec +9 -18
  32. data/spec/atlas/atlas_connectivity_spec.rb +4 -4
  33. data/spec/faas/ruby-sam-app/Gemfile +9 -0
  34. data/spec/faas/ruby-sam-app/mongodb/Gemfile +4 -0
  35. data/spec/faas/ruby-sam-app/mongodb/app.rb +149 -0
  36. data/spec/faas/ruby-sam-app/template.yaml +48 -0
  37. data/spec/integration/client_side_encryption/corpus_spec.rb +10 -2
  38. data/spec/integration/client_side_encryption/range_explicit_encryption_prose_spec.rb +3 -0
  39. data/spec/integration/retryable_reads_errors_spec.rb +196 -31
  40. data/spec/integration/retryable_writes_errors_spec.rb +156 -0
  41. data/spec/integration/sdam_error_handling_spec.rb +2 -0
  42. data/spec/lite_spec_helper.rb +0 -10
  43. data/spec/mongo/cluster_spec.rb +36 -0
  44. data/spec/mongo/collection/view/aggregation_spec.rb +6 -1
  45. data/spec/mongo/collection/view/explainable_spec.rb +2 -0
  46. data/spec/mongo/collection_crud_spec.rb +2 -1
  47. data/spec/mongo/operation/insert_spec.rb +1 -1
  48. data/spec/mongo/retryable/write_worker_spec.rb +39 -0
  49. data/spec/mongo/server/app_metadata/environment_spec.rb +135 -0
  50. data/spec/mongo/server/app_metadata_spec.rb +12 -2
  51. data/spec/mongo/server/connection_spec.rb +26 -0
  52. data/spec/mongo/session/session_pool_spec.rb +1 -16
  53. data/spec/mongo/session_transaction_spec.rb +15 -0
  54. data/spec/mongo/uri_spec.rb +0 -9
  55. data/spec/runners/crud/test.rb +0 -8
  56. data/spec/runners/crud.rb +1 -1
  57. data/spec/runners/transactions/test.rb +12 -3
  58. data/spec/runners/unified/assertions.rb +16 -3
  59. data/spec/runners/unified/crud_operations.rb +12 -0
  60. data/spec/runners/unified/support_operations.rb +3 -5
  61. data/spec/runners/unified/test.rb +8 -1
  62. data/spec/spec_tests/data/client_side_encryption/explain.yml +2 -2
  63. data/spec/spec_tests/data/client_side_encryption/fle2v2-BypassQueryAnalysis.yml +1 -0
  64. data/spec/spec_tests/data/client_side_encryption/fle2v2-Compact.yml +1 -0
  65. data/spec/spec_tests/data/client_side_encryption/fle2v2-CreateCollection.yml +1 -0
  66. data/spec/spec_tests/data/client_side_encryption/fle2v2-DecryptExistingData.yml +1 -0
  67. data/spec/spec_tests/data/client_side_encryption/fle2v2-Delete.yml +1 -0
  68. data/spec/spec_tests/data/client_side_encryption/fle2v2-EncryptedFields-vs-EncryptedFieldsMap.yml +1 -0
  69. data/spec/spec_tests/data/client_side_encryption/fle2v2-EncryptedFields-vs-jsonSchema.yml +1 -0
  70. data/spec/spec_tests/data/client_side_encryption/fle2v2-EncryptedFieldsMap-defaults.yml +1 -0
  71. data/spec/spec_tests/data/client_side_encryption/fle2v2-FindOneAndUpdate.yml +1 -0
  72. data/spec/spec_tests/data/client_side_encryption/fle2v2-InsertFind-Indexed.yml +1 -0
  73. data/spec/spec_tests/data/client_side_encryption/fle2v2-InsertFind-Unindexed.yml +1 -0
  74. data/spec/spec_tests/data/client_side_encryption/fle2v2-MissingKey.yml +1 -0
  75. data/spec/spec_tests/data/client_side_encryption/fle2v2-NoEncryption.yml +1 -0
  76. data/spec/spec_tests/data/client_side_encryption/fle2v2-Range-Date-Aggregate.yml +1 -0
  77. data/spec/spec_tests/data/client_side_encryption/fle2v2-Range-Date-Correctness.yml +1 -0
  78. data/spec/spec_tests/data/client_side_encryption/fle2v2-Range-Date-Delete.yml +1 -0
  79. data/spec/spec_tests/data/client_side_encryption/fle2v2-Range-Date-FindOneAndUpdate.yml +1 -0
  80. data/spec/spec_tests/data/client_side_encryption/fle2v2-Range-Date-InsertFind.yml +1 -0
  81. data/spec/spec_tests/data/client_side_encryption/fle2v2-Range-Date-Update.yml +1 -0
  82. data/spec/spec_tests/data/client_side_encryption/fle2v2-Range-Decimal-Aggregate.yml +1 -0
  83. data/spec/spec_tests/data/client_side_encryption/fle2v2-Range-Decimal-Correctness.yml +1 -0
  84. data/spec/spec_tests/data/client_side_encryption/fle2v2-Range-Decimal-Delete.yml +1 -0
  85. data/spec/spec_tests/data/client_side_encryption/fle2v2-Range-Decimal-FindOneAndUpdate.yml +1 -0
  86. data/spec/spec_tests/data/client_side_encryption/fle2v2-Range-Decimal-InsertFind.yml +1 -0
  87. data/spec/spec_tests/data/client_side_encryption/fle2v2-Range-Decimal-Update.yml +1 -0
  88. data/spec/spec_tests/data/client_side_encryption/fle2v2-Range-DecimalPrecision-Aggregate.yml +1 -0
  89. data/spec/spec_tests/data/client_side_encryption/fle2v2-Range-DecimalPrecision-Correctness.yml +1 -0
  90. data/spec/spec_tests/data/client_side_encryption/fle2v2-Range-DecimalPrecision-Delete.yml +1 -0
  91. data/spec/spec_tests/data/client_side_encryption/fle2v2-Range-DecimalPrecision-FindOneAndUpdate.yml +1 -0
  92. data/spec/spec_tests/data/client_side_encryption/fle2v2-Range-DecimalPrecision-InsertFind.yml +1 -0
  93. data/spec/spec_tests/data/client_side_encryption/fle2v2-Range-DecimalPrecision-Update.yml +1 -0
  94. data/spec/spec_tests/data/client_side_encryption/fle2v2-Range-Double-Aggregate.yml +1 -0
  95. data/spec/spec_tests/data/client_side_encryption/fle2v2-Range-Double-Correctness.yml +1 -0
  96. data/spec/spec_tests/data/client_side_encryption/fle2v2-Range-Double-Delete.yml +1 -0
  97. data/spec/spec_tests/data/client_side_encryption/fle2v2-Range-Double-FindOneAndUpdate.yml +1 -0
  98. data/spec/spec_tests/data/client_side_encryption/fle2v2-Range-Double-InsertFind.yml +1 -0
  99. data/spec/spec_tests/data/client_side_encryption/fle2v2-Range-Double-Update.yml +1 -0
  100. data/spec/spec_tests/data/client_side_encryption/fle2v2-Range-DoublePrecision-Aggregate.yml +1 -0
  101. data/spec/spec_tests/data/client_side_encryption/fle2v2-Range-DoublePrecision-Correctness.yml +1 -0
  102. data/spec/spec_tests/data/client_side_encryption/fle2v2-Range-DoublePrecision-Delete.yml +1 -0
  103. data/spec/spec_tests/data/client_side_encryption/fle2v2-Range-DoublePrecision-FindOneAndUpdate.yml +1 -0
  104. data/spec/spec_tests/data/client_side_encryption/fle2v2-Range-DoublePrecision-InsertFind.yml +1 -0
  105. data/spec/spec_tests/data/client_side_encryption/fle2v2-Range-DoublePrecision-Update.yml +1 -0
  106. data/spec/spec_tests/data/client_side_encryption/fle2v2-Range-Int-Aggregate.yml +1 -0
  107. data/spec/spec_tests/data/client_side_encryption/fle2v2-Range-Int-Correctness.yml +1 -0
  108. data/spec/spec_tests/data/client_side_encryption/fle2v2-Range-Int-Delete.yml +1 -0
  109. data/spec/spec_tests/data/client_side_encryption/fle2v2-Range-Int-FindOneAndUpdate.yml +1 -0
  110. data/spec/spec_tests/data/client_side_encryption/fle2v2-Range-Int-InsertFind.yml +1 -0
  111. data/spec/spec_tests/data/client_side_encryption/fle2v2-Range-Int-Update.yml +1 -0
  112. data/spec/spec_tests/data/client_side_encryption/fle2v2-Range-Long-Aggregate.yml +1 -0
  113. data/spec/spec_tests/data/client_side_encryption/fle2v2-Range-Long-Correctness.yml +1 -0
  114. data/spec/spec_tests/data/client_side_encryption/fle2v2-Range-Long-Delete.yml +1 -0
  115. data/spec/spec_tests/data/client_side_encryption/fle2v2-Range-Long-FindOneAndUpdate.yml +1 -0
  116. data/spec/spec_tests/data/client_side_encryption/fle2v2-Range-Long-InsertFind.yml +1 -0
  117. data/spec/spec_tests/data/client_side_encryption/fle2v2-Range-Long-Update.yml +1 -0
  118. data/spec/spec_tests/data/client_side_encryption/fle2v2-Range-WrongType.yml +1 -0
  119. data/spec/spec_tests/data/client_side_encryption/fle2v2-Update.yml +1 -0
  120. data/spec/spec_tests/data/client_side_encryption/fle2v2-validatorAndPartialFieldExpression.yml +2 -1
  121. data/spec/spec_tests/data/connection_string/invalid-uris.yml +0 -10
  122. data/spec/spec_tests/data/connection_string/valid-options.yml +13 -0
  123. data/spec/spec_tests/data/crud_unified/aggregate-write-readPreference.yml +2 -0
  124. data/spec/spec_tests/data/crud_unified/db-aggregate-write-readPreference.yml +2 -0
  125. data/spec/spec_tests/data/crud_unified/find-test-all-options.yml +348 -0
  126. data/spec/spec_tests/data/index_management/createSearchIndex.yml +5 -3
  127. data/spec/spec_tests/data/index_management/createSearchIndexes.yml +7 -4
  128. data/spec/spec_tests/data/index_management/dropSearchIndex.yml +2 -1
  129. data/spec/spec_tests/data/index_management/listSearchIndexes.yml +13 -7
  130. data/spec/spec_tests/data/index_management/updateSearchIndex.yml +2 -1
  131. data/spec/spec_tests/data/retryable_writes/unified/bulkWrite-serverErrors.yml +3 -6
  132. data/spec/spec_tests/data/retryable_writes/unified/insertOne-serverErrors.yml +3 -6
  133. data/spec/spec_tests/data/run_command_unified/runCommand.yml +319 -0
  134. data/spec/spec_tests/data/sessions_unified/driver-sessions-dirty-session-errors.yml +351 -0
  135. data/spec/spec_tests/data/unified/valid-pass/poc-crud.yml +1 -1
  136. data/spec/spec_tests/data/unified/valid-pass/poc-retryable-writes.yml +7 -7
  137. data/spec/spec_tests/data/unified/valid-pass/poc-sessions.yml +3 -4
  138. data/spec/spec_tests/data/unified/valid-pass/poc-transactions-convenient-api.yml +1 -1
  139. data/spec/spec_tests/data/unified/valid-pass/poc-transactions-mongos-pin-auto.yml +1 -1
  140. data/spec/spec_tests/data/unified/valid-pass/poc-transactions.yml +3 -3
  141. data/spec/spec_tests/run_command_unified_spec.rb +13 -0
  142. data/spec/spec_tests/sdam_unified_spec.rb +2 -0
  143. data/spec/spec_tests/transactions_unified_spec.rb +2 -1
  144. data/spec/support/certificates/atlas-ocsp-ca.crt +89 -77
  145. data/spec/support/certificates/atlas-ocsp.crt +117 -122
  146. data/spec/support/certificates/retrieve-atlas-cert +1 -1
  147. data/spec/support/constraints.rb +6 -0
  148. data/spec/support/ocsp +1 -1
  149. data/spec/support/recording_logger.rb +27 -0
  150. metadata +1245 -1298
  151. checksums.yaml.gz.sig +0 -0
  152. data/spec/shared/LICENSE +0 -20
  153. data/spec/shared/bin/get-mongodb-download-url +0 -17
  154. data/spec/shared/bin/s3-copy +0 -45
  155. data/spec/shared/bin/s3-upload +0 -69
  156. data/spec/shared/lib/mrss/child_process_helper.rb +0 -80
  157. data/spec/shared/lib/mrss/cluster_config.rb +0 -231
  158. data/spec/shared/lib/mrss/constraints.rb +0 -378
  159. data/spec/shared/lib/mrss/docker_runner.rb +0 -295
  160. data/spec/shared/lib/mrss/eg_config_utils.rb +0 -51
  161. data/spec/shared/lib/mrss/event_subscriber.rb +0 -210
  162. data/spec/shared/lib/mrss/lite_constraints.rb +0 -238
  163. data/spec/shared/lib/mrss/server_version_registry.rb +0 -113
  164. data/spec/shared/lib/mrss/session_registry.rb +0 -69
  165. data/spec/shared/lib/mrss/session_registry_legacy.rb +0 -60
  166. data/spec/shared/lib/mrss/spec_organizer.rb +0 -179
  167. data/spec/shared/lib/mrss/utils.rb +0 -37
  168. data/spec/shared/share/Dockerfile.erb +0 -330
  169. data/spec/shared/share/haproxy-1.conf +0 -16
  170. data/spec/shared/share/haproxy-2.conf +0 -17
  171. data/spec/shared/shlib/config.sh +0 -27
  172. data/spec/shared/shlib/distro.sh +0 -74
  173. data/spec/shared/shlib/server.sh +0 -416
  174. data/spec/shared/shlib/set_env.sh +0 -169
  175. data/spec/spec_tests/data/cmap/pool-clear-interrupt-immediately.yml +0 -49
  176. data/spec/support/faas/app/aws_lambda/mongodb/Gemfile.lock +0 -19
  177. data.tar.gz.sig +0 -3
  178. metadata.gz.sig +0 -0
@@ -2,151 +2,146 @@ Certificate:
2
2
  Data:
3
3
  Version: 3 (0x2)
4
4
  Serial Number:
5
- 03:a8:39:03:e8:84:cd:24:1c:9c:b1:27:8c:0a:7a:9b
5
+ 04:ae:c2:45:fc:ba:ae:16:d6:38:7e:de:04:c4:2b:41:fd:a0
6
6
  Signature Algorithm: sha256WithRSAEncryption
7
- Issuer: C = US, O = DigiCert Inc, CN = DigiCert Global G2 TLS RSA SHA256 2020 CA1
7
+ Issuer: C=US, O=Let's Encrypt, CN=R3
8
8
  Validity
9
- Not Before: Jun 2 00:00:00 2023 GMT
10
- Not After : Jun 4 23:59:59 2024 GMT
11
- Subject: C = US, ST = New York, L = New York, O = "MongoDB, Inc.", CN = *.mongodb-dev.net
9
+ Not Before: Jun 5 14:02:45 2024 GMT
10
+ Not After : Sep 3 14:02:44 2024 GMT
11
+ Subject: CN=*.g6fyiaq.mongodb-dev.net
12
12
  Subject Public Key Info:
13
13
  Public Key Algorithm: rsaEncryption
14
- Public-Key: (2048 bit)
14
+ Public-Key: (4096 bit)
15
15
  Modulus:
16
- 00:df:91:d8:18:9b:41:9c:83:33:58:e9:c2:42:00:
17
- 5a:a5:c0:61:e8:df:39:20:46:33:ae:87:34:c4:13:
18
- 89:d2:c9:4c:eb:6f:a5:cd:dc:31:07:b4:cf:53:74:
19
- 9b:3c:32:e8:df:4b:64:88:a2:03:87:e9:27:f9:7b:
20
- 57:ca:be:7b:51:0f:f2:b1:78:45:0e:5f:06:e9:0a:
21
- c9:fe:67:d0:19:3c:8c:41:01:5f:b7:66:a0:a4:3b:
22
- 54:18:c2:5b:5e:b1:d7:9e:6a:78:f3:bd:24:1d:fc:
23
- ce:43:d2:74:60:83:f4:f3:55:a4:dd:82:f0:e9:f1:
24
- 3d:ff:d1:b6:32:0f:c8:e4:aa:95:bf:52:33:8f:2f:
25
- be:28:ea:ea:cf:a7:13:65:7e:3c:61:2c:38:a0:95:
26
- 45:b8:2d:7e:20:33:38:36:fd:6f:c8:a8:e2:ad:5b:
27
- 3c:91:95:d9:ec:0b:08:7d:81:25:0c:b9:40:6b:97:
28
- 8a:d1:c4:f9:4d:9b:45:57:03:b9:5c:03:90:d0:68:
29
- 29:50:12:87:59:48:f0:19:c3:4d:42:3e:80:c3:4e:
30
- 7e:30:e1:bb:fe:f8:30:55:83:15:ca:af:12:13:3a:
31
- da:e9:91:a3:10:6d:fc:b6:64:5d:89:a3:b4:18:9a:
32
- 7e:ab:90:dd:11:fa:db:af:98:12:58:3c:8f:47:22:
33
- f2:53
16
+ 00:c0:d4:93:f2:7c:b5:64:56:a2:ed:07:ab:96:00:
17
+ 61:8d:74:03:ee:10:dc:7f:92:26:ea:b1:c9:2f:7a:
18
+ 33:d2:05:b2:25:ff:15:c0:fc:37:5c:8c:a9:36:82:
19
+ 66:eb:07:70:f9:ec:b3:ca:88:9d:07:51:ef:f2:18:
20
+ e3:88:3b:f7:f5:b2:29:e2:7f:7b:00:dc:9f:b8:95:
21
+ cf:f4:58:37:0d:cd:b0:ec:9b:d0:c3:ec:71:d8:4d:
22
+ 97:5a:a2:c6:66:2e:c1:dc:4f:38:f3:ba:43:3d:3e:
23
+ 46:12:a8:08:7a:e3:bc:fa:52:3f:b4:4f:3e:25:9f:
24
+ 4a:c9:fd:af:42:cc:62:59:ba:e1:92:1c:6c:57:2d:
25
+ 86:fb:62:08:08:5b:f9:5e:3c:3b:e8:9a:b2:1c:a0:
26
+ 82:58:0c:e9:40:c2:21:c2:71:93:32:68:44:f9:61:
27
+ 13:bc:d6:c8:71:1e:9c:37:f4:b9:cd:13:30:cd:4b:
28
+ 42:c0:c5:95:91:86:b5:e9:7f:f6:37:de:20:8e:cc:
29
+ 05:3d:14:aa:29:c2:bf:4f:34:71:89:07:54:5b:b4:
30
+ cd:13:bd:53:74:e7:6f:33:c5:73:36:24:5b:37:88:
31
+ d1:9e:fc:98:e1:7a:a2:25:65:c5:b1:21:ad:2c:99:
32
+ 0b:03:2e:92:06:ef:c1:31:b6:3b:00:32:00:f5:c4:
33
+ 70:0d:1d:43:1c:a7:31:03:40:a6:95:6c:29:b3:93:
34
+ 54:3b:9f:bd:5f:44:be:ba:04:a9:5c:f1:2d:0d:04:
35
+ 18:51:27:75:47:d7:4b:06:e7:df:bc:2c:4e:c7:4b:
36
+ 18:60:de:51:ce:41:a9:6c:6a:19:d1:a5:0b:03:e5:
37
+ ec:89:10:6b:b4:94:ba:79:b6:06:11:2e:b2:5f:e6:
38
+ 19:f0:f9:ad:3e:4f:a4:cc:3d:7b:69:46:ed:71:1c:
39
+ f6:50:6c:53:08:9e:a3:05:59:de:fb:36:a1:92:ad:
40
+ 7d:78:c6:37:13:d1:1a:9a:56:cc:fb:bd:21:34:ec:
41
+ 8d:a5:73:59:6f:4e:aa:e2:2e:16:d6:d6:89:92:a3:
42
+ 8f:d7:b0:46:cf:07:70:75:dc:dc:b3:70:cf:2a:12:
43
+ 84:4e:41:57:10:68:7b:5f:f9:8f:64:d2:d4:e9:c0:
44
+ eb:b4:68:37:87:40:32:9e:f6:7f:be:31:fb:d5:36:
45
+ a4:15:ba:52:24:c1:5d:ae:d0:41:e3:ff:88:09:7d:
46
+ e7:98:23:bb:09:9b:7b:6d:e4:c0:ca:7a:1b:6e:32:
47
+ 63:69:42:7b:26:9d:c9:f0:c3:b9:58:88:c3:74:9d:
48
+ d3:54:3b:20:09:76:5c:54:4e:60:f7:35:53:e4:f9:
49
+ aa:af:0e:bd:24:d1:0e:c5:8a:7e:26:f0:e7:a0:26:
50
+ d0:9d:01
34
51
  Exponent: 65537 (0x10001)
35
52
  X509v3 extensions:
36
- X509v3 Authority Key Identifier:
37
- 74:85:80:C0:66:C7:DF:37:DE:CF:BD:29:37:AA:03:1D:BE:ED:CD:17
38
- X509v3 Subject Key Identifier:
39
- 97:FB:A6:29:30:AE:9D:F0:D9:85:05:12:AA:D4:C1:D9:EC:0F:5B:CE
40
- X509v3 Subject Alternative Name:
41
- DNS:*.mongodb-dev.net, DNS:mongodb-dev.net
42
53
  X509v3 Key Usage: critical
43
54
  Digital Signature, Key Encipherment
44
55
  X509v3 Extended Key Usage:
45
56
  TLS Web Server Authentication, TLS Web Client Authentication
46
- X509v3 CRL Distribution Points:
47
- Full Name:
48
- URI:http://crl3.digicert.com/DigiCertGlobalG2TLSRSASHA2562020CA1-1.crl
49
- Full Name:
50
- URI:http://crl4.digicert.com/DigiCertGlobalG2TLSRSASHA2562020CA1-1.crl
51
- X509v3 Certificate Policies:
52
- Policy: 2.23.140.1.2.2
53
- CPS: http://www.digicert.com/CPS
54
- Authority Information Access:
55
- OCSP - URI:http://ocsp.digicert.com
56
- CA Issuers - URI:http://cacerts.digicert.com/DigiCertGlobalG2TLSRSASHA2562020CA1-1.crt
57
- X509v3 Basic Constraints:
57
+ X509v3 Basic Constraints: critical
58
58
  CA:FALSE
59
+ X509v3 Subject Key Identifier:
60
+ 03:4A:67:8B:0B:1C:86:4C:9D:D9:E6:E2:43:B1:BA:93:53:50:DE:28
61
+ X509v3 Authority Key Identifier:
62
+ 14:2E:B3:17:B7:58:56:CB:AE:50:09:40:E6:1F:AF:9D:8B:14:C2:C6
63
+ Authority Information Access:
64
+ OCSP - URI:http://r3.o.lencr.org
65
+ CA Issuers - URI:http://r3.i.lencr.org/
66
+ X509v3 Subject Alternative Name:
67
+ DNS:*.g6fyiaq.mesh.mongodb-dev.net, DNS:*.g6fyiaq.mongodb-dev.net
68
+ X509v3 Certificate Policies:
69
+ Policy: 2.23.140.1.2.1
59
70
  CT Precertificate SCTs:
60
71
  Signed Certificate Timestamp:
61
72
  Version : v1 (0x0)
62
- Log ID : EE:CD:D0:64:D5:DB:1A:CE:C5:5C:B7:9D:B4:CD:13:A2:
63
- 32:87:46:7C:BC:EC:DE:C3:51:48:59:46:71:1F:B5:9B
64
- Timestamp : Jun 2 08:44:16.090 2023 GMT
65
- Extensions: none
66
- Signature : ecdsa-with-SHA256
67
- 30:46:02:21:00:88:AC:04:93:84:2C:2C:99:4F:B8:C4:
68
- 06:B5:7F:9B:92:D3:51:25:72:1D:DB:12:D5:C0:AA:8F:
69
- D1:97:39:EF:4C:02:21:00:96:B1:11:40:0F:BA:03:28:
70
- 88:BF:0C:DF:4B:4A:68:67:05:97:7E:F6:BD:6F:F3:0D:
71
- D8:9C:EB:90:75:FF:79:AB
72
- Signed Certificate Timestamp:
73
- Version : v1 (0x0)
74
- Log ID : 48:B0:E3:6B:DA:A6:47:34:0F:E5:6A:02:FA:9D:30:EB:
75
- 1C:52:01:CB:56:DD:2C:81:D9:BB:BF:AB:39:D8:84:73
76
- Timestamp : Jun 2 08:44:16.066 2023 GMT
73
+ Log ID : 3F:17:4B:4F:D7:22:47:58:94:1D:65:1C:84:BE:0D:12:
74
+ ED:90:37:7F:1F:85:6A:EB:C1:BF:28:85:EC:F8:64:6E
75
+ Timestamp : Jun 5 15:02:46.375 2024 GMT
77
76
  Extensions: none
78
77
  Signature : ecdsa-with-SHA256
79
- 30:45:02:21:00:B0:C8:4E:75:71:84:DE:71:8F:D0:27:
80
- 71:6C:4D:B1:E8:20:A3:54:AF:27:A8:A2:FA:AC:46:43:
81
- 4A:08:C1:A9:94:02:20:1A:E1:63:79:E6:DB:4A:98:72:
82
- FF:BD:C4:A2:D8:F5:11:36:4C:95:6E:68:B4:CF:E7:35:
83
- 84:BB:AC:A2:E6:D0:A0
78
+ 30:45:02:21:00:A2:21:6F:59:A8:6F:DF:1F:D8:BF:D5:
79
+ 0C:C8:90:9C:15:F6:02:20:97:22:70:BD:DF:C6:F8:41:
80
+ 02:A3:86:FB:0F:02:20:5F:4C:E5:7D:38:D7:AF:7C:40:
81
+ 41:B1:99:8A:04:83:2C:95:7F:71:34:42:2F:B9:94:DC:
82
+ EE:85:D9:2E:6A:FE:0E
84
83
  Signed Certificate Timestamp:
85
84
  Version : v1 (0x0)
86
- Log ID : DA:B6:BF:6B:3F:B5:B6:22:9F:9B:C2:BB:5C:6B:E8:70:
87
- 91:71:6C:BB:51:84:85:34:BD:A4:3D:30:48:D7:FB:AB
88
- Timestamp : Jun 2 08:44:16.030 2023 GMT
85
+ Log ID : 76:FF:88:3F:0A:B6:FB:95:51:C2:61:CC:F5:87:BA:34:
86
+ B4:A4:CD:BB:29:DC:68:42:0A:9F:E6:67:4C:5A:3A:74
87
+ Timestamp : Jun 5 15:02:46.419 2024 GMT
89
88
  Extensions: none
90
89
  Signature : ecdsa-with-SHA256
91
- 30:44:02:20:51:59:38:3B:FF:76:EC:A2:3E:15:4B:60:
92
- 23:84:20:88:66:C3:64:7C:94:51:B9:1A:BD:87:15:73:
93
- 43:F5:96:BA:02:20:22:F3:7B:75:F4:58:58:C7:48:18:
94
- 85:22:17:FC:ED:07:A2:8B:A0:07:0E:32:0F:16:9C:8B:
95
- E5:AA:6B:86:86:6B
90
+ 30:46:02:21:00:FA:63:32:6E:58:54:6F:36:EE:9C:BA:
91
+ FB:AF:E1:5E:B5:A9:24:8A:81:84:7A:E5:F3:A9:38:42:
92
+ 57:CC:E3:09:C9:02:21:00:E2:BD:7E:3D:45:28:05:91:
93
+ F6:46:1C:EA:5C:31:DA:4A:88:D2:F8:A2:98:9E:E3:A1:
94
+ 36:1D:41:BF:DA:0A:45:D9
96
95
  Signature Algorithm: sha256WithRSAEncryption
97
96
  Signature Value:
98
- be:97:77:21:55:1d:c7:18:5f:52:de:a8:85:a5:d2:ee:48:29:
99
- b3:46:2d:31:02:12:5b:88:1e:09:ac:f4:7e:fc:4d:e4:e8:c9:
100
- 56:7e:de:1e:dc:53:1f:27:1b:dd:07:68:39:1c:2e:91:86:20:
101
- 2a:f0:9a:d1:ff:c4:b5:c2:85:a7:ec:9c:b8:62:31:aa:5b:69:
102
- 8e:37:d4:cc:ec:7b:86:86:b2:a9:6d:60:8b:70:44:ca:72:7a:
103
- d9:a8:54:96:f8:5a:e5:2b:2a:48:5d:4f:53:fb:b3:c9:67:70:
104
- a3:a6:d5:be:6d:99:11:51:89:31:e3:b1:43:54:e0:7c:cd:96:
105
- fd:2d:12:12:eb:a3:8e:b4:12:25:23:bf:a6:5d:70:c5:3f:8c:
106
- 9f:0e:5d:38:d0:4b:aa:67:30:d7:c3:47:76:20:bd:1a:55:2a:
107
- b2:df:37:92:67:88:65:11:15:62:a8:08:3f:93:ee:c1:b1:79:
108
- 33:03:03:0b:46:d4:5f:d2:82:31:77:6c:42:12:89:f4:f8:af:
109
- 32:ab:45:59:91:bf:82:44:69:d2:49:7f:1b:f3:49:28:37:85:
110
- 74:3c:4d:92:1b:56:30:4c:69:79:5d:fc:4d:a6:7b:c6:e7:f5:
111
- 34:e6:dd:c0:25:f8:69:b2:86:3a:44:a9:41:ba:34:cd:fe:aa:
112
- 20:d2:57:ad
97
+ 61:76:67:a7:27:1f:ac:52:59:f6:73:dd:98:6b:52:25:b2:a3:
98
+ 1b:f1:23:8f:07:75:7f:e9:1a:fa:c7:99:61:3c:c4:d6:d4:24:
99
+ a6:2e:e9:67:c6:18:ca:76:57:63:bf:ce:ad:74:92:e1:e5:84:
100
+ 1d:94:80:f2:a9:90:a5:8e:83:74:80:cf:d1:2e:be:f7:13:6e:
101
+ 84:22:44:e1:a9:bd:60:85:81:ad:ee:17:68:d1:e7:83:dd:aa:
102
+ 8e:35:5e:0b:e5:9a:52:23:4d:c6:85:cc:fc:45:09:d3:f7:63:
103
+ 1d:72:69:09:99:36:53:97:43:54:53:2e:47:8d:ec:29:f1:d2:
104
+ 54:e4:35:f9:84:a1:ef:f0:4b:23:cf:1c:b3:06:c5:6a:bc:d9:
105
+ 7e:b3:8c:3a:76:74:28:d8:2b:75:b2:fd:bb:c3:62:02:46:ed:
106
+ ca:47:b2:c9:7a:f3:99:e3:c8:5c:6a:c0:02:a4:25:b9:2d:82:
107
+ 87:6c:7a:1f:5d:41:37:53:8f:8a:71:91:13:ed:d7:3f:ac:29:
108
+ 58:83:08:1f:1d:62:d4:e9:d9:c8:63:05:0d:24:44:45:44:58:
109
+ be:4a:09:ff:e5:56:e8:67:ad:2d:ee:42:f9:a3:fa:fa:3f:72:
110
+ ab:eb:eb:4b:23:94:f3:ac:91:f5:34:6a:8a:3d:2f:89:52:54:
111
+ a4:7e:5f:db
113
112
 
114
113
  -----BEGIN CERTIFICATE-----
115
- MIIG5zCCBc+gAwIBAgIQA6g5A+iEzSQcnLEnjAp6mzANBgkqhkiG9w0BAQsFADBZ
116
- MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMTMwMQYDVQQDEypE
117
- aWdpQ2VydCBHbG9iYWwgRzIgVExTIFJTQSBTSEEyNTYgMjAyMCBDQTEwHhcNMjMw
118
- NjAyMDAwMDAwWhcNMjQwNjA0MjM1OTU5WjBnMQswCQYDVQQGEwJVUzERMA8GA1UE
119
- CBMITmV3IFlvcmsxETAPBgNVBAcTCE5ldyBZb3JrMRYwFAYDVQQKEw1Nb25nb0RC
120
- LCBJbmMuMRowGAYDVQQDDBEqLm1vbmdvZGItZGV2Lm5ldDCCASIwDQYJKoZIhvcN
121
- AQEBBQADggEPADCCAQoCggEBAN+R2BibQZyDM1jpwkIAWqXAYejfOSBGM66HNMQT
122
- idLJTOtvpc3cMQe0z1N0mzwy6N9LZIiiA4fpJ/l7V8q+e1EP8rF4RQ5fBukKyf5n
123
- 0Bk8jEEBX7dmoKQ7VBjCW16x155qePO9JB38zkPSdGCD9PNVpN2C8OnxPf/RtjIP
124
- yOSqlb9SM48vvijq6s+nE2V+PGEsOKCVRbgtfiAzODb9b8io4q1bPJGV2ewLCH2B
125
- JQy5QGuXitHE+U2bRVcDuVwDkNBoKVASh1lI8BnDTUI+gMNOfjDhu/74MFWDFcqv
126
- EhM62umRoxBt/LZkXYmjtBiafquQ3RH626+YElg8j0ci8lMCAwEAAaOCA5swggOX
127
- MB8GA1UdIwQYMBaAFHSFgMBmx9833s+9KTeqAx2+7c0XMB0GA1UdDgQWBBSX+6Yp
128
- MK6d8NmFBRKq1MHZ7A9bzjAtBgNVHREEJjAkghEqLm1vbmdvZGItZGV2Lm5ldIIP
129
- bW9uZ29kYi1kZXYubmV0MA4GA1UdDwEB/wQEAwIFoDAdBgNVHSUEFjAUBggrBgEF
130
- BQcDAQYIKwYBBQUHAwIwgZ8GA1UdHwSBlzCBlDBIoEagRIZCaHR0cDovL2NybDMu
131
- ZGlnaWNlcnQuY29tL0RpZ2lDZXJ0R2xvYmFsRzJUTFNSU0FTSEEyNTYyMDIwQ0Ex
132
- LTEuY3JsMEigRqBEhkJodHRwOi8vY3JsNC5kaWdpY2VydC5jb20vRGlnaUNlcnRH
133
- bG9iYWxHMlRMU1JTQVNIQTI1NjIwMjBDQTEtMS5jcmwwPgYDVR0gBDcwNTAzBgZn
134
- gQwBAgIwKTAnBggrBgEFBQcCARYbaHR0cDovL3d3dy5kaWdpY2VydC5jb20vQ1BT
135
- MIGHBggrBgEFBQcBAQR7MHkwJAYIKwYBBQUHMAGGGGh0dHA6Ly9vY3NwLmRpZ2lj
136
- ZXJ0LmNvbTBRBggrBgEFBQcwAoZFaHR0cDovL2NhY2VydHMuZGlnaWNlcnQuY29t
137
- L0RpZ2lDZXJ0R2xvYmFsRzJUTFNSU0FTSEEyNTYyMDIwQ0ExLTEuY3J0MAkGA1Ud
138
- EwQCMAAwggF+BgorBgEEAdZ5AgQCBIIBbgSCAWoBaAB3AO7N0GTV2xrOxVy3nbTN
139
- E6Iyh0Z8vOzew1FIWUZxH7WbAAABiHtHY1oAAAQDAEgwRgIhAIisBJOELCyZT7jE
140
- BrV/m5LTUSVyHdsS1cCqj9GXOe9MAiEAlrERQA+6AyiIvwzfS0poZwWXfva9b/MN
141
- 2JzrkHX/easAdgBIsONr2qZHNA/lagL6nTDrHFIBy1bdLIHZu7+rOdiEcwAAAYh7
142
- R2NCAAAEAwBHMEUCIQCwyE51cYTecY/QJ3FsTbHoIKNUryeoovqsRkNKCMGplAIg
143
- GuFjeebbSphy/73Eotj1ETZMlW5otM/nNYS7rKLm0KAAdQDatr9rP7W2Ip+bwrtc
144
- a+hwkXFsu1GEhTS9pD0wSNf7qwAAAYh7R2MeAAAEAwBGMEQCIFFZODv/duyiPhVL
145
- YCOEIIhmw2R8lFG5Gr2HFXND9Za6AiAi83t19FhYx0gYhSIX/O0HoougBw4yDxac
146
- i+Wqa4aGazANBgkqhkiG9w0BAQsFAAOCAQEAvpd3IVUdxxhfUt6ohaXS7kgps0Yt
147
- MQISW4geCaz0fvxN5OjJVn7eHtxTHycb3QdoORwukYYgKvCa0f/EtcKFp+ycuGIx
148
- qltpjjfUzOx7hoayqW1gi3BEynJ62ahUlvha5SsqSF1PU/uzyWdwo6bVvm2ZEVGJ
149
- MeOxQ1TgfM2W/S0SEuujjrQSJSO/pl1wxT+Mnw5dONBLqmcw18NHdiC9GlUqst83
150
- kmeIZREVYqgIP5PuwbF5MwMDC0bUX9KCMXdsQhKJ9PivMqtFWZG/gkRp0kl/G/NJ
151
- KDeFdDxNkhtWMExpeV38TaZ7xuf1NObdwCX4abKGOkSpQbo0zf6qINJXrQ==
114
+ MIIGIDCCBQigAwIBAgISBK7CRfy6rhbWOH7eBMQrQf2gMA0GCSqGSIb3DQEBCwUA
115
+ MDIxCzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1MZXQncyBFbmNyeXB0MQswCQYDVQQD
116
+ EwJSMzAeFw0yNDA2MDUxNDAyNDVaFw0yNDA5MDMxNDAyNDRaMCQxIjAgBgNVBAMM
117
+ GSouZzZmeWlhcS5tb25nb2RiLWRldi5uZXQwggIiMA0GCSqGSIb3DQEBAQUAA4IC
118
+ DwAwggIKAoICAQDA1JPyfLVkVqLtB6uWAGGNdAPuENx/kibqsckvejPSBbIl/xXA
119
+ /DdcjKk2gmbrB3D57LPKiJ0HUe/yGOOIO/f1sinif3sA3J+4lc/0WDcNzbDsm9DD
120
+ 7HHYTZdaosZmLsHcTzjzukM9PkYSqAh647z6Uj+0Tz4ln0rJ/a9CzGJZuuGSHGxX
121
+ LYb7YggIW/lePDvomrIcoIJYDOlAwiHCcZMyaET5YRO81shxHpw39LnNEzDNS0LA
122
+ xZWRhrXpf/Y33iCOzAU9FKopwr9PNHGJB1RbtM0TvVN0528zxXM2JFs3iNGe/Jjh
123
+ eqIlZcWxIa0smQsDLpIG78ExtjsAMgD1xHANHUMcpzEDQKaVbCmzk1Q7n71fRL66
124
+ BKlc8S0NBBhRJ3VH10sG59+8LE7HSxhg3lHOQalsahnRpQsD5eyJEGu0lLp5tgYR
125
+ LrJf5hnw+a0+T6TMPXtpRu1xHPZQbFMInqMFWd77NqGSrX14xjcT0RqaVsz7vSE0
126
+ 7I2lc1lvTqriLhbW1omSo4/XsEbPB3B13NyzcM8qEoROQVcQaHtf+Y9k0tTpwOu0
127
+ aDeHQDKe9n++MfvVNqQVulIkwV2u0EHj/4gJfeeYI7sJm3tt5MDKehtuMmNpQnsm
128
+ ncnww7lYiMN0ndNUOyAJdlxUTmD3NVPk+aqvDr0k0Q7Fin4m8OegJtCdAQIDAQAB
129
+ o4ICPDCCAjgwDgYDVR0PAQH/BAQDAgWgMB0GA1UdJQQWMBQGCCsGAQUFBwMBBggr
130
+ BgEFBQcDAjAMBgNVHRMBAf8EAjAAMB0GA1UdDgQWBBQDSmeLCxyGTJ3Z5uJDsbqT
131
+ U1DeKDAfBgNVHSMEGDAWgBQULrMXt1hWy65QCUDmH6+dixTCxjBVBggrBgEFBQcB
132
+ AQRJMEcwIQYIKwYBBQUHMAGGFWh0dHA6Ly9yMy5vLmxlbmNyLm9yZzAiBggrBgEF
133
+ BQcwAoYWaHR0cDovL3IzLmkubGVuY3Iub3JnLzBEBgNVHREEPTA7gh4qLmc2Znlp
134
+ YXEubWVzaC5tb25nb2RiLWRldi5uZXSCGSouZzZmeWlhcS5tb25nb2RiLWRldi5u
135
+ ZXQwEwYDVR0gBAwwCjAIBgZngQwBAgEwggEFBgorBgEEAdZ5AgQCBIH2BIHzAPEA
136
+ dgA/F0tP1yJHWJQdZRyEvg0S7ZA3fx+FauvBvyiF7PhkbgAAAY/o7IdnAAAEAwBH
137
+ MEUCIQCiIW9ZqG/fH9i/1QzIkJwV9gIglyJwvd/G+EECo4b7DwIgX0zlfTjXr3xA
138
+ QbGZigSDLJV/cTRCL7mU3O6F2S5q/g4AdwB2/4g/Crb7lVHCYcz1h7o0tKTNuync
139
+ aEIKn+ZnTFo6dAAAAY/o7IeTAAAEAwBIMEYCIQD6YzJuWFRvNu6cuvuv4V61qSSK
140
+ gYR65fOpOEJXzOMJyQIhAOK9fj1FKAWR9kYc6lwx2kqI0viimJ7joTYdQb/aCkXZ
141
+ MA0GCSqGSIb3DQEBCwUAA4IBAQBhdmenJx+sUln2c92Ya1IlsqMb8SOPB3V/6Rr6
142
+ x5lhPMTW1CSmLulnxhjKdldjv86tdJLh5YQdlIDyqZCljoN0gM/RLr73E26EIkTh
143
+ qb1ghYGt7hdo0eeD3aqONV4L5ZpSI03Ghcz8RQnT92MdcmkJmTZTl0NUUy5Hjewp
144
+ 8dJU5DX5hKHv8EsjzxyzBsVqvNl+s4w6dnQo2Ct1sv27w2ICRu3KR7LJevOZ48hc
145
+ asACpCW5LYKHbHofXUE3U4+KcZET7dc/rClYgwgfHWLU6dnIYwUNJERFRFi+Sgn/
146
+ 5VboZ60t7kL5o/r6P3Kr6+tLI5TzrJH1NGqKPS+JUlSkfl/b
152
147
  -----END CERTIFICATE-----
@@ -4,7 +4,7 @@
4
4
 
5
5
  require 'tmpdir'
6
6
 
7
- host = 'freecluster-shard-00-00-oztdp.mongodb-dev.net'
7
+ host = 'ac-ulwcmzm-shard-00-00.g6fyiaq.mongodb-dev.net'
8
8
 
9
9
  output = `openssl s_client -showcerts -servername #{host} -connect #{host}:27017 </dev/null`
10
10
 
@@ -17,6 +17,12 @@ module Constraints
17
17
  end
18
18
  end
19
19
 
20
+ def forbid_x509_auth
21
+ before(:all) do
22
+ skip 'X.509 auth not allowed' if SpecConfig.instance.x509_auth?
23
+ end
24
+ end
25
+
20
26
  def max_bson_version(version)
21
27
  required_version = version.split('.').map(&:to_i)
22
28
  actual_version = bson_version(required_version.length)
data/spec/support/ocsp CHANGED
@@ -1 +1 @@
1
- spec/support/../../.mod/drivers-evergreen-tools/.evergreen/ocsp
1
+ ../../.mod/drivers-evergreen-tools/.evergreen/ocsp
@@ -0,0 +1,27 @@
1
+ # frozen_string_literal: true
2
+ # rubocop:todo all
3
+
4
+ require 'stringio'
5
+
6
+ # A "Logger-alike" class, quacking like ::Logger, used for recording messages
7
+ # as they are written to the log
8
+ class RecordingLogger < Logger
9
+ def initialize(*args, **kwargs)
10
+ @buffer = StringIO.new
11
+ super(@buffer, *args, **kwargs)
12
+ end
13
+
14
+ # Accesses the raw contents of the log
15
+ #
16
+ # @return [ String ] the raw contents of the log
17
+ def contents
18
+ @buffer.string
19
+ end
20
+
21
+ # Returns the contents of the log as individual lines.
22
+ #
23
+ # @return [ Array<String> ] the individual log lines
24
+ def lines
25
+ contents.split(/\n/)
26
+ end
27
+ end