projects
/
unix-history
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
tags
|
clone url
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
allocate ports
[unix-history]
/
usr
/
src
/
sys
/
ufs
/
lfs
/
lfs_vnops.c
diff --git
a/usr/src/sys/ufs/lfs/lfs_vnops.c
b/usr/src/sys/ufs/lfs/lfs_vnops.c
index
424edd3
..
529fc0e
100644
(file)
--- a/
usr/src/sys/ufs/lfs/lfs_vnops.c
+++ b/
usr/src/sys/ufs/lfs/lfs_vnops.c
@@
-1,4
+1,4
@@
-/* lfs_vnops.c 4.
6 %G%
*/
+/* lfs_vnops.c 4.
9 81/03/09
*/
#include "../h/param.h"
#include "../h/systm.h"
#include "../h/param.h"
#include "../h/systm.h"
@@
-135,8
+135,7
@@
dup()
/*
* the mount system call.
*/
/*
* the mount system call.
*/
-smount()
-{
+smount() {
dev_t dev;
register struct inode *ip;
register struct mount *mp;
dev_t dev;
register struct inode *ip;
register struct mount *mp;
@@
-148,6
+147,7
@@
smount()
char *freg;
int ronly;
} *uap;
char *freg;
int ronly;
} *uap;
+ register char *cp;
uap = (struct a *)u.u_ap;
dev = getmdev();
uap = (struct a *)u.u_ap;
dev = getmdev();
@@
-189,6
+189,11
@@
smount()
fp->s_ronly = uap->ronly & 1;
fp->s_nbehind = 0;
fp->s_lasti = 1;
fp->s_ronly = uap->ronly & 1;
fp->s_nbehind = 0;
fp->s_lasti = 1;
+ u.u_dirp = uap->freg;
+ for (cp = fp->s_fsmnt; cp < &fp->s_fsmnt[sizeof (fp->s_fsmnt) - 1]; )
+ if ((*cp++ = uchar()) == 0)
+ u.u_dirp--; /* get 0 again */
+ *cp = 0;
brelse(bp);
ip->i_flag |= IMOUNT;
prele(ip);
brelse(bp);
ip->i_flag |= IMOUNT;
prele(ip);
@@
-227,7
+232,7
@@
sumount()
found:
stillopen = 0;
found:
stillopen = 0;
- for(ip =
&inode[0]; ip < &inode[NINODE]
; ip++)
+ for(ip =
inode; ip < inodeNINODE
; ip++)
if (ip->i_number != 0 && dev == ip->i_dev) {
u.u_error = EBUSY;
return;
if (ip->i_number != 0 && dev == ip->i_dev) {
u.u_error = EBUSY;
return;