Return-Path: Received: from out30-56.freemail.mail.aliyun.com ([115.124.30.56]) by bombadil.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1j4Pf2-00010R-C3 for linux-um@lists.infradead.org; Wed, 19 Feb 2020 13:45:10 +0000 From: Wen Yang Subject: [PATCH] um: fix len of file in create_pid_file Date: Wed, 19 Feb 2020 21:44:42 +0800 Message-Id: <20200219134442.68744-1-wenyang@linux.alibaba.com> MIME-Version: 1.0 List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-um" Errors-To: linux-um-bounces+geert=linux-m68k.org@lists.infradead.org To: Jeff Dike , Richard Weinberger , Anton Ivanov Cc: Bartosz Golaszewski , linux-um@lists.infradead.org, Wen Yang , Alex Dewar sizeof gives us the size of the pointer variable, not of the area it points to. So the number of bytes copied by umid_file_name() is 8. We should pass in the correct length of the file buffer. Signed-off-by: Wen Yang Cc: Jeff Dike (maintainer:USER-MODE LINUX (UML)) Cc: Richard Weinberger (maintainer:USER-MODE LINUX (UML),commit_signer:2/2=100%) Cc: Anton Ivanov (maintainer:USER-MODE LINUX (UML)) Cc: Bartosz Golaszewski (commit_signer:1/2=50%,authored:1/2=50%,added_lines:27/28=96%,removed_lines:9/10=90%) Cc: Alex Dewar (commit_signer:1/2=50%,authored:1/2=50%,removed_lines:1/10=10%) Cc: linux-um@lists.infradead.org (open list:USER-MODE LINUX (UML)) --- arch/um/os-Linux/umid.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/arch/um/os-Linux/umid.c b/arch/um/os-Linux/umid.c index 44def53a11cd..9e16078a4bf8 100644 --- a/arch/um/os-Linux/umid.c +++ b/arch/um/os-Linux/umid.c @@ -220,11 +220,12 @@ static void __init create_pid_file(void) char pid[sizeof("nnnnn\0")], *file; int fd, n; - file = malloc(strlen(uml_dir) + UMID_LEN + sizeof("/pid\0")); + n = strlen(uml_dir) + UMID_LEN + sizeof("/pid\0"); + file = malloc(n); if (!file) return; - if (umid_file_name("pid", file, sizeof(file))) + if (umid_file_name("pid", file, n)) goto out; fd = open(file, O_RDWR | O_CREAT | O_EXCL, 0644); -- 2.23.0 _______________________________________________ linux-um mailing list linux-um@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-um