mirror of
https://git.yoctoproject.org/poky
synced 2026-09-15 15:49:32 +02:00
unfs-server: Fix PV so it obeys the version number policy
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
This commit is contained in:
@@ -0,0 +1,26 @@
|
||||
# Patch origin: nfs-server source RPM from openSUSE 10.3
|
||||
|
||||
--- nfs-server/setattr.c.orig 2006-07-28 16:38:26.000000000 +0200
|
||||
+++ nfs-server/setattr.c 2006-07-28 16:42:28.000000000 +0200
|
||||
@@ -97,7 +97,20 @@
|
||||
tvp[1].tv_sec = s->st_mtime;
|
||||
tvp[1].tv_usec = 0;
|
||||
}
|
||||
- if (efs_utimes(path, tvp) < 0)
|
||||
+ if (m_secs != IGNORE_TIME && attr->mtime.useconds == 1000000) {
|
||||
+ /*
|
||||
+ * from kernel/fs/nfsd/nfsxdr.c:
|
||||
+ * Passing the invalid value useconds=1000000 for mtime
|
||||
+ * is a Sun convention for "set both mtime and atime to
|
||||
+ * current server time". It's needed to make permissions
|
||||
+ * checks for the "touch" program across v2 mounts to
|
||||
+ * Solaris and Irix boxes work correctly. See description of
|
||||
+ * sattr in section 6.1 of "NFS Illustrated" by
|
||||
+ * Brent Callaghan, Addison-Wesley, ISBN 0-201-32750-5
|
||||
+ */
|
||||
+ if (utime(path, (struct utimbuf *)0) < 0)
|
||||
+ goto failure;
|
||||
+ } else if (efs_utimes(path, tvp) < 0)
|
||||
goto failure;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user