Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ZUJYXOgQhXMznWzi@voyager>
Date: Wed, 1 Nov 2023 14:53:32 +0100
From: Markus Wichmann <nullplan@....net>
To: musl@...ts.openwall.com
Subject: Re: synccall patches

Am Wed, Nov 01, 2023 at 09:00:33AM -0400 schrieb Rich Felker:
> On the other hand, the thing you're worried about, the original value
> of c.ret being passed to __syscall_ret, can't happen. If it was
> initially positive on entry to do_setxid, a syscall is made and the
> return value is stored into c.ret.
>

But if the tkill fails in __synccall, do_setxid() will never be called
at all (that's what line 87 in synccall.c does). So the original value
will remain.

Perhaps __synccall should return failure in that case, after doing
everything else. Then the logic could otherwise remain untouched, and
__setxid could respond appropriately to the failure itself.

Ciao,
Markus

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.