Index: [Article Count Order] [Thread]

Date: Mon, 18 Jun 2007 13:28:42 -0400
From: "Peter Carney" <pcarney@treck.com>
Subject: [dhcptest:00186] Re: FW:  Re: Tests that check for DNS and Domain Search Options
To: <Hideshi.Enokihara@jp.yokogawa.com>
Cc: <dhcptest@tahi.org>
Message-Id: <753EF94A8CD3E6439DCD566B99F4D7421EC57F@ms1.treck.com>
X-Mail-Count: 00186

Hideshi,

I agree with your latest patch for C_RFC3646_5_InvDecDnsSchLstOpt.seq.

One last question:

In RFC 3315 Section 22.7 it states:
A client MAY include an Option Request option in a Solicit, Request,
Renew, Rebind, Confirm or Information-request message to inform the
server about options the client wants the server to send to the
client. A server MAY include an Option Request option in a
Reconfigure option to indicate which options the client should
request from the server.

Do you believe that this also stating that Option Request options MAY NOT be present in Decline messages?

Do you believe that there should be a specific TAHI test for this case?
Does TAHI test for MAY and MAY NOT cases?

 
 
Thank you,
 
Peter Carney
Development Engineer
Treck Inc.
http://www.treck.com

-----Original Message-----
From: Hideshi.Enokihara@jp.yokogawa.com [mailto:Hideshi.Enokihara@jp.yokogawa.com] 
Sent: Sunday, June 17, 2007 11:30 PM
To: Peter Carney
Cc: dhcptest@tahi.org
Subject: RE: [dhcptest:00180] Re: FW: Re: Tests that check for DNS and Domain Search Options

Hello Peter,

Actually, I have not added any modification to C_RFC3646_5_InvDecDnsSchLstOpt.seq.

I have modified only for C_RFC3646_5_InvDecDnsSvrOpt.seq.


Could you verify these behavoirs, please?

Thanks,


-----Original Message-----
From: Peter Carney [mailto:pcarney@treck.com]
Sent: 2007/06/15 (ρη‘) 21:17
To: Enokihara, Hideshi (Hideshi.Enokihara@jp.yokogawa.com)
Cc: dhcptest@tahi.org
Subject: RE: [dhcptest:00180] Re: FW:  Re: Tests that check for DNS and Domain Search Options
 
Hideshi,

 

I think your modifications are correct.  Can you please email me the .seq files once they have been updated? 

 

 

Thank you,

 

Peter Carney

Development Engineer

Treck Inc.

http://www.treck.com <http://www.treck.com> 

________________________________

From: Hideshi.Enokihara@jp.yokogawa.com [mailto:Hideshi.Enokihara@jp.yokogawa.com] 
Sent: Thursday, June 14, 2007 7:45 PM
To: Peter Carney
Cc: dhcptest@tahi.org
Subject: RE: [dhcptest:00180] Re: FW: Re: Tests that check for DNS and Domain Search Options

 

Sorry, I sent this e-mail to Peter.

 

Thank you so much Peter?

 

I would like to hear your thought.

 

