From: Dan Carpenter Date: Mon, 30 Jan 2012 07:59:49 +0000 (+0300) Subject: exofs: Cap on the memcpy() size X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=72749a270b6d254b4a018e290b853c27edb2fa62;p=linux-beck.git exofs: Cap on the memcpy() size This data comes from the device, so probably it's fairly trustworthy but it makes the static checkers happy if we check it. [Boaz] the system_id_len is zero, if not present, or always OSD_SYSTEMID_LEN. So always copy OSD_SYSTEMID_LEN bytes. Signed-off-by: Dan Carpenter Signed-off-by: Boaz Harrosh --- diff --git a/fs/exofs/super.c b/fs/exofs/super.c index d9619a577806..6c5397ad7a2a 100644 --- a/fs/exofs/super.c +++ b/fs/exofs/super.c @@ -529,7 +529,8 @@ static int exofs_devs_2_odi(struct exofs_dt_device_info *dt_dev, struct osd_dev_info *odi) { odi->systemid_len = le32_to_cpu(dt_dev->systemid_len); - memcpy(odi->systemid, dt_dev->systemid, odi->systemid_len); + if (likely(odi->systemid_len)) + memcpy(odi->systemid, dt_dev->systemid, OSD_SYSTEMID_LEN); odi->osdname_len = le32_to_cpu(dt_dev->osdname_len); odi->osdname = dt_dev->osdname;