Kernel - Slight reworks to timer code
[tpg/acess2.git] / Kernel / include / vfs_int.h
index f227b23..a8eadb6 100644 (file)
@@ -10,7 +10,8 @@
 typedef struct sVFS_Mount {
        struct sVFS_Mount       *Next;
        char    *MountPoint;
-        int    MountPointLen;
+       size_t  MountPointLen;
+       Uint32  Identifier;
        char    *Device;
        char    *Options;
        tVFS_Driver     *Filesystem;
@@ -35,15 +36,33 @@ typedef struct sVFS_Proc {
        tVFS_Handle     Handles[];
 } tVFS_Proc;
 
+typedef struct sVFS_MMapPage {
+       Uint64  FileOffset;
+       tPAddr  PAddr;
+} tVFS_MMapPage;
+
 // === GLOBALS ===
-extern tVFS_Mount      *gMounts;
+extern tVFS_Mount      *gVFS_Mounts;
 
 // === PROTOTYPES ===
-// --- OPEN.C ---
-extern char    *VFS_GetAbsPath(char *Path);
-extern tVFS_Node       *VFS_ParsePath(char *Path, char **TruePath);
+// --- open.c ---
+extern char    *VFS_GetAbsPath(const char *Path);
+extern tVFS_Node       *VFS_ParsePath(const char *Path, char **TruePath, tVFS_Mount **MountPoint);
 extern tVFS_Handle     *VFS_GetHandle(int FD);
-// --- ACLS.C ---
+// --- acls.c ---
 extern int     VFS_CheckACL(tVFS_Node *Node, Uint Permissions);
+// --- mount.c ---
+extern tVFS_Mount      *VFS_GetMountByIdent(Uint32 MountID);
+// --- dir.c ---
+extern int     VFS_MkNod(const char *Path, Uint Flags);
+
+
+// --- VFS Helpers ---
+static inline void _CloseNode(tVFS_Node *Node)
+{
+       if(Node && Node->Type && Node->Type->Close)
+               Node->Type->Close( Node );
+}
+
 
 #endif

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