Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 16 Dec 1998 23:33:53 +0100
From:      Paul van der Zwan <paulz@trantor.stuyts.nl>
To:        Mike Smith <mike@smith.net.au>
Cc:        current@FreeBSD.ORG
Subject:   Re: Weird NFS error using Solaris 7 server 
Message-ID:  <199812162233.XAA00548@trantor.stuyts.nl>
In-Reply-To: Your message of "Tue, 15 Dec 1998 17:58:45 PST." <199812160158.RAA00944@dingo.cdrom.com> 

next in thread | previous in thread | raw e-mail | index | archive | help
> > 
> > And the following for testfile2:
> > RPC:  ----- SUN RPC Header -----
> > RPC:  
> > RPC:  Record Mark: last fragment, length = 192
> > RPC:  Transaction id = 1478392200
> > RPC:  Type = 0 (Call)
> > RPC:  RPC version = 2
> > RPC:  Program = 100003 (NFS), version = 3, procedure = 8
> > RPC:  Credentials: Flavor = 1 (Unix), len = 52 bytes
> > RPC:     Time = 0
> > RPC:     Hostname = 
> > RPC:     Uid = 544, Gid = 200
> > RPC:     Groups = 200 0 5 14 68 69 70 1000 
> > RPC:  Verifier   : Flavor = 0 (None), len = 0 bytes
> > RPC:  
> > NFS:  ----- Sun NFS -----
> > NFS:  
> > NFS:  Proc = 8 (Create file)
> > NFS:  File handle = [008A]
> > NFS:   0080000800000002000A000000000002694370EA000A000000000002694370EA
> > NFS:  File name = testfile2
> > NFS:  Method = Unchecked
> > NFS:    Mode = 0644
> > NFS:     Setuid = 0, Setgid = 0, Sticky = 0
> > NFS:     Owner's permissions = rw-
> > NFS:     Group's permissions = r--
> > NFS:     Other's permissions = r--
> > NFS:  User ID = (not set)
> > NFS:  Group ID = (not set)
> > NFS:  Size = (not set)
> > NFS:  Access time = -1  (set to client time)
> > NFS:  Modification time = -1  (set to client time)
> > NFS:  
> > NFS:  
> > 
> > So the open with the O_EXCL flag ( which succeeds ) shows a field decode by
> > snoop as Guard and the failing request shows a lot of other fields.
> 
> This looks like snoop is failing to usefully process the packet.  Can 
> you feed the trace to Ethereal and see what it has to say about it?
> 
To test my theory that the -1 times are causing the error because they violate
the protocol, I chanded the  #define nfsm_v3sattr in /usr/src/sys/nfs/
nfsm_subs.h to use NFSV3SATTRTIME_TOSERVER in stead of NFSV3SATTRTIME_TOCLIENT.
This makes the server ignore the time values. My test program now creates
poth testfile1 and testfile2.

I might be wrong but I think the bug is in the client code and surfaced because
Solaris 7 has become stricter about clients adhering to the protocol specs.

	Paul

-- 
Paul van der Zwan		paulz @ trantor.stuyts.nl
"I think I'll move to theory, everything works in theory..."



To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199812162233.XAA00548>