/* vfs_xxx.c 4.4 82/12/28 */
* Return the next character fromt the
* kernel string pointed at by dirp.
return (*u
.u_dirp
++ & 0377);
* Return the next character from the
* user string pointed at by dirp.
#include "../h/descrip.h"
* Oh, how backwards compatibility is ugly!!!
* The old fstat system call.
register struct file
*fp
;
uap
= (struct a
*)u
.u_ap
;
if (fp
->f_type
== DTYPE_SOCKET
) {
bzero((caddr_t
)&ub
, sizeof (ub
));
(void) copyout((caddr_t
)&ub
, (caddr_t
)uap
->sb
, sizeof (ub
));
ostat1(fp
->f_inode
, uap
->sb
);
* Old stat system call. This version follows links.
register struct inode
*ip
;
uap
= (struct a
*)u
.u_ap
;
ip
= namei(uchar
, LOOKUP
, 1);
register struct inode
*ip
;
IUPDAT(ip
, &time
, &time
, 0);
ds
.ost_ino
= (short)ip
->i_number
;
ds
.ost_mode
= (u_short
)ip
->i_mode
;
ds
.ost_nlink
= ip
->i_nlink
;
ds
.ost_uid
= (short)ip
->i_uid
;
ds
.ost_gid
= (short)ip
->i_gid
;
ds
.ost_rdev
= (dev_t
)ip
->i_rdev
;
ds
.ost_size
= (int)ip
->i_size
;
ds
.ost_atime
= (int)ip
->i_atime
;
ds
.ost_mtime
= (int)ip
->i_mtime
;
ds
.ost_ctime
= (int)ip
->i_ctime
;
u
.u_error
= copyout((caddr_t
)&ds
, (caddr_t
)ub
, sizeof(ds
));