Skip to content
Merged
Show file tree
Hide file tree
Changes from 17 commits
Commits
Show all changes
27 commits
Select commit Hold shift + click to select a range
dae06d1
Expose retrieving certificate chains in SSL module
matiuszka Sep 7, 2023
676f9b1
Merge branch 'main' into main
matiuszka Sep 7, 2023
1418dd1
Review remarks applied
matiuszka Sep 8, 2023
0cdfe19
Trim white spaces
matiuszka Sep 8, 2023
4a51db2
Review fixes.
matiuszka Sep 11, 2023
6206f4f
Merge branch 'main' into main
matiuszka Sep 12, 2023
701c62a
Update Lib/ssl.py
matiuszka Sep 13, 2023
4c31619
Merge branch 'main' into main
matiuszka Sep 19, 2023
f925937
Review fixes
matiuszka Sep 19, 2023
5cb139d
NEWS entry.
gpshead Sep 20, 2023
45a19dc
Merge branch 'python:main' into main
matiuszka May 6, 2024
d276aeb
Return consistent types for `get_un/verified_chain` in `SSLObject` an…
matiuszka May 6, 2024
0d15ad0
Merge branch 'main' into main
matiuszka May 6, 2024
0574858
Merge branch 'main' into main
matiuszka May 7, 2024
3039cc7
Merge branch 'main' into main
matiuszka May 9, 2024
c690d4d
Merge branch 'main' into main
matiuszka May 13, 2024
c29d0fe
Merge branch 'main' into main
matiuszka May 17, 2024
c1a55be
Merge branch 'main' into main
matiuszka May 22, 2024
b3aeb06
Merge branch 'main' into main
matiuszka Jul 14, 2024
10ab5f0
Merge branch 'main' into main
matiuszka Jul 17, 2024
19bf5f1
Simple test for un/verified chain
matiuszka Aug 7, 2024
d962206
Merge branch 'main' into main
matiuszka Aug 7, 2024
c8c8fcb
Merge branch 'main' into main
matiuszka Aug 7, 2024
44166ad
Merge branch 'main' into main
matiuszka Aug 14, 2024
e0a1dc6
Tests improvements
matiuszka Aug 14, 2024
f2c6a18
Merge branch 'main' into main
matiuszka Aug 14, 2024
5595d6e
Merge branch 'main' into main
matiuszka Aug 16, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 12 additions & 2 deletions Lib/ssl.py
Original file line number Diff line number Diff line change
Expand Up @@ -1165,11 +1165,21 @@ def getpeercert(self, binary_form=False):

@_sslcopydoc
def get_verified_chain(self):
return self._sslobj.get_verified_chain()
chain = self._sslobj.get_verified_chain()

if chain is None:
return []

return [cert.public_bytes(_ssl.ENCODING_DER) for cert in chain]

@_sslcopydoc
def get_unverified_chain(self):
return self._sslobj.get_unverified_chain()
chain = self._sslobj.get_unverified_chain()

if chain is None:
return []

return [cert.public_bytes(_ssl.ENCODING_DER) for cert in chain]

@_sslcopydoc
def selected_npn_protocol(self):
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
You can now get the raw TLS certificate chains from TLS connections via
:meth:`ssl.SSLSocket.get_verified_chain` and
:meth:`ssl.SSLSocket.get_unverified_chain` methods.

Contributed by Mateusz Nowak.