[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [Bug 1075272] Re: socket type mapping wrong for mips app-le
[Qemu-devel] [Bug 1075272] Re: socket type mapping wrong for mips app-level emulation
Fri, 20 May 2016 17:05:33 -0000
** Changed in: qemu
Status: Fix Committed => Fix Released
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.
socket type mapping wrong for mips app-level emulation
Status in QEMU:
linux-user/syscall.c's do_socket function contains socket type
remapping to work around the nonsensically-permuted MIPS socket types.
However, it fails to account for the SOCK_NONBLOCK and SOCK_CLOEXEC
flags that may be or'd onto the type. Thus, a call from the
application such as:
socket(AF_INET, SOCK_STREAM, IPPROTO_TCP)
will fail to have the type permutation performed, and will be passed
to the system as:
socket(AF_INET, SOCK_DGRAM, IPPROTO_TCP)
resulting in EPROTONOSUPPORT.
To fix this, the flag bits should be masked off of the type before the
permutation. They also need remapping themselves (since MIPS uses
different values for these flags bits).
To manage notifications about this bug go to:
|[Prev in Thread]
||[Next in Thread]|
- [Qemu-devel] [Bug 1075272] Re: socket type mapping wrong for mips app-level emulation,
Peter Maydell <=