linux-user/mmap.c: check range of mremap result in target address space
commit56d190848b9b8ecb8213835b0d2d05b243bcb5b8
authorTobias Koch <tobias.koch@nonterra.com>
Wed, 28 Oct 2020 21:38:33 +0000 (28 22:38 +0100)
committerLaurent Vivier <laurent@vivier.eu>
Thu, 17 Dec 2020 09:34:27 +0000 (17 10:34 +0100)
tree91036daf57137b64b149c46f79a791e427dc6905
parentaf3f37319cb1e1ca0c42842ecdbd1bcfc64a4b6f
linux-user/mmap.c: check range of mremap result in target address space

If mremap succeeds, an additional check is performed to ensure that the
new address range fits into the target address space. This check was
previously perfomed in host address space, with the upper bound fixed to
abi_ulong.

This patch replaces the static check with a call to `guest_range_valid`,
performing the range check against the actual size of the target address
space. It also moves the corresponding block to prevent it from being
called incorrectly when the mapping itself fails.

Signed-off-by: Tobias Koch <tobias.koch@nonterra.com>
Message-Id: <20201028213833.26592-1-tobias.koch@nonterra.com>
Signed-off-by: Laurent Vivier <laurent@vivier.eu>
linux-user/mmap.c