summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/qemu/qemuwrapper-cross_1.0.bb
diff options
context:
space:
mode:
authorRoy.Li <rongqing.li@windriver.com>2013-02-02 16:18:22 +0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2013-02-06 09:37:23 +0000
commit8f262e8b7e867eeb0ed71dab637181a2ce0e1627 (patch)
tree7199610a436e54142f6df76eec474b5ba0b00b4e /meta/recipes-devtools/qemu/qemuwrapper-cross_1.0.bb
parent7f484df0ea329515b47a9b437006c73500fc0fcb (diff)
downloadpoky-8f262e8b7e867eeb0ed71dab637181a2ce0e1627.tar.gz
tcp-wrappers: remove size_t.patch
1. it introduces bug in 64bit big endian process with __GLIBC__, At that condition, size_t is 8byte, and the third parameter of getpeername is socklen_t which is 4 byte. As a result, getpeername sees third parameter is always 0, and can not return right value. The similar program is below, the output is 0, not 9 on PPC64 cpu main() { long aa=9; printf("%d \n", *((int *)&aa)); } 2. The correct fix is to change getpeername/getsockopt/recvfrom.. last parameter type from int to socklen_t, but to simplify, we can remove size_t.patch, since the size of int is same as socklen_t in 32bit/64bit cpu. and size_t.patch only change three places, there are other places which uses int, and work well. 2. Fedora, redhat el4 do not use this patch, but Debian uses it, does not find why this patch is written, maybe it is gcc legency issue which does not exist. (From OE-Core rev: 6c418ec278335c93692c2e19ec0b7b84b471e2b9) Signed-off-by: Roy.Li <rongqing.li@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-devtools/qemu/qemuwrapper-cross_1.0.bb')
0 files changed, 0 insertions, 0 deletions