AcessNative - Fixing for recent kernel changes
[tpg/acess2.git] / AcessNative / syscalls.h
index 5081a53..078944d 100644 (file)
@@ -3,6 +3,8 @@
 #ifndef _NATIVE_SYSCALLS_H_
 #define _NATIVE_SYSCALLS_H_
 
+#define        SERVER_PORT     0xACE
+
 /*
  * Request format
  * 
@@ -15,6 +17,7 @@
 typedef struct sRequestValue {
        /// \see eArgumentTypes
        uint16_t        Type;
+       uint16_t        Flags;
        uint16_t        Length;
 }      tRequestValue;
 
@@ -22,13 +25,15 @@ typedef struct sRequestHeader {
        uint16_t        ClientID;
        uint16_t        CallID; //!< \see eSyscalls
        uint16_t        NParams;
-       uint16_t        NReturn;
        
        tRequestValue   Params[];
 }      tRequestHeader;
 
 enum eSyscalls {
        SYS_NULL,
+       
+       SYS_EXIT,
+       
        SYS_OPEN,
        SYS_CLOSE,
        SYS_READ,
@@ -41,9 +46,48 @@ enum eSyscalls {
        SYS_OPENCHILD,
        SYS_GETACL,
        SYS_MOUNT,
+       SYS_REOPEN,
+       SYS_CHDIR,
+       
+       SYS_WAITTID,
+       SYS_SETUID,
+       SYS_SETGID,
+       
+       // IPC
+       SYS_SLEEP,
+       SYS_FORK,
+       SYS_SENDMSG,
+       SYS_GETMSG,
+       SYS_SELECT,
+       
        N_SYSCALLS
 };
 
+#ifndef DONT_INCLUDE_SYSCALL_NAMES
+static const char * casSYSCALL_NAMES[] = {
+       "SYS_NULL",
+       
+       "SYS_EXIT",
+       
+       "SYS_OPEN",
+       "SYS_CLOSE",
+       "SYS_READ",
+       "SYS_WRITE",
+       "SYS_SEEK",
+       "SYS_TELL",
+       "SYS_IOCTL",
+       "SYS_FINFO",
+       "SYS_READDIR",
+       "SYS_OPENCHILD",
+       "SYS_GETACL",
+       "SYS_MOUNT",
+       "SYS_REOPEN",
+       
+       // IPC
+       "SYS_SLEEP"
+};
+#endif
+
 enum eArgumentTypes {
        ARG_TYPE_VOID,
        ARG_TYPE_INT32,
@@ -51,5 +95,9 @@ enum eArgumentTypes {
        ARG_TYPE_STRING,
        ARG_TYPE_DATA
 };
+enum eArgumentFlags {
+       ARG_FLAG_RETURN = 0x40, // Pass back in the return message
+       ARG_FLAG_ZEROED = 0x80  // Not present in the message, just fill with zero
+};
 
 #endif

UCC git Repository :: git.ucc.asn.au