shuffle for formatting
This commit is contained in:
parent
d7b44dbcfc
commit
8d2e9a4867
30
fs.c
30
fs.c
|
@ -247,6 +247,7 @@ iunlockput(struct inode *ip)
|
||||||
iput(ip);
|
iput(ip);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//PAGEBREAK!
|
||||||
// Allocate a new inode with the given type on device dev.
|
// Allocate a new inode with the given type on device dev.
|
||||||
struct inode*
|
struct inode*
|
||||||
ialloc(uint dev, short type)
|
ialloc(uint dev, short type)
|
||||||
|
@ -295,6 +296,7 @@ iupdate(struct inode *ip)
|
||||||
brelse(bp);
|
brelse(bp);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//PAGEBREAK!
|
||||||
// Inode contents
|
// Inode contents
|
||||||
//
|
//
|
||||||
// The contents (data) associated with each inode is stored
|
// The contents (data) associated with each inode is stored
|
||||||
|
@ -522,6 +524,7 @@ dirlink(struct inode *dp, char *name, uint ino)
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//PAGEBREAK!
|
||||||
// Paths
|
// Paths
|
||||||
|
|
||||||
// Copy the next path element from path into name.
|
// Copy the next path element from path into name.
|
||||||
|
@ -560,6 +563,21 @@ skipelem(char *path, char *name)
|
||||||
return path;
|
return path;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static struct inode* _namei(char*, int, char*);
|
||||||
|
|
||||||
|
struct inode*
|
||||||
|
namei(char *path)
|
||||||
|
{
|
||||||
|
char name[DIRSIZ];
|
||||||
|
return _namei(path, 0, name);
|
||||||
|
}
|
||||||
|
|
||||||
|
struct inode*
|
||||||
|
nameiparent(char *path, char *name)
|
||||||
|
{
|
||||||
|
return _namei(path, 1, name);
|
||||||
|
}
|
||||||
|
|
||||||
// Look up and return the inode for a path name.
|
// Look up and return the inode for a path name.
|
||||||
// If parent is set, return the inode for the parent
|
// If parent is set, return the inode for the parent
|
||||||
// and write the final path element to name, which
|
// and write the final path element to name, which
|
||||||
|
@ -602,15 +620,3 @@ _namei(char *path, int parent, char *name)
|
||||||
return ip;
|
return ip;
|
||||||
}
|
}
|
||||||
|
|
||||||
struct inode*
|
|
||||||
namei(char *path)
|
|
||||||
{
|
|
||||||
char name[DIRSIZ];
|
|
||||||
return _namei(path, 0, name);
|
|
||||||
}
|
|
||||||
|
|
||||||
struct inode*
|
|
||||||
nameiparent(char *path, char *name)
|
|
||||||
{
|
|
||||||
return _namei(path, 1, name);
|
|
||||||
}
|
|
||||||
|
|
37
sysfile.c
37
sysfile.c
|
@ -74,14 +74,17 @@ sys_write(void)
|
||||||
}
|
}
|
||||||
|
|
||||||
int
|
int
|
||||||
sys_fstat(void)
|
sys_dup(void)
|
||||||
{
|
{
|
||||||
struct file *f;
|
struct file *f;
|
||||||
struct stat *st;
|
int fd;
|
||||||
|
|
||||||
if(argfd(0, 0, &f) < 0 || argptr(1, (void*)&st, sizeof(*st)) < 0)
|
if(argfd(0, 0, &f) < 0)
|
||||||
return -1;
|
return -1;
|
||||||
return filestat(f, st);
|
if((fd=fdalloc(f)) < 0)
|
||||||
|
return -1;
|
||||||
|
fileincref(f);
|
||||||
|
return fd;
|
||||||
}
|
}
|
||||||
|
|
||||||
int
|
int
|
||||||
|
@ -97,6 +100,17 @@ sys_close(void)
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int
|
||||||
|
sys_fstat(void)
|
||||||
|
{
|
||||||
|
struct file *f;
|
||||||
|
struct stat *st;
|
||||||
|
|
||||||
|
if(argfd(0, 0, &f) < 0 || argptr(1, (void*)&st, sizeof(*st)) < 0)
|
||||||
|
return -1;
|
||||||
|
return filestat(f, st);
|
||||||
|
}
|
||||||
|
|
||||||
// Create the path new as a link to the same inode as old.
|
// Create the path new as a link to the same inode as old.
|
||||||
int
|
int
|
||||||
sys_link(void)
|
sys_link(void)
|
||||||
|
@ -152,6 +166,7 @@ isdirempty(struct inode *dp)
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//PAGEBREAK!
|
||||||
int
|
int
|
||||||
sys_unlink(void)
|
sys_unlink(void)
|
||||||
{
|
{
|
||||||
|
@ -344,20 +359,6 @@ sys_chdir(void)
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
int
|
|
||||||
sys_dup(void)
|
|
||||||
{
|
|
||||||
struct file *f;
|
|
||||||
int fd;
|
|
||||||
|
|
||||||
if(argfd(0, 0, &f) < 0)
|
|
||||||
return -1;
|
|
||||||
if((fd=fdalloc(f)) < 0)
|
|
||||||
return -1;
|
|
||||||
fileincref(f);
|
|
||||||
return fd;
|
|
||||||
}
|
|
||||||
|
|
||||||
int
|
int
|
||||||
sys_exec(void)
|
sys_exec(void)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in a new issue