1 /* 2 ** Copyright 2001-2002, Travis Geiselbrecht. All rights reserved. 3 ** Distributed under the terms of the NewOS License. 4 */ 5 #ifndef _KERNEL_KSYSCALLS_H 6 #define _KERNEL_KSYSCALLS_H 7 8 9 #include <SupportDefs.h> 10 11 12 typedef struct { 13 void *function; // pointer to the syscall function 14 int parameter_size; // summed up parameter size 15 } syscall_info; 16 17 extern const int kSyscallCount; 18 extern const syscall_info kSyscallInfos[]; 19 20 21 #ifdef __cplusplus 22 extern "C" { 23 #endif 24 25 int32 syscall_dispatcher(uint32 function, void *argBuffer, uint64 *_returnValue); 26 status_t generic_syscall_init(void); 27 28 #ifdef __cplusplus 29 } 30 #endif 31 32 #endif /* _KERNEL_KSYSCALLS_H */ 33