Blame SOURCES/0022-super-ddf-Fix-gcc-8.1-overflow-warnings.patch
|
|
59ea72 |
From 002a5978f015a77ecc48487006b1030f9dbe1394 Mon Sep 17 00:00:00 2001
|
|
|
59ea72 |
From: Jes Sorensen <jsorensen@fb.com>
|
|
|
59ea72 |
Date: Thu, 31 May 2018 16:07:33 -0400
|
|
|
59ea72 |
Subject: [RHEL7.5 PATCH 22/26] super-ddf: Fix gcc-8.1 overflow warnings
|
|
|
59ea72 |
|
|
|
59ea72 |
Cast to types that are big enough to hold the values, but also guarantee
|
|
|
59ea72 |
no overflow of the buffer keepts gcc happy.
|
|
|
59ea72 |
|
|
|
59ea72 |
Signed-off-by: Jes Sorensen <jsorensen@fb.com>
|
|
|
59ea72 |
---
|
|
|
59ea72 |
super-ddf.c | 5 +++--
|
|
|
59ea72 |
1 file changed, 3 insertions(+), 2 deletions(-)
|
|
|
59ea72 |
|
|
|
59ea72 |
diff --git a/super-ddf.c b/super-ddf.c
|
|
|
59ea72 |
index d02a19a..618542c 100644
|
|
|
59ea72 |
--- a/super-ddf.c
|
|
|
59ea72 |
+++ b/super-ddf.c
|
|
|
59ea72 |
@@ -2881,8 +2881,9 @@ static int add_to_super_ddf(struct supertype *st,
|
|
|
59ea72 |
dd->disk.magic = DDF_PHYS_DATA_MAGIC;
|
|
|
59ea72 |
now = time(0);
|
|
|
59ea72 |
tm = localtime(&now;;
|
|
|
59ea72 |
- sprintf(dd->disk.guid, "%8s%04d%02d%02d",
|
|
|
59ea72 |
- T10, tm->tm_year+1900, tm->tm_mon+1, tm->tm_mday);
|
|
|
59ea72 |
+ sprintf(dd->disk.guid, "%8s%04d%02d%02d", T10,
|
|
|
59ea72 |
+ (__u16)tm->tm_year+1900,
|
|
|
59ea72 |
+ (__u8)tm->tm_mon+1, (__u8)tm->tm_mday);
|
|
|
59ea72 |
tptr = (__u32 *)(dd->disk.guid + 16);
|
|
|
59ea72 |
*tptr++ = random32();
|
|
|
59ea72 |
*tptr = random32();
|
|
|
59ea72 |
--
|
|
|
59ea72 |
2.7.4
|
|
|
59ea72 |
|