lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Tue, 25 May 2021 19:26:16 +0800 From: Wu Guanghao <wuguanghao3@...wei.com> To: Благодаренко Артём <artem.blagodarenko@...il.com> CC: <linux-ext4@...r.kernel.org>, <liuzhiqiang26@...wei.com>, <linfeilong@...wei.com> Subject: Re: [PATCH 06/12] append_pathname: check the value returned by realloc to avoid segfault Hello Artem Blagodarenko, Thank you for your review, it should be chdir instead of chadir, I will modify it in the v2 version. Next time I will take care not to make similar mistakes. Thanks a lot. Thanks, Best regards, Wu Guanghao 在 2021/5/25 17:37, Благодаренко Артём 写道: > Hello Wu, > > Thanks for the patch. > >> On 24 May 2021, at 14:23, Wu Guanghao <wuguanghao3@...wei.com> wrote: >> >> In append_pathname(), we need to add a new path to save the value returned by realloc, >> otherwise the name->path may be NULL, causing segfault >> >> Signed-off-by: Wu Guanghao <wuguanghao3@...wei.com> >> Signed-off-by: Zhiqiang Liu <liuzhiqiang26@...wei.com> >> --- >> contrib/fsstress.c | 10 ++++++++-- >> 1 file changed, 8 insertions(+), 2 deletions(-) >> >> diff --git a/contrib/fsstress.c b/contrib/fsstress.c >> index 2a983482..530bd920 100644 >> --- a/contrib/fsstress.c >> +++ b/contrib/fsstress.c >> @@ -599,7 +599,7 @@ void add_to_flist(int ft, int id, int parent) >> void append_pathname(pathname_t * name, char *str) >> { >> int len; >> - >> + char *path;: >> len = strlen(str); >> #ifdef DEBUG >> if (len && *str == '/' && name->len == 0) { >> @@ -609,7 +609,13 @@ void append_pathname(pathname_t * name, char *str) >> >> } >> #endif >> - name->path = realloc(name->path, name->len + 1 + len); >> + path = realloc(name->path, name->len + 1 + len); >> + if (path == NULL) { >> + fprintf(stderr, "fsstress: append_pathname realloc failed\n"); >> + chadir(homedir); > > Did you mean chdir() here? > >> + abort(); >> + } >> + name->path = path; >> strcpy(&name->path[name->len], str); >> name->len += len; >> } >> -- > > > Thanks, > Best regards, > Artem Blagodarenko. > > . >
Powered by blists - more mailing lists