X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=KernelLand%2FKernel%2Finclude%2Fvfs_ext.h;h=8cabfa18f4facde6afe5c071c7d083237a28c96c;hb=4842e2d6740bcb81da4e94019285bfd2c45425b8;hp=b4d5e2ad32a0bce13247ca6039339af7abdf6fc9;hpb=48743e39650eb1ef988380e9d95f27fd40d3a9ce;p=tpg%2Facess2.git diff --git a/KernelLand/Kernel/include/vfs_ext.h b/KernelLand/Kernel/include/vfs_ext.h index b4d5e2ad..8cabfa18 100644 --- a/KernelLand/Kernel/include/vfs_ext.h +++ b/KernelLand/Kernel/include/vfs_ext.h @@ -29,6 +29,8 @@ typedef Uint32 tMount; #define VFS_OPENFLAG_NOLINK 0x40 //! Create the file if it doesn't exist #define VFS_OPENFLAG_CREATE 0x80 +//! Treat as a directory +#define VFS_OPENFLAG_DIRECTORY 0x100 //! Open as a user #define VFS_OPENFLAG_USER 0x8000 /** @@ -336,6 +338,19 @@ extern char *VFS_GetTruePath(const char *Path); * \return 1 on succes, -1 on error */ extern int VFS_Mount(const char *Device, const char *MountPoint, const char *Filesystem, const char *Options); +/** + * \brief Unmount a mounted filesystem + * \param Mountpoint Location of the mount + * \return 0 on success, errno on error + */ +extern int VFS_Unmount(const char *Mountpoint); +/** + * \brief Attemt to unmount all fileystems + * \return Number of unmounted filesytems, -1 if none left to unmount + * \note Can return 0 when there are stil volumes mounted if there are open handles + */ +extern int VFS_UnmountAll(void); + /** * \brief Create a new directory * \param Path Path to new directory (absolute or relative)