uuid.ints[2] = 0;
                        uuid.ints[3] = 0;
                }
-               volume_id_set_uuid(id, uuid.bytes, UUID_DCE);
+               volume_id_set_uuid(id, uuid.bytes, UUID_FOURINT);
                snprintf(id->type_version, sizeof(id->type_version)-1, "%u.%u.%u",
                         le32_to_cpu(mdp0->major_version),
                         le32_to_cpu(mdp0->minor_version),
                        uuid.ints[2] = 0;
                        uuid.ints[3] = 0;
                }
-               volume_id_set_uuid(id, uuid.bytes, UUID_DCE);
+               volume_id_set_uuid(id, uuid.bytes, UUID_FOURINT);
                snprintf(id->type_version, sizeof(id->type_version)-1, "%u.%u.%u",
                         be32_to_cpu(mdp0->major_version),
                         be32_to_cpu(mdp0->minor_version),
        if (le32_to_cpu(mdp1->magic) != MD_SB_MAGIC)
                return -1;
 
-       volume_id_set_uuid(id, mdp1->set_uuid, UUID_DCE);
+       volume_id_set_uuid(id, mdp1->set_uuid, UUID_FOURINT);
        volume_id_set_label_raw(id, mdp1->set_name, 32);
        volume_id_set_label_string(id, mdp1->set_name, 32);
        snprintf(id->type_version, sizeof(id->type_version)-1, "%u", le32_to_cpu(mdp1->major_version));
 
        case UUID_DCE_STRING:
                count = 36;
                break;
+       case UUID_FOURINT:
+               count = 35;
+               break;
        }
        memcpy(id->uuid_raw, buf, count);
        id->uuid_raw_len = count;
                memcpy(id->uuid, buf, count);
                id->uuid[count] = '\0';
                break;
+       case UUID_FOURINT:
+               sprintf(id->uuid,
+                       "%02x%02x%02x%02x:%02x%02x%02x%02x:%02x%02x%02x%02x:%02x%02x%02x%02x",
+                       buf[0], buf[1], buf[2], buf[3],
+                       buf[4], buf[5], buf[6], buf[7],
+                       buf[8], buf[9], buf[10], buf[11],
+                       buf[12], buf[13], buf[14],buf[15]);
+               break;
        }
 }