X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=AcessNative%2Fsyscalls.h;h=b4d211c7a052b98614efd09c54acd8f8cd76a55a;hb=cafb65b48663d2851ed4330b4731c20f9b2bfaae;hp=e298c94da4faadf7186fc6ab9d17710a4792a0a9;hpb=4726431cb7e0bada749b32f9e51dedadf882d50b;p=tpg%2Facess2.git diff --git a/AcessNative/syscalls.h b/AcessNative/syscalls.h index e298c94d..b4d211c7 100644 --- a/AcessNative/syscalls.h +++ b/AcessNative/syscalls.h @@ -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; + uint8_t Flags; uint16_t Length; } tRequestValue; @@ -22,21 +25,38 @@ 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_OPEN + 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, + N_SYSCALLS }; enum eArgumentTypes { ARG_TYPE_VOID, ARG_TYPE_INT32, ARG_TYPE_INT64, + 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