Hi, Pekka.<br><br><div class="gmail_quote">On Thu, Sep 24, 2009 at 10:57 AM, Pekka Savola <span dir="ltr">&lt;<a href="mailto:pekkas@netcore.fi">pekkas@netcore.fi</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
These are pretty basic questions but hopefully this gets you started.<div class="im"><br>
<br>
On Thu, 24 Sep 2009, Jong-Hyouk Lee wrote:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
1. Where is codes used to update (modify) the routing information when RA messages arrived? Is it done by Linux kernel?<br>
So, radvd doesn&#39;t have such functions? I couldn&#39;t find out.<br>
</blockquote>
<br></div>
The RAs received by clients (for address autoconfiguration etc.) is handled by the kernel or such.<br>
<br>
Radvd also sees these RAs but only checks them for consistency in process.c:process_ra()</blockquote><div><br>OK. Thanks. Because I&#39;m going to modify (extend) radvd to have functionalities that can update (modify) the routing information of the node based on the received RA messages, I asked such things.<br>
 </div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div class="im"><br>
<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
2. Radvd is used to send RA messages periodically even if there is no RS messages sent from neighbors. I just wanted to<br>
see the codes related to it (i.e., sending unsolicited RA messages periodically to neighbors in a broadcast manner). As<br>
I know, when radvd starts, it firsts sends RA messages by executing kickof_adverts(). Then, it goes into the loop<br>
(i.e., for(; ;)). Which places in the codes shall I look? I just want to see the related codes for sending unsolicited<br>
RA messages periodically to neighbors.<br>
</blockquote>
<br></div>
As you say, kickoff_adverts() is the critical piece where a timer is scheduled for periodic RA.  When the timers expire, it&#39;s radvd.c:timer_handler() which gets called and the actual RA is sent using send_ra_forall().<br>
</blockquote><div><br>Ummm, thanks for your indications. I should check it.<br><br>Many thanks.<br> </div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<font color="#888888">
<br>
-- <br>
Pekka Savola                 &quot;You each name yourselves king, yet the<br>
Netcore Oy                    kingdom bleeds.&quot;<br>
Systems. Networks. Security. -- George R.R. Martin: A Clash of Kings<br>
</font></blockquote></div><br><br clear="all"><br>-- <br>IMARA Team, INRIA, France. <br>Jong-Hyouk Lee.<br><br>#email: jonghyouk (at) gmail (dot) com || jong-hyouk.lee (at) inria (dot) fr<br>#webpage: <a href="http://hurryon.googlepages.com/">http://hurryon.googlepages.com/</a><br>