mongo 2.21.2 → 2.21.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.
- checksums.yaml +4 -4
- data/lib/mongo/socket/ssl.rb +13 -4
- data/lib/mongo/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: aa269cb6bbc5d94255ef1dfb56b4c963304437f9ddcc064b43545485a9892ffa
|
4
|
+
data.tar.gz: e0fe8f3cadadc8ef70a28d82ea512bd779d9380738bdb814d7d8c8f59618b65d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6819366f273f957c46eb5a9dae0a4de7cfe12f1bfea1fe60c412631650d0337d19e8f543d5608b04e8a2c7c57cb84ce3c5598ccaca0eec0984a8dddc9876c5d8
|
7
|
+
data.tar.gz: 2aebef8f8d12d6770b5e07cd516909d29762d76352518b7dfa79433d3eaf56fd9871086c8531e4dad21c70829bf268c7f834c2cf9f3bbbbf01fe787a803f2dc3
|
data/lib/mongo/socket/ssl.rb
CHANGED
@@ -23,6 +23,7 @@ module Mongo
|
|
23
23
|
# @since 2.0.0
|
24
24
|
class SSL < Socket
|
25
25
|
include OpenSSL
|
26
|
+
include Loggable
|
26
27
|
|
27
28
|
# Initializes a new TLS socket.
|
28
29
|
#
|
@@ -455,12 +456,15 @@ module Mongo
|
|
455
456
|
end
|
456
457
|
|
457
458
|
def verify_ocsp_endpoint!(socket, timeout = nil)
|
458
|
-
unless verify_ocsp_endpoint?
|
459
|
-
return
|
460
|
-
end
|
459
|
+
return unless verify_ocsp_endpoint?
|
461
460
|
|
462
461
|
cert = socket.peer_cert
|
463
|
-
ca_cert = socket.peer_cert_chain
|
462
|
+
ca_cert = find_issuer(cert, socket.peer_cert_chain)
|
463
|
+
|
464
|
+
unless ca_cert
|
465
|
+
log_warn("TLS certificate of '#{host_name}' could not be definitively verified via OCSP: issuer certificate not found in the chain.")
|
466
|
+
return
|
467
|
+
end
|
464
468
|
|
465
469
|
verifier = OcspVerifier.new(@host_name, cert, ca_cert, context.cert_store,
|
466
470
|
**Utils.shallow_symbolize_keys(options).merge(timeout: timeout))
|
@@ -503,6 +507,11 @@ module Mongo
|
|
503
507
|
end
|
504
508
|
end
|
505
509
|
end
|
510
|
+
|
511
|
+
# Find the issuer certificate in the chain.
|
512
|
+
def find_issuer(cert, cert_chain)
|
513
|
+
cert_chain.find { |c| c.subject == cert.issuer }
|
514
|
+
end
|
506
515
|
end
|
507
516
|
end
|
508
517
|
end
|
data/lib/mongo/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: mongo
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.21.
|
4
|
+
version: 2.21.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- The MongoDB Ruby Team
|
@@ -553,7 +553,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
553
553
|
- !ruby/object:Gem::Version
|
554
554
|
version: '0'
|
555
555
|
requirements: []
|
556
|
-
rubygems_version: 3.
|
556
|
+
rubygems_version: 3.7.1
|
557
557
|
specification_version: 4
|
558
558
|
summary: Ruby driver for MongoDB
|
559
559
|
test_files: []
|