* \brief Relink (Rename/Remove) a file/directory
* \param Node Pointer to this node
* \param OldName Name of the item to move/delete
- * \param NewName New name (or NULL if unlinking is wanted)
* \return Zero on Success, non-zero on error (see errno.h)
*/
- int (*Relink)(struct sVFS_Node *Node, const char *OldName, const char *NewName);
+ int (*Unlink)(struct sVFS_Node *Node, const char *OldName);
/**
* \brief Link a node to a name
* \param Node Pointer to this node (directory)
- * \param Child Node to create a new link to
* \param NewName Name for the new link
+ * \param Child Node to create a new link to
* \retur Zeron on success, non-zero on error (see errno.h)
*/
- int (*Link)(struct sVFS_Node *Node, struct sVFS_Node *Child, const char *NewName);
+ int (*Link)(struct sVFS_Node *Node, const char *NewName, struct sVFS_Node *Child);
/**
* \}
* \brief Dereferences (and removes if needed) a node from the cache
* \param Handle A handle returned by Inode_GetHandle()
* \param Inode Value of the Inode field of the ::tVFS_Node you want to remove
+ * \return -1: Error (not present), 0: Not freed, 1: Freed
*/
-extern void Inode_UncacheNode(int Handle, Uint64 Inode);
+extern int Inode_UncacheNode(int Handle, Uint64 Inode);
/**
* \fn void Inode_ClearCache(int Handle)
* \brief Clears the cache for a handle