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 2b74d940c9)
(cherry picked from commit ab79afd577)

Change-Id: Icccc7fa79481f636e9d13ab2fe363d50afa7cd50
This commit is contained in:
digambar 2019-08-21 03:43:30 -04:00
parent 62c24fce69
commit fa471c680c
6 changed files with 1056 additions and 5 deletions

View File

@ -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.

View File

@ -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

View File

@ -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)

View File

@ -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'),
}
}

View File

@ -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>