diff options
author | Siddhesh Poyarekar <siddhesh@sourceware.org> | 2022-01-13 11:28:36 +0530 |
---|---|---|
committer | Siddhesh Poyarekar <siddhesh@sourceware.org> | 2022-01-21 23:01:30 +0530 |
commit | ee8d5e33adb284601c00c94687bc907e10aec9bb (patch) | |
tree | c1e3b5584266640b915abcbd151032935b9695fb /sunrpc/clnt_simp.c | |
parent | fb7bff12e81c677a6622f724edd4d4987dd9d971 (diff) | |
download | glibc-ee8d5e33adb284601c00c94687bc907e10aec9bb.tar.gz glibc-ee8d5e33adb284601c00c94687bc907e10aec9bb.tar.xz glibc-ee8d5e33adb284601c00c94687bc907e10aec9bb.zip |
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>
Diffstat (limited to 'sunrpc/clnt_simp.c')
0 files changed, 0 insertions, 0 deletions