mirror of
https://sourceware.org/git/glibc.git
synced 2025-08-07 06:43:00 +03:00
realpath: Avoid overwriting preexisting error (CVE-2021-3998)
Set errno and failure for paths that are too long only if no other error occurred earlier. Related: BZ #28770 Reviewed-by: Andreas Schwab <schwab@linux-m68k.org> Signed-off-by: Siddhesh Poyarekar <siddhesh@sourceware.org>
This commit is contained in:
@@ -404,7 +404,7 @@ error:
|
||||
{
|
||||
if (dest - rname <= get_path_max ())
|
||||
rname = strcpy (resolved, rname);
|
||||
else
|
||||
else if (!failed)
|
||||
{
|
||||
failed = true;
|
||||
__set_errno (ENAMETOOLONG);
|
||||
|
Reference in New Issue
Block a user