parlib: UTH_EXT_BLK_JUSTICE -> _MISC
[akaros.git] / kern / include / frontend.h
index 9e5ed4d..7946657 100644 (file)
@@ -1,20 +1,13 @@
-#ifndef ROS_FRONTEND_H
-#define ROS_FRONTEND_H
+#pragma once
 
 #include <ros/common.h>
 
 #ifdef ROS_KERNEL
 
 #include <env.h>
+#include <vfs.h>
 #include <process.h>
 
-// for now, this is where struct file lives
-struct file {
-       int fd; // all it contains is an appserver fd (for pid 0, aka kernel)
-       int refcnt;
-       spinlock_t lock;
-};
-
 // Default APPSERVER_ETH_TYPE if not defined externally
 #ifndef APPSERVER_ETH_TYPE
 #define APPSERVER_ETH_TYPE 0x8888
@@ -23,21 +16,14 @@ struct file {
 void frontend_proc_init(struct proc* p);
 void frontend_proc_free(struct proc* p);
 
-int32_t frontend_syscall(pid_t pid, int32_t syscall_num, 
-                         uint32_t arg0, uint32_t arg1, uint32_t arg2, 
+int32_t frontend_syscall(pid_t pid, int32_t syscall_num,
+                         uint32_t arg0, uint32_t arg1, uint32_t arg2,
                          uint32_t arg3, int32_t* errno);
 
-int frontend_syscall_errno(struct proc* p, int n, int a0, 
+int frontend_syscall_errno(struct proc* p, int n, int a0,
                            int a1, int a2, int a3);
 
-void* user_memdup(struct proc* p, const void* va, int len);
-void* user_memdup_errno(struct proc* p, const void* va, int len);
-void user_memdup_free(struct proc* p, void* va);
-char* user_strdup(struct proc* p, const char* va0, int max);
-char* user_strdup_errno(struct proc* p, const char* va, int max);
-int memcpy_to_user_errno(struct proc* p, void* dst, const void* src, int len);
-void* kmalloc_errno(int len);
-
+void file_init(void);
 error_t file_read_page(struct file* f, physaddr_t pa, size_t pgoff);
 struct file* file_open(const char* path, int oflag, int mode);
 struct file* file_open_from_fd(struct proc* p, int fd);
@@ -81,5 +67,3 @@ void file_decref(struct file* f);
 #define APPSERVER_SYSCALL_pread       173
 #define APPSERVER_SYSCALL_pwrite      174
 #define APPSERVER_SYSCALL_getcwd      229
-
-#endif /* !ROS_FRONTEND_H */