Hello community,

here is the log from the commit of package parted for openSUSE:Factory checked 
in at 2014-05-10 08:31:50
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/parted (Old)
 and      /work/SRC/openSUSE:Factory/.parted.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "parted"

Changes:
--------
--- /work/SRC/openSUSE:Factory/parted/parted.changes    2014-02-19 
11:36:17.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.parted.new/parted.changes       2014-05-10 
08:32:00.000000000 +0200
@@ -1,0 +2,8 @@
+Tue Apr 29 13:06:09 UTC 2014 - [email protected]
+
+- Support setting boot flag in pMBR (bnc#872054):
+  - drop: revert-gpt-add-commands-to-manipulate-pMBR-boot-flag.patch 
+  - add: libparted-copy-pmbr_boot-when-duplicating-GPT-disk.patch
+  - refresh patches
+
+-------------------------------------------------------------------
@@ -31,0 +40 @@
+

New:
----
  libparted-copy-pmbr_boot-when-duplicating-GPT-disk.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ parted.spec ++++++
--- /var/tmp/diff_new_pack.PkWunO/_old  2014-05-10 08:32:01.000000000 +0200
+++ /var/tmp/diff_new_pack.PkWunO/_new  2014-05-10 08:32:01.000000000 +0200
@@ -43,9 +43,6 @@
 Patch16:        do-not-create-dm-nodes.patch
 #PATCH-FEATURE-SUSE more-reliable-informing-the-kernel.patch bnc#657360 
[email protected]
 Patch17:        more-reliable-informing-the-kernel.patch
-#PATCH-FEATURE-SUSE revert-gpt-add-commands-to-manipulate-pMBR-boot-flag.patch
-# (clashes with our hybrid pMBR patches)
-Patch18:        revert-gpt-add-commands-to-manipulate-pMBR-boot-flag.patch
 Patch19:        parted-gpt-mbr-sync.patch
 Patch20:        libparted-ppc-prepboot-in-syncmbr.patch
 Patch21:        parted-workaround-windows7-gpt-implementation.patch
@@ -59,6 +56,7 @@
 Patch29:        libparted-dasd-do-not-use-first-tracks.patch
 Patch30:        libparted-initialize-dasd-part-type.patch
 Patch31:        libparted-use-BLKRRPART-for-DASD.patch.patch
+Patch32:        libparted-copy-pmbr_boot-when-duplicating-GPT-disk.patch
 Patch100:       parted-fatresize-autoconf.patch
 Requires:       /sbin/udevadm
 BuildRequires:  check-devel
@@ -124,7 +122,6 @@
 %patch15 -p1
 %patch16 -p1
 %patch17 -p1
-%patch18 -p1
 %patch19 -p1
 %patch20 -p1
 %patch21 -p1
@@ -138,6 +135,7 @@
 %patch29 -p1
 %patch30 -p1
 %patch31 -p1
+%patch32 -p1
 %patch100 -p1
 
 %build

++++++ dummy-bootcode-only-for-x86.patch ++++++
--- /var/tmp/diff_new_pack.PkWunO/_old  2014-05-10 08:32:01.000000000 +0200
+++ /var/tmp/diff_new_pack.PkWunO/_new  2014-05-10 08:32:01.000000000 +0200
@@ -1,7 +1,11 @@
-Index: parted-2.4/libparted/labels/dos.c
+---
+ libparted/labels/dos.c |    7 +++++++
+ 1 file changed, 7 insertions(+)
+
+Index: parted-3.1/libparted/labels/dos.c
 ===================================================================
---- parted-2.4.orig/libparted/labels/dos.c
-+++ parted-2.4/libparted/labels/dos.c
+--- parted-3.1.orig/libparted/labels/dos.c
++++ parted-3.1/libparted/labels/dos.c
 @@ -1260,6 +1260,12 @@ msdos_write (const PedDisk* disk)
                return 0;
        DosRawTable *table = (DosRawTable *) s0;

++++++ libparted-copy-pmbr_boot-when-duplicating-GPT-disk.patch ++++++
>From c261a9b340e2982a49e055ea6332fd0f49f3d531 Mon Sep 17 00:00:00 2001
From: "Brian C. Lane" <[email protected]>
Date: Wed, 11 Sep 2013 12:24:51 -0700
Subject: [PATCH] libparted: copy pmbr_boot when duplicating GPT disk

* libparted/labels/gpt.c (gpt_duplicate): copy pmbr_boot flag
---
 libparted/labels/gpt.c |    1 +
 1 file changed, 1 insertion(+)

Index: parted-3.1/libparted/labels/gpt.c
===================================================================
--- parted-3.1.orig/libparted/labels/gpt.c
+++ parted-3.1/libparted/labels/gpt.c
@@ -660,6 +660,7 @@ gpt_duplicate (const PedDisk *disk)
                      old_disk_data->data_area.length);
   new_disk_data->entry_count = old_disk_data->entry_count;
   new_disk_data->uuid = old_disk_data->uuid;
