-/* ffs_vnops.c 4.37 82/09/06 */
+/* ffs_vnops.c 4.41 82/10/19 */
#include "../h/param.h"
#include "../h/systm.h"
#include "../h/fs.h"
#include "../h/buf.h"
#include "../h/proc.h"
-#include "../h/inline.h"
-/* no reason to inline expand these guys here */
-#undef ilock
-#undef iunlock
#include "../h/quota.h"
#include "../h/descrip.h"
#include "../h/uio.h"
#include "../h/socket.h"
+#include "../h/socketvar.h"
chdir()
{
fp->f_type = DTYPE_FILE;
i = u.u_r.r_val1;
fp->f_inode = ip;
- openi(ip, mode);
+ u.u_error = openi(ip, mode);
if (u.u_error == 0) {
u.u_pofile[i] = flags;
return;
}
ip->i_nlink++;
ip->i_flag |= ICHG;
- iupdat(ip, &time.tv_sec, &time.tv_sec, 1);
+ iupdat(ip, &time, &time, 1);
iunlock(ip);
u.u_dirp = (caddr_t)uap->linkname;
xp = namei(uchar, 1, 0);
{
struct stat ds;
- IUPDAT(ip, &time.tv_sec, &time.tv_sec, 0);
+ IUPDAT(ip, &time, &time, 0);
/*
* Copy from inode table
*/
} *uap;
register struct inode *ip;
time_t tv[2];
+ struct timeval tv0, tv1;
uap = (struct a *)u.u_ap;
if ((ip = owner(1)) == NULL)
u.u_error = EFAULT;
} else {
ip->i_flag |= IACC|IUPD|ICHG;
- iupdat(ip, &tv[0], &tv[1], 0);
+ tv0.tv_sec = tv[0]; tv0.tv_usec = 0;
+ tv1.tv_sec = tv[1]; tv1.tv_usec = 0;
+ iupdat(ip, &tv0, &tv1, 0);
}
iput(ip);
}
sync()
{
- update(0);
+ update();
}
flock()
/*
* Make sure inode goes to disk before directory entry.
*/
- iupdat(ip, &time.tv_sec, &time.tv_sec, 1);
+ iupdat(ip, &time, &time, 1);
direnter(ip);
if (u.u_error) {
/*