[prev in list] [next in list] [prev in thread] [next in thread] 

List:       snap-users
Subject:    (KAME-snap 9482) A few questions regarding to MLDv2
From:       "Yu-Jung Lee" <yjlee () zyxel ! com ! tw>
Date:       2006-08-08 5:56:43
Message-ID: 007c01c6bab1$990fb900$2101a8c0 () 1194201
[Download RAW message or body]

Hi,

There are a few questions about MLDv2.

1. In mld_set_hostcompat() in mldv2.c, there's a block of codes:
 /*
  * Check/set host compatibility mode. Whenever a host changes
  * its compatability mode, cancel all its pending response and
  * retransmission timers.
  */
 mldlog((LOG_DEBUG, "mld_set_compat: timer=%d\n", rti->rt6i_timer1));
 if (rti->rt6i_timer1 > 0) {
  if (rti->rt6i_type != MLD_V1_ROUTER) {
   mldlog((LOG_DEBUG, "mld_set_compat: "
    "set timer to MLDv1-compat mode\n"));
   rti->rt6i_type = MLD_V1_ROUTER;
   mld_cancel_pending_response(ifp, rti);
  }
 }

It seems that it's redundant since the caller of mld_set_hostcompat() would always \
use query_ver = MLD_V1_ROUTER as input argument and the function is returned in the \
former  block of codes.  Is it right?

2.  At line#3292 in in6_modmulti2(), why not start state change timer as line#2638 by \
mld_start_state_change_timer()? 

3. In in6_get_new_msf_state() in in6_msf.c, error handling is missing at #789, #802, \
#850, #865.  I suggest to add "return error;" at those places.

4. In in6_get_new_msf_state() in in6_msf.c, after in6_merge_pending_report() at #812, \
is it supposed to clear the exclude list since the source in exclude list is merged \
to the allow list?

Best  Regards,
Yu-Jung


[Attachment #3 (text/html)]

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=big5">
<META content="MSHTML 6.00.2800.1106" name=GENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=#ffffff>
<DIV><FONT face=Arial size=2>Hi,</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>There are a few questions about MLDv2.</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>1. In mld_set_hostcompat() in mldv2.c, there's a 
block of codes:</FONT></DIV>
<DIV><FONT face=Arial size=2>&nbsp;<FONT color=#800000>/*<BR>&nbsp; * Check/set 
host compatibility mode. Whenever a host changes<BR>&nbsp; * its compatability 
mode, cancel all its pending response and<BR>&nbsp; * retransmission 
timers.<BR>&nbsp; */<BR>&nbsp;mldlog((LOG_DEBUG, "mld_set_compat: timer=%d\n", 
rti-&gt;rt6i_timer1));<BR>&nbsp;if (rti-&gt;rt6i_timer1 &gt; 0) 
{<BR>&nbsp;&nbsp;if (rti-&gt;rt6i_type != MLD_V1_ROUTER) 
{<BR>&nbsp;&nbsp;&nbsp;mldlog((LOG_DEBUG, "mld_set_compat: 
"<BR>&nbsp;&nbsp;&nbsp;&nbsp;"set timer to MLDv1-compat 
mode\n"));<BR>&nbsp;&nbsp;&nbsp;rti-&gt;rt6i_type = 
MLD_V1_ROUTER;<BR>&nbsp;&nbsp;&nbsp;mld_cancel_pending_response(ifp, 
rti);<BR>&nbsp;&nbsp;}<BR>&nbsp;}</FONT></FONT></DIV>
<DIV><FONT face=Arial color=#800000 size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>It seems that it's redundant since the caller of 
mld_set_hostcompat() would always use query_ver = MLD_V1_ROUTER as input 
argument and the&nbsp;function is returned in the former &nbsp;block of 
codes.&nbsp; Is it right?</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>2.&nbsp; At line#3292 in in6_modmulti2(), why not 
start state change timer as line#2638 by mld_start_state_change_timer()? 
</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>3. In in6_get_new_msf_state() in in6_msf.c, error 
handling is missing at #789, #802, #850, #865.&nbsp; I suggest to add "return 
error;" at those places.</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>4. In in6_get_new_msf_state() in in6_msf.c, after 
in6_merge_pending_report() at #812, is it supposed to clear the exclude list 
since the source in exclude list is merged to the allow list?</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>Best&nbsp; Regards,</FONT></DIV>
<DIV><FONT face=Arial size=2>Yu-Jung</FONT></DIV>
<DIV>&nbsp;</DIV></BODY></HTML>


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic