]> pd.if.org Git - pdclib/blobdiff - platform/posix/functions/stdio/remove.c
PDCLib includes with quotes, not <>.
[pdclib] / platform / posix / functions / stdio / remove.c
index 389df301be224d6945d6b8a250f7e31a82ca7543..537e397346dfc28284a0ea160d10100349e74d11 100644 (file)
@@ -1,5 +1,3 @@
-/* $Id$ */
-
 /* remove( const char * )
 
    This file is part of the Public Domain C Library (PDCLib).
 #include <stdio.h>
 
 #ifndef REGTEST
-
+#include "_PDCLIB_io.h"
 #include <string.h>
 
-#include "/usr/include/errno.h"
-
-extern struct _PDCLIB_file_t * _PDCLIB_filelist;
+extern FILE * _PDCLIB_filelist;
 
 extern int unlink( const char * pathname );
 
 int remove( const char * pathname )
 {
-    int rc;
-    struct _PDCLIB_file_t * current = _PDCLIB_filelist;
+    FILE * current = _PDCLIB_filelist;
     while ( current != NULL )
     {
         if ( ( current->filename != NULL ) && ( strcmp( current->filename, pathname ) == 0 ) )
@@ -33,39 +28,13 @@ int remove( const char * pathname )
         }
         current = current->next;
     }
-    if ( ( rc = unlink( pathname ) ) == -1 )
-    {
-        switch ( errno )
-        {
-            /* See the comments on implementation-defined errno values in
-               <_PDCLIB_config.h>.
-            */
-            case EACCES:
-            case EFAULT:
-            case EIO:
-            case EISDIR:
-            case ELOOP:
-            case ENAMETOOLONG:
-            case ENOENT:
-            case ENOMEM:
-            case ENOTDIR:
-            case EPERM:
-            case EROFS:
-                _PDCLIB_errno = _PDCLIB_ERROR;
-                break;
-            default:
-                /* This should be something like EUNKNOWN. */
-                _PDCLIB_errno = _PDCLIB_ERROR;
-                break;
-        }
-    }
-    return rc;
+    return unlink( pathname );
 }
 
 #endif
 
 #ifdef TEST
-#include <_PDCLIB_test.h>
+#include "_PDCLIB_test.h"
 
 int main( void )
 {