Thanks,

	 

	________________________________

		From: Enokihara, Hideshi (Hideshi.Enokihara@jp.yokogawa.com) 
	Sent: Friday, June 15, 2007 9:42 AM
	To: pcarney@treck.com
	Cc: dhcptest@tahi.org
	Subject: [dhcptest:00180] Re: FW: Re: Tests that check for DNS and Domain Search Options

	Hello Scott,

	 

	Thank you for your concrete reports!

	I will fix these problem as soon as possible.

	 

	But I think that following correction is enough for the test purpose.

	 

	C_RFC3646_5_InvDecDnsSchLstOpt.seq:

	$ret = options_exist(\%dec, ($CMP_DNS_LST));

	if($ret == 0){

	        vLogHTML('<FONT COLOR="#FF0000">DHCPv6 Client should not send Decline with Domain Search List option!</FONT><BR>');

	        dhcpExitFail;

	}

	 

	 

	C_RFC3646_5_InvDecDnsSvrOpt.seq: (note the removal of $CMP_CID)

	$ret = options_exist(\%dec, ($CMP_DNS_SVR));

	if($ret == 0){

	        vLogHTML('<FONT COLOR="#FF0000">DHCPv6 Client should not send Decline with DNS Recursive Name Server option!</FONT><BR>');

	        dhcpExitFail;

	}

	 

	What do you think?

	 

	Best regards,

	 

	 

		________________________________

				From: Peter Carney [mailto:pcarney@treck.com] 
		Sent: Friday, June 15, 2007 6:29 AM
		To: Enokihara, Hideshi (Hideshi.Enokihara@jp.yokogawa.com)
		Cc: dhcptest@tahi.org
		Subject: RE: [dhcptest:00178] Re: FW: Re: Tests that check for DNS and Domain Search Options

		Hideshi,

		 

		I agree with Scott.

		 

		The function options_exist() that is defined in DHCP_common.pm has two possible return values: 0 and 1.

		It will return 0 if all of the options exist.

		It will return 1 if any of the options do not exist.

		 

		Taking C_RFC3646_5_InvDecDnsSvrOpt.seq as an example, it calls options_exist() with ($CMP_CID|$CMP_DNS_SVR).

		This will return with a 0 (and therefore cause the test to fail) only if both of these options exist, if only one of the options is present then this will return with a 1 (and the test will still pass).  I believe this to be incorrect.  If either of these options is present the test should fail.

		 

		Also, with C_RFC3646_5_InvDecDnsSvrOpt.seq, checking for the presence of a Client Identifier option is incorrect.  From RFC3315, a Decline message MUST be discarded by a server if it does not include a Client Identifier option.

		 

		Finally, with C_RFC3646_5_InvDecDnsSchLstOpt.seq, I believe that it should check not only for $CMP_DNS_LST but also for $CMP_DNS_SVR as well.

		 

		Because testing for this is based on logic that requires a failure if any of the options do exist (which is different from the return values of options_exist() when called with multiple options) it is required that you call the options_exist() function one time for each option you are checking for.

		 

		Here is how I believe it should look:

		 

		C_RFC3646_5_InvDecDnsSchLstOpt.seq:

		$ret = options_exist(\%dec, ($CMP_DNS_LST));

		if ($ret != 0) {

		    $ret = options_exist(\%dec, ($CMP_DNS_SVR));

		}

		if($ret == 0){

		        vLogHTML('<FONT COLOR="#FF0000">DHCPv6 Client should not send Decline with Domain Search List option and/or DNS Recursive Name Server option!</FONT><BR>');

		        dhcpExitFail;

		}

		 

		 

		C_RFC3646_5_InvDecDnsSvrOpt.seq: (note the removal of $CMP_CID)

		$ret = options_exist(\%dec, ($CMP_DNS_LST));

		if ($ret != 0) {

		    $ret = options_exist(\%dec, ($CMP_DNS_SVR));

		}

		if($ret == 0){

		        vLogHTML('<FONT COLOR="#FF0000">DHCPv6 Client should not send Decline with Domain Search List option and/or DNS Recursive Name Server option!</FONT><BR>');

		        dhcpExitFail;

		}

		 

		 

		Please let me know your thoughts.

		 

		 

		 

		Thank you,

		 

		Peter Carney

		Development Engineer

		Treck Inc.

		http://www.treck.com <http://www.treck.com> 

		________________________________

				From: Scott Langley [mailto:slangley@tadboise.com] 
		Sent: Tuesday, June 05, 2007 9:53 PM
		To: Hideshi.Enokihara@jp.yokogawa.com
		Cc: dhcptest@tahi.org
		Subject: [dhcptest:00178] Re: FW: Re: Tests that check for DNS and Domain Search Options

		 

		Hi Hideshi,
		
		I think I agree with your thoughts about what the tests should do. 
		
		The problem is that our client device does include options 23 and 24 in its Decline packets - and yet the Tahi Tests reports that they "PASS" these tests.  I would expect our product to fail these tests.
		
		Regards,
		
		Scott
		
		-----Original Message-----
		From: Hideshi.Enokihara@jp.yokogawa.com [mailto:Hideshi.Enokihara@jp.yokogawa.com]
		Sent: Tue 6/5/2007 7:07 PM
		To: Scott Langley
		Cc: dhcptest@tahi.org
		Subject: RE: FW: [dhcptest:00173] Re: Tests that check for DNS and Domain Search Options
		
		Hello Scott,
		
		Thank you for your report.
		
		But, these tests that you mentioned are correct, I think.
		
		These tests focus on following statements in RFC 3646.
		
		----------------------------
		5.  Appearance of these options
		
		   The DNS Recursive Name Server option MUST NOT appear in any other
		   than the following messages: Solicit, Advertise, Request, Renew,
		   Rebind, Information-Request, and Reply.
		
		   The Domain Search List option MUST NOT appear in any other than the
		   following messages: Solicit, Advertise, Request, Renew, Rebind,
		   Information-Request, and Reply.
		----------------------------
		
		So, these tests really expect that the message does not include DNS
		Recursive Name Server option/Domain Search List option.
		
		regards,
		...Hideshi
		________________________________
		
		        From: Scott Langley [mailto:slangley@tadboise.com]
		        Sent: Wednesday, June 06, 2007 2:17 AM
		        To: Enokihara, Hideshi (Hideshi.Enokihara@jp.yokogawa.com)
		        Cc: dhcptest@tahi.org
		        Subject: RE: FW: [dhcptest:00173] Re: Tests that check for DNS
		and Domain Search Options
		       
		       
		
		        Hi Hideshi,
		       
		        The revised files you sent do appear to work properly.
		       
		        However, I think there are a few more tests that have problems.
		       
		        These two test pass, even though our DECLINE messages include
		both options 23 and 24:
		       
		         C_RFC3646_5_InvDecDnsSchLstOpt.seq
		         C_RFC3646_5_InvDecDnsSvrOpt.seq
		       
		        I suspect that the options_exist() method of DHCPv6_common.pm
		may be flawed.
		       
		        These four other tests, below, are similarly written, but I
		can't say if there is anything wrong with them because our product
		doesn't yet send CONFIRM and RELEASE messages when it should:
		       
		         C_RFC3646_5_InvCnfDnsSchLstOpt.seq
		         C_RFC3646_5_InvCnfDnsSvrOpt.seq
		         C_RFC3646_5_InvRelDnsSchLstOpt.seq
		         C_RFC3646_5_InvRelDnsSvrOpt.seq
		       
		        Thanks.
		       
		        --
		        Scott Langley
		        Adecco Technical
		        slangley@tadboise.com
		       
		       
		        -----Original Message-----
		        From: Hideshi Enokihara
		[mailto:Hideshi.Enokihara@jp.yokogawa.com]
		        Sent: Mon 6/4/2007 7:15 PM
		        To: Scott Langley
		        Cc: dhcptest@tahi.org
		        Subject: Re: FW: [dhcptest:00173] Re: Tests that check for DNS
		and Domain Search Options
		       
		        Hello Scott,
		       
		        Thank you for your report.
		       
		        Please use attached files instead of original files.
		        Then, could you let me know that these scripts work well or not,
		please?
		       
		        Thank you for your cooperation.
		       
		        Regards,
		        ...Hideshi
		       
		        On Tue, 5 Jun 2007 09:48:46 +0900
		        <Hideshi.Enokihara@jp.yokogawa.com> wrote:
		       
		        >
		        >
		        > -----Original Message-----
		        > From: Scott Langley [mailto:slangley@tadboise.com]
		        > Sent: Tuesday, June 05, 2007 9:44 AM
		        > To: dhcptest@tahi.org
		        > Subject: RE: [dhcptest:00173] Re: Tests that check for DNS and
		Domain
		        > Search Options
		        >
		        > Hi Hideshi,
		        >
		        > These are probably the test that would fail due to this
		reason, from the
		        > results of doing a grep search:
		        >
		        > PCBSD# grep '!= 23' *.seq
		        >
		        > C_RFC3646_3_DnsSvrOpt.seq:if($sol{$optionCode} != 23){
		        > C_RFC3646_3_DnsSvrOpt_Reb.seq:if($reb{$optionCode} != 23){
		        > C_RFC3646_3_DnsSvrOpt_Ren.seq:if($ren{$optionCode} != 23){
		        > C_RFC3646_3_DnsSvrOpt_Req.seq:if($req{$optionCode} != 23){
		        > C_RFC3646_3_DnsSvrOpt_Sol.seq:if($sol{$optionCode} != 23){
		        >
		        > PCBSD# grep '!= 24' *.seq
		        >
		        > C_RFC3646_3_DnsSchLstOpt_Reb.seq:if($reb{$optionCode} != 24){
		        > C_RFC3646_3_DnsSchLstOpt_Ren.seq:if($ren{$optionCode} != 24){
		        > C_RFC3646_3_DnsSchLstOpt_Req.seq:if($req{$optionCode} != 24){
		        > C_RFC3646_3_DnsSchLstOpt_Sol.seq:if($sol{$optionCode} != 24){
		        > C_RFC3646_4_DnsSchLstOpt.seq:if($sol{$optionCode} != 24){
		        >
		        >
		        > -----Original Message-----
		        > From: Hideshi.Enokihara@jp.yokogawa.com
		        > [mailto:Hideshi.Enokihara@jp.yokogawa.com]
		        > Sent: Mon 6/4/2007 6:14 PM
		        > To: dhcptest@tahi.org
		        > Subject: [dhcptest:00173] Re: Tests that check for DNS and
		Domain Search
		        > Options
		        >
		        > Hello Scott,
		        >
		        > Yes, we have to fix these bugs as soon as possible.
		        > Could you let me know the numbers (or titles) of the tests, if
		you have
		        > time, please?
		        > It will help us to fix the bugs.
		        >
		        > regards,
		        > ...Hideshi
		        >
		        >
		        > ________________________________
		        >
		        >       From: Bernie Volz (volz) [mailto:volz@cisco.com]
		        >       Sent: Tuesday, June 05, 2007 5:33 AM
		        >       To: dhcptest@tahi.org
		        >       Subject: [dhcptest:00172] Re: Tests that check for DNS
		and
		        > Domain Search Options
		        >     
		        >     
		        >       Order of the options should not matter (either in the
		ORO or in
		        > the Advertise/Reply). So, if the test code is order dependent,
		it should
		        > be fixed.
		        >      
		        >       - Bernie
		        >
		        > ________________________________
		        >
		        >       From: Scott Langley [mailto:slangley@tadboise.com]
		        >       Sent: Monday, June 04, 2007 3:56 PM
		        >       To: dhcptest@tahi.org
		        >       Subject: [dhcptest:00171] Tests that check for DNS and
		Domain
		        > Search Options
		        >     
		        >     
		        >
		        >       Hello,
		        >     
		        >       Many of the tests in the RFC 3646 and RFC 3736 sections
		of the
		        > DHCPv6 Self Test Suite 1.01 (and earlier) are failing for us
		for the
		        > wrong reason.
		        >     
		        >       The way our (client) product is currently behaving it
		requests
		        > these options:
		        >     
		        >       13 OPTION_STATUS_CODE
		        >       12 OPTION_UNICAST
		        >       23 OPTION_DNS_SERVERS
		        >       24 OPTION_DOMAIN_LIST
		        >        7 OPTION_PREFERENCE
		        >     
		        >       Many tests, for example, RFC 3646 - Test
		DHCP_CONF.4.1.1: Option
		        > Request option Format
		        >       PartA: Option request Option Format(DNS Recursive Name
		Server
		        > option)
		        >     
		        >       fail because option 13 is not option 23, according to
		the code:
		        >     
		        >       if($sol($optionCode != 23) {
		        >         # Logging of failure message.
		        >       }
		        >     
		        >       Shouldn't the test be re-written to check whether or not
		option
		        > 23 is among the options requested
		        >       rather than whether or not it is the first option
		requested?
		        >     
		        >       Also, I know our client shouldn't be requesting option
		12,
		        > Server Unicast, as that option should only appear in Reply
		messages
		        > coming from a server.  I don't think you have any tests yet
		that check
		        > for the appearance of options in different message types as
		described in
		        > Appendix A of RFC3315.
		        >     
		        >       http://tools.ietf.org/html/rfc3315#page-98
		        >     
		        >       Thanks.
		        >     
		        >       Scott Langley
		        >       Adecco Technical
		        >       slangley@tadboise.com
		        >     
		        >     
		        >
		        >
		        >
		       
		       
		        --
		        *************************************
		        Hideshi Enokihara
		        IPv6 Business
		        Network & Software Development Dept.
		        Yokogawa Electric Corporation
		       
		       

		Treck, Inc. - Confidentiality Notice

		This electronic transmission may contain information that is proprietary or
		 confidential. You are hereby notified that any dissemination,
		 distribution or duplication of this electronic transmission to some other
		 entity, without the expressed written consent of Treck, Inc. is strictly
		 prohibited, unless the contents of this electronic transmission
		 specifically authorizes you to do so. If your receipt of this electronic
		 transmission is in error, please notify the corporate offices of Treck,
		 Inc. immediately by calling (513) 528-5732, or by reply to
		 this transmission.