Fix parameter types for sys_proc_create() (XCC)
[akaros.git] / user / parlib / include / parlib.h
index cbb53d4..56c6ab0 100644 (file)
@@ -4,12 +4,11 @@
 // and is intended to be linked into all user-mode applications
 // (NOT the kernel or boot loader).
 
-#ifndef PARLIB_PARLIB_H
-#define PARLIB_PARLIB_H
+#pragma once
 
 #ifndef __ASSEMBLER__
 
-#include <ros/common.h>
+#include <parlib/common.h>
 #include <ros/memlayout.h>
 #include <ros/syscall.h>
 #include <ros/procinfo.h>
@@ -35,8 +34,8 @@ size_t      sys_getpcoreid(void);
 int         sys_getpid(void);
 int         sys_proc_destroy(int pid, int exitcode);
 void        sys_yield(bool being_nice);
-int         sys_proc_create(char *path, size_t path_l, char *argv[],
-                            char *envp[], int flags);
+int         sys_proc_create(const char *path, size_t path_l, char *const argv[],
+                            char *const envp[], int flags);
 int         sys_proc_run(int pid);
 ssize_t     sys_shared_page_alloc(void **addr, pid_t p2, 
                                   int p1_flags, int p2_flags);
@@ -58,25 +57,7 @@ int         sys_abort_sysc(struct syscall *sysc);
 int         sys_abort_sysc_fd(int fd);
 int         sys_tap_fds(struct fd_tap_req *tap_reqs, size_t nr_reqs);
 
-long           syscall_async(struct syscall *sysc, unsigned long num, ...);
-
-/* Posix signal related stuff */
-struct sigdata {
-       struct user_context u_ctx;
-       struct ancillary_state as;
-       struct siginfo info;
-       void *stack;
-};
-/* This is the set of global function pointers that a 2LS using signals needs
- * to implement.  Subject to grow over time. */
-struct signal_ops {
-       int (*sigprocmask)(int, __const sigset_t *__restrict, sigset_t *__restrict);
-};
-extern struct signal_ops *signal_ops;
-void init_posix_signals(void);
-struct sigdata *alloc_sigdata();
-void free_sigdata(struct sigdata *sigdata);
-void trigger_posix_signal(int sig_nr, struct siginfo *info, void *aux);
+void           syscall_async(struct syscall *sysc, unsigned long num, ...);
 
 /* Control variables */
 extern bool parlib_wants_to_be_mcp;    /* instructs the 2LS to be an MCP */
@@ -84,5 +65,3 @@ extern bool parlib_wants_to_be_mcp;   /* instructs the 2LS to be an MCP */
 __END_DECLS
 
 #endif // !ASSEMBLER
-
-#endif /* PARLIB_PARLIB_H */