public inbox for linux-bluetooth@vger.kernel.org
 help / color / mirror / Atom feed
From: "Daryl Van Vorst" <daryl@wideray.com>
To: "'Marcel Holtmann'" <marcel@rvs.uni-bielefeld.de>,
	"'Max Krasnyansky'" <maxk@qualcomm.com>
Cc: "'BlueZ Mailing List'" <bluez-devel@lists.sourceforge.net>
Subject: RE: [Bluez-devel] Qualification Testing
Date: Fri, 9 May 2003 11:11:45 -0700	[thread overview]
Message-ID: <000301c31656$73bb2930$5796fea9@baked> (raw)
In-Reply-To: <1052442873.1069.35.camel@pegasus.local>

Hi Max, Marcel,

> > >>         1.) TP/COS/CED/BI-01: Verifies that the IUT rejects an 
> > >> unkown signalling command. The tester sends an unkown L2CAP 
> > >> command. The IUT should respond with an L2CAP_Reject 
> with reason 0 
> > >> "Command not understood". The IUT did not.
> > >
> > >We have a fixme for this in the l2cap.c code, but 
> currently no code 
> > >exists. Should be easy to fix, but nobody cares about it.
> > Hold on. That's exactly what we do
> >                 if (err) {
> >                         l2cap_cmd_rej rej;
> >                         BT_DBG("error %d", err);
> > 
> >                         /* FIXME: Map err to a valid reason. */
> >                         rej.reason = __cpu_to_le16(0);
> >                         l2cap_send_rsp(conn, cmd.ident, 
> L2CAP_COMMAND_REJ, L2CAP_CMD_REJ_SIZE, &rej);
> >                 }
> > Reason is always set to 0.
> > Test should not fail.
> 
> you are right. This test should not fail.

Ok. That could have been something else going wrong then.  When I get the
detailed logs I'll look through them closely. If it still appears that
something's wrong with the stack, I'll forward the details.

> > >>         2.) TP/COS/CFD/BV-01: Tests that IUT is able to 
> handle the 
> > >> receiving of more than one request for configuration of data 
> > >> channel. Tester sends L2CAP_Config Req with flag=1, IUT responds 
> > >> with flag=0. According to section 5.4 p.290 of the version 1.1 
> > >> spec, "When used in the Configuration Response, the continuation 
> > >> flag must be set if the flag is set in the Request".
> > >
> > >This seems to be a bug in the current code. But I have to 
> re-read the 
> > >L2CAP specification for the details.
> > Easy.
> > 
> > --- 1.9/net/bluetooth/l2cap.c   Wed Apr 23 04:45:41 2003
> > +++ edited/net/bluetooth/l2cap.c        Thu May  8 17:26:28 2003
> > @@ -1320,15 +1320,18 @@
> >  {
> >         l2cap_conf_rsp *rsp = (l2cap_conf_rsp *) data;
> >         void *ptr = rsp->data;
> > +       u16 flags = 0;
> >  
> >         BT_DBG("sk %p complete %d", sk, result ? 1 : 0);
> >  
> >         if (result)
> >                 *result = l2cap_conf_output(sk, &ptr);
> > +       else
> > +               flags |= 0x0001;
> >  
> >         rsp->scid   = __cpu_to_le16(l2cap_pi(sk)->dcid);
> >         rsp->result = __cpu_to_le16(result ? *result : 0);
> > -       rsp->flags  = __cpu_to_le16(0);
> > +       rsp->flags  = __cpu_to_le16(flags);
> >  
> >         return ptr - data;
> > 
> > I'll commit this to my BK.
> 
> Fine.

Thanks guys. :)
 
> > >>         3.) TP/COS/CFD/BV-02: Tests that IUT is able to perform 
> > >> negotiation while the tester rejects the configuration of a data 
> > >> channel. The IUT sends a configuration request and the tester 
> > >> rejects it. The IUT should send another configuration 
> request, but 
> > >> it does not.
> > >
> > >Currently the channel is closed if they reject our config request, 
> > >because we don't know how to proceed if they don't like 
> our settings. 
> > >We can sent them again, but they will be rejected again. For this 
> > >case I also have to read the L2CAP in detail.
> > Yeah we talked about that. Test is stupid. I'm not sure how to fix 
> > that without
> > affecting general logic. 
> 
> I put this to the last item on the list. At the moment I 
> don't care, but I will spent some time to look at it.

Not sure if you saw a slightly more recent post from me.  The test isn't
quite as stupid as it seems. When the tester rejects the config request, it
gives desired configuration values inside that response. We're supposed to
return those values in the next config request (providing we like them well
enough). It'll accept those values. This behaviour makes sense to me now.
Thoughts?

> > >>         4.) TP/COS/RCO/BI-01, BI-02: These tests verify that the 
> > >> IUT performs a consistency check on the data. Both tests 
> send two 
> > >> packets to the IUT. In each test, the first packet has a 
> mistake. 
> > >> In BI-01 the first packet is too short by one byte, and in BI-02 
> > >> the first packet is too long by one byte. In both cases 
> the stack 
> > >> must correctly receive the second packet, but not the first. The 
> > >> data should be discarded in the case of the 
> inconsistencies, and an 
> > >> error reported to the application.
> > >
> > >It seems that we can't handle this case complete correctly, if the 
> > >data was put only in one fragment. But in the basics this 
> should work 
> > >and the malformed packets should be dropped. Did you have 
> a detailed 
> > >log of this test which shows us byte by byte which request 
> was sent?
> > Hmm, how should we return error to the application. Most socket app 
> > close
> > the socket than read() returns error. i.e. Even if we fix 
> the kernel to
> > return some BT specific error, test will fail on other apps 
> which will 
> > simply close the socket.
> > Also are those corrupted data packets or signaling packets ?
> > If signalling we're not supposed to return error to all 
> L2CAP apps are we ? ;-)
> 
> The test should pass if we correctly drop those wrong 
> packets. But we need to see how the test acts. We need a 
> "hcidump -w <file>". 

