You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We are not able to get peer certificate when ClientResponseError is raised.
Describe the solution you'd like
try:
async with aiohttp.ClientSession(
timeout=aiohttp.ClientTimeout(total=60.0),
request_class=Latin1HeadersClientRequest,
) as session:
...
except aiohttp.ClientResponseError as e:
sslobj = e.connection.transport.get_extra_info("ssl_object") # <-- LIKE THIS
Describe alternatives you've considered
No alternative found
Related component
Client
Additional context
We need to perform advanced certificate validation for all response codes.
Code of Conduct
I agree to follow the aio-libs Code of Conduct
The text was updated successfully, but these errors were encountered:
In the snippet, transport is closed at the desired line; ssl_object doesn't exist.
Maybe we can extract a reference to ssl_object at the moment of raising the exception in ResponseHandler.lonnection_lost() from client_proto.py?
The patch looks trivial but I never tried it yet, and I have no idea what part of stores SSLObject is available after destroying the session and its SSLContext.
We need a champion for this issue.
Is your feature request related to a problem?
We are not able to get peer certificate when ClientResponseError is raised.
Describe the solution you'd like
Describe alternatives you've considered
No alternative found
Related component
Client
Additional context
We need to perform advanced certificate validation for all response codes.
Code of Conduct
The text was updated successfully, but these errors were encountered: