Le 14/09/2021 à 09:43, Alex Chen a écrit :
> Hi all,
> 
> This patch has been reviewed by Peter. who can help merge it?
> 
> Thanks,
> Alex
> 
> On 2020/11/2 18:55, AlexChen wrote:
>> As we can see from the following function call stack, amaster and aslave
>> can not be NULL: char_pty_open() -> qemu_openpty_raw() -> openpty().
>> In addition, according to the API specification for openpty():
>> https://www.gnu.org/software/libc/manual/html_node/Pseudo_002dTerminal-Pairs.html,
>> the arguments name, termp and winp can all be NULL, but arguments amaster or 
>> aslave
>> can not be NULL.
>> Finally, amaster and aslave has been dereferenced at the beginning of the 
>> openpty().
>> So the checks on amaster and aslave in the openpty() are redundant. Remove 
>> them.
>>
>> Reported-by: Euler Robot <[email protected]>
>> Signed-off-by: Alex Chen <[email protected]>
>> Reviewed-by: Peter Maydell <[email protected]>
>> ---
>>  util/qemu-openpty.c | 7 +++----
>>  1 file changed, 3 insertions(+), 4 deletions(-)
>>
>> diff --git a/util/qemu-openpty.c b/util/qemu-openpty.c
>> index eb17f5b0bc..427f43a769 100644
>> --- a/util/qemu-openpty.c
>> +++ b/util/qemu-openpty.c
>> @@ -80,10 +80,9 @@ static int openpty(int *amaster, int *aslave, char *name,
>>              (termp != NULL && tcgetattr(sfd, termp) < 0))
>>                  goto err;
>>
>> -        if (amaster)
>> -                *amaster = mfd;
>> -        if (aslave)
>> -                *aslave = sfd;
>> +        *amaster = mfd;
>> +        *aslave = sfd;
>> +
>>          if (winp)
>>                  ioctl(sfd, TIOCSWINSZ, winp);
>>
> 
> 

Applied to my trivial-patches branch.

Thanks,
Laurent

Reply via email to