[OE-core] [PATCH] parted: fix several integer overflows
Ming Liu
ming.liu at windriver.com
Tue Feb 26 00:55:09 UTC 2013
On 02/26/2013 07:55 AM, Saul Wold wrote:
> On 02/24/2013 09:03 PM, Ming Liu wrote:
>> Integer overflows was found in libparted/labels/dvh.c, while attemptting
>> assign unsigned int values to int types in some places. These overflows
>> only can be observed on BE platforms like MIPS, when the
>> "WORDS_BIGENDIAN"
>> macro is defined in parted.
>>
>> Defined by unsigned int instead.
>>
>> Signed-off-by: Ming Liu <ming.liu at windriver.com>
>> ---
>> .../parted/parted-3.1/fix-dvh-overflows.patch | 34
>> ++++++++++++++++++++++
>> meta/recipes-extended/parted/parted_3.1.bb | 5 ++--
>> 2 files changed, 37 insertions(+), 2 deletions(-)
>> create mode 100644
>> meta/recipes-extended/parted/parted-3.1/fix-dvh-overflows.patch
>>
>> diff --git
>> a/meta/recipes-extended/parted/parted-3.1/fix-dvh-overflows.patch
>> b/meta/recipes-extended/parted/parted-3.1/fix-dvh-overflows.patch
>> new file mode 100644
>> index 0000000..0768642
>> --- /dev/null
>> +++ b/meta/recipes-extended/parted/parted-3.1/fix-dvh-overflows.patch
>> @@ -0,0 +1,34 @@
>> +Upstream-Status: Pending
>> +
> Please add Signed-off-by: to the patch also.
OK, got it. I will send V1.
the best,
thank you
>
> Thanks
> Sau!
>
>> +---
>> + dvh.h | 10 +++++-----
>> + 1 file changed, 5 insertions(+), 5 deletions(-)
>> +
>> +Index: parted-3.1/libparted/labels/dvh.h
>> +===================================================================
>> +--- parted-3.1.orig/libparted/labels/dvh.h 2013-02-25
>> 10:46:13.204477586 +0800
>> ++++ parted-3.1/libparted/labels/dvh.h 2013-02-25
>> 10:47:20.954477065 +0800
>> +@@ -112,8 +112,8 @@ struct device_parameters {
>> +
>> + struct volume_directory {
>> + char vd_name[VDNAMESIZE]; /* name */
>> +- int vd_lbn; /* logical block number */
>> +- int vd_nbytes; /* file length in bytes */
>> ++ unsigned int vd_lbn; /* logical block number */
>> ++ unsigned int vd_nbytes; /* file length in bytes */
>> + };
>> +
>> + /*
>> +@@ -125,9 +125,9 @@ struct volume_directory {
>> + * NOTE: pt_firstlbn SHOULD BE CYLINDER ALIGNED
>> + */
>> + struct partition_table { /* one per logical partition */
>> +- int pt_nblks; /* # of logical blks in partition */
>> +- int pt_firstlbn; /* first lbn of partition */
>> +- int pt_type; /* use of partition */
>> ++ unsigned int pt_nblks; /* # of logical blks in partition */
>> ++ unsigned int pt_firstlbn; /* first lbn of partition */
>> ++ int pt_type; /* use of partition */
>> + };
>> +
>> + #define PTYPE_VOLHDR 0 /* partition is volume header */
>> diff --git a/meta/recipes-extended/parted/parted_3.1.bb
>> b/meta/recipes-extended/parted/parted_3.1.bb
>> index 21d3a66..079b295 100644
>> --- a/meta/recipes-extended/parted/parted_3.1.bb
>> +++ b/meta/recipes-extended/parted/parted_3.1.bb
>> @@ -4,13 +4,14 @@ LICENSE = "GPLv3+"
>> LIC_FILES_CHKSUM =
>> "file://COPYING;md5=2f31b266d3440dd7ee50f92cf67d8e6c"
>> SECTION = "console/tools"
>> DEPENDS = "ncurses readline util-linux"
>> -PR = "r0"
>> +PR = "r1"
>>
>> SRC_URI = "${GNU_MIRROR}/parted/parted-${PV}.tar.xz \
>> file://no_check.patch \
>> file://syscalls.patch \
>> file://fix-git-version-gen.patch \
>> - file://fix-doc-mandir.patch"
>> + file://fix-doc-mandir.patch \
>> + file://fix-dvh-overflows.patch"
>>
>> SRC_URI[md5sum] = "5d89d64d94bcfefa9ce8f59f4b81bdcb"
>> SRC_URI[sha256sum] =
>> "5e9cc1f91eaf016e5033d85b9b893fd6d3ffaca532a48de1082df9b94225ca15"
>>
>
>
More information about the Openembedded-core
mailing list