Solaris 7 3/99 Online Release Notes (SUNWrdm)

Files With Negative Times Will No Longer Be Supported Over an NFS Mount

The NFS protocol reports the modification, access, and meta data change times on files as 32-bit unsigned value that counts the number of seconds elapsed since January 1, 1970, as an unsigned value. This gives NFS a theoretical upper limit to the Year 2106.

Starting with the Solaris 7 release, the Solaris NFS client and server no longer mistakenly render negative times on files as unsigned values. Thus an NFS client that conformed to the NFS protocol specification would interpret that a file last modified in 1969 was in fact modified in 2106.

In the Solaris 7 release, the NFS client and server implementation has been corrected to adhere to the protocol. Whenever the NFS server encounters a file with a negative time, it refuses to provide attributes for it to the NFS client.

Therefore, no longer will files with negative times be supported over an NFS mount. When the NFS client tries to access a file with negative times, the client typically gets an "overflow" error.

Also, one can have a tar (see the tar(1) command), or cpio (see the cpio(1) command) archive that has negative times stored in the archive. When extracting this archive over NFS, it no longer works if using a Solaris 7 NFS client.

Workaround: The workaround to the first problem is to log onto the NFS server that has the file (the nfsstat(1M) utility, invoked with the -m option, identifies the server), and use the touch(1) command to change the file times to the current date and time.