Segmentation fault on 2.0.5

Ondrej Zajicek santiago at crfreenet.org
Sat Aug 10 15:28:39 CEST 2019


On Sat, Aug 10, 2019 at 02:22:18PM +0300, Radu Anghel wrote:
> Hello,
> 
> I recently upgraded BIRD from 2.0.4 to 2.0.5 and with the same (pretty
> large) .conf I got Segmentation fault.
> 
> Until today I didn't have time to debug it, but here it goes:
> 
> With this simple .conf I get seg fault on 2.0.5 while 2.0.4 works as
> expected. (if I define myvar = true it doesn't crash on 2.0.5)
> 
> log syslog all;
> 
> define myvar = false;
> 
> function something () {
>     if myvar then {
>         return false;
>     }
> 
>     return true;
> }
> 
> protocol device DEVICE {
> 
> }
> 
> Could this be because of the new filter code or something else?

Hello

Thanks for bugreport. Yes, it is the new filter code, most likely
it is a bug in handling of statically eliminable (constant-false)
if statements without else branch.

Similar issue also happens for empty blocks:

  if true then { }

-- 
Elen sila lumenn' omentielvo

Ondrej 'Santiago' Zajicek (email: santiago at crfreenet.org)
OpenPGP encrypted e-mails preferred (KeyID 0x11DEADC3, wwwkeys.pgp.net)
"To err is human -- to blame it on a computer is even more so."


More information about the Bird-users mailing list