X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=Modules%2FFilesystems%2FExt2%2Fdir.c;h=c7d8dd899cceb78602bc32bc592043fb3ca870ef;hb=4f1a9b430a3fa57bbe52a6a2fe546f6fe93c389d;hp=b0d85319bb447ebba8e8edaabf41775bb049827b;hpb=fe1eeecd9517e4bf453a78b5593ec601c24a4e45;p=tpg%2Facess2.git diff --git a/Modules/Filesystems/Ext2/dir.c b/Modules/Filesystems/Ext2/dir.c index b0d85319..c7d8dd89 100644 --- a/Modules/Filesystems/Ext2/dir.c +++ b/Modules/Filesystems/Ext2/dir.c @@ -16,10 +16,10 @@ // === PROTOTYPES === char *Ext2_ReadDir(tVFS_Node *Node, int Pos); -tVFS_Node *Ext2_FindDir(tVFS_Node *Node, char *FileName); - int Ext2_MkNod(tVFS_Node *Node, char *Name, Uint Flags); - int Ext2_Relink(tVFS_Node *Node, char *OldName, char *NewName); - int Ext2_Link(tVFS_Node *Parent, tVFS_Node *Node, char *Name); +tVFS_Node *Ext2_FindDir(tVFS_Node *Node, const char *FileName); + int Ext2_MkNod(tVFS_Node *Node, const char *Name, Uint Flags); + int Ext2_Relink(tVFS_Node *Node, const char *OldName, const char *NewName); + int Ext2_Link(tVFS_Node *Parent, tVFS_Node *Node, const char *Name); // --- Helpers --- tVFS_Node *Ext2_int_CreateNode(tExt2_Disk *Disk, Uint InodeId); @@ -34,7 +34,8 @@ char *Ext2_ReadDir(tVFS_Node *Node, int Pos) tExt2_Inode inode; tExt2_DirEnt dirent; Uint64 Base; // Block's Base Address - int block = 0, ofs = 0; + int block = 0; + Uint ofs = 0; int entNum = 0; tExt2_Disk *disk = Node->ImplPtr; Uint size; @@ -102,13 +103,14 @@ char *Ext2_ReadDir(tVFS_Node *Node, int Pos) * \param Filename Name of wanted file * \return VFS Node of file */ -tVFS_Node *Ext2_FindDir(tVFS_Node *Node, char *Filename) +tVFS_Node *Ext2_FindDir(tVFS_Node *Node, const char *Filename) { tExt2_Disk *disk = Node->ImplPtr; tExt2_Inode inode; tExt2_DirEnt dirent; Uint64 Base; // Block's Base Address - int block = 0, ofs = 0; + int block = 0; + Uint ofs = 0; int entNum = 0; Uint size; int filenameLen = strlen(Filename); @@ -149,10 +151,10 @@ tVFS_Node *Ext2_FindDir(tVFS_Node *Node, char *Filename) } /** - * \fn int Ext2_MkNod(tVFS_Node *Parent, char *Name, Uint Flags) + * \fn int Ext2_MkNod(tVFS_Node *Parent, const char *Name, Uint Flags) * \brief Create a new node */ -int Ext2_MkNod(tVFS_Node *Parent, char *Name, Uint Flags) +int Ext2_MkNod(tVFS_Node *Parent, const char *Name, Uint Flags) { #if 0 tVFS_Node *child; @@ -191,7 +193,7 @@ int Ext2_MkNod(tVFS_Node *Parent, char *Name, Uint Flags) * \param NewName New name for file * \return Boolean Failure - See ::tVFS_Node.Relink for info */ -int Ext2_Relink(tVFS_Node *Node, char *OldName, char *NewName) +int Ext2_Relink(tVFS_Node *Node, const char *OldName, const char *NewName) { return 1; } @@ -203,7 +205,7 @@ int Ext2_Relink(tVFS_Node *Node, char *OldName, char *NewName) * \param Name New name for the node * \return Boolean Failure - See ::tVFS_Node.Link for info */ -int Ext2_Link(tVFS_Node *Node, tVFS_Node *Child, char *Name) +int Ext2_Link(tVFS_Node *Node, tVFS_Node *Child, const char *Name) { #if 0 tExt2_Disk *disk = Node->ImplPtr; @@ -281,7 +283,7 @@ int Ext2_Link(tVFS_Node *Node, tVFS_Node *Child, char *Name) BLOCK_DIR_OFS(Node->Data, block) = nEntries; block ++; ofs = 0; - base = Ext2_int_GetBlockAddr(disk, inode.i_blocks, block); + base = Ext2_int_GetBlockAddr(disk, inode.i_block, block); VFS_ReadAt( disk->FD, base, disk->BlockSize, blockData ); } } @@ -289,7 +291,7 @@ int Ext2_Link(tVFS_Node *Node, tVFS_Node *Child, char *Name) // Check if a free slot was found if( bestMatch >= 0 ) { // Read-Modify-Write - bestBlock = Ext2_int_GetBlockAddr(disk, inode.i_blocks, bestBlock); + bestBlock = Ext2_int_GetBlockAddr(disk, inode.i_block, bestBlock); if( block > 0 ) bestMatch = BLOCK_DIR_OFS(Node->Data, bestBlock); VFS_ReadAt( disk->FD, base, disk->BlockSize, blockData );