X-Git-Url: https://pd.if.org/git/?p=pdclib;a=blobdiff_plain;f=platform%2Fposix%2Ffunctions%2Fstdio%2Fremove.c;h=537e397346dfc28284a0ea160d10100349e74d11;hp=389df301be224d6945d6b8a250f7e31a82ca7543;hb=da0f3f353d417fed71f358a48d5d5394145e460d;hpb=a18343e497615802f47e0f6876b5bed73af674e0 diff --git a/platform/posix/functions/stdio/remove.c b/platform/posix/functions/stdio/remove.c index 389df30..537e397 100644 --- a/platform/posix/functions/stdio/remove.c +++ b/platform/posix/functions/stdio/remove.c @@ -1,5 +1,3 @@ -/* $Id$ */ - /* remove( const char * ) This file is part of the Public Domain C Library (PDCLib). @@ -12,19 +10,16 @@ #include #ifndef REGTEST - +#include "_PDCLIB_io.h" #include -#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 ) {