diff options
Diffstat (limited to 'NewKernel/DriverKit/KernelCall.c')
| -rw-r--r-- | NewKernel/DriverKit/KernelCall.c | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/NewKernel/DriverKit/KernelCall.c b/NewKernel/DriverKit/KernelCall.c new file mode 100644 index 00000000..586505dc --- /dev/null +++ b/NewKernel/DriverKit/KernelCall.c @@ -0,0 +1,25 @@ +/* ------------------------------------------- + + Copyright Mahrouss Logic + + Purpose: Kernel Definitions. + +------------------------------------------- */ + +#include <DriverKit/KernelStd.h> +#include <stdarg.h> + +DK_EXTERN __attribute__((naked)) void __kernelDispatchCall(int32_t cnt, ...); + +DK_EXTERN void* kernelCall(const char* kernelRpcName, int32_t cnt, ...) +{ + if (!kernelRpcName || cnt == 0) + return NIL; + + va_list arg; + va_start(arg, cnt); + + __kernelDispatchCall(cnt, arg); + + va_end(arg); +} |
