<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<div class="moz-cite-prefix">Hi.<br>
<br>
Try to assemble uClibc and bird with debug symbols, and try to
analyze core dump.<br>
<br>
Also it'll be good to run bird (better- to use debug version) in
valgrind - it'll show all suspicious cases (like access across
array borders, use of uninitialized variables and so on).<br>
<br>
On 24.10.2018 18:05, Alexander Velkov wrote:<br>
</div>
<blockquote type="cite"
cite="mid:CAHMGNnHv-NEuUgOy8XtvycomP-jOGEJ1Ap5LY4BbhfZ72eBKyg@mail.gmail.com">
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<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" moz-do-not-send="true">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>
</blockquote>
<p><br>
</p>
</body>
</html>