diff options
author | zbb <zbb@FreeBSD.org> | 2015-03-30 09:49:54 +0000 |
---|---|---|
committer | zbb <zbb@FreeBSD.org> | 2015-03-30 09:49:54 +0000 |
commit | 861c5f13d020d7891f0d5ccaf93666cfc6577fd5 (patch) | |
tree | ad6f6902451b9b9d29b8a182d570929e6e452480 /contrib/ntp/lib/isc/buffer.c | |
parent | 17264df1ac30b5fc55d3f97fbb874499382e136a (diff) | |
download | FreeBSD-src-861c5f13d020d7891f0d5ccaf93666cfc6577fd5.zip FreeBSD-src-861c5f13d020d7891f0d5ccaf93666cfc6577fd5.tar.gz |
Fix bug in xrefinfo_find() for 64-bit platforms
uintptr_t may be 64-bit on some platforms, therefore when
finding xrefinfo by pointer to device the high word is being
cut off due to cast to phandle_t which is 32-bit long by definition.
Due to that we loose the high word of the address to compare with
xi->dev's address.
To fix that, first argument of xrefinfo_find() is extended to
uintptr_t and is being cast to appropriate type (phandle_t)
when compared.
Submitted by: Zbigniew Bodek <zbb@semihalf.com>
Reviewed by: nwhitehorn
Obtained from: Semihalf
Diffstat (limited to 'contrib/ntp/lib/isc/buffer.c')
0 files changed, 0 insertions, 0 deletions