diff options
author | Dong Jinguang <dongjinguang@huawei.com> | 2017-12-29 17:00:37 +0800 |
---|---|---|
committer | Theodore Ts'o <tytso@mit.edu> | 2018-02-26 13:35:46 -0500 |
commit | 061b7443ccae2050864b8665c76c9c545cbcf991 (patch) | |
tree | 1ddee1dbc3459c0fbbb2c38915ff7ee33de0cefc | |
parent | 182fa0cd61fe706c2eaa308e1c30688f20b946a9 (diff) | |
download | e2fsprogs-061b7443ccae2050864b8665c76c9c545cbcf991.tar.gz |
AOSP: blkid: sanity check 'end' address must be greater than or equal to 'lable' address.
Avoid a potential out-of-bounds memory access address of label
Test: mma -j8 and boot devices
Change-Id: I155aa4e26f7079f517be3202de0032a86368559d
From AOSP commit: 38324e758b803e99419d24e16a00b32f8ebbf473
-rw-r--r-- | lib/blkid/probe.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/blkid/probe.c b/lib/blkid/probe.c index 3bcf4c3d2..865d9aa36 100644 --- a/lib/blkid/probe.c +++ b/lib/blkid/probe.c @@ -41,7 +41,7 @@ static int figure_label_len(const unsigned char *label, int len) { const unsigned char *end = label + len - 1; - while ((*end == ' ' || *end == 0) && end >= label) + while (end >= label && (*end == ' ' || *end == 0)) --end; if (end >= label) return end - label + 1; |