<div>Hello, every one.</div><div><br></div><div>First. I&#39;m not good at English. You may not be able to understand my email.</div><div>It is regret. I hope that you understand in my opinion.</div><div>and My E-mail was not deliveried for anyone, so i re-send my E-mail.</div>



<div><br></div><div>I am using radvd-1.6 that is download CVS lastest version. (Revision 1.98)</div><div>and # ./configure and # Make</div><div><br></div><div>and start radvd this configure.</div><div><br></div><div>/-------------------------------------------------------</div>



<div>interface eth9</div><div>{ IgnoreIfMissing on; AdvSendAdvert on; MinRtrAdvInterval 3;</div><div> MaxRtrAdvInterval 10; AdvDefaultPreference high;</div><div>clients { fe80::225:ff:fe3d:fe0c; fe80::a00:27ff:fef2:f6f0;</div>



<div> fe80::a00:27ff:fe7c:5414; };</div><div>};</div><div><br></div><div>interface eth7</div><div>{ AdvSendAdvert on; MinRtrAdvInterval 3;</div><div> MaxRtrAdvInterval 10; };</div><div>--------------------------------------------------------/</div>



<div><br></div><div>when radvd is running, I disconnect eth9&#39;s ethernet Line,</div><div>and reconnect eth9&#39;s ethernet Line.</div><div><br></div><div>Then I found the following programe logic Segmentation fault.</div>



<div><br></div><div><br></div><div><br></div><div>GNU gdb Red Hat Linux (6.6-8.fc7rh)</div><div>Copyright (C) 2006 Free Software Foundation, Inc.</div><div>GDB is free software, covered by the GNU General Public License, and you are</div>



<div>welcome to change it and/or distribute copies of it under certain conditions.</div><div>Type &quot;show copying&quot; to see the conditions.</div><div>There is absolutely no warranty for GDB.  Type &quot;show warranty&quot; for details.</div>



<div>This GDB was configured as &quot;i386-redhat-linux-gnu&quot;...</div><div>Using host libthread_db library &quot;/lib/libthread_db.so.1&quot;.</div><div>(gdb) set args -d 5 -C /etc/radvd.conf</div><div>(gdb) run</div>



<div>Starting program: /radvd -d 5 -C /etc/radvd.conf</div><div><br></div><div>--------------------- disconnect and reconnect ---------------------------</div><div><br></div><div>Program received signal SIGSEGV, Segmentation fault.                            </div>



<div>0x0804bcf5 in alarm_handler (sig=14) at timer.c:152                             </div><div>warning: Source file is more recent than executable.                            </div><div>152                     tm-&gt;prev-&gt;next = tm-&gt;next;                              </div>



<div>(gdb) where                                                                     </div><div>#0  0x0804bcf5 in alarm_handler (sig=14) at timer.c:152                         </div><div>#1  &lt;signal handler called&gt;                                                     </div>



<div>#2  0xffffe410 in __kernel_vsyscall ()                                          </div><div>#3  0x4182065d in ___newselect_nocancel () from /lib/libc.so.6                  </div><div>#4  0x08049fcd in recv_rs_ra (sock=7, msg=0xbfe20538 &quot;\206&quot;, addr=0xbfe20404,   </div>



<div>    pkt_info=0xbfe20400, hoplimit=0xbfe20420) at recv.c:46                      </div><div>#5  0x0804ad31 in main (argc=5, argv=0xbfe20be4) at radvd.c:313                 </div><div>(gdb) p tm                                                                      </div>



<div>$1 = (struct timer_lst *) 0x805ed4c</div><div>(gdb) p tm-&gt;next</div><div>$2 = (struct timer_lst *) 0x0</div><div>(gdb) p tm-&gt;prev</div><div>$3 = (struct timer_lst *) 0x0</div><div>(gdb) p *tm</div><div>$4 = {expires = {tv_sec = 0, tv_usec = 0}, handler = 0, data = 0x0,</div>



<div>  next = 0x0, prev = 0x0}</div><div>(gdb) list</div><div>147              */</div><div>148</div><div>149             /* unused timers are initialized to LONG_MAX so we skip them */</div><div>150             while (tm-&gt;expires.tv_sec != LONG_MAX &amp;&amp; check_time_diff(tm, tv)</div>



<div>151             {</div><div>152                     tm-&gt;prev-&gt;next = tm-&gt;next;</div><div>153                     tm-&gt;next-&gt;prev = tm-&gt;prev;</div><div>154</div><div>155                     back = tm;</div>



<div>156                     tm = tm-&gt;next;</div><div>(gdb) quit</div><div>The program is running.  Exit anyway? (y or n) y</div><div><br></div><div><br></div><div>if i will use that configure, i will not meet Segmentation fault.</div>

<div><div><br></div><div>/-------------------------------------------------------</div><div>interface eth9</div><div>{ IgnoreIfMissing on; AdvSendAdvert on; MinRtrAdvInterval 3;</div><div> MaxRtrAdvInterval 10; AdvDefaultPreference high;</div>

<div>clients { fe80::225:ff:fe3d:fe0c; fe80::a00:27ff:fef2:f6f0;</div><div> fe80::a00:27ff:fe7c:5414; };</div><div>};</div></div><div>-------------------------------------------------------/</div><div><br></div><div><br>
</div>
<div>Thank, for reading.</div>