X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=KernelLand%2FModules%2FFilesystems%2FFAT%2Fcommon.h;h=09b94a65bd2e206b44239368637a65a36d6db8d3;hb=de6091a10d2cdded5e58f25ba3e3db7db726d01d;hp=b473bf73b59ae9e80b828e6098e2eece7ac4c38c;hpb=bf62604f78c2d8bc88cac3664e15ed02c6e6d581;p=tpg%2Facess2.git diff --git a/KernelLand/Modules/Filesystems/FAT/common.h b/KernelLand/Modules/Filesystems/FAT/common.h index b473bf73..09b94a65 100644 --- a/KernelLand/Modules/Filesystems/FAT/common.h +++ b/KernelLand/Modules/Filesystems/FAT/common.h @@ -43,6 +43,7 @@ struct sFAT_VolInfo char name[12]; //!< Volume Name (With NULL Terminator) Uint32 firstDataSect; //!< First data sector Uint32 rootOffset; //!< Root Offset (clusters) + Uint32 RootSector; //!< Root Offset (sectors) Uint32 ClusterCount; //!< Total Cluster Count fat_bootsect bootsect; //!< Boot Sector tVFS_Node rootNode; //!< Root Node @@ -97,6 +98,7 @@ extern int FAT_int_DerefNode(tVFS_Node *Node); extern void FAT_int_ClearNodeCache(tFAT_VolInfo *Disk); // --- FAT Access --- +#define GETFATVALUE_EOC 0xFFFFFFFF extern Uint32 FAT_int_GetFatValue(tFAT_VolInfo *Disk, Uint32 Cluster); #if SUPPORT_WRITE extern Uint32 FAT_int_AllocateCluster(tFAT_VolInfo *Disk, Uint32 Previous); @@ -106,13 +108,13 @@ extern void FAT_int_ReadCluster(tFAT_VolInfo *Disk, Uint32 Cluster, int Length, extern void FAT_int_WriteCluster(tFAT_VolInfo *Disk, Uint32 Cluster, const void *Buffer); // --- Directory Access --- -extern char *FAT_ReadDir(tVFS_Node *Node, int ID); -extern tVFS_Node *FAT_FindDir(tVFS_Node *Node, const char *Name); +extern int FAT_ReadDir(tVFS_Node *Node, int ID, char Dest[FILENAME_MAX]); +extern tVFS_Node *FAT_FindDir(tVFS_Node *Node, const char *Name, Uint Flags); extern tVFS_Node *FAT_GetNodeFromINode(tVFS_Node *Root, Uint64 Inode); extern int FAT_int_GetEntryByCluster(tVFS_Node *DirNode, Uint32 Cluster, fat_filetable *Entry); #if SUPPORT_WRITE extern int FAT_int_WriteDirEntry(tVFS_Node *Node, int ID, fat_filetable *Entry); -extern int FAT_Mknod(tVFS_Node *Node, const char *Name, Uint Flags); +extern tVFS_Node *FAT_Mknod(tVFS_Node *Node, const char *Name, Uint Flags); extern int FAT_Link(tVFS_Node *DirNode, const char *NewName, tVFS_Node *Node); extern int FAT_Unlink(tVFS_Node *DirNode, const char *OldName); #endif