'Populate iscsi dict to pass to nova.
:param device_info: device info dict
:param volume: volume object
:returns: iscsi dict'

def get_iscsi_dict(self, device_info, volume):

    try:
        ip_and_iqn = device_info['ip_and_iqn']
        is_multipath = device_info['is_multipath']
        host_lun_id = device_info['hostlunid']
    except KeyError as e:
        exception_message = (_('Cannot    get    iSCSI    ipaddresses,    multipath    flag,    or    hostlunid.    Exception    is    %(e)s.') % {'e': six.text_type(e)})
        raise exception.VolumeBackendAPIException(data=exception_message)
    iscsi_properties = self.vmax_get_iscsi_properties(volume, ip_and_iqn, is_multipath, host_lun_id)
    LOG.info('iSCSI    properties    are:    %(props)s', {'props': iscsi_properties})
    return {'driver_volume_type': 'iscsi', 'data': iscsi_properties}
