diff options
author | digambar <digambarpatil15@yahoo.co.in> | 2019-08-21 03:43:30 -0400 |
---|---|---|
committer | digambar <digambarpatil15@yahoo.co.in> | 2019-08-21 03:45:47 -0400 |
commit | fa471c680c6918e93627df334b5cbde8c591345c (patch) | |
tree | ff7d0019fa39ee8f282af95bce1b7b6c9aa7239c | |
parent | 62c24fce69f8458f8a35bd226f105e3300830b7a (diff) | |
download | ironic-fa471c680c6918e93627df334b5cbde8c591345c.tar.gz |
DRAC: Fix OOB introspection to use pxe_enabled in idrac driver
Baremetal nodes fail to pxe boot during OpenStack deployment.
Reason of this failure is because we are not checking the actual
pxe device interface and updating the port pxe_enabled field.
This patch make sure that everytime when port is created, it checks
BIOS and UEFI boot modes of node and fetch the pxe device interfaces
values matching to nic id and then update the port's pxe_enabled field.
Rocky and earlier releases do only support Python-dracclient==1.3.0 so
there are some methods like list_nic_settings etc don't exist in 1.3.0
version so I implemented list_nic_settings method in this change to
get the expected result from wsman client.
Story: 2005364
Task: 30339
(cherry picked from commit 2b74d940c932c1bb4498f47372c0545e4480799f)
(cherry picked from commit ab79afd5776c01344c3c2d3ce97bbf05e3cd2ae1)
Change-Id: Icccc7fa79481f636e9d13ab2fe363d50afa7cd50
6 files changed, 1056 insertions, 5 deletions
diff --git a/ironic/drivers/modules/drac/common.py b/ironic/drivers/modules/drac/common.py index 3e4205a5a..46d606a05 100644 --- a/ironic/drivers/modules/drac/common.py +++ b/ironic/drivers/modules/drac/common.py @@ -118,7 +118,7 @@ def parse_driver_info(node): def get_drac_client(node): - """Returns a DRACClient object from python-dracclient library. + """Return a DRACClient object from python-dracclient library. :param node: an ironic node object. :returns: a DRACClient object. diff --git a/ironic/drivers/modules/drac/inspect.py b/ironic/drivers/modules/drac/inspect.py index bdccfd018..610bdc47e 100644 --- a/ironic/drivers/modules/drac/inspect.py +++ b/ironic/drivers/modules/drac/inspect.py @@ -28,6 +28,11 @@ from ironic.drivers.modules.drac import common as drac_common from ironic import objects drac_exceptions = importutils.try_import('dracclient.exceptions') +drac_utils = importutils.try_import('dracclient.utils') + +DCIM_NICEnumeration = ('http://schemas.dell.com/wbem/wscim/1/cim-schema/2/' + 'DCIM_NICEnumeration') # noqa +NS_WSMAN = 'http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd' LOG = logging.getLogger(__name__) @@ -119,10 +124,16 @@ class DracInspect(base.InspectInterface): {'node_uuid': node.uuid, 'error': exc}) raise exception.HardwareInspectionFailure(error=exc) + pxe_dev_nics = self._get_pxe_dev_nics(client, nics, node) + if not pxe_dev_nics: + LOG.warning('No PXE enabled NIC was found for node ' + '%(node_uuid)s.', {'node_uuid': node.uuid}) + for nic in nics: try: port = objects.Port(task.context, address=nic.mac, - node_id=node.id) + node_id=node.id, + pxe_enabled=(nic.id in pxe_dev_nics)) port.create() LOG.info('Port created with MAC address %(mac)s ' 'for node %(node_uuid)s during inspection', @@ -161,3 +172,79 @@ class DracInspect(base.InspectInterface): return cpu.cores * 2 else: return cpu.cores + + def _get_pxe_dev_nics(self, client, nics, node): + """Get a list of pxe device interfaces. + + :param client: Dracclient to list the bios settings and nics + :param nics: list of nics + :param node: Baremetal Node object + + :returns: list of pxe device interfaces. + """ + pxe_dev_nics = [] + nic_cap = {} + pxe_params = ["PxeDev1EnDis", "PxeDev2EnDis", + "PxeDev3EnDis", "PxeDev4EnDis"] + pxe_nics = ["PxeDev1Interface", "PxeDev2Interface", + "PxeDev3Interface", "PxeDev4Interface"] + + try: + bios_settings = client.list_bios_settings() + except drac_exceptions.BaseClientException as exc: + LOG.error('DRAC driver failed to list bios settings ' + 'for %(node_uuid)s. Reason: %(error)s.', + {'node_uuid': node.uuid, 'error': exc}) + raise exception.HardwareInspectionFailure(error=exc) + + if bios_settings["BootMode"].current_value == "Uefi": + for param, nic in zip(pxe_params, pxe_nics): + if param in bios_settings and bios_settings[ + param].current_value == "Enabled": + pxe_dev_nics.append( + bios_settings[nic].current_value) + elif bios_settings["BootMode"].current_value == "Bios": + for nic in nics: + try: + nic_cap = self._list_nic_settings(client, nic.id) + except drac_exceptions.BaseClientException as exc: + LOG.error('DRAC driver failed to list nic settings ' + 'for %(node_uuid)s. Reason: %(error)s.', + {'node_uuid': node.uuid, 'error': exc}) + raise exception.HardwareInspectionFailure(error=exc) + + if ("LegacyBootProto" in nic_cap and nic_cap[ + 'LegacyBootProto'] == "PXE"): + pxe_dev_nics.append(nic.id) + + return pxe_dev_nics + + def _list_nic_settings(self, client, nic_id): + """Get nic attributes. + + :param client: Dracclient instance + :param nic_id: an FQDD of NIC + + :returns: a dict of FQDD, LegacyBootProto. + """ + result = {} + doc = client.client.enumerate(DCIM_NICEnumeration) + items = doc.find('.//{%s}Items' % NS_WSMAN) + + for item in items: + if nic_id == drac_utils.get_wsman_resource_attr( + item, DCIM_NICEnumeration, 'FQDD'): + name = drac_utils.get_wsman_resource_attr(item, + DCIM_NICEnumeration, + 'AttributeName') + current_value = drac_utils.get_wsman_resource_attr( + item, + DCIM_NICEnumeration, + 'CurrentValue', + nullable=True) + + if name == 'LegacyBootProto': + result[name] = current_value + result['FQDD'] = nic_id + + return result diff --git a/ironic/tests/unit/drivers/modules/drac/test_inspect.py b/ironic/tests/unit/drivers/modules/drac/test_inspect.py index 49f9ea36d..ba81037b2 100644 --- a/ironic/tests/unit/drivers/modules/drac/test_inspect.py +++ b/ironic/tests/unit/drivers/modules/drac/test_inspect.py @@ -15,6 +15,8 @@ Test class for DRAC inspection interface """ +from xml.etree import ElementTree + from dracclient import exceptions as drac_exceptions import mock @@ -125,6 +127,20 @@ class DracInspectionTestCase(db_base.DbTestCase): 'speed': '1000 Mbps', 'duplex': 'full duplex', 'media_type': 'Base T'}] + + bios_boot_settings = {'BootMode': {'current_value': 'Bios'}} + uefi_boot_settings = {'BootMode': {'current_value': 'Uefi'}, + 'PxeDev1EnDis': {'current_value': 'Enabled'}, + 'PxeDev2EnDis': {'current_value': 'Disabled'}, + 'PxeDev3EnDis': {'current_value': 'Disabled'}, + 'PxeDev4EnDis': {'current_value': 'Disabled'}, + 'PxeDev1Interface': { + 'current_value': 'NIC.Embedded.1-1-1'}, + 'PxeDev2Interface': None, + 'PxeDev3Interface': None, + 'PxeDev4Interface': None} + self.nic_settings = {'LegacyBootProto': 'PXE', + 'FQDD': 'NIC.Embedded.1-1-1'} self.memory = [test_utils.dict_to_namedtuple(values=m) for m in memory] self.cpus = [test_utils.dict_to_namedtuple(values=c) for c in cpus] self.virtual_disks = [test_utils.dict_to_namedtuple(values=vd) @@ -132,27 +148,36 @@ class DracInspectionTestCase(db_base.DbTestCase): self.physical_disks = [test_utils.dict_to_namedtuple(values=pd) for pd in physical_disks] self.nics = [test_utils.dict_to_namedtuple(values=n) for n in nics] + self.bios_boot_settings = test_utils.dict_of_object(bios_boot_settings) + self.uefi_boot_settings = test_utils.dict_of_object(uefi_boot_settings) def test_get_properties(self): expected = drac_common.COMMON_PROPERTIES driver = drac_inspect.DracInspect() self.assertEqual(expected, driver.get_properties()) + @mock.patch.object(drac_inspect.DracInspect, '_list_nic_settings', + spec_set=True, autospec=True) @mock.patch.object(drac_common, 'get_drac_client', spec_set=True, autospec=True) @mock.patch.object(objects.Port, 'create', spec_set=True, autospec=True) - def test_inspect_hardware(self, mock_port_create, mock_get_drac_client): + def test_inspect_hardware(self, + mock_port_create, + mock_get_drac_client, + mock__list_nic_settings): expected_node_properties = { 'memory_mb': 32768, 'local_gb': 1116, 'cpus': 18, 'cpu_arch': 'x86_64'} mock_client = mock.Mock() + mock__list_nic_settings.return_value = self.nic_settings mock_get_drac_client.return_value = mock_client mock_client.list_memory.return_value = self.memory mock_client.list_cpus.return_value = self.cpus mock_client.list_virtual_disks.return_value = self.virtual_disks mock_client.list_nics.return_value = self.nics + mock_client.list_bios_settings.return_value = self.bios_boot_settings with task_manager.acquire(self.context, self.node.uuid, shared=True) as task: @@ -180,23 +205,28 @@ class DracInspectionTestCase(db_base.DbTestCase): self.assertRaises(exception.HardwareInspectionFailure, task.driver.inspect.inspect_hardware, task) + @mock.patch.object(drac_inspect.DracInspect, '_list_nic_settings', + spec_set=True, autospec=True) @mock.patch.object(drac_common, 'get_drac_client', spec_set=True, autospec=True) @mock.patch.object(objects.Port, 'create', spec_set=True, autospec=True) def test_inspect_hardware_no_virtual_disk(self, mock_port_create, - mock_get_drac_client): + mock_get_drac_client, + mock__list_nic_settings): expected_node_properties = { 'memory_mb': 32768, 'local_gb': 279, 'cpus': 18, 'cpu_arch': 'x86_64'} mock_client = mock.Mock() + mock__list_nic_settings.return_value = self.nic_settings mock_get_drac_client.return_value = mock_client mock_client.list_memory.return_value = self.memory mock_client.list_cpus.return_value = self.cpus mock_client.list_virtual_disks.return_value = [] mock_client.list_physical_disks.return_value = self.physical_disks mock_client.list_nics.return_value = self.nics + mock_client.list_bios_settings.return_value = self.bios_boot_settings with task_manager.acquire(self.context, self.node.uuid, shared=True) as task: @@ -225,22 +255,27 @@ class DracInspectionTestCase(db_base.DbTestCase): self.assertRaises(exception.HardwareInspectionFailure, task.driver.inspect.inspect_hardware, task) + @mock.patch.object(drac_inspect.DracInspect, '_list_nic_settings', + spec_set=True, autospec=True) @mock.patch.object(drac_common, 'get_drac_client', spec_set=True, autospec=True) @mock.patch.object(objects.Port, 'create', spec_set=True, autospec=True) def test_inspect_hardware_with_existing_ports(self, mock_port_create, - mock_get_drac_client): + mock_get_drac_client, + mock__list_nic_settings): expected_node_properties = { 'memory_mb': 32768, 'local_gb': 1116, 'cpus': 18, 'cpu_arch': 'x86_64'} mock_client = mock.Mock() + mock__list_nic_settings.return_value = self.nic_settings mock_get_drac_client.return_value = mock_client mock_client.list_memory.return_value = self.memory mock_client.list_cpus.return_value = self.cpus mock_client.list_virtual_disks.return_value = self.virtual_disks mock_client.list_nics.return_value = self.nics + mock_client.list_bios_settings.return_value = self.bios_boot_settings mock_port_create.side_effect = exception.MACAlreadyExists("boom") with task_manager.acquire(self.context, self.node.uuid, @@ -275,3 +310,117 @@ class DracInspectionTestCase(db_base.DbTestCase): self.cpus[1]) self.assertEqual(6, cpu) + + @mock.patch.object(drac_common, 'get_drac_client', spec_set=True, + autospec=True) + def test__get_pxe_dev_nics_with_UEFI_boot_mode(self, mock_get_drac_client): + expected_pxe_nic = self.uefi_boot_settings[ + 'PxeDev1Interface'].current_value + mock_client = mock.Mock() + mock_get_drac_client.return_value = mock_client + mock_client.list_bios_settings.return_value = self.uefi_boot_settings + with task_manager.acquire(self.context, self.node.uuid, + shared=True) as task: + pxe_dev_nics = task.driver.inspect._get_pxe_dev_nics( + mock_client, self.nics, self.node) + + self.assertEqual(expected_pxe_nic, pxe_dev_nics[0]) + + @mock.patch.object(drac_inspect.DracInspect, '_list_nic_settings', + spec_set=True, autospec=True) + @mock.patch.object(drac_common, 'get_drac_client', spec_set=True, + autospec=True) + def test__get_pxe_dev_nics_with_BIOS_boot_mode(self, + mock_get_drac_client, + mock__list_nic_settings): + expected_pxe_nic = self.nic_settings['FQDD'] + mock_client = mock.Mock() + mock_get_drac_client.return_value = mock_client + mock__list_nic_settings.return_value = self.nic_settings + mock_client.list_bios_settings.return_value = self.bios_boot_settings + with task_manager.acquire(self.context, self.node.uuid, + shared=True) as task: + pxe_dev_nics = task.driver.inspect._get_pxe_dev_nics( + mock_client, self.nics, self.node) + + self.assertEqual(expected_pxe_nic, pxe_dev_nics[0]) + + @mock.patch.object(drac_inspect.DracInspect, '_list_nic_settings', + spec_set=True, autospec=True) + @mock.patch.object(drac_common, 'get_drac_client', spec_set=True, + autospec=True) + def test__get_pxe_dev_nics_list_boot_setting_failure( + self, mock_get_drac_client, mock__list_nic_settings): + mock_client = mock.Mock() + mock_get_drac_client.return_value = mock_client + mock_client.list_bios_settings.side_effect = ( + drac_exceptions.BaseClientException('foo')) + mock__list_nic_settings.return_value = self.nic_settings + with task_manager.acquire(self.context, self.node.uuid, + shared=True) as task: + self.assertRaises(exception.HardwareInspectionFailure, + task.driver.inspect._get_pxe_dev_nics, + mock_client, + self.nics, + self.node) + + @mock.patch.object(drac_inspect.DracInspect, '_list_nic_settings', + spec_set=True, autospec=True) + @mock.patch.object(drac_common, 'get_drac_client', spec_set=True, + autospec=True) + def test__get_pxe_dev_nics_list_nic_setting_failure( + self, mock_get_drac_client, mock__list_nic_settings): + mock_client = mock.Mock() + mock_get_drac_client.return_value = mock_client + mock_client.list_bios_settings.return_value = self.bios_boot_settings + mock__list_nic_settings.side_effect = ( + drac_exceptions.BaseClientException('bar')) + + with task_manager.acquire(self.context, self.node.uuid, + shared=True) as task: + self.assertRaises(exception.HardwareInspectionFailure, + task.driver.inspect._get_pxe_dev_nics, + mock_client, + self.nics, + self.node) + + @mock.patch.object(drac_inspect.DracInspect, '_list_nic_settings', + spec_set=True, autospec=True) + @mock.patch.object(drac_common, 'get_drac_client', spec_set=True, + autospec=True) + def test__get_pxe_dev_nics_with_empty_list(self, + mock_get_drac_client, + mock__list_nic_settings): + expected_pxe_nic = [] + nic_setting = [] + mock_client = mock.Mock() + mock_get_drac_client.return_value = mock_client + mock__list_nic_settings.return_value = nic_setting + mock_client.list_bios_settings.return_value = self.bios_boot_settings + with task_manager.acquire(self.context, self.node.uuid, + shared=True) as task: + pxe_dev_nics = task.driver.inspect._get_pxe_dev_nics( + mock_client, self.nics, self.node) + + self.assertEqual(expected_pxe_nic, pxe_dev_nics) + + @mock.patch.object(drac_inspect.DracInspect, '_list_nic_settings', + spec_set=True, autospec=True) + @mock.patch.object(drac_common, 'get_drac_client', spec_set=True, + autospec=True) + def test__list_nic_settings(self, + mock_get_drac_client, + mock__list_nic_settings): + pxe_nic = self.nic_settings['FQDD'] + nic_setting = {} + mock_client = mock.Mock() + mock_get_drac_client.return_value = mock_client + mock__list_nic_settings.return_value = self.nic_settings + mock_client.invoke.return_value = ElementTree.fromstring( + test_utils.NICEnumerations[drac_inspect.DCIM_NICEnumeration]['ok']) + with task_manager.acquire(self.context, + self.node.uuid, + shared=True) as task: + nic_setting = task.driver.inspect._list_nic_settings(mock_client, + pxe_nic) + self.assertEqual(self.nic_settings, nic_setting) diff --git a/ironic/tests/unit/drivers/modules/drac/utils.py b/ironic/tests/unit/drivers/modules/drac/utils.py index ea0958ef2..c69503a54 100644 --- a/ironic/tests/unit/drivers/modules/drac/utils.py +++ b/ironic/tests/unit/drivers/modules/drac/utils.py @@ -12,6 +12,20 @@ # under the License. import collections +import os + + +DCIM_NICEnumeration = ('http://schemas.dell.com/wbem/wscim/1/cim-schema/2/' + 'DCIM_NICEnumeration') # noqa + +FAKE_ENDPOINT = { + 'host': '1.2.3.4', + 'port': '443', + 'path': '/wsman', + 'protocol': 'https', + 'username': 'admin', + 'password': 's3cr3t' +} def dict_to_namedtuple(name='GenericNamedTuple', values=None): @@ -21,3 +35,37 @@ def dict_to_namedtuple(name='GenericNamedTuple', values=None): values = {} return collections.namedtuple(name, list(values))(**values) + + +class DictToObj(object): + """Returns a dictionary into a class""" + def __init__(self, dictionary): + for key in dictionary: + setattr(self, key, dictionary[key]) + + +def dict_of_object(data): + """Create a dictionary object""" + + for k, v in data.items(): + if isinstance(v, dict): + dict_obj = DictToObj(v) + data[k] = dict_obj + return data + + +def load_wsman_xml(name): + """Helper function to load a WSMan XML response from a file.""" + + with open(os.path.join(os.path.dirname(__file__), 'wsman_mocks', + '%s.xml' % name), 'r') as f: + xml_body = f.read() + + return xml_body + + +NICEnumerations = { + DCIM_NICEnumeration: { + 'ok': load_wsman_xml('nic_enumeration-enum-ok'), + } +} diff --git a/ironic/tests/unit/drivers/modules/drac/wsman_mocks/__init__.py b/ironic/tests/unit/drivers/modules/drac/wsman_mocks/__init__.py new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/ironic/tests/unit/drivers/modules/drac/wsman_mocks/__init__.py diff --git a/ironic/tests/unit/drivers/modules/drac/wsman_mocks/nic_enumeration-enum-ok.xml b/ironic/tests/unit/drivers/modules/drac/wsman_mocks/nic_enumeration-enum-ok.xml new file mode 100644 index 000000000..334728da6 --- /dev/null +++ b/ironic/tests/unit/drivers/modules/drac/wsman_mocks/nic_enumeration-enum-ok.xml @@ -0,0 +1,767 @@ +<s:Envelope xmlns:s="http://www.w3.org/2003/05/soap-envelope" + xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing" + xmlns:wsen="http://schemas.xmlsoap.org/ws/2004/09/enumeration" + xmlns:wsman="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd" + xmlns:n1="http://schemas.dell.com/wbem/wscim/1/cim-schema/2/DCIM_NICEnumeration" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> + <s:Header> + <wsa:To>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous + </wsa:To> + <wsa:Action>http://schemas.xmlsoap.org/ws/2004/09/enumeration/EnumerateResponse + </wsa:Action> + <wsa:RelatesTo>uuid:608d7722-0302-4feb-8080-4652e0e0ab48 + </wsa:RelatesTo> + <wsa:MessageID>uuid:07820ac0-71f0-11f0-a4a1-a53ffbd9bed4 + </wsa:MessageID> + </s:Header> + <s:Body> + <wsen:EnumerateResponse> + <wsman:Items> + <n1:DCIM_NICEnumeration> + <n1:AttributeDisplayName>Link Status</n1:AttributeDisplayName> + <n1:AttributeName>LinkStatus</n1:AttributeName> + <n1:CurrentValue>Connected</n1:CurrentValue> + <n1:Dependency xsi:nil="true" /> + <n1:FQDD>NIC.Integrated.1-3-1</n1:FQDD> + <n1:GroupDisplayName>Main Configuration Page</n1:GroupDisplayName> + <n1:GroupID>VndrConfigPage</n1:GroupID> + <n1:InstanceID>NIC.Integrated.1-3-1:LinkStatus</n1:InstanceID> + <n1:IsReadOnly>true</n1:IsReadOnly> + <n1:PendingValue xsi:nil="true" /> + <n1:PossibleValues>Disconnected</n1:PossibleValues> + <n1:PossibleValues>Connected</n1:PossibleValues> + <n1:PossibleValuesDescription>Disconnected + </n1:PossibleValuesDescription> + <n1:PossibleValuesDescription>Connected + </n1:PossibleValuesDescription> + </n1:DCIM_NICEnumeration> + <n1:DCIM_NICEnumeration> + <n1:AttributeDisplayName>TCP/IP Parameters via DHCP + </n1:AttributeDisplayName> + <n1:AttributeName>TcpIpViaDHCP</n1:AttributeName> + <n1:CurrentValue>Enabled</n1:CurrentValue> + <n1:Dependency><![CDATA[<Dep><AttrLev Op="OR"><ROIf Name="IpVer">IPv6</ROIf><ROIf Name="iSCSIBootSupport">Unavailable</ROIf></AttrLev></Dep>]]></n1:Dependency> + <n1:FQDD>NIC.Integrated.1-3-1</n1:FQDD> + <n1:GroupDisplayName>iSCSI General Parameters</n1:GroupDisplayName> + <n1:GroupID>IscsiGenParams</n1:GroupID> + <n1:InstanceID>NIC.Integrated.1-3-1:TcpIpViaDHCP</n1:InstanceID> + <n1:IsReadOnly>false</n1:IsReadOnly> + <n1:PendingValue xsi:nil="true" /> + <n1:PossibleValues>Disabled</n1:PossibleValues> + <n1:PossibleValues>Enabled</n1:PossibleValues> + <n1:PossibleValuesDescription>Disabled + </n1:PossibleValuesDescription> + <n1:PossibleValuesDescription>Enabled + </n1:PossibleValuesDescription> + </n1:DCIM_NICEnumeration> + <n1:DCIM_NICEnumeration> + <n1:AttributeDisplayName>IP Autoconfiguration + </n1:AttributeDisplayName> + <n1:AttributeName>IpAutoConfig</n1:AttributeName> + <n1:CurrentValue>Enabled</n1:CurrentValue> + <n1:Dependency><![CDATA[<Dep><AttrLev Op="OR"><ROIf Name="IpVer">IPv4</ROIf><ROIf Name="iSCSIBootSupport">Unavailable</ROIf></AttrLev></Dep>]]></n1:Dependency> + <n1:FQDD>NIC.Integrated.1-3-1</n1:FQDD> + <n1:GroupDisplayName>iSCSI General Parameters</n1:GroupDisplayName> + <n1:GroupID>IscsiGenParams</n1:GroupID> + <n1:InstanceID>NIC.Integrated.1-3-1:IpAutoConfig</n1:InstanceID> + <n1:IsReadOnly>true</n1:IsReadOnly> + <n1:PendingValue xsi:nil="true" /> + <n1:PossibleValues>Disabled</n1:PossibleValues> + <n1:PossibleValues>Enabled</n1:PossibleValues> + <n1:PossibleValuesDescription>Disabled + </n1:PossibleValuesDescription> + <n1:PossibleValuesDescription>Enabled + </n1:PossibleValuesDescription> + </n1:DCIM_NICEnumeration> + <n1:DCIM_NICEnumeration> + <n1:AttributeDisplayName>iSCSI Parameters via DHCP + </n1:AttributeDisplayName> + <n1:AttributeName>IscsiViaDHCP</n1:AttributeName> + <n1:CurrentValue>Enabled</n1:CurrentValue> + <n1:Dependency><![CDATA[<Dep><AttrLev Op="OR"><ROIf Name="iSCSIBootSupport">Unavailable</ROIf></AttrLev></Dep>]]></n1:Dependency> + <n1:FQDD>NIC.Integrated.1-3-1</n1:FQDD> + <n1:GroupDisplayName>iSCSI General Parameters</n1:GroupDisplayName> + <n1:GroupID>IscsiGenParams</n1:GroupID> + <n1:InstanceID>NIC.Integrated.1-3-1:IscsiViaDHCP</n1:InstanceID> + <n1:IsReadOnly>false</n1:IsReadOnly> + <n1:PendingValue xsi:nil="true" /> + <n1:PossibleValues>Disabled</n1:PossibleValues> + <n1:PossibleValues>Enabled</n1:PossibleValues> + <n1:PossibleValuesDescription>Disabled + </n1:PossibleValuesDescription> + <n1:PossibleValuesDescription>Enabled + </n1:PossibleValuesDescription> + </n1:DCIM_NICEnumeration> + <n1:DCIM_NICEnumeration> + <n1:AttributeDisplayName>CHAP Authentication + </n1:AttributeDisplayName> + <n1:AttributeName>ChapAuthEnable</n1:AttributeName> + <n1:CurrentValue>Disabled</n1:CurrentValue> + <n1:Dependency><![CDATA[<Dep><AttrLev Op="OR"><ROIf Name="iSCSIBootSupport">Unavailable</ROIf></AttrLev></Dep>]]></n1:Dependency> + <n1:FQDD>NIC.Integrated.1-3-1</n1:FQDD> + <n1:GroupDisplayName>iSCSI General Parameters</n1:GroupDisplayName> + <n1:GroupID>IscsiGenParams</n1:GroupID> + <n1:InstanceID>NIC.Integrated.1-3-1:ChapAuthEnable</n1:InstanceID> + <n1:IsReadOnly>false</n1:IsReadOnly> + <n1:PendingValue xsi:nil="true" /> + <n1:PossibleValues>Disabled</n1:PossibleValues> + <n1:PossibleValues>Enabled</n1:PossibleValues> + <n1:PossibleValuesDescription>Disabled + </n1:PossibleValuesDescription> + <n1:PossibleValuesDescription>Enabled + </n1:PossibleValuesDescription> + </n1:DCIM_NICEnumeration> + <n1:DCIM_NICEnumeration> + <n1:AttributeDisplayName>Boot to iSCSI Target + </n1:AttributeDisplayName> + <n1:AttributeName>IscsiTgtBoot</n1:AttributeName> + <n1:CurrentValue>Enabled</n1:CurrentValue> + <n1:Dependency><![CDATA[<Dep><AttrLev Op="OR"><ROIf Name="iSCSIBootSupport">Unavailable</ROIf></AttrLev></Dep>]]></n1:Dependency> + <n1:FQDD>NIC.Integrated.1-3-1</n1:FQDD> + <n1:GroupDisplayName>iSCSI General Parameters</n1:GroupDisplayName> + <n1:GroupID>IscsiGenParams</n1:GroupID> + <n1:InstanceID>NIC.Integrated.1-3-1:IscsiTgtBoot</n1:InstanceID> + <n1:IsReadOnly>false</n1:IsReadOnly> + <n1:PendingValue xsi:nil="true" /> + <n1:PossibleValues>Disabled</n1:PossibleValues> + <n1:PossibleValues>Enabled</n1:PossibleValues> + <n1:PossibleValues>OneTimeDisabled</n1:PossibleValues> + <n1:PossibleValuesDescription>Disabled + </n1:PossibleValuesDescription> + <n1:PossibleValuesDescription>Enabled + </n1:PossibleValuesDescription> + <n1:PossibleValuesDescription>One Time Disabled + </n1:PossibleValuesDescription> + </n1:DCIM_NICEnumeration> + <n1:DCIM_NICEnumeration> + <n1:AttributeDisplayName>Use TCP Timestamp + </n1:AttributeDisplayName> + <n1:AttributeName>TcpTimestmp</n1:AttributeName> + <n1:CurrentValue>Disabled</n1:CurrentValue> + <n1:Dependency><![CDATA[<Dep><AttrLev Op="OR"><ROIf Name="iSCSIBootSupport">Unavailable</ROIf></AttrLev></Dep>]]></n1:Dependency> + <n1:FQDD>NIC.Integrated.1-3-1</n1:FQDD> + <n1:GroupDisplayName>iSCSI General Parameters</n1:GroupDisplayName> + <n1:GroupID>IscsiGenParams</n1:GroupID> + <n1:InstanceID>NIC.Integrated.1-3-1:TcpTimestmp</n1:InstanceID> + <n1:IsReadOnly>false</n1:IsReadOnly> + <n1:PendingValue xsi:nil="true" /> + <n1:PossibleValues>Disabled</n1:PossibleValues> + <n1:PossibleValues>Enabled</n1:PossibleValues> + <n1:PossibleValuesDescription>Disabled + </n1:PossibleValuesDescription> + <n1:PossibleValuesDescription>Enabled + </n1:PossibleValuesDescription> + </n1:DCIM_NICEnumeration> + <n1:DCIM_NICEnumeration> + <n1:AttributeDisplayName>Target as First HDD + </n1:AttributeDisplayName> + <n1:AttributeName>FirstHddTarget</n1:AttributeName> + <n1:CurrentValue>Disabled</n1:CurrentValue> + <n1:Dependency><![CDATA[<Dep><AttrLev Op="OR"><ROIf Name="iSCSIBootSupport">Unavailable</ROIf></AttrLev></Dep>]]></n1:Dependency> + <n1:FQDD>NIC.Integrated.1-3-1</n1:FQDD> + <n1:GroupDisplayName>iSCSI General Parameters</n1:GroupDisplayName> + <n1:GroupID>IscsiGenParams</n1:GroupID> + <n1:InstanceID>NIC.Integrated.1-3-1:FirstHddTarget</n1:InstanceID> + <n1:IsReadOnly>false</n1:IsReadOnly> + <n1:PendingValue xsi:nil="true" /> + <n1:PossibleValues>Disabled</n1:PossibleValues> + <n1:PossibleValues>Enabled</n1:PossibleValues> + <n1:PossibleValuesDescription>Disabled + </n1:PossibleValuesDescription> + <n1:PossibleValuesDescription>Enabled + </n1:PossibleValuesDescription> + </n1:DCIM_NICEnumeration> + <n1:DCIM_NICEnumeration> + <n1:AttributeDisplayName>IP Version</n1:AttributeDisplayName> + <n1:AttributeName>IpVer</n1:AttributeName> + <n1:CurrentValue>IPv4</n1:CurrentValue> + <n1:Dependency><![CDATA[<Dep><AttrLev Op="OR"><ROIf Name="iSCSIBootSupport">Unavailable</ROIf></AttrLev></Dep>]]></n1:Dependency> + <n1:FQDD>NIC.Integrated.1-3-1</n1:FQDD> + <n1:GroupDisplayName>iSCSI General Parameters</n1:GroupDisplayName> + <n1:GroupID>IscsiGenParams</n1:GroupID> + <n1:InstanceID>NIC.Integrated.1-3-1:IpVer</n1:InstanceID> + <n1:IsReadOnly>false</n1:IsReadOnly> + <n1:PendingValue xsi:nil="true" /> + <n1:PossibleValues>IPv4</n1:PossibleValues> + <n1:PossibleValues>IPv6</n1:PossibleValues> + <n1:PossibleValuesDescription>IPv4</n1:PossibleValuesDescription> + <n1:PossibleValuesDescription>IPv6</n1:PossibleValuesDescription> + </n1:DCIM_NICEnumeration> + <n1:DCIM_NICEnumeration> + <n1:AttributeDisplayName>Connect</n1:AttributeDisplayName> + <n1:AttributeName>ConnectFirstTgt</n1:AttributeName> + <n1:CurrentValue>Disabled</n1:CurrentValue> + <n1:Dependency><![CDATA[<Dep><AttrLev Op="OR"><ROIf Name="iSCSIBootSupport">Unavailable</ROIf></AttrLev></Dep>]]></n1:Dependency> + <n1:FQDD>NIC.Integrated.1-3-1</n1:FQDD> + <n1:GroupDisplayName>iSCSI First Target Parameters + </n1:GroupDisplayName> + <n1:GroupID>IscsiFirstTgtParams</n1:GroupID> + <n1:InstanceID>NIC.Integrated.1-3-1:ConnectFirstTgt</n1:InstanceID> + <n1:IsReadOnly>false</n1:IsReadOnly> + <n1:PendingValue xsi:nil="true" /> + <n1:PossibleValues>Disabled</n1:PossibleValues> + <n1:PossibleValues>Enabled</n1:PossibleValues> + <n1:PossibleValuesDescription>Disabled + </n1:PossibleValuesDescription> + <n1:PossibleValuesDescription>Enabled + </n1:PossibleValuesDescription> + </n1:DCIM_NICEnumeration> + <n1:DCIM_NICEnumeration> + <n1:AttributeDisplayName>Connect</n1:AttributeDisplayName> + <n1:AttributeName>ConnectSecondTgt</n1:AttributeName> + <n1:CurrentValue>Disabled</n1:CurrentValue> + <n1:Dependency><![CDATA[<Dep><AttrLev Op="OR"><ROIf Name="iSCSIBootSupport">Unavailable</ROIf></AttrLev></Dep>]]></n1:Dependency> + <n1:FQDD>NIC.Integrated.1-3-1</n1:FQDD> + <n1:GroupDisplayName>iSCSI Second Target Parameters + </n1:GroupDisplayName> + <n1:GroupID>IscsiSecondTgtParams</n1:GroupID> + <n1:InstanceID>NIC.Integrated.1-3-1:ConnectSecondTgt + </n1:InstanceID> + <n1:IsReadOnly>false</n1:IsReadOnly> + <n1:PendingValue xsi:nil="true" /> + <n1:PossibleValues>Disabled</n1:PossibleValues> + <n1:PossibleValues>Enabled</n1:PossibleValues> + <n1:PossibleValuesDescription>Disabled + </n1:PossibleValuesDescription> + <n1:PossibleValuesDescription>Enabled + </n1:PossibleValuesDescription> + </n1:DCIM_NICEnumeration> + <n1:DCIM_NICEnumeration> + <n1:AttributeDisplayName>Legacy Boot Protocol + </n1:AttributeDisplayName> + <n1:AttributeName>LegacyBootProto</n1:AttributeName> + <n1:CurrentValue>PXE</n1:CurrentValue> + <n1:Dependency xsi:nil="true" /> + <n1:FQDD>NIC.Integrated.1-3-1</n1:FQDD> + <n1:GroupDisplayName>MBA Configuration Menu</n1:GroupDisplayName> + <n1:GroupID>NICConfig</n1:GroupID> + <n1:InstanceID>NIC.Integrated.1-3-1:LegacyBootProto</n1:InstanceID> + <n1:IsReadOnly>false</n1:IsReadOnly> + <n1:PendingValue>NONE</n1:PendingValue> + <n1:PossibleValues>PXE</n1:PossibleValues> + <n1:PossibleValues>iSCSI</n1:PossibleValues> + <n1:PossibleValues>NONE</n1:PossibleValues> + <n1:PossibleValuesDescription>PXE</n1:PossibleValuesDescription> + <n1:PossibleValuesDescription>iSCSI</n1:PossibleValuesDescription> + <n1:PossibleValuesDescription>NONE</n1:PossibleValuesDescription> + </n1:DCIM_NICEnumeration> + <n1:DCIM_NICEnumeration> + <n1:AttributeDisplayName>Boot Strap Type</n1:AttributeDisplayName> + <n1:AttributeName>BootStrapType</n1:AttributeName> + <n1:CurrentValue>AutoDetect</n1:CurrentValue> + <n1:Dependency xsi:nil="true" /> + <n1:FQDD>NIC.Integrated.1-3-1</n1:FQDD> + <n1:GroupDisplayName>MBA Configuration Menu</n1:GroupDisplayName> + <n1:GroupID>NICConfig</n1:GroupID> + <n1:InstanceID>NIC.Integrated.1-3-1:BootStrapType</n1:InstanceID> + <n1:IsReadOnly>false</n1:IsReadOnly> + <n1:PendingValue xsi:nil="true" /> + <n1:PossibleValues>AutoDetect</n1:PossibleValues> + <n1:PossibleValues>BBS</n1:PossibleValues> + <n1:PossibleValues>Int18h</n1:PossibleValues> + <n1:PossibleValues>Int19h</n1:PossibleValues> + <n1:PossibleValuesDescription>Auto Detect + </n1:PossibleValuesDescription> + <n1:PossibleValuesDescription>BBS</n1:PossibleValuesDescription> + <n1:PossibleValuesDescription>Int 18h + </n1:PossibleValuesDescription> + <n1:PossibleValuesDescription>Int 19h + </n1:PossibleValuesDescription> + </n1:DCIM_NICEnumeration> + <n1:DCIM_NICEnumeration> + <n1:AttributeDisplayName>Hide Setup Prompt + </n1:AttributeDisplayName> + <n1:AttributeName>HideSetupPrompt</n1:AttributeName> + <n1:CurrentValue>Disabled</n1:CurrentValue> + <n1:Dependency xsi:nil="true" /> + <n1:FQDD>NIC.Integrated.1-3-1</n1:FQDD> + <n1:GroupDisplayName>MBA Configuration Menu</n1:GroupDisplayName> + <n1:GroupID>NICConfig</n1:GroupID> + <n1:InstanceID>NIC.Integrated.1-3-1:HideSetupPrompt</n1:InstanceID> + <n1:IsReadOnly>false</n1:IsReadOnly> + <n1:PendingValue xsi:nil="true" /> + <n1:PossibleValues>Disabled</n1:PossibleValues> + <n1:PossibleValues>Enabled</n1:PossibleValues> + <n1:PossibleValuesDescription>Disabled + </n1:PossibleValuesDescription> + <n1:PossibleValuesDescription>Enabled + </n1:PossibleValuesDescription> + </n1:DCIM_NICEnumeration> + <n1:DCIM_NICEnumeration> + <n1:AttributeDisplayName>Link Speed</n1:AttributeDisplayName> + <n1:AttributeName>LnkSpeed</n1:AttributeName> + <n1:CurrentValue>AutoNeg</n1:CurrentValue> + <n1:Dependency xsi:nil="true" /> + <n1:FQDD>NIC.Integrated.1-3-1</n1:FQDD> + <n1:GroupDisplayName>MBA Configuration Menu</n1:GroupDisplayName> + <n1:GroupID>NICConfig</n1:GroupID> + <n1:InstanceID>NIC.Integrated.1-3-1:LnkSpeed</n1:InstanceID> + <n1:IsReadOnly>false</n1:IsReadOnly> + <n1:PendingValue xsi:nil="true" /> + <n1:PossibleValues>AutoNeg</n1:PossibleValues> + <n1:PossibleValues>10MbpsHalf</n1:PossibleValues> + <n1:PossibleValues>10MbpsFull</n1:PossibleValues> + <n1:PossibleValues>100MbpsHalf</n1:PossibleValues> + <n1:PossibleValues>100MbpsFull</n1:PossibleValues> + <n1:PossibleValuesDescription>AutoNeg + </n1:PossibleValuesDescription> + <n1:PossibleValuesDescription>10Mbps Half + </n1:PossibleValuesDescription> + <n1:PossibleValuesDescription>10Mbps Full + </n1:PossibleValuesDescription> + <n1:PossibleValuesDescription>100Mbps Half + </n1:PossibleValuesDescription> + <n1:PossibleValuesDescription>100Mbps Full + </n1:PossibleValuesDescription> + </n1:DCIM_NICEnumeration> + <n1:DCIM_NICEnumeration> + <n1:AttributeDisplayName>Pre-boot Wake On LAN + </n1:AttributeDisplayName> + <n1:AttributeName>WakeOnLan</n1:AttributeName> + <n1:CurrentValue>Disabled</n1:CurrentValue> + <n1:Dependency xsi:nil="true" /> + <n1:FQDD>NIC.Integrated.1-3-1</n1:FQDD> + <n1:GroupDisplayName>MBA Configuration Menu</n1:GroupDisplayName> + <n1:GroupID>NICConfig</n1:GroupID> + <n1:InstanceID>NIC.Integrated.1-3-1:WakeOnLan</n1:InstanceID> + <n1:IsReadOnly>false</n1:IsReadOnly> + <n1:PendingValue xsi:nil="true" /> + <n1:PossibleValues>Disabled</n1:PossibleValues> + <n1:PossibleValues>Enabled</n1:PossibleValues> + <n1:PossibleValuesDescription>Disabled + </n1:PossibleValuesDescription> + <n1:PossibleValuesDescription>Enabled + </n1:PossibleValuesDescription> + </n1:DCIM_NICEnumeration> + <n1:DCIM_NICEnumeration> + <n1:AttributeDisplayName>VLAN Mode</n1:AttributeDisplayName> + <n1:AttributeName>VLanMode</n1:AttributeName> + <n1:CurrentValue>Disabled</n1:CurrentValue> + <n1:Dependency xsi:nil="true" /> + <n1:FQDD>NIC.Integrated.1-3-1</n1:FQDD> + <n1:GroupDisplayName>MBA Configuration Menu</n1:GroupDisplayName> + <n1:GroupID>NICConfig</n1:GroupID> + <n1:InstanceID>NIC.Integrated.1-3-1:VLanMode</n1:InstanceID> + <n1:IsReadOnly>false</n1:IsReadOnly> + <n1:PendingValue xsi:nil="true" /> + <n1:PossibleValues>Disabled</n1:PossibleValues> + <n1:PossibleValues>Enabled</n1:PossibleValues> + <n1:PossibleValuesDescription>Disabled + </n1:PossibleValuesDescription> + <n1:PossibleValuesDescription>Enabled + </n1:PossibleValuesDescription> + </n1:DCIM_NICEnumeration> + <n1:DCIM_NICEnumeration> + <n1:AttributeDisplayName>Use Independent Target Portal + </n1:AttributeDisplayName> + <n1:AttributeName>UseIndTgtPortal</n1:AttributeName> + <n1:CurrentValue>Disabled</n1:CurrentValue> + <n1:Dependency><![CDATA[<Dep><AttrLev Op="OR"><ROIf Name="iSCSIBootSupport">Unavailable</ROIf></AttrLev></Dep>]]></n1:Dependency> + <n1:FQDD>NIC.Integrated.1-3-1</n1:FQDD> + <n1:GroupDisplayName>Secondary Device</n1:GroupDisplayName> + <n1:GroupID>SecondaryDevice</n1:GroupID> + <n1:InstanceID>NIC.Integrated.1-3-1:UseIndTgtPortal</n1:InstanceID> + <n1:IsReadOnly>false</n1:IsReadOnly> + <n1:PendingValue xsi:nil="true" /> + <n1:PossibleValues>Disabled</n1:PossibleValues> + <n1:PossibleValues>Enabled</n1:PossibleValues> + <n1:PossibleValuesDescription>Disabled + </n1:PossibleValuesDescription> + <n1:PossibleValuesDescription>Enabled + </n1:PossibleValuesDescription> + </n1:DCIM_NICEnumeration> + <n1:DCIM_NICEnumeration> + <n1:AttributeDisplayName>Use Independent Target Name + </n1:AttributeDisplayName> + <n1:AttributeName>UseIndTgtName</n1:AttributeName> + <n1:CurrentValue>Disabled</n1:CurrentValue> + <n1:Dependency><![CDATA[<Dep><AttrLev Op="OR"><ROIf Name="iSCSIBootSupport">Unavailable</ROIf></AttrLev></Dep>]]></n1:Dependency> + <n1:FQDD>NIC.Integrated.1-3-1</n1:FQDD> + <n1:GroupDisplayName>Secondary Device</n1:GroupDisplayName> + <n1:GroupID>SecondaryDevice</n1:GroupID> + <n1:InstanceID>NIC.Integrated.1-3-1:UseIndTgtName</n1:InstanceID> + <n1:IsReadOnly>false</n1:IsReadOnly> + <n1:PendingValue xsi:nil="true" /> + <n1:PossibleValues>Disabled</n1:PossibleValues> + <n1:PossibleValues>Enabled</n1:PossibleValues> + <n1:PossibleValuesDescription>Disabled + </n1:PossibleValuesDescription> + <n1:PossibleValuesDescription>Enabled + </n1:PossibleValuesDescription> + </n1:DCIM_NICEnumeration> + <n1:DCIM_NICEnumeration> + <n1:AttributeDisplayName>Link Status</n1:AttributeDisplayName> + <n1:AttributeName>LinkStatus</n1:AttributeName> + <n1:CurrentValue>Disconnected</n1:CurrentValue> + <n1:Dependency xsi:nil="true" /> + <n1:FQDD>NIC.Integrated.1-4-1</n1:FQDD> + <n1:GroupDisplayName>Main Configuration Page</n1:GroupDisplayName> + <n1:GroupID>VndrConfigPage</n1:GroupID> + <n1:InstanceID>NIC.Integrated.1-4-1:LinkStatus</n1:InstanceID> + <n1:IsReadOnly>true</n1:IsReadOnly> + <n1:PendingValue xsi:nil="true" /> + <n1:PossibleValues>Disconnected</n1:PossibleValues> + <n1:PossibleValues>Connected</n1:PossibleValues> + <n1:PossibleValuesDescription>Disconnected + </n1:PossibleValuesDescription> + <n1:PossibleValuesDescription>Connected + </n1:PossibleValuesDescription> + </n1:DCIM_NICEnumeration> + <n1:DCIM_NICEnumeration> + <n1:AttributeDisplayName>TCP/IP Parameters via DHCP + </n1:AttributeDisplayName> + <n1:AttributeName>TcpIpViaDHCP</n1:AttributeName> + <n1:CurrentValue>Enabled</n1:CurrentValue> + <n1:Dependency><![CDATA[<Dep><AttrLev Op="OR"><ROIf Name="IpVer">IPv6</ROIf><ROIf Name="iSCSIBootSupport">Unavailable</ROIf></AttrLev></Dep>]]></n1:Dependency> + <n1:FQDD>NIC.Integrated.1-4-1</n1:FQDD> + <n1:GroupDisplayName>iSCSI General Parameters</n1:GroupDisplayName> + <n1:GroupID>IscsiGenParams</n1:GroupID> + <n1:InstanceID>NIC.Integrated.1-4-1:TcpIpViaDHCP</n1:InstanceID> + <n1:IsReadOnly>false</n1:IsReadOnly> + <n1:PendingValue xsi:nil="true" /> + <n1:PossibleValues>Disabled</n1:PossibleValues> + <n1:PossibleValues>Enabled</n1:PossibleValues> + <n1:PossibleValuesDescription>Disabled + </n1:PossibleValuesDescription> + <n1:PossibleValuesDescription>Enabled + </n1:PossibleValuesDescription> + </n1:DCIM_NICEnumeration> + <n1:DCIM_NICEnumeration> + <n1:AttributeDisplayName>IP Autoconfiguration + </n1:AttributeDisplayName> + <n1:AttributeName>IpAutoConfig</n1:AttributeName> + <n1:CurrentValue>Enabled</n1:CurrentValue> + <n1:Dependency><![CDATA[<Dep><AttrLev Op="OR"><ROIf Name="IpVer">IPv4</ROIf><ROIf Name="iSCSIBootSupport">Unavailable</ROIf></AttrLev></Dep>]]></n1:Dependency> + <n1:FQDD>NIC.Integrated.1-4-1</n1:FQDD> + <n1:GroupDisplayName>iSCSI General Parameters</n1:GroupDisplayName> + <n1:GroupID>IscsiGenParams</n1:GroupID> + <n1:InstanceID>NIC.Integrated.1-4-1:IpAutoConfig</n1:InstanceID> + <n1:IsReadOnly>true</n1:IsReadOnly> + <n1:PendingValue xsi:nil="true" /> + <n1:PossibleValues>Disabled</n1:PossibleValues> + <n1:PossibleValues>Enabled</n1:PossibleValues> + <n1:PossibleValuesDescription>Disabled + </n1:PossibleValuesDescription> + <n1:PossibleValuesDescription>Enabled + </n1:PossibleValuesDescription> + </n1:DCIM_NICEnumeration> + <n1:DCIM_NICEnumeration> + <n1:AttributeDisplayName>iSCSI Parameters via DHCP + </n1:AttributeDisplayName> + <n1:AttributeName>IscsiViaDHCP</n1:AttributeName> + <n1:CurrentValue>Enabled</n1:CurrentValue> + <n1:Dependency><![CDATA[<Dep><AttrLev Op="OR"><ROIf Name="iSCSIBootSupport">Unavailable</ROIf></AttrLev></Dep>]]></n1:Dependency> + <n1:FQDD>NIC.Integrated.1-4-1</n1:FQDD> + <n1:GroupDisplayName>iSCSI General Parameters</n1:GroupDisplayName> + <n1:GroupID>IscsiGenParams</n1:GroupID> + <n1:InstanceID>NIC.Integrated.1-4-1:IscsiViaDHCP</n1:InstanceID> + <n1:IsReadOnly>false</n1:IsReadOnly> + <n1:PendingValue xsi:nil="true" /> + <n1:PossibleValues>Disabled</n1:PossibleValues> + <n1:PossibleValues>Enabled</n1:PossibleValues> + <n1:PossibleValuesDescription>Disabled + </n1:PossibleValuesDescription> + <n1:PossibleValuesDescription>Enabled + </n1:PossibleValuesDescription> + </n1:DCIM_NICEnumeration> + <n1:DCIM_NICEnumeration> + <n1:AttributeDisplayName>CHAP Authentication + </n1:AttributeDisplayName> + <n1:AttributeName>ChapAuthEnable</n1:AttributeName> + <n1:CurrentValue>Disabled</n1:CurrentValue> + <n1:Dependency><![CDATA[<Dep><AttrLev Op="OR"><ROIf Name="iSCSIBootSupport">Unavailable</ROIf></AttrLev></Dep>]]></n1:Dependency> + <n1:FQDD>NIC.Integrated.1-4-1</n1:FQDD> + <n1:GroupDisplayName>iSCSI General Parameters</n1:GroupDisplayName> + <n1:GroupID>IscsiGenParams</n1:GroupID> + <n1:InstanceID>NIC.Integrated.1-4-1:ChapAuthEnable</n1:InstanceID> + <n1:IsReadOnly>false</n1:IsReadOnly> + <n1:PendingValue xsi:nil="true" /> + <n1:PossibleValues>Disabled</n1:PossibleValues> + <n1:PossibleValues>Enabled</n1:PossibleValues> + <n1:PossibleValuesDescription>Disabled + </n1:PossibleValuesDescription> + <n1:PossibleValuesDescription>Enabled + </n1:PossibleValuesDescription> + </n1:DCIM_NICEnumeration> + <n1:DCIM_NICEnumeration> + <n1:AttributeDisplayName>Boot to iSCSI Target + </n1:AttributeDisplayName> + <n1:AttributeName>IscsiTgtBoot</n1:AttributeName> + <n1:CurrentValue>Enabled</n1:CurrentValue> + <n1:Dependency><![CDATA[<Dep><AttrLev Op="OR"><ROIf Name="iSCSIBootSupport">Unavailable</ROIf></AttrLev></Dep>]]></n1:Dependency> + <n1:FQDD>NIC.Integrated.1-4-1</n1:FQDD> + <n1:GroupDisplayName>iSCSI General Parameters</n1:GroupDisplayName> + <n1:GroupID>IscsiGenParams</n1:GroupID> + <n1:InstanceID>NIC.Integrated.1-4-1:IscsiTgtBoot</n1:InstanceID> + <n1:IsReadOnly>false</n1:IsReadOnly> + <n1:PendingValue xsi:nil="true" /> + <n1:PossibleValues>Disabled</n1:PossibleValues> + <n1:PossibleValues>Enabled</n1:PossibleValues> + <n1:PossibleValues>OneTimeDisabled</n1:PossibleValues> + <n1:PossibleValuesDescription>Disabled + </n1:PossibleValuesDescription> + <n1:PossibleValuesDescription>Enabled + </n1:PossibleValuesDescription> + <n1:PossibleValuesDescription>One Time Disabled + </n1:PossibleValuesDescription> + </n1:DCIM_NICEnumeration> + <n1:DCIM_NICEnumeration> + <n1:AttributeDisplayName>Use TCP Timestamp + </n1:AttributeDisplayName> + <n1:AttributeName>TcpTimestmp</n1:AttributeName> + <n1:CurrentValue>Disabled</n1:CurrentValue> + <n1:Dependency><![CDATA[<Dep><AttrLev Op="OR"><ROIf Name="iSCSIBootSupport">Unavailable</ROIf></AttrLev></Dep>]]></n1:Dependency> + <n1:FQDD>NIC.Integrated.1-4-1</n1:FQDD> + <n1:GroupDisplayName>iSCSI General Parameters</n1:GroupDisplayName> + <n1:GroupID>IscsiGenParams</n1:GroupID> + <n1:InstanceID>NIC.Integrated.1-4-1:TcpTimestmp</n1:InstanceID> + <n1:IsReadOnly>false</n1:IsReadOnly> + <n1:PendingValue xsi:nil="true" /> + <n1:PossibleValues>Disabled</n1:PossibleValues> + <n1:PossibleValues>Enabled</n1:PossibleValues> + <n1:PossibleValuesDescription>Disabled + </n1:PossibleValuesDescription> + <n1:PossibleValuesDescription>Enabled + </n1:PossibleValuesDescription> + </n1:DCIM_NICEnumeration> + <n1:DCIM_NICEnumeration> + <n1:AttributeDisplayName>Target as First HDD + </n1:AttributeDisplayName> + <n1:AttributeName>FirstHddTarget</n1:AttributeName> + <n1:CurrentValue>Disabled</n1:CurrentValue> + <n1:Dependency><![CDATA[<Dep><AttrLev Op="OR"><ROIf Name="iSCSIBootSupport">Unavailable</ROIf></AttrLev></Dep>]]></n1:Dependency> + <n1:FQDD>NIC.Integrated.1-4-1</n1:FQDD> + <n1:GroupDisplayName>iSCSI General Parameters</n1:GroupDisplayName> + <n1:GroupID>IscsiGenParams</n1:GroupID> + <n1:InstanceID>NIC.Integrated.1-4-1:FirstHddTarget</n1:InstanceID> + <n1:IsReadOnly>false</n1:IsReadOnly> + <n1:PendingValue xsi:nil="true" /> + <n1:PossibleValues>Disabled</n1:PossibleValues> + <n1:PossibleValues>Enabled</n1:PossibleValues> + <n1:PossibleValuesDescription>Disabled + </n1:PossibleValuesDescription> + <n1:PossibleValuesDescription>Enabled + </n1:PossibleValuesDescription> + </n1:DCIM_NICEnumeration> + <n1:DCIM_NICEnumeration> + <n1:AttributeDisplayName>IP Version</n1:AttributeDisplayName> + <n1:AttributeName>IpVer</n1:AttributeName> + <n1:CurrentValue>IPv4</n1:CurrentValue> + <n1:Dependency><![CDATA[<Dep><AttrLev Op="OR"><ROIf Name="iSCSIBootSupport">Unavailable</ROIf></AttrLev></Dep>]]></n1:Dependency> + <n1:FQDD>NIC.Integrated.1-4-1</n1:FQDD> + <n1:GroupDisplayName>iSCSI General Parameters</n1:GroupDisplayName> + <n1:GroupID>IscsiGenParams</n1:GroupID> + <n1:InstanceID>NIC.Integrated.1-4-1:IpVer</n1:InstanceID> + <n1:IsReadOnly>false</n1:IsReadOnly> + <n1:PendingValue xsi:nil="true" /> + <n1:PossibleValues>IPv4</n1:PossibleValues> + <n1:PossibleValues>IPv6</n1:PossibleValues> + <n1:PossibleValuesDescription>IPv4</n1:PossibleValuesDescription> + <n1:PossibleValuesDescription>IPv6</n1:PossibleValuesDescription> + </n1:DCIM_NICEnumeration> + <n1:DCIM_NICEnumeration> + <n1:AttributeDisplayName>Connect</n1:AttributeDisplayName> + <n1:AttributeName>ConnectFirstTgt</n1:AttributeName> + <n1:CurrentValue>Disabled</n1:CurrentValue> + <n1:Dependency><![CDATA[<Dep><AttrLev Op="OR"><ROIf Name="iSCSIBootSupport">Unavailable</ROIf></AttrLev></Dep>]]></n1:Dependency> + <n1:FQDD>NIC.Integrated.1-4-1</n1:FQDD> + <n1:GroupDisplayName>iSCSI First Target Parameters + </n1:GroupDisplayName> + <n1:GroupID>IscsiFirstTgtParams</n1:GroupID> + <n1:InstanceID>NIC.Integrated.1-4-1:ConnectFirstTgt</n1:InstanceID> + <n1:IsReadOnly>false</n1:IsReadOnly> + <n1:PendingValue xsi:nil="true" /> + <n1:PossibleValues>Disabled</n1:PossibleValues> + <n1:PossibleValues>Enabled</n1:PossibleValues> + <n1:PossibleValuesDescription>Disabled + </n1:PossibleValuesDescription> + <n1:PossibleValuesDescription>Enabled + </n1:PossibleValuesDescription> + </n1:DCIM_NICEnumeration> + <n1:DCIM_NICEnumeration> + <n1:AttributeDisplayName>Connect</n1:AttributeDisplayName> + <n1:AttributeName>ConnectSecondTgt</n1:AttributeName> + <n1:CurrentValue>Disabled</n1:CurrentValue> + <n1:Dependency><![CDATA[<Dep><AttrLev Op="OR"><ROIf Name="iSCSIBootSupport">Unavailable</ROIf></AttrLev></Dep>]]></n1:Dependency> + <n1:FQDD>NIC.Integrated.1-4-1</n1:FQDD> + <n1:GroupDisplayName>iSCSI Second Target Parameters + </n1:GroupDisplayName> + <n1:GroupID>IscsiSecondTgtParams</n1:GroupID> + <n1:InstanceID>NIC.Integrated.1-4-1:ConnectSecondTgt + </n1:InstanceID> + <n1:IsReadOnly>false</n1:IsReadOnly> + <n1:PendingValue xsi:nil="true" /> + <n1:PossibleValues>Disabled</n1:PossibleValues> + <n1:PossibleValues>Enabled</n1:PossibleValues> + <n1:PossibleValuesDescription>Disabled + </n1:PossibleValuesDescription> + <n1:PossibleValuesDescription>Enabled + </n1:PossibleValuesDescription> + </n1:DCIM_NICEnumeration> + <n1:DCIM_NICEnumeration> + <n1:AttributeDisplayName>Legacy Boot Protocol + </n1:AttributeDisplayName> + <n1:AttributeName>LegacyBootProto</n1:AttributeName> + <n1:CurrentValue>NONE</n1:CurrentValue> + <n1:Dependency xsi:nil="true" /> + <n1:FQDD>NIC.Integrated.1-4-1</n1:FQDD> + <n1:GroupDisplayName>MBA Configuration Menu</n1:GroupDisplayName> + <n1:GroupID>NICConfig</n1:GroupID> + <n1:InstanceID>NIC.Integrated.1-4-1:LegacyBootProto</n1:InstanceID> + <n1:IsReadOnly>false</n1:IsReadOnly> + <n1:PendingValue xsi:nil="true" /> + <n1:PossibleValues>PXE</n1:PossibleValues> + <n1:PossibleValues>iSCSI</n1:PossibleValues> + <n1:PossibleValues>NONE</n1:PossibleValues> + <n1:PossibleValuesDescription>PXE</n1:PossibleValuesDescription> + <n1:PossibleValuesDescription>iSCSI</n1:PossibleValuesDescription> + <n1:PossibleValuesDescription>NONE</n1:PossibleValuesDescription> + </n1:DCIM_NICEnumeration> + <n1:DCIM_NICEnumeration> + <n1:AttributeDisplayName>Boot Strap Type</n1:AttributeDisplayName> + <n1:AttributeName>BootStrapType</n1:AttributeName> + <n1:CurrentValue>AutoDetect</n1:CurrentValue> + <n1:Dependency xsi:nil="true" /> + <n1:FQDD>NIC.Integrated.1-4-1</n1:FQDD> + <n1:GroupDisplayName>MBA Configuration Menu</n1:GroupDisplayName> + <n1:GroupID>NICConfig</n1:GroupID> + <n1:InstanceID>NIC.Integrated.1-4-1:BootStrapType</n1:InstanceID> + <n1:IsReadOnly>false</n1:IsReadOnly> + <n1:PendingValue xsi:nil="true" /> + <n1:PossibleValues>AutoDetect</n1:PossibleValues> + <n1:PossibleValues>BBS</n1:PossibleValues> + <n1:PossibleValues>Int18h</n1:PossibleValues> + <n1:PossibleValues>Int19h</n1:PossibleValues> + <n1:PossibleValuesDescription>Auto Detect + </n1:PossibleValuesDescription> + <n1:PossibleValuesDescription>BBS</n1:PossibleValuesDescription> + <n1:PossibleValuesDescription>Int 18h + </n1:PossibleValuesDescription> + <n1:PossibleValuesDescription>Int 19h + </n1:PossibleValuesDescription> + </n1:DCIM_NICEnumeration> + <n1:DCIM_NICEnumeration> + <n1:AttributeDisplayName>Hide Setup Prompt + </n1:AttributeDisplayName> + <n1:AttributeName>HideSetupPrompt</n1:AttributeName> + <n1:CurrentValue>Disabled</n1:CurrentValue> + <n1:Dependency xsi:nil="true" /> + <n1:FQDD>NIC.Integrated.1-4-1</n1:FQDD> + <n1:GroupDisplayName>MBA Configuration Menu</n1:GroupDisplayName> + <n1:GroupID>NICConfig</n1:GroupID> + <n1:InstanceID>NIC.Integrated.1-4-1:HideSetupPrompt</n1:InstanceID> + <n1:IsReadOnly>false</n1:IsReadOnly> + <n1:PendingValue xsi:nil="true" /> + <n1:PossibleValues>Disabled</n1:PossibleValues> + <n1:PossibleValues>Enabled</n1:PossibleValues> + <n1:PossibleValuesDescription>Disabled + </n1:PossibleValuesDescription> + <n1:PossibleValuesDescription>Enabled + </n1:PossibleValuesDescription> + </n1:DCIM_NICEnumeration> + <n1:DCIM_NICEnumeration> + <n1:AttributeDisplayName>Link Speed</n1:AttributeDisplayName> + <n1:AttributeName>LnkSpeed</n1:AttributeName> + <n1:CurrentValue>AutoNeg</n1:CurrentValue> + <n1:Dependency xsi:nil="true" /> + <n1:FQDD>NIC.Integrated.1-4-1</n1:FQDD> + <n1:GroupDisplayName>MBA Configuration Menu</n1:GroupDisplayName> + <n1:GroupID>NICConfig</n1:GroupID> + <n1:InstanceID>NIC.Integrated.1-4-1:LnkSpeed</n1:InstanceID> + <n1:IsReadOnly>false</n1:IsReadOnly> + <n1:PendingValue xsi:nil="true" /> + <n1:PossibleValues>AutoNeg</n1:PossibleValues> + <n1:PossibleValues>10MbpsHalf</n1:PossibleValues> + <n1:PossibleValues>10MbpsFull</n1:PossibleValues> + <n1:PossibleValues>100MbpsHalf</n1:PossibleValues> + <n1:PossibleValues>100MbpsFull</n1:PossibleValues> + <n1:PossibleValuesDescription>AutoNeg + </n1:PossibleValuesDescription> + <n1:PossibleValuesDescription>10Mbps Half + </n1:PossibleValuesDescription> + <n1:PossibleValuesDescription>10Mbps Full + </n1:PossibleValuesDescription> + <n1:PossibleValuesDescription>100Mbps Half + </n1:PossibleValuesDescription> + <n1:PossibleValuesDescription>100Mbps Full + </n1:PossibleValuesDescription> + </n1:DCIM_NICEnumeration> + <n1:DCIM_NICEnumeration> + <n1:AttributeDisplayName>Pre-boot Wake On LAN + </n1:AttributeDisplayName> + <n1:AttributeName>WakeOnLan</n1:AttributeName> + <n1:CurrentValue>Disabled</n1:CurrentValue> + <n1:Dependency xsi:nil="true" /> + <n1:FQDD>NIC.Integrated.1-4-1</n1:FQDD> + <n1:GroupDisplayName>MBA Configuration Menu</n1:GroupDisplayName> + <n1:GroupID>NICConfig</n1:GroupID> + <n1:InstanceID>NIC.Integrated.1-4-1:WakeOnLan</n1:InstanceID> + <n1:IsReadOnly>false</n1:IsReadOnly> + <n1:PendingValue xsi:nil="true" /> + <n1:PossibleValues>Disabled</n1:PossibleValues> + <n1:PossibleValues>Enabled</n1:PossibleValues> + <n1:PossibleValuesDescription>Disabled + </n1:PossibleValuesDescription> + <n1:PossibleValuesDescription>Enabled + </n1:PossibleValuesDescription> + </n1:DCIM_NICEnumeration> + <n1:DCIM_NICEnumeration> + <n1:AttributeDisplayName>VLAN Mode</n1:AttributeDisplayName> + <n1:AttributeName>VLanMode</n1:AttributeName> + <n1:CurrentValue>Disabled</n1:CurrentValue> + <n1:Dependency xsi:nil="true" /> + <n1:FQDD>NIC.Integrated.1-4-1</n1:FQDD> + <n1:GroupDisplayName>MBA Configuration Menu</n1:GroupDisplayName> + <n1:GroupID>NICConfig</n1:GroupID> + <n1:InstanceID>NIC.Integrated.1-4-1:VLanMode</n1:InstanceID> + <n1:IsReadOnly>false</n1:IsReadOnly> + <n1:PendingValue xsi:nil="true" /> + <n1:PossibleValues>Disabled</n1:PossibleValues> + <n1:PossibleValues>Enabled</n1:PossibleValues> + <n1:PossibleValuesDescription>Disabled + </n1:PossibleValuesDescription> + <n1:PossibleValuesDescription>Enabled + </n1:PossibleValuesDescription> + </n1:DCIM_NICEnumeration> + <n1:DCIM_NICEnumeration> + <n1:AttributeDisplayName>Use Independent Target Portal + </n1:AttributeDisplayName> + <n1:AttributeName>UseIndTgtPortal</n1:AttributeName> + <n1:CurrentValue>Disabled</n1:CurrentValue> + <n1:Dependency><![CDATA[<Dep><AttrLev Op="OR"><ROIf Name="iSCSIBootSupport">Unavailable</ROIf></AttrLev></Dep>]]></n1:Dependency> + <n1:FQDD>NIC.Integrated.1-4-1</n1:FQDD> + <n1:GroupDisplayName>Secondary Device</n1:GroupDisplayName> + <n1:GroupID>SecondaryDevice</n1:GroupID> + <n1:InstanceID>NIC.Integrated.1-4-1:UseIndTgtPortal</n1:InstanceID> + <n1:IsReadOnly>false</n1:IsReadOnly> + <n1:PendingValue xsi:nil="true" /> + <n1:PossibleValues>Disabled</n1:PossibleValues> + <n1:PossibleValues>Enabled</n1:PossibleValues> + <n1:PossibleValuesDescription>Disabled + </n1:PossibleValuesDescription> + <n1:PossibleValuesDescription>Enabled + </n1:PossibleValuesDescription> + </n1:DCIM_NICEnumeration> + <n1:DCIM_NICEnumeration> + <n1:AttributeDisplayName>Use Independent Target Name + </n1:AttributeDisplayName> + <n1:AttributeName>UseIndTgtName</n1:AttributeName> + <n1:CurrentValue>Disabled</n1:CurrentValue> + <n1:Dependency><![CDATA[<Dep><AttrLev Op="OR"><ROIf Name="iSCSIBootSupport">Unavailable</ROIf></AttrLev></Dep>]]></n1:Dependency> + <n1:FQDD>NIC.Integrated.1-4-1</n1:FQDD> + <n1:GroupDisplayName>Secondary Device</n1:GroupDisplayName> + <n1:GroupID>SecondaryDevice</n1:GroupID> + <n1:InstanceID>NIC.Integrated.1-4-1:UseIndTgtName</n1:InstanceID> + <n1:IsReadOnly>false</n1:IsReadOnly> + <n1:PendingValue xsi:nil="true" /> + <n1:PossibleValues>Disabled</n1:PossibleValues> + <n1:PossibleValues>Enabled</n1:PossibleValues> + <n1:PossibleValuesDescription>Disabled + </n1:PossibleValuesDescription> + <n1:PossibleValuesDescription>Enabled + </n1:PossibleValuesDescription> + </n1:DCIM_NICEnumeration> + </wsman:Items> + </wsen:EnumerateResponse> + </s:Body> +</s:Envelope> |