I sent a raw HCI dump for the two test cases in another message to the list
yesterday. Is that enough information?

-Daryl.

  reply	other threads:[~2003-05-09 18:11 UTC|newest]

Thread overview: 81+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-05-06 17:34 [Bluez-devel] Qualification Testing Daryl Van Vorst
2003-05-07 10:56 ` Stephen Crane
2003-05-07 16:44   ` Daryl Van Vorst
2003-05-08  2:18   ` Daryl Van Vorst
2003-05-12 16:37     ` Stephen Crane
2003-05-12 19:38       ` Daryl Van Vorst
2003-05-08 13:43 ` Marcel Holtmann
2003-05-08 18:11   ` Daryl Van Vorst
2003-05-08 19:53     ` Marcel Holtmann
2003-05-08 21:04     ` Daryl Van Vorst
2003-05-08 21:55     ` Daryl Van Vorst
2003-05-09  0:10       ` Marcel Holtmann
2003-05-08 22:06     ` Daryl Van Vorst
2003-05-08 18:33   ` Daryl Van Vorst
2003-05-09  0:51   ` Max Krasnyansky
2003-05-09  1:14     ` Marcel Holtmann
2003-05-09 18:11       ` Daryl Van Vorst [this message]
2003-05-09 18:36         ` Marcel Holtmann
2003-05-09 21:15         ` Max Krasnyansky
2003-05-09 21:52           ` Daryl Van Vorst
2003-05-09 22:51             ` Max Krasnyansky
2003-05-09 23:16               ` Daryl Van Vorst
2003-05-09 23:40               ` Daryl Van Vorst
2003-05-10  0:26                 ` Marcel Holtmann
2003-05-10  2:33                   ` Daryl Van Vorst
2003-05-10  6:17                   ` Max Krasnyansky
2003-05-10 11:25                     ` Marcel Holtmann
2003-05-11  3:57                       ` Daryl Van Vorst
2003-05-12 22:51                         ` Daryl Van Vorst
2003-05-12 23:05                           ` Marcel Holtmann
2003-05-13 17:37                           ` Max Krasnyansky
2003-05-13 17:55                             ` Daryl Van Vorst
2003-05-13 22:31                             ` Marcel Holtmann
2003-05-13 23:02                               ` Max Krasnyansky
2003-05-13 23:19                                 ` Marcel Holtmann
2003-05-14  0:05                                   ` Max Krasnyansky
2003-05-14  0:30                                     ` Marcel Holtmann
2003-05-14 16:02                                       ` Daryl Van Vorst
2003-05-14 16:34                                         ` Max Krasnyansky
2003-05-14 21:12                                           ` Daryl Van Vorst
2003-05-14 22:24                                             ` Daryl Van Vorst
2003-05-14 22:27                                               ` Marcel Holtmann
2003-05-14 22:35                                                 ` Daryl Van Vorst
2003-05-16  0:43                                                   ` Max Krasnyansky
2003-05-16 14:43                                                     ` Daryl Van Vorst
2003-05-16 17:38                                                       ` Max Krasnyansky
2003-05-16 17:54                                                         ` Daryl Van Vorst
2003-05-16  7:17                                                   ` Marcel Holtmann
2003-05-10  6:16       ` Max Krasnyansky
2003-05-10 16:30         ` Marcel Holtmann
2003-05-11  7:19           ` Max Krasnyansky
2003-05-11  7:44             ` Marcel Holtmann
2003-05-12 23:37           ` Daryl Van Vorst
2003-05-13  0:04             ` Marcel Holtmann
2003-05-13  0:43               ` Daryl Van Vorst
2003-05-13 17:49               ` Max Krasnyansky
2003-05-13 17:44             ` Max Krasnyansky
2003-05-13 18:36               ` Daryl Van Vorst
2003-05-15 21:25                 ` Daryl Van Vorst
2003-05-16 17:35                   ` Max Krasnyansky
2003-05-16 18:01                     ` Daryl Van Vorst
2003-05-16 18:23                       ` Marcel Holtmann
2003-05-19 21:17                       ` Max Krasnyansky
2003-05-19 21:19                       ` Max Krasnyansky
2003-05-20 16:40                         ` Daryl Van Vorst
2003-05-29 22:51                         ` Daryl Van Vorst
2003-06-12 18:08                           ` Max Krasnyansky
2003-06-12 18:49                             ` Daryl Van Vorst
2003-06-12 19:11                               ` Max Krasnyansky
2003-06-12 20:54                                 ` Daryl Van Vorst
2003-06-12 21:28                                   ` Marcel Holtmann
2003-06-13  1:22                                   ` Max Krasnyansky
2003-05-13 13:30           ` Daryl Van Vorst
2003-05-13 14:02             ` Marcel Holtmann
  -- strict thread matches above, loose matches on Subject: below --
2004-12-01  0:32 [Bluez-devel] Qualification testing Daryl Van Vorst
2004-12-01  6:42 ` Marcel Holtmann
2004-12-01 19:09   ` Daryl Van Vorst
2004-12-01 19:32     ` Marcel Holtmann
2004-12-01 23:02       ` Daryl Van Vorst
2004-12-02  7:35         ` Marcel Holtmann
2004-12-02 17:56           ` Daryl Van Vorst

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='000301c31656$73bb2930$5796fea9@baked' \
    --to=daryl@wideray.com \
    --cc=bluez-devel@lists.sourceforge.net \
    --cc=marcel@rvs.uni-bielefeld.de \
    --cc=maxk@qualcomm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox