Revision 8f8442d6

b/lib/storage/drbd_info.py
430 430
    return resource
431 431

  
432 432
  @classmethod
433
  def _TransformVolumeSection(cls, vol_content, retval):
434
    for entry in vol_content:
435
      if entry[0] == "disk" and len(entry) == 2 and \
436
          isinstance(entry[1], basestring):
437
        retval["local_dev"] = entry[1]
438
      elif entry[0] == "meta-disk":
439
        if len(entry) > 1:
440
          retval["meta_dev"] = entry[1]
441
        if len(entry) > 2:
442
          retval["meta_index"] = entry[2]
443

  
444
  @classmethod
433 445
  def _TransformParseResult(cls, parse_result):
434 446
    retval = {}
435 447
    for section in parse_result:
......
439 451
          if lst[0] == "address":
440 452
            retval["local_addr"] = tuple(lst[1:])
441 453
          elif lst[0] == "volume":
442
            for inner in lst[1:]:
443
              if inner[0] == "disk" and len(inner) == 2:
444
                retval["local_dev"] = inner[1]
445
              elif inner[0] == "meta-disk":
446
                if len(inner) > 1:
447
                  retval["meta_dev"] = inner[1]
448
                if len(inner) > 2:
449
                  retval["meta_index"] = inner[2]
454
            cls._TransformVolumeSection(lst[1:], retval)
450 455
      elif sname == "_remote_host":
451 456
        for lst in section[1:]:
452 457
          if lst[0] == "address":

Also available in: Unified diff