+  new_disk_data->pmbr_boot = old_disk_data->pmbr_boot;
   return new_disk;
 }
 
++++++ libparted-ppc-prepboot-in-syncmbr.patch ++++++
--- /var/tmp/diff_new_pack.PkWunO/_old  2014-05-10 08:32:01.000000000 +0200
+++ /var/tmp/diff_new_pack.PkWunO/_new  2014-05-10 08:32:01.000000000 +0200
@@ -6,7 +6,7 @@
 ===================================================================
 --- parted-3.1.orig/libparted/labels/gpt.c
 +++ parted-3.1/libparted/labels/gpt.c
-@@ -1181,6 +1181,9 @@ _part_to_ostype (PedPartition* part)
+@@ -1183,6 +1183,9 @@ _part_to_ostype (PedPartition* part)
          if (strncmp (part->fs_type->name, "hfs", 3) == 0) return 0xaf;
          if (strstr (part->fs_type->name, "swap")) return 0x82;
      }


++++++ parted-Add-Intel-Rapid-Start-Technology-partition.patch ++++++
--- /var/tmp/diff_new_pack.PkWunO/_old  2014-05-10 08:32:01.000000000 +0200
+++ /var/tmp/diff_new_pack.PkWunO/_new  2014-05-10 08:32:01.000000000 +0200
@@ -50,7 +50,7 @@
 ===================================================================
 --- parted-3.1.orig/libparted/disk.c
 +++ parted-3.1/libparted/disk.c
