int FIFO_MkNod(tVFS_Node *Node, const char *Name, Uint Flags);
void FIFO_Reference(tVFS_Node *Node);
void FIFO_Close(tVFS_Node *Node);
- int FIFO_Relink(tVFS_Node *Node, const char *OldName, const char *NewName);
+ int FIFO_Unlink(tVFS_Node *Node, const char *OldName);
size_t FIFO_Read(tVFS_Node *Node, off_t Offset, size_t Length, void *Buffer);
size_t FIFO_Write(tVFS_Node *Node, off_t Offset, size_t Length, const void *Buffer);
tPipe *FIFO_Int_NewPipe(int Size, const char *Name);
.ReadDir = FIFO_ReadDir,
.FindDir = FIFO_FindDir,
.MkNod = FIFO_MkNod,
- .Relink = FIFO_Relink,
+ .Unlink = FIFO_Unlink,
.IOCtl = FIFO_IOCtl
};
tVFS_NodeType gFIFO_PipeNodeType = {
}
/**
- * \fn int FIFO_Relink(tVFS_Node *Node, const char *OldName, const char *NewName)
- * \brief Relink a file (Deletes named pipes)
+ * \brief Delete a pipe
*/
-int FIFO_Relink(tVFS_Node *Node, const char *OldName, const char *NewName)
+int FIFO_Unlink(tVFS_Node *Node, const char *OldName)
{
- tPipe *pipe, *tmp;
+ tPipe *pipe;
if(Node != &gFIFO_DriverInfo.RootNode) return 0;
}
if(!pipe) return 0;
- // Relink a named pipe
- if(NewName) {
- // Check new name
- for(tmp = gFIFO_NamedPipes;
- tmp;
- tmp = tmp->Next)
- {
- if(strcmp(tmp->Name, NewName) == 0) return 0;
- }
- // Create new name
- free(pipe->Name);
- pipe->Name = malloc(strlen(NewName)+1);
- strcpy(pipe->Name, NewName);
- return 1;
- }
-
// Unlink the pipe
if(Node->ImplPtr) {
free(Node->ImplPtr);