Date: Tue, 15 Dec 1998 22:04:58 +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: <199812152104.WAA74654@trantor.stuyts.nl> In-Reply-To: Your message of "Mon, 14 Dec 1998 03:42:35 PST." <199812141142.DAA00657@dingo.cdrom.com>
next in thread | previous in thread | raw e-mail | index | archive | help
I did some testing using the following test program:
#include <fcntl.h>
main()
{
int rv;
rv=open("testfile1",O_CREAT|O_RDWR|O_EXCL,0666);
if ( rv < 0 )
perror("testfile1");
rv=open("testfile2",O_CREAT|O_RDWR,0666);
if ( rv < 0 )
perror("testfile2");
}
This program results in a file called 'testfile1' being created on the server
but having the creation of 'testfile2' fail with errno=79 ( which means
EOVERFLOW 79 /* value too large to be stored in data type */
on Solaris )
If I do a snoop for the create requests sent I se the following request for
testfile1 :
RPC: ----- SUN RPC Header -----
RPC:
RPC: Record Mark: last fragment, length = 156
RPC: Transaction id = 1478392196
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 = testfile1
NFS: Guard = 7F00000103000000
NFS:
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.
Hope someone can use this to find out what is wrong.
( If needed I can send the full snoop capture )
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?199812152104.WAA74654>
