Skip to content

Commit

Permalink
Add remove() system call - identical to unlink()
Browse files Browse the repository at this point in the history
  • Loading branch information
ghaerr committed Nov 17, 2024
1 parent 98dd88e commit 72e0872
Show file tree
Hide file tree
Showing 2 changed files with 46 additions and 0 deletions.
4 changes: 4 additions & 0 deletions libc/include/stdio.h
Original file line number Diff line number Diff line change
Expand Up @@ -163,4 +163,8 @@ int vsscanf(char *sp, const char *fmt, va_list ap);
FILE *popen(const char *, const char *);
int pclose(FILE *);

#ifdef __WATCOMC__
int remove(const char *filename);
#endif

#endif /* __STDIO_H */
42 changes: 42 additions & 0 deletions libc/watcom/syscall/remove.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
/****************************************************************************
*
* Open Watcom Project
*
* Copyright (c) 2002-2019 The Open Watcom Contributors. All Rights Reserved.
* Portions Copyright (c) 1983-2002 Sybase, Inc. All Rights Reserved.
*
* ========================================================================
*
* This file contains Original Code and/or Modifications of Original
* Code as defined in and that are subject to the Sybase Open Watcom
* Public License version 1.0 (the 'License'). You may not use this file
* except in compliance with the License. BY USING THIS FILE YOU AGREE TO
* ALL TERMS AND CONDITIONS OF THE LICENSE. A copy of the License is
* provided with the Original Code and Modifications, and is also
* available at www.sybase.com/developer/opensource.
*
* The Original Code and all software distributed under the License are
* distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
* EXPRESS OR IMPLIED, AND SYBASE AND ALL CONTRIBUTORS HEREBY DISCLAIM
* ALL SUCH WARRANTIES, INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR
* NON-INFRINGEMENT. Please see the License for the specific language
* governing rights and limitations under the License.
*
* ========================================================================
*
* Description: ELKS remove() implementation (identical to unlink()).
*
****************************************************************************/


#include <unistd.h>
#include "watcom/syselks.h"


int remove( const char *filename )
{
sys_setseg(filename);
syscall_res res = sys_call1( SYS_unlink, (unsigned)filename );
__syscall_return( int, res );
}

0 comments on commit 72e0872

Please sign in to comment.