]> granicus.if.org Git - strace/commit
vm_read_mem: detect address truncation
authorDmitry V. Levin <ldv@altlinux.org>
Mon, 26 Dec 2016 01:21:04 +0000 (01:21 +0000)
committerDmitry V. Levin <ldv@altlinux.org>
Mon, 26 Dec 2016 10:08:53 +0000 (10:08 +0000)
commit11aa97bfba59f709a34b5477ce2cc67cd81ee788
treea7e580c9f8bafd3a89ed8df670834b155ee1c47c
parent9cd050573c0b24b57cb046240559937a9cd7f7df
vm_read_mem: detect address truncation

When sizeof(kernel_ureg_t) > sizeof(long), the tracee address passed
to vm_read_mem could be silently truncated.  Detect this situation
and return EIO when the tracee address does not fit into unsigned long.

* util.c (vm_read_mem): Save raddr argument into a temporary variable
truncated_raddr of type unsigned long.  Set errno to EIO and return -1
when truncated_raddr does not equal to raddr.
util.c