X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=KernelLand%2FKernel%2Fsyscalls.c;h=34a35c5f095263ab98cc9e3861007d0a05bae3d7;hb=5dc3cea45b3cb43e26a6ed51e98f923a9fd73d92;hp=4416ec4fed0e2f384f2e11f4dabb0c78deb941bf;hpb=b60e6b273c3ecb1614d937bf9448033e9d339e83;p=tpg%2Facess2.git diff --git a/KernelLand/Kernel/syscalls.c b/KernelLand/Kernel/syscalls.c index 4416ec4f..34a35c5f 100644 --- a/KernelLand/Kernel/syscalls.c +++ b/KernelLand/Kernel/syscalls.c @@ -208,6 +208,11 @@ void SyscallHandler(tSyscallRegs *Regs) LOG("VFS_Open(\"%s\", 0x%x)", (char*)Regs->Arg1, Regs->Arg2 | VFS_OPENFLAG_USER); ret = VFS_Open((char*)Regs->Arg1, Regs->Arg2 | VFS_OPENFLAG_USER); break; + case SYS_REOPEN: + CHECK_STR_NONULL( (char*)Regs->Arg2 ); + LOG("VFS_Reopen(%i, \"%s\", 0x%x)", Regs->Arg1, (char*)Regs->Arg2, Regs->Arg3 | VFS_OPENFLAG_USER); + ret = VFS_Reopen(Regs->Arg1, (char*)Regs->Arg2, Regs->Arg3 | VFS_OPENFLAG_USER); + break; case SYS_CLOSE: LOG("VFS_Close(%i)", Regs->Arg1); @@ -218,7 +223,12 @@ void SyscallHandler(tSyscallRegs *Regs) LOG("VFS_DuplicateFD(%i,%i)", Regs->Arg1, Regs->Arg2); ret = VFS_DuplicateFD(Regs->Arg1, Regs->Arg2); break; - + + case SYS_FDCTL: + LOG("VFS_SetFDFlags(%i,0%o,0%o)", Regs->Arg1, Regs->Arg2, Regs->Arg3); + ret = VFS_SetFDFlags(Regs->Arg1, Regs->Arg2, Regs->Arg3); + break; + case SYS_SEEK: #if BITS == 64 ret = VFS_Seek( Regs->Arg1, Regs->Arg2, Regs->Arg3 );