@@ -225,16 +225,7 @@ def set_ssl_target_override(self, ssl_target_name_override=None):
225225 -------
226226 self
227227 """
228- if ssl_target_name_override is None :
229- if not self .__root_certificates :
230- raise Exception ("Deriving override requires root certificate!" )
231- ssl_target_name_override = get_cn_from_cert (self .__root_certificates )
232- logging .warning (
233- "Overriding SSL option from certificate could increase MITM susceptibility!"
234- )
235- self .set_channel_option (
236- "grpc.ssl_target_name_override" , ssl_target_name_override
237- )
228+ self .__ssl_target_name_override = ssl_target_name_override
238229 return self
239230
240231 def set_channel_option (self , name , value ):
@@ -296,6 +287,17 @@ def construct(self):
296287 else :
297288 channel_creds = channel_ssl_creds
298289 logging .debug ("Using SSL credentials, no metadata authentication." )
290+ if self .__ssl_target_name_override is not False :
291+ if self .__ssl_target_name_override is None :
292+ if not self .__root_certificates :
293+ raise Exception ("Deriving override requires root certificate!" )
294+ self .__ssl_target_name_override = get_cn_from_cert (self .__root_certificates )
295+ logging .warning (
296+ "Overriding SSL option from certificate could increase MITM susceptibility!"
297+ )
298+ self .set_channel_option (
299+ "grpc.ssl_target_name_override" , self .__ssl_target_name_override
300+ )
299301 channel = grpc .secure_channel (
300302 self .__target_netloc .netloc , channel_creds , self .__channel_options
301303 )
@@ -320,4 +322,5 @@ def _reset(self):
320322 self .__username = None
321323 self .__password = None
322324 self .__channel_options = None
325+ self .__ssl_target_name_override = False
323326 return self
0 commit comments