[12/17] CLNT: test DESTROY_SESSION not the sole operation
diff mbox

Message ID 4D6DE4F6.60907@cn.fujitsu.com
State RFC, archived
Headers show

Commit Message

Mi Jinlong March 2, 2011, 6:34 a.m. UTC
None

Patch
diff mbox

diff --git a/nfs4.1/server41tests/st_destroy_session.py b/nfs4.1/server41tests/st_destroy_session.py
index d7be8a1..1feb671 100644
--- a/nfs4.1/server41tests/st_destroy_session.py
+++ b/nfs4.1/server41tests/st_destroy_session.py
@@ -149,3 +149,21 @@  def testDestoryNotFinalOps(t, env):
                         op.destroy_session(sess1.sessionid),
                         op.putrootfh()])
     check(res, NFS4ERR_NOT_ONLY_OP)
+
+def testDestoryNotSoleOps(t, env):
+    """ If the COMPOUND request does not start with SEQUENCE,
+        and DESTROY_SESSION is not the sole operation,
+        then server MUST return NFS4ERR_NOT_ONLY_OP. rfc5661 18.37.3
+
+    FLAGS: destroy_session
+    CODE: DSESS9005
+    """
+    c = env.c1.new_client(env.testname(t))
+    sess1 = c.create_session()
+
+    sid = sess1.sessionid
+    res = c.c.compound([op.destroy_session(sess1.sessionid), op.putrootfh()])
+    check(res, NFS4ERR_NOT_ONLY_OP)
+
+    res = c.c.compound([op.putrootfh(), op.destroy_session(sess1.sessionid)])
+    check(res, NFS4ERR_NOT_ONLY_OP)