Subject: standards/21599: NFS UID -2 conversion to 60001
To: None <>
From: None <>
List: netbsd-bugs
Date: 05/16/2003 14:34:32
>Number:         21599
>Category:       standards
>Synopsis:       NFS UID -2 conversion to 60001
>Confidential:   no
>Severity:       critical
>Priority:       high
>Responsible:    standards-manager
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Fri May 16 14:35:00 UTC 2003
>Originator:     Timothy Arnold
>Release:        1.6.1
With reference to bug ID:  17851

Sun technical support have told me that it is the client that is failing to make the conversion from -2 to 60001  - According to the Sun engineer, the nfs client looks at the NFS UID - 4294967294 (unsigned) or -2 (signed) and should convert it to the nobody user account on the system, this is failing to happen.

The biggest problem is that there is no uniform allocation of UID between different platforms. I remember reading a netbsd thread talking about this problem but that was back in 1999!
1. Change UID on NetBSD to 60001 for nobody
2. Mount a filesystem from a Solaris plaform
2. Create a file called 60001
3. chown nobody:nobody 60001

You will see it is reported as 4294967294 - if you create the same file on a local filesystem you will see it is reported as nobody user.