Skip to content

Commit be05646

Browse files
authored
Merge pull request #31 from cisco-ie/builder-set-nologic
Move SSL target override into builder construct
2 parents aa3ae07 + 352a1ea commit be05646

File tree

1 file changed

+13
-10
lines changed

1 file changed

+13
-10
lines changed

src/cisco_gnmi/builder.py

Lines changed: 13 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -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

Comments
 (0)