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 ee8d5e33)
Loading
Please register or sign in to comment