-@@ -2473,6 +2473,8 @@ ped_partition_flag_get_name (PedPartitio
+@@ -2474,6 +2474,8 @@ ped_partition_flag_get_name (PedPartitio
                  return N_("diag");
          case PED_PARTITION_LEGACY_BOOT:
                  return N_("legacy_boot");
@@ -176,7 +176,7 @@
  
  struct __attribute__ ((packed)) _GuidPartitionTableHeader_t
  {
-@@ -282,6 +286,7 @@ typedef struct _GPTPartitionData
+@@ -283,6 +287,7 @@ typedef struct _GPTPartitionData
    int atvrecv;
    int msftrecv;
    int legacy_boot;
@@ -184,7 +184,7 @@
  } GPTPartitionData;
  
  static PedDiskType gpt_disk_type;
-@@ -883,6 +888,7 @@ _parse_part_entry (PedDisk *disk, GuidPa
+@@ -885,6 +890,7 @@ _parse_part_entry (PedDisk *disk, GuidPa
      = gpt_part_data->hidden = gpt_part_data->msftres
      = gpt_part_data->msftrecv
      = gpt_part_data->legacy_boot
@@ -192,7 +192,7 @@
      = gpt_part_data->bios_grub = gpt_part_data->atvrecv = 0;
  
    if (pte->Attributes.RequiredToFunction & 0x1)
-@@ -906,6 +912,8 @@ _parse_part_entry (PedDisk *disk, GuidPa
+@@ -908,6 +914,8 @@ _parse_part_entry (PedDisk *disk, GuidPa
      gpt_part_data->msftrecv = 1;
    else if (!guid_cmp (gpt_part_data->type, PARTITION_APPLE_TV_RECOVERY_GUID))
      gpt_part_data->atvrecv = 1;
@@ -201,7 +201,7 @@
  
    return part;
  }
-@@ -1518,6 +1526,7 @@ gpt_partition_new (const PedDisk *disk,
+@@ -1531,6 +1539,7 @@ gpt_partition_new (const PedDisk *disk,
    gpt_part_data->msftrecv = 0;
    gpt_part_data->atvrecv = 0;
    gpt_part_data->legacy_boot = 0;
@@ -209,7 +209,7 @@
    uuid_generate ((unsigned char *) &gpt_part_data->uuid);
    swap_uuid_and_efi_guid ((unsigned char *) (&gpt_part_data->uuid));
    memset (gpt_part_data->name, 0, sizeof gpt_part_data->name);
-@@ -1621,6 +1630,11 @@ gpt_partition_set_system (PedPartition *
+@@ -1634,6 +1643,11 @@ gpt_partition_set_system (PedPartition *
        gpt_part_data->type = PARTITION_APPLE_TV_RECOVERY_GUID;
        return 1;
      }
@@ -221,7 +221,7 @@
  
    if (fs_type)
      {
-@@ -1721,6 +1735,7 @@ gpt_partition_set_flag (PedPartition *pa
+@@ -1774,6 +1788,7 @@ gpt_partition_set_flag (PedPartition *pa
            = gpt_part_data->hp_service
            = gpt_part_data->msftres
            = gpt_part_data->msftrecv
@@ -229,7 +229,7 @@
            = gpt_part_data->atvrecv = 0;
        return gpt_partition_set_system (part, part->fs_type);
      case PED_PARTITION_BIOS_GRUB:
-@@ -1732,6 +1747,7 @@ gpt_partition_set_flag (PedPartition *pa
+@@ -1785,6 +1800,7 @@ gpt_partition_set_flag (PedPartition *pa
            = gpt_part_data->hp_service
            = gpt_part_data->msftres
            = gpt_part_data->msftrecv
@@ -237,7 +237,7 @@
            = gpt_part_data->atvrecv = 0;
        return gpt_partition_set_system (part, part->fs_type);
      case PED_PARTITION_RAID:
-@@ -1743,6 +1759,7 @@ gpt_partition_set_flag (PedPartition *pa
+@@ -1796,6 +1812,7 @@ gpt_partition_set_flag (PedPartition *pa
            = gpt_part_data->hp_service
            = gpt_part_data->msftres
            = gpt_part_data->msftrecv
@@ -245,7 +245,7 @@
            = gpt_part_data->atvrecv = 0;
        return gpt_partition_set_system (part, part->fs_type);
      case PED_PARTITION_LVM:
-@@ -1754,6 +1771,7 @@ gpt_partition_set_flag (PedPartition *pa
+@@ -1807,6 +1824,7 @@ gpt_partition_set_flag (PedPartition *pa
            = gpt_part_data->hp_service
            = gpt_part_data->msftres
            = gpt_part_data->msftrecv
@@ -253,7 +253,7 @@
            = gpt_part_data->atvrecv = 0;
        return gpt_partition_set_system (part, part->fs_type);
      case PED_PARTITION_HPSERVICE:
-@@ -1765,6 +1783,7 @@ gpt_partition_set_flag (PedPartition *pa
+@@ -1818,6 +1836,7 @@ gpt_partition_set_flag (PedPartition *pa
            = gpt_part_data->bios_grub
            = gpt_part_data->msftres
            = gpt_part_data->msftrecv
@@ -261,7 +261,7 @@
            = gpt_part_data->atvrecv = 0;
        return gpt_partition_set_system (part, part->fs_type);
      case PED_PARTITION_MSFT_RESERVED:
-@@ -1776,6 +1795,7 @@ gpt_partition_set_flag (PedPartition *pa
+@@ -1829,6 +1848,7 @@ gpt_partition_set_flag (PedPartition *pa
            = gpt_part_data->bios_grub
            = gpt_part_data->hp_service
            = gpt_part_data->msftrecv
@@ -269,7 +269,7 @@
            = gpt_part_data->atvrecv = 0;
        return gpt_partition_set_system (part, part->fs_type);
      case PED_PARTITION_DIAG:
-@@ -1787,6 +1807,7 @@ gpt_partition_set_flag (PedPartition *pa
+@@ -1840,6 +1860,7 @@ gpt_partition_set_flag (PedPartition *pa
            = gpt_part_data->bios_grub
            = gpt_part_data->hp_service
            = gpt_part_data->msftres
@@ -277,7 +277,7 @@
            = gpt_part_data->atvrecv = 0;
        return gpt_partition_set_system (part, part->fs_type);
      case PED_PARTITION_APPLE_TV_RECOVERY:
-@@ -1798,8 +1819,21 @@ gpt_partition_set_flag (PedPartition *pa
+@@ -1851,8 +1872,21 @@ gpt_partition_set_flag (PedPartition *pa
            = gpt_part_data->bios_grub
            = gpt_part_data->hp_service
            = gpt_part_data->msftres
@@ -299,7 +299,7 @@
      case PED_PARTITION_HIDDEN:
        gpt_part_data->hidden = state;
        return 1;
-@@ -1844,6 +1878,8 @@ gpt_partition_get_flag (const PedPartiti
+@@ -1897,6 +1931,8 @@ gpt_partition_get_flag (const PedPartiti
        return gpt_part_data->hidden;
      case PED_PARTITION_LEGACY_BOOT:
        return gpt_part_data->legacy_boot;
@@ -308,7 +308,7 @@
      case PED_PARTITION_SWAP:
      case PED_PARTITION_LBA:
      case PED_PARTITION_ROOT:
-@@ -1869,6 +1905,7 @@ gpt_partition_is_flag_available (const P
+@@ -1922,6 +1958,7 @@ gpt_partition_is_flag_available (const P
      case PED_PARTITION_APPLE_TV_RECOVERY:
      case PED_PARTITION_HIDDEN:
      case PED_PARTITION_LEGACY_BOOT:

++++++ parted-GPT-add-support-for-PReP-GUID.patch ++++++
--- /var/tmp/diff_new_pack.PkWunO/_old  2014-05-10 08:32:01.000000000 +0200
+++ /var/tmp/diff_new_pack.PkWunO/_new  2014-05-10 08:32:01.000000000 +0200
@@ -60,7 +60,7 @@
  #define PARTITION_IRST_GUID \
      ((efi_guid_t) { PED_CPU_TO_LE32 (0xD3BFE2DE), PED_CPU_TO_LE16 (0x3DAF), \
                      PED_CPU_TO_LE16 (0x11DF), 0xba, 0x40, \
-@@ -286,6 +290,7 @@ typedef struct _GPTPartitionData
+@@ -287,6 +291,7 @@ typedef struct _GPTPartitionData
    int atvrecv;
    int msftrecv;
    int legacy_boot;
@@ -68,7 +68,7 @@
    int irst;
  } GPTPartitionData;
  
-@@ -888,6 +893,7 @@ _parse_part_entry (PedDisk *disk, GuidPa
+@@ -890,6 +895,7 @@ _parse_part_entry (PedDisk *disk, GuidPa
      = gpt_part_data->hidden = gpt_part_data->msftres
      = gpt_part_data->msftrecv
      = gpt_part_data->legacy_boot
@@ -76,7 +76,7 @@
      = gpt_part_data->irst
      = gpt_part_data->bios_grub = gpt_part_data->atvrecv = 0;
  
-@@ -912,6 +918,8 @@ _parse_part_entry (PedDisk *disk, GuidPa
+@@ -914,6 +920,8 @@ _parse_part_entry (PedDisk *disk, GuidPa
      gpt_part_data->msftrecv = 1;
    else if (!guid_cmp (gpt_part_data->type, PARTITION_APPLE_TV_RECOVERY_GUID))
      gpt_part_data->atvrecv = 1;
@@ -85,7 +85,7 @@
    else if (!guid_cmp (gpt_part_data->type, PARTITION_IRST_GUID))
      gpt_part_data->irst = 1;
  
-@@ -1526,6 +1534,7 @@ gpt_partition_new (const PedDisk *disk,
+@@ -1539,6 +1547,7 @@ gpt_partition_new (const PedDisk *disk,
    gpt_part_data->msftrecv = 0;
    gpt_part_data->atvrecv = 0;
    gpt_part_data->legacy_boot = 0;
@@ -93,7 +93,7 @@
    gpt_part_data->irst = 0;
    uuid_generate ((unsigned char *) &gpt_part_data->uuid);
    swap_uuid_and_efi_guid ((unsigned char *) (&gpt_part_data->uuid));
-@@ -1600,6 +1609,11 @@ gpt_partition_set_system (PedPartition *
+@@ -1613,6 +1622,11 @@ gpt_partition_set_system (PedPartition *
        gpt_part_data->type = PARTITION_RAID_GUID;
        return 1;
      }
@@ -105,7 +105,7 @@
    if (gpt_part_data->boot)
      {
        gpt_part_data->type = PARTITION_SYSTEM_GUID;
-@@ -1735,6 +1749,7 @@ gpt_partition_set_flag (PedPartition *pa
+@@ -1788,6 +1802,7 @@ gpt_partition_set_flag (PedPartition *pa
            = gpt_part_data->hp_service
            = gpt_part_data->msftres
            = gpt_part_data->msftrecv
@@ -113,7 +113,7 @@
            = gpt_part_data->irst
            = gpt_part_data->atvrecv = 0;
        return gpt_partition_set_system (part, part->fs_type);
-@@ -1747,6 +1762,7 @@ gpt_partition_set_flag (PedPartition *pa
+@@ -1800,6 +1815,7 @@ gpt_partition_set_flag (PedPartition *pa
            = gpt_part_data->hp_service
            = gpt_part_data->msftres
            = gpt_part_data->msftrecv
@@ -121,7 +121,7 @@
            = gpt_part_data->irst
            = gpt_part_data->atvrecv = 0;
        return gpt_partition_set_system (part, part->fs_type);
-@@ -1759,6 +1775,7 @@ gpt_partition_set_flag (PedPartition *pa
+@@ -1812,6 +1828,7 @@ gpt_partition_set_flag (PedPartition *pa
            = gpt_part_data->hp_service
            = gpt_part_data->msftres
            = gpt_part_data->msftrecv
@@ -129,7 +129,7 @@
            = gpt_part_data->irst
            = gpt_part_data->atvrecv = 0;
        return gpt_partition_set_system (part, part->fs_type);
-@@ -1771,6 +1788,7 @@ gpt_partition_set_flag (PedPartition *pa
+@@ -1824,6 +1841,7 @@ gpt_partition_set_flag (PedPartition *pa
            = gpt_part_data->hp_service
            = gpt_part_data->msftres
            = gpt_part_data->msftrecv
@@ -137,7 +137,7 @@
            = gpt_part_data->irst
            = gpt_part_data->atvrecv = 0;
        return gpt_partition_set_system (part, part->fs_type);
-@@ -1783,6 +1801,7 @@ gpt_partition_set_flag (PedPartition *pa
+@@ -1836,6 +1854,7 @@ gpt_partition_set_flag (PedPartition *pa
            = gpt_part_data->bios_grub
            = gpt_part_data->msftres
            = gpt_part_data->msftrecv
@@ -145,7 +145,7 @@
            = gpt_part_data->irst
            = gpt_part_data->atvrecv = 0;
        return gpt_partition_set_system (part, part->fs_type);
-@@ -1795,6 +1814,7 @@ gpt_partition_set_flag (PedPartition *pa
+@@ -1848,6 +1867,7 @@ gpt_partition_set_flag (PedPartition *pa
            = gpt_part_data->bios_grub
            = gpt_part_data->hp_service
            = gpt_part_data->msftrecv
@@ -153,7 +153,7 @@
            = gpt_part_data->irst
            = gpt_part_data->atvrecv = 0;
        return gpt_partition_set_system (part, part->fs_type);
-@@ -1807,6 +1827,7 @@ gpt_partition_set_flag (PedPartition *pa
+@@ -1860,6 +1880,7 @@ gpt_partition_set_flag (PedPartition *pa
            = gpt_part_data->bios_grub
            = gpt_part_data->hp_service
            = gpt_part_data->msftres
@@ -161,7 +161,7 @@
            = gpt_part_data->irst
            = gpt_part_data->atvrecv = 0;
        return gpt_partition_set_system (part, part->fs_type);
-@@ -1819,9 +1840,22 @@ gpt_partition_set_flag (PedPartition *pa
+@@ -1872,9 +1893,22 @@ gpt_partition_set_flag (PedPartition *pa
            = gpt_part_data->bios_grub
            = gpt_part_data->hp_service
            = gpt_part_data->msftres
@@ -184,7 +184,7 @@
      case PED_PARTITION_IRST:
        gpt_part_data->irst = state;
        if (state)
-@@ -1832,6 +1866,7 @@ gpt_partition_set_flag (PedPartition *pa
+@@ -1885,6 +1919,7 @@ gpt_partition_set_flag (PedPartition *pa
            = gpt_part_data->hp_service
            = gpt_part_data->msftres
            = gpt_part_data->msftrecv
@@ -192,7 +192,7 @@
            = gpt_part_data->atvrecv = 0;
        return gpt_partition_set_system (part, part->fs_type);
      case PED_PARTITION_HIDDEN:
-@@ -1878,6 +1913,8 @@ gpt_partition_get_flag (const PedPartiti
+@@ -1931,6 +1966,8 @@ gpt_partition_get_flag (const PedPartiti
        return gpt_part_data->hidden;
      case PED_PARTITION_LEGACY_BOOT:
        return gpt_part_data->legacy_boot;
@@ -201,7 +201,7 @@
      case PED_PARTITION_IRST:
        return gpt_part_data->irst;
      case PED_PARTITION_SWAP:
-@@ -1906,6 +1943,7 @@ gpt_partition_is_flag_available (const P
+@@ -1959,6 +1996,7 @@ gpt_partition_is_flag_available (const P
      case PED_PARTITION_HIDDEN:
      case PED_PARTITION_LEGACY_BOOT:
      case PED_PARTITION_IRST:

++++++ parted-gpt-mbr-sync.patch ++++++
--- /var/tmp/diff_new_pack.PkWunO/_old  2014-05-10 08:32:01.000000000 +0200
+++ /var/tmp/diff_new_pack.PkWunO/_new  2014-05-10 08:32:01.000000000 +0200
@@ -1,12 +1,12 @@
 ---
- libparted/labels/gpt.c |  239 
++++++++++++++++++++++++++++++++++++++++++++++++-
- 1 file changed, 235 insertions(+), 4 deletions(-)
+ libparted/labels/gpt.c |  240 
++++++++++++++++++++++++++++++++++++++++++++++++-
+ 1 file changed, 236 insertions(+), 4 deletions(-)
 
 Index: parted-3.1/libparted/labels/gpt.c
 ===================================================================
 --- parted-3.1.orig/libparted/labels/gpt.c
 +++ parted-3.1/libparted/labels/gpt.c
-@@ -285,6 +285,7 @@ typedef struct _GPTPartitionData
+@@ -286,6 +286,7 @@ typedef struct _GPTPartitionData
  } GPTPartitionData;
  
  static PedDiskType gpt_disk_type;
@@ -14,7 +14,7 @@
  
  static inline uint32_t
  pth_get_size (const PedDevice *dev)
-@@ -453,8 +454,50 @@ _pmbr_is_valid (const LegacyMBR_t *mbr)
+@@ -454,8 +455,50 @@ _pmbr_is_valid (const LegacyMBR_t *mbr)
    return 0;
  }
  
@@ -66,7 +66,7 @@
  {
    GuidPartitionTableHeader_t *gpt = NULL;
    int gpt_sig_found = 0;
-@@ -507,6 +550,19 @@ gpt_probe (const PedDevice *dev)
+@@ -508,6 +551,19 @@ gpt_probe (const PedDevice *dev)
    return ok;
  }
  
@@ -86,7 +86,7 @@
  static PedDisk *
  gpt_alloc (const PedDevice *dev)
  {
-@@ -544,6 +600,36 @@ error:
+@@ -546,6 +602,36 @@ error:
  }
  
  static PedDisk *
@@ -123,7 +123,7 @@
  gpt_duplicate (const PedDisk *disk)
  {
    PedDisk *new_disk;
-@@ -920,7 +1006,7 @@ gpt_read (PedDisk *disk)
+@@ -930,7 +1016,7 @@ gpt_read (PedDisk *disk)
  
    /* motivation: let the user decide about the pmbr... during
       ped_disk_probe(), they probably didn't get a choice... */
@@ -132,7 +132,7 @@
      goto error;
  
    GuidPartitionTableHeader_t *gpt = NULL;
-@@ -1077,11 +1163,59 @@ error:
+@@ -1087,11 +1173,59 @@ error:
    return 0;
  }
  
@@ -179,21 +179,21 @@
  #ifndef DISCOVER_ONLY
  /* Write the protective MBR (to keep DOS happy) */
  static int
--_write_pmbr (PedDevice *dev)
-+_write_pmbr (const PedDisk *disk)
+-_write_pmbr (PedDevice *dev, bool pmbr_boot)
++_write_pmbr (const PedDisk *disk, bool pmbr_boot)
  {
-+    PedDevice * dev = disk->dev;
++  PedDevice * dev = disk->dev;
 +
-+    /* need sync GPT -> hybrid pMBR ? */
-+    int sync_pmbr = !strcmp(disk->type->name, "gpt_sync_mbr") ? 1 : 0;
++  /* need sync GPT -> hybrid pMBR ? */
++  int sync_pmbr = !strcmp(disk->type->name, "gpt_sync_mbr") ? 1 : 0;
 +
-+    int i, pmbr_id, first_entry = 0, last_entry = 3;
-+    PedPartition *part = NULL, *esp;
++  int i, pmbr_id, first_entry = 0, last_entry = 3;
++  PedPartition *part = NULL, *esp;
 +
    /* The UEFI spec is not clear about what to do with the following
       elements of the Protective MBR (pmbr): BootCode (0-440B),
       UniqueMBRSignature (440B-444B) and Unknown (444B-446B).
-@@ -1095,6 +1229,8 @@ _write_pmbr (PedDevice *dev)
+@@ -1105,6 +1239,8 @@ _write_pmbr (PedDevice *dev, bool pmbr_b
    memset (pmbr->PartitionRecord, 0, sizeof pmbr->PartitionRecord);
  
    pmbr->Signature = PED_CPU_TO_LE16 (MSDOS_MBR_SIGNATURE);
@@ -202,10 +202,10 @@
    pmbr->PartitionRecord[0].OSType = EFI_PMBR_OSTYPE_EFI;
    pmbr->PartitionRecord[0].StartSector = 1;
    pmbr->PartitionRecord[0].EndHead = 0xFE;
-@@ -1105,7 +1241,60 @@ _write_pmbr (PedDevice *dev)
-     pmbr->PartitionRecord[0].SizeInLBA = PED_CPU_TO_LE32 (0xFFFFFFFF);
-   else
+@@ -1117,6 +1253,60 @@ _write_pmbr (PedDevice *dev, bool pmbr_b
      pmbr->PartitionRecord[0].SizeInLBA = PED_CPU_TO_LE32 (dev->length - 1UL);
+   if (pmbr_boot)
+     pmbr->PartitionRecord[0].BootIndicator = 0x80;
 +  } else {
 +  /* Search for an EFI System Partition */
 +  esp = _find_first_part(disk);
@@ -246,7 +246,7 @@
 +          (part->geom.end - part->geom.start + 1) > 0xFFFFFFFF) {
 +          continue;
 +      }
- 
++
 +      pmbr->PartitionRecord[i].OSType      = _part_to_ostype(part);
 +      pmbr->PartitionRecord[i].StartHead     = 0xFE;
 +      pmbr->PartitionRecord[i].StartSector   = 0xFF;
@@ -260,19 +260,19 @@
 +      pmbr->PartitionRecord[i].SizeInLBA = PED_CPU_TO_LE32 
(_part_32bitmax(part->geom.end - part->geom.start + 1));
 +  }
 +  }
+ 
    int write_ok = ped_device_write (dev, pmbr, GPT_PMBR_LBA,
                                     GPT_PMBR_SECTORS);
-   free (s0);
-@@ -1225,7 +1414,7 @@ gpt_write (const PedDisk *disk)
+@@ -1237,7 +1427,7 @@ gpt_write (const PedDisk *disk)
    ptes_crc = efi_crc32 (ptes, ptes_bytes);
  
    /* Write protective MBR */
--  if (!_write_pmbr (disk->dev))
-+  if (!_write_pmbr (disk))
+-  if (!_write_pmbr (disk->dev, gpt_disk_data->pmbr_boot))
++  if (!_write_pmbr (disk, gpt_disk_data->pmbr_boot))
      goto error_free_ptes;
  
    /* Write PTH and PTEs */
-@@ -1802,6 +1991,38 @@ static PedDiskOps gpt_disk_ops =
+@@ -1857,6 +2047,38 @@ static PedDiskOps gpt_disk_ops =
    PT_op_function_initializers (gpt)
  };
  
@@ -311,7 +311,7 @@
  static PedDiskType gpt_disk_type =
  {
    next:               NULL,
-@@ -1810,16 +2031,26 @@ static PedDiskType gpt_disk_type =
+@@ -1865,16 +2087,26 @@ static PedDiskType gpt_disk_type =
    features:   PED_DISK_TYPE_PARTITION_NAME
  };
  

++++++ parted-mac.patch ++++++
--- /var/tmp/diff_new_pack.PkWunO/_old  2014-05-10 08:32:01.000000000 +0200
+++ /var/tmp/diff_new_pack.PkWunO/_new  2014-05-10 08:32:01.000000000 +0200
@@ -46,7 +46,7 @@
 ===================================================================
 --- parted-3.1.orig/libparted/disk.c
 +++ parted-3.1/libparted/disk.c
-@@ -1179,6 +1179,39 @@ _disk_pop_update_mode (PedDisk* disk)
+@@ -1180,6 +1180,39 @@ _disk_pop_update_mode (PedDisk* disk)
   * @{
   */
  

++++++ parted-resize-command.patch ++++++
--- /var/tmp/diff_new_pack.PkWunO/_old  2014-05-10 08:32:01.000000000 +0200
+++ /var/tmp/diff_new_pack.PkWunO/_new  2014-05-10 08:32:01.000000000 +0200
@@ -105,7 +105,7 @@
  static int
  do_rm (PedDevice** dev)
  {
-@@ -1899,6 +1977,14 @@ NULL),
+@@ -1948,6 +2026,14 @@ NULL),
          str_list_create (_(start_end_msg), NULL), 1));
  
  command_register (commands, command_create (

++++++ parted-type.patch ++++++
--- /var/tmp/diff_new_pack.PkWunO/_old  2014-05-10 08:32:01.000000000 +0200
+++ /var/tmp/diff_new_pack.PkWunO/_new  2014-05-10 08:32:01.000000000 +0200
@@ -28,7 +28,7 @@
 ===================================================================
 --- parted-3.1.orig/libparted/disk.c
 +++ parted-3.1/libparted/disk.c
-@@ -2426,6 +2426,8 @@ ped_partition_flag_get_name (PedPartitio
+@@ -2427,6 +2427,8 @@ ped_partition_flag_get_name (PedPartitio
                return N_("lba");
        case PED_PARTITION_HPSERVICE:
                return N_("hp-service");
@@ -134,7 +134,7 @@
  }
  
  static int
-@@ -1623,12 +1635,19 @@ do_set (PedDevice** dev)
+@@ -1660,12 +1672,19 @@ do_set (PedDevice** dev)
                  goto error_destroy_disk;
          if (!command_line_get_part_flag (_("Flag to Invert?"), part, &flag))
                  goto error_destroy_disk;

++++++ parted-workaround-windows7-gpt-implementation.patch ++++++
--- /var/tmp/diff_new_pack.PkWunO/_old  2014-05-10 08:32:01.000000000 +0200
+++ /var/tmp/diff_new_pack.PkWunO/_new  2014-05-10 08:32:01.000000000 +0200
@@ -1,9 +1,13 @@
 bnc#781688
-Index: parted-2.4/libparted/labels/gpt.c
+---
+ libparted/labels/gpt.c |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+Index: parted-3.1/libparted/labels/gpt.c
 ===================================================================
---- parted-2.4.orig/libparted/labels/gpt.c
-+++ parted-2.4/libparted/labels/gpt.c
-@@ -488,7 +488,7 @@ _has_hybrid_pmbr (const PedDevice *dev)
+--- parted-3.1.orig/libparted/labels/gpt.c
++++ parted-3.1/libparted/labels/gpt.c
+@@ -489,7 +489,7 @@ _has_hybrid_pmbr (const PedDevice *dev)
  
    if ((mbr.PartitionRecord[0].OSType == EFI_PMBR_OSTYPE_EFI) &&
        (mbr.PartitionRecord[0].StartingLBA == PED_CPU_TO_LE32(1)) &&


-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to