@@ -104,7 +104,17 @@ def __install_ssl_tracking() -> None:
104104 if getattr (context_cls , "_rsloop_tracking_installed" , False ):
105105 return
106106
107+ def mark_default_verify_paths (context ):
108+ context .__dict__ ["_rsloop_use_default_verify_paths" ] = True
109+ return context
110+
111+ orig_create_default_context = __ssl .create_default_context
107112 orig_load_cert_chain = context_cls .load_cert_chain
113+ orig_load_default_certs = context_cls .load_default_certs
114+ orig_set_default_verify_paths = context_cls .set_default_verify_paths
115+
116+ def create_default_context (* args , ** kwargs ):
117+ return mark_default_verify_paths (orig_create_default_context (* args , ** kwargs ))
108118
109119 def load_cert_chain (self , certfile , keyfile = None , password = None ):
110120 result = orig_load_cert_chain (
@@ -128,7 +138,20 @@ def load_cert_chain(self, certfile, keyfile=None, password=None):
128138 self .__dict__ ["_rsloop_key_password" ] = password_value
129139 return result
130140
141+ def load_default_certs (self , * args , ** kwargs ):
142+ result = orig_load_default_certs (self , * args , ** kwargs )
143+ mark_default_verify_paths (self )
144+ return result
145+
146+ def set_default_verify_paths (self ):
147+ result = orig_set_default_verify_paths (self )
148+ mark_default_verify_paths (self )
149+ return result
150+
151+ __ssl .create_default_context = create_default_context
131152 context_cls .load_cert_chain = load_cert_chain
153+ context_cls .load_default_certs = load_default_certs
154+ context_cls .set_default_verify_paths = set_default_verify_paths
132155 context_cls ._rsloop_tracking_installed = True
133156
134157
0 commit comments