From: "J. Bruce Fields" <bfields@fieldses.org>
To: Fred Isaman <iisaman@netapp.com>
Cc: Mi Jinlong <mijinlong@cn.fujitsu.com>,
"J. Bruce Fields" <bfields@redhat.com>,
linux-nfs@vger.kernel.org
Subject: Re: [PATCH 3/3] nfsd4: implement secinfo_no_name
Date: Wed, 5 Jan 2011 12:29:17 -0500 [thread overview]
Message-ID: <20110105172916.GD13000@fieldses.org> (raw)
In-Reply-To: <20110105153713.GA13000@fieldses.org>
On Wed, Jan 05, 2011 at 10:37:13AM -0500, J. Bruce Fields wrote:
> On Wed, Jan 05, 2011 at 10:15:11AM -0500, Fred Isaman wrote:
> > On Tue, Jan 4, 2011 at 8:05 PM, J. Bruce Fields <bfields@fieldses.org> wrote:
> > > On Thu, Dec 30, 2010 at 12:13:27PM +0800, Mi Jinlong wrote:
> > >>
> > >>
> > >> J. Bruce Fields:
> > >> > On Mon, Dec 27, 2010 at 02:29:57PM +0800, Mi Jinlong wrote:
> > >> >> When testing this patch, oops appears.
> > >> >>
> > >> >> We should implement a nfsd4_encode_secinfo_no_name() instead using
> > >> >> nfsd4_encode_secinfo().
> > >> >>
> > >> >> With the following patch, kernel will run correctly.
> > >> >
> > >> > Whoops, yes, you're correct. I've applied your patch. Thanks!
> > >> >
> > >> > (What are you using for testing?)
> > >>
> > >> Hi Bruce:
> > >>
> > >> I test it by the pynfs41 at your tree, and add some simple
> > >> test case as following.
> > >>
> > >> I have a question about the op.secinfo_no_name(), should it take
> > >> a argument?
> > >> Right now, maybe it always request with NFS4_SECINFO_STYLE4_CURRENT_FH,
> > >> or I can't find how to set the argument.
> > >
> >
> > There was a bug in how the op.secinfo_no_name() function was auto
> > constructed. I've pushed a fix to
> > my tree at git://linux-nfs.org/~iisaman/newpynfs.git.
>
> Thanks, Fred. I've pulled that into my repository too.
But then these secinfo_no_name tests don't work ("TypeError:
data.opsecinfo_no_name == None"); Mi Jinlong, would you mind looking
into that?
--b.
>
> --b.
>
> >
> > Fred
> >
> > > Hm, I don't know, I guess I'd look at how arguments are passed to some
> > > of the other operations when constructing compounds in other tests....
> > >
> > > --b.
> > >
> > >>
> > >> thanks,
> > >> Mi Jinlong
> > >>
> > >> >From 31ae25c04295888fa54ea531cdfaa4cfdefbe877 Mon Sep 17 00:00:00 2001
> > >> From: Mi Jinlong <mijinlong@cn.fujitsu.com>
> > >> Date: Wed, 29 Dec 2010 17:23:35 +0800
> > >> Subject: [PATCH] CLNT: Add some simple secinfo_no_name tests
> > >>
> > >> Add two simple secinfo_no_name tests as Bruce said:
> > >> - send PUTROOTFH+SECINFO_NO_NAME, check that you get back a
> > >> legal result.
> > >> - send PUTROOTFH+SECINFO+GETFH, and/or
> > >> PUTROOTFH+SECINFO_NO_NAME+GETFH, check that the GETFH returns
> > >> NOFILEHANDLE.
> > >>
> > >> Signed-off-by: Mi Jinlong <mijinlong@cn.fujitsu.com>
> > >> ---
> > >> nfs4.1/server41tests/__init__.py | 1 +
> > >> nfs4.1/server41tests/st_secinfo_no_name.py | 35 ++++++++++++++++++++++++++++
> > >> 2 files changed, 36 insertions(+), 0 deletions(-)
> > >> create mode 100644 nfs4.1/server41tests/st_secinfo_no_name.py
> > >>
> > >> diff --git a/nfs4.1/server41tests/__init__.py b/nfs4.1/server41tests/__init__.py
> > >> index 22cd664..6aee88e 100644
> > >> --- a/nfs4.1/server41tests/__init__.py
> > >> +++ b/nfs4.1/server41tests/__init__.py
> > >> @@ -2,6 +2,7 @@ __all__ = ["st_exchange_id.py", # draft 21
> > >> "st_compound.py",
> > >> "st_create_session.py",
> > >> "st_destroy_session.py",
> > >> + "st_secinfo_no_name.py",
> > >> "st_sequence.py",
> > >> "st_trunking.py",
> > >> "st_open.py",
> > >> diff --git a/nfs4.1/server41tests/st_secinfo_no_name.py b/nfs4.1/server41tests/st_secinfo_no_name.py
> > >> new file mode 100644
> > >> index 0000000..a4b148d
> > >> --- /dev/null
> > >> +++ b/nfs4.1/server41tests/st_secinfo_no_name.py
> > >> @@ -0,0 +1,35 @@
> > >> +from st_create_session import create_session
> > >> +from nfs4_const import *
> > >> +from environment import check, fail, bad_sessionid, create_file
> > >> +from nfs4_type import channel_attrs4
> > >> +import nfs4_ops as op
> > >> +import nfs4lib
> > >> +
> > >> +def testSupported(t, env):
> > >> + """Do a simple SECINFO_NO_NAME
> > >> + send PUTROOTFH+SECINFO_NO_NAME, check is result legal
> > >> +
> > >> + FLAGS: all
> > >> + CODE: SECNN1
> > >> + """
> > >> + c = env.c1.new_client(env.testname(t))
> > >> + sess = c.create_session()
> > >> + res = sess.compound([op.putrootfh(), op.secinfo_no_name()])
> > >> + check(res);
> > >> +
> > >> +def testSupported2(t, env):
> > >> + """GETFH after do a SECINFO_NO_NAME or SECINFO
> > >> + result in a NOFILEHANDLE error, See rfc 5661 section 2.6.3.1.1.8
> > >> +
> > >> + FLAGS: all
> > >> + CODE: SECNN2
> > >> + """
> > >> + c = env.c1.new_client(env.testname(t))
> > >> + sess = c.create_session()
> > >> + res = sess.compound([op.putrootfh(), op.secinfo_no_name(), op.getfh()])
> > >> + print res
> > >> + check(res, NFS4ERR_NOFILEHANDLE);
> > >> +
> > >> + res = sess.compound([op.putrootfh(), op.secinfo("tree"), op.getfh()])
> > >> + print res
> > >> + check(res, NFS4ERR_NOFILEHANDLE);
> > >> --
> > >> 1.7.3.3
> > >>
> > > --
> > > To unsubscribe from this list: send the line "unsubscribe linux-nfs" in
> > > the body of a message to majordomo@vger.kernel.org
> > > More majordomo info at http://vger.kernel.org/majordomo-info.html
> > >
next prev parent reply other threads:[~2011-01-05 17:29 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-12-17 19:01 4.1 secinfo patches J. Bruce Fields
2010-12-17 19:01 ` [PATCH 1/3] nfsd4: 4.1 SECINFO should consume filehandle J. Bruce Fields
2010-12-17 19:01 ` [PATCH 2/3] nfsd4: move guts of nfsd4_lookupp into helper J. Bruce Fields
2010-12-17 19:01 ` [PATCH 3/3] nfsd4: implement secinfo_no_name J. Bruce Fields
2010-12-27 6:29 ` Mi Jinlong
2010-12-29 18:56 ` J. Bruce Fields
2010-12-30 4:13 ` Mi Jinlong
2011-01-05 1:05 ` J. Bruce Fields
2011-01-05 15:15 ` Fred Isaman
2011-01-05 15:37 ` J. Bruce Fields
2011-01-05 17:29 ` J. Bruce Fields [this message]
2011-01-06 3:54 ` Mi Jinlong
2011-01-11 23:32 ` J. Bruce Fields
2011-01-13 3:20 ` Mi Jinlong
2011-01-18 22:59 ` J. Bruce Fields
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=20110105172916.GD13000@fieldses.org \
--to=bfields@fieldses.org \
--cc=bfields@redhat.com \
--cc=iisaman@netapp.com \
--cc=linux-nfs@vger.kernel.org \
--cc=mijinlong@cn.fujitsu.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.