3 * Ext2 Driver Version 1
11 #define EXT2_UPDATE_WRITEBACK 1
19 tExt2_SuperBlock SuperBlock;
28 extern void Ext2_CloseFile(tVFS_Node *Node);
29 extern Uint64 Ext2_int_GetBlockAddr(tExt2_Disk *Disk, Uint32 *Blocks, int BlockNum);
30 extern void Ext2_int_UpdateSuperblock(tExt2_Disk *Disk);
31 extern Uint32 Ext2_int_AllocateInode(tExt2_Disk *Disk, Uint32 Parent);
32 extern void Ext2_int_DereferenceInode(tExt2_Disk *Disk, Uint32 Inode);
33 extern int Ext2_int_ReadInode(tExt2_Disk *Disk, Uint32 InodeId, tExt2_Inode *Inode);
34 extern int Ext2_int_WriteInode(tExt2_Disk *Disk, Uint32 InodeId, tExt2_Inode *Inode);
36 extern char *Ext2_ReadDir(tVFS_Node *Node, int Pos);
37 extern tVFS_Node *Ext2_FindDir(tVFS_Node *Node, const char *FileName);
38 extern int Ext2_MkNod(tVFS_Node *Node, const char *Name, Uint Flags);
39 extern int Ext2_Link(tVFS_Node *Parent, const char *Name, tVFS_Node *Node);
41 extern size_t Ext2_Read(tVFS_Node *node, off_t offset, size_t length, void *buffer);
43 extern size_t Ext2_Write(tVFS_Node *node, off_t offset, size_t length, const void *buffer);
44 extern Uint32 Ext2_int_AllocateBlock(tExt2_Disk *Disk, Uint32 LastBlock);
45 extern void Ext2_int_DeallocateBlock(tExt2_Disk *Disk, Uint32 Block);
46 extern int Ext2_int_AppendBlock(tExt2_Disk *Disk, tExt2_Inode *Inode, Uint32 Block);