Le 14/01/2016 10:01, Chen Gang a écrit :
> On 2016年01月14日 16:15, Laurent Vivier wrote:
>> Le 14/01/2016 07:24, cheng...@emindsoft.com.cn a écrit :
>>> From: Chen Gang <cheng...@emindsoft.com.cn>
>>>
>>> After host_to_target_sock_type(), the length of val may be changed, so
>>> calculate the related lv, too.
>>>
>>> Signed-off-by: Chen Gang <gang.chen.5...@gmail.com>
>>> ---
>>>  linux-user/syscall.c | 1 +
>>>  1 file changed, 1 insertion(+)
>>>
>>> diff --git a/linux-user/syscall.c b/linux-user/syscall.c
>>> index fcdca2a..0e95f35 100644
>>> --- a/linux-user/syscall.c
>>> +++ b/linux-user/syscall.c
>>> @@ -1841,6 +1841,7 @@ static abi_long do_getsockopt(int sockfd, int level, 
>>> int optname,
>>>              return ret;
>>>          if (optname == SO_TYPE) {
>>>              val = host_to_target_sock_type(val);
>>> +            lv = (val >> 8) ? 4 : 1;
>>
>> It seems the kernel always returns sizeof(int) (for all archs), what is
>> the aim of reducing the size ?
>>
> 
> I am not quite sure whether kernel always returns sizeof(int) (I guess,
> it should be).

it can be 1 only if len is 1, but this is managed below.

> For me, if you are sure, we can skip this patch.

Does it fix something ?

Laurent

Reply via email to