mirror of
https://github.com/drasko/codezero.git
synced 2026-01-12 10:53:16 +01:00
Open wasn't returning the fd but 0 on success :-S. fixed.
This commit is contained in:
@@ -79,7 +79,7 @@ int vfs_create(struct tcb *task, struct pathdata *pdata, unsigned int mode)
|
||||
if ((err = vparent->ops.mknod(vparent, nodename, mode)) < 0)
|
||||
return err;
|
||||
|
||||
print_vnode(vparent);
|
||||
// print_vnode(vparent);
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -130,7 +130,7 @@ int sys_open(l4id_t sender, const char *pathname, int flags, unsigned int mode)
|
||||
BUG_ON(pager_sys_open(sender, fd, v->vnum, v->size) < 0);
|
||||
|
||||
pathdata_destroy(pdata);
|
||||
l4_ipc_return(0);
|
||||
l4_ipc_return(fd);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
@@ -113,7 +113,8 @@ int lsdir(char *path)
|
||||
if ((fd = open(path, O_RDONLY)) < 0) {
|
||||
perror("OPEN");
|
||||
return 0;
|
||||
}
|
||||
} else
|
||||
printf("Got fd: %d for opening %s\n", fd, path);
|
||||
|
||||
if ((bytes = os_readdir(fd, dents, sizeof(struct dirent) * DENTS_TOTAL)) < 0) {
|
||||
perror("GETDENTS\n");
|
||||
@@ -161,6 +162,9 @@ int dirtest(void)
|
||||
printf("\nlsdir root directory:\n");
|
||||
lsdir("/");
|
||||
|
||||
printf("\nlsdir /usr:\n");
|
||||
lsdir("/usr");
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user