Index | Thread | Search

From:
Theo Buehler <tb@theobuehler.org>
Subject:
Re: bgpd: make imsg_rde void and fail hard
To:
tech@openbsd.org
Date:
Wed, 26 Feb 2025 17:44:44 +0100

Download raw body.

Thread
On Wed, Feb 26, 2025 at 05:37:42PM +0100, Claudio Jeker wrote:
> On Wed, Feb 26, 2025 at 05:30:38PM +0100, Theo Buehler wrote:
> > On Wed, Feb 26, 2025 at 05:18:58PM +0100, Claudio Jeker wrote:
> > > While working on all the other bits in the session engine I came to the
> > > conclusion that if imsg_rde() fails the game is over. So just admit to
> > > that and fatal in that case.
> > > 
> > > This simplifies all the callers since there is no need to check the return
> > > value. This also allows some other functions to be come void.
> > 
> > ok
> > 
> > Should session_handle_{update,rrefresh}() also become void? Wouldn't
> > it be more consistent if the return (0) was pushed to parse_update()
> > and parse_rrefresh()?
> 
> Maybe we should make them all void including parse_update() and
> parse_rrefresh(). The return value of parse_rrefresh is not checked and
> the code around parse_update() is most probably wrong for the error case. 
> In the end when a parse error happens we need to generate a notification
> and properly throw an error in the FSM but there is no need to bubble up
> the error.

Right, that makes sense.