From patchwork Wed Mar 2 06:32:36 2011 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Mi Jinlong X-Patchwork-Id: 601941 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by demeter1.kernel.org (8.14.4/8.14.3) with ESMTP id p226TwwF022724 for ; Wed, 2 Mar 2011 06:31:55 GMT Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751499Ab1CBGby (ORCPT ); Wed, 2 Mar 2011 01:31:54 -0500 Received: from cn.fujitsu.com ([222.73.24.84]:56376 "EHLO song.cn.fujitsu.com" rhost-flags-OK-FAIL-OK-OK) by vger.kernel.org with ESMTP id S1751035Ab1CBGby (ORCPT ); Wed, 2 Mar 2011 01:31:54 -0500 Received: from tang.cn.fujitsu.com (tang.cn.fujitsu.com [10.167.250.3]) by song.cn.fujitsu.com (Postfix) with ESMTP id 7F566170080; Wed, 2 Mar 2011 14:31:53 +0800 (CST) Received: from mailserver.fnst.cn.fujitus.com (tang.cn.fujitsu.com [127.0.0.1]) by tang.cn.fujitsu.com (8.14.3/8.13.1) with ESMTP id p226Q3rn007102; Wed, 2 Mar 2011 14:26:03 +0800 Received: from [127.0.0.1] ([10.167.225.24]) by mailserver.fnst.cn.fujitus.com (Lotus Domino Release 8.5.1FP4) with ESMTP id 2011030214304545-259800 ; Wed, 2 Mar 2011 14:30:45 +0800 Message-ID: <4D6DE484.6010608@cn.fujitsu.com> Date: Wed, 02 Mar 2011 14:32:36 +0800 From: Mi Jinlong User-Agent: Thunderbird 2.0.0.9 (Windows/20071031) MIME-Version: 1.0 To: "J. Bruce Fields" CC: NFS Subject: [PATCH 09/17] CLNT: test Bad Sequenceid At Slot References: <4D6DE26C.3010103@cn.fujitsu.com> In-Reply-To: <4D6DE26C.3010103@cn.fujitsu.com> X-MIMETrack: Itemize by SMTP Server on mailserver/fnst(Release 8.5.1FP4|July 25, 2010) at 2011-03-02 14:30:45, Serialize by Router on mailserver/fnst(Release 8.5.1FP4|July 25, 2010) at 2011-03-02 14:30:45, Serialize complete at 2011-03-02 14:30:45 Sender: linux-nfs-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-nfs@vger.kernel.org X-Greylist: IP, sender and recipient auto-whitelisted, not delayed by milter-greylist-4.2.6 (demeter1.kernel.org [140.211.167.41]); Wed, 02 Mar 2011 06:31:55 +0000 (UTC) diff --git a/nfs4.1/server41tests/st_sequence.py b/nfs4.1/server41tests/st_sequence.py index ed0cc8c..4ea5cab 100644 --- a/nfs4.1/server41tests/st_sequence.py +++ b/nfs4.1/server41tests/st_sequence.py @@ -338,3 +338,28 @@ def testSessionidSequenceidSlotid(t, env): if not nfs4lib.test_equal(res.resarray[0].sr_slotid, 2, "int"): fail("server return bad slotid") + +def testBadSequenceidAtSlot(t, env): + """ If the difference between sa_sequenceid and the server's cached + sequence ID at the slot ID is two (2) or more, or if sa_sequenceid + is less than the cached sequence ID , server MUST return + NFS4ERR_SEQ_MISORDERED. rfc5661 18.46.3 + + FLAGS: sequence all + CODE: SEQ13 + """ + c = env.c1.new_client(env.testname(t)) + # CREATE_SESSION + sess1 = c.create_session() + + sid = sess1.sessionid + res = c.c.compound([op.sequence(sid, 1, 2, 3, True)]) + check(res) + + seqid = res.resarray[0].sr_sequenceid + # SEQUENCE with bad sr_sequenceid + res = c.c.compound([op.sequence(sid, seqid + 2, 2, 3, True)]) + check(res, NFS4ERR_SEQ_MISORDERED) + + res = c.c.compound([op.sequence(sid, nfs4lib.dec_u32(seqid), 2, 3, True)]) + check(res, NFS4ERR_SEQ_MISORDERED)