<div dir="ltr"><div dir="ltr"><p><font face="DejaVu Sans">Hello bird-team,</font></p>
<div><font face="DejaVu Sans">I have a bird v1.6.4. configuration that works fine. <br></font></div><div><font face="DejaVu Sans">A certain set of actions leads to a segfault and a crash of the bird binary.</font></div><div><font face="DejaVu Sans"><br></font></div>
<font face="DejaVu Sans">I have configured and built bird 1.6.4. with IPv6 support that runs on a box with a i686 linux with kernel v4.14.75. </font><font face="DejaVu Sans">My bird configuration:</font><br>
<div><font face="DejaVu Sans"><font face="DejaVu Sans"><br></font></font></div><div><font face="DejaVu Sans"><font face="DejaVu Sans">### </font>bird6.conf:</font></div>
<br>
<font face="DejaVu Sans">protocol device {</font><br>
<font face="DejaVu Sans">  scan time 10;</font><br>
<font face="DejaVu Sans">}</font><br>
<br>
<font face="DejaVu Sans">protocol direct C_main {</font><br>
<font face="DejaVu Sans">  interface "*";</font><br>
<font face="DejaVu Sans">  preference 255;</font><br>
<font face="DejaVu Sans">  check link;</font><br>
<font face="DejaVu Sans">}</font><br>
<br>
<font face="DejaVu Sans">protocol kernel K_main {</font><br>
<font face="DejaVu Sans">  preference 255;</font><br>
<font face="DejaVu Sans">  scan time 20;</font><br>
<font face="DejaVu Sans">  export all;</font><br>
<font face="DejaVu Sans">  learn;</font><br>
<font face="DejaVu Sans">}</font><br>
<br>
<font face="DejaVu Sans">include "*.conff";</font><br>
<br>
<div><font face="DejaVu Sans">### ospfv3.conff in the same directory:</font></div><div><font face="DejaVu Sans"><br></font></div><div><font face="DejaVu Sans">debug protocols all;<br>log syslog { info, remote, warning, error, auth, fatal, bug };<br></font></div><div><font face="DejaVu Sans"><br></font></div>
<font face="DejaVu Sans">protocol ospf O_main {</font><br>
<font face="DejaVu Sans">  preference 145;</font><br>
<font face="DejaVu Sans">  instance id 0;</font><br>
<br>
<font face="DejaVu Sans">  area 172.16.0.0 {</font><br>
<br>
<font face="DejaVu Sans">    interface "vti0" {</font><br>
<font face="DejaVu Sans">      dead 120;</font><br>
<font face="DejaVu Sans">      hello 30;</font><br>
<font face="DejaVu Sans">      cost 1;</font><br>
<font face="DejaVu Sans">      priority 1;</font><br>
<font face="DejaVu Sans">      type pointopoint;</font><br>
<br>
<font face="DejaVu Sans">      neighbors {</font><br>
<font face="DejaVu Sans">        fe80::e68:3ff:fe26:5130;</font><br>
<font face="DejaVu Sans">      };</font><br>
<font face="DejaVu Sans">    };</font><br>
<br>
<font face="DejaVu Sans">    interface "eth1" {</font><br>
<font face="DejaVu Sans">      dead 40;</font><br>
<font face="DejaVu Sans">      hello 10;</font><br>
<font face="DejaVu Sans">      cost 1;</font><br>
<font face="DejaVu Sans">      priority 1;</font><br>
<font face="DejaVu Sans">      type broadcast;</font><br>
<font face="DejaVu Sans">      stub yes;</font><br>
<font face="DejaVu Sans">    };</font><br>
<font face="DejaVu Sans">  };</font><br>
<br>
<font face="DejaVu Sans">  import filter {</font><br>
<font face="DejaVu Sans">    accept;</font><br>
<font face="DejaVu Sans">  };</font><br>
<font face="DejaVu Sans">  export filter {</font><br>
<font face="DejaVu Sans">    reject;</font><br>
<font face="DejaVu Sans">  };</font><br>
<div><font face="DejaVu Sans">}</font></div><div><font face="DejaVu Sans"><br></font></div>
<div><font face="DejaVu Sans">### The following actions lead to a crash of bird6:</font></div><div><font face="DejaVu Sans"><br></font></div>
<div><font face="DejaVu Sans">EEPD[~]# </font><font face="DejaVu Sans"><font face="DejaVu Sans">/sbin/bird6 -P /var/run/bird6.pid -c /var/etc/bird6/bird6.conf</font></font></div><br><font face="DejaVu Sans">Oct 24 14:23:08 EEPD info  bird6   [ 4684]: Started</font><br>
<div><font face="DejaVu Sans"><br></font></div><div><font face="DejaVu Sans">EEPD[~]# ps | grep bird6</font></div>
<font face="DejaVu Sans"> 4930 root      1500 S    /sbin/bird6 -P /var/run/bird6.pid -c /var/etc/bird6/bird6.conf</font><br><div>
<font face="DejaVu Sans"> 4932 root      1284 S    grep bird6</font></div><div><font face="DejaVu Sans"><br></font></div>
<font face="DejaVu Sans">EEPD[~]# </font><br>
<font face="DejaVu Sans"><font face="DejaVu Sans">EEPD[~]# </font></font><font face="DejaVu Sans"><font face="DejaVu Sans"><font face="DejaVu Sans">ip -6 link add vti0 type vti6 local fd00::38 remote fd00::1b ikey 2 okey 2;</font></font></font><br>
<font face="DejaVu Sans"><font face="DejaVu Sans"><font face="DejaVu Sans"><font face="DejaVu Sans"><font face="DejaVu Sans">EEPD[~]# </font></font></font></font></font><font face="DejaVu Sans">ip -6 link set vti0 up; </font><br>
<font face="DejaVu Sans"><font face="DejaVu Sans"><font face="DejaVu Sans"><font face="DejaVu Sans"><font face="DejaVu Sans"><font face="DejaVu Sans"><font face="DejaVu Sans"><font face="DejaVu Sans">EEPD[~]# </font></font></font></font></font></font></font></font><font face="DejaVu Sans">ifconfig vti0 mtu 1422</font><font face="DejaVu Sans"><br>
</font><br>
<font face="DejaVu Sans">Oct 24 14:23:17 EEPD err   bird6   [ 4684]: KIF: Received address message for unknown interface 33</font><br>
<font face="DejaVu Sans">Oct 24 14:23:20 EEPD err   bird6   [ 4684]: O_main: Socket error on vti0: Invalid argument</font><br>
<font face="DejaVu Sans">Oct 24 14:23:20 EEPD info  kernel: [ 4684]: 
segfault at 58e ip b7eed103 sp bf9acad8 error 4 in 
<a href="http://libuClibc-1.0.30.so">libuClibc-1.0.30.so</a>[b7ebd000+72000]</font><br>
<br>
<font face="DejaVu Sans">EEPD[~]#</font><br>
<font face="DejaVu Sans">EEPD[~]# ps | grep bird6</font><br>
<font face="DejaVu Sans"> 4988 root      1284 S    grep bird6</font><br>
<font face="DejaVu Sans">EEPD[~]# </font><br>
<br>
<p><font face="DejaVu Sans">### Further testing</font></p>

<font face="DejaVu Sans">- bird does NOT crash if the contents of bird6.conf and ospfv3.conf are placed in a single file without inclusion.</font><br>
<div><font face="DejaVu Sans">- bird does NOT crash if the call '</font><font face="DejaVu Sans"><font face="DejaVu Sans">ifconfig vti0 mtu 1422</font>' is executed before '</font><font face="DejaVu Sans"><font face="DejaVu Sans">ip -6 link set vti0 up</font>'.</font></div><div><font face="DejaVu Sans"><br></font></div><div><font face="DejaVu Sans">Hope this information helps.<br></font></div><div><font face="DejaVu Sans"><br></font></div><div><font face="DejaVu Sans">Best Regards</font></div><div><font face="DejaVu Sans">Alex<br></font></div></div></div>