diff options
author | Siddhesh Poyarekar <siddhesh@sourceware.org> | 2022-01-13 11:28:36 +0530 |
---|---|---|
committer | Siddhesh Poyarekar <siddhesh@sourceware.org> | 2022-01-24 11:36:19 +0530 |
commit | f7a79879c0b2bef0dadd6caaaeeb0d26423e04e5 (patch) | |
tree | 724aa1baeb79a46759b00e38bbff40efb7845f61 /posix/BOOST.tests | |
parent | 73c362840c4efde45125a6c27bf41726397f4038 (diff) | |
download | glibc-f7a79879c0b2bef0dadd6caaaeeb0d26423e04e5.tar.gz |
realpath: Set errno to ENAMETOOLONG for result larger than PATH_MAX [BZ #28770]
realpath returns an allocated string when the result exceeds PATH_MAX,
which is unexpected when its second argument is not NULL. This results
in the second argument (resolved) being uninitialized and also results
in a memory leak since the caller expects resolved to be the same as the
returned value.
Return NULL and set errno to ENAMETOOLONG if the result exceeds
PATH_MAX. This fixes [BZ #28770], which is CVE-2021-3998.
Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Signed-off-by: Siddhesh Poyarekar <siddhesh@sourceware.org>
(cherry picked from commit ee8d5e33adb284601c00c94687bc907e10aec9bb)
Diffstat (limited to 'posix/BOOST.tests')
0 files changed, 0 insertions, 0 deletions