From b10eaa926a5ee57cea7182ae0adc8dd1c818b0ab Mon Sep 17 00:00:00 2001 From: ecoen66 Date: Sat, 19 Feb 2022 22:44:54 -0600 Subject: [PATCH] Update imcsession.py Added support for DNA Center and CNR appliances. Added allowance for ancient IMC firmware --- imcsdk/imcsession.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/imcsdk/imcsession.py b/imcsdk/imcsession.py index 2e070e85..05ed76c4 100755 --- a/imcsdk/imcsession.py +++ b/imcsdk/imcsession.py @@ -479,7 +479,7 @@ def _validate_connection(self): return False def _validate_model(self, model): - valid_model_prefixes = ["UCSC", "UCS-E", "UCSS", "HX", "APIC-SERVER-"] + valid_model_prefixes = ["UCSC", "UCS-E", "UCSS", "HX", "APIC-SERVER-", "DN1", "DN2"] valid_models = ["R460-4640810", "C260-BASE-2646"] if model in valid_models: @@ -541,8 +541,11 @@ def _update_version(self, response=None): if response.error_code != 0: raise ImcException(response.error_code, response.error_descr) - firmware = response.out_config.child[0] - self._set_version(firmware.version) + if len(response.out_config.child) > 0: + firmware = response.out_config.child[0] + self._set_version(firmware.version) + else: + self._set_version("ancient") def _update_domain_name_and_ip(self): from .imcmethodfactory import config_resolve_dn