Home | History | Annotate | Download | only in wince
      1 /*
      2  * wincecompat.c : wince compatiblity module
      3  *
      4  * See Copyright for the status of this software.
      5  *
      6  * javier (at) tiresiassoft.com
      7  *
      8  * 17 Sep 2002  created
      9  */
     10 
     11 #include "wincecompat.h"
     12 
     13 char *strError[]= {"Error 0","","No such file or directory","","","","","Arg list too long",
     14 	"Exec format error","Bad file number","","","Not enough core","Permission denied","","",
     15 	"","File exists","Cross-device link","","","","Invalid argument","","Too many open files",
     16 	"","","","No space left on device","","","","","Math argument","Result too large","",
     17 	"Resource deadlock would occur", "Unknown error under wince"};
     18 
     19 
     20 int errno=0;
     21 
     22 int read(int handle, char *buffer, unsigned int len)
     23 {
     24 	return(fread(&buffer[0], len, 1, (FILE *) handle));
     25 }
     26 
     27 int write(int handle, const char *buffer, unsigned int len)
     28 {
     29 	return(fwrite(&buffer[0], len,1,(FILE *) handle));
     30 }
     31 
     32 int open(const char *filename,int oflag, ...)
     33 {
     34 	char mode[3]; /* mode[0] ="w/r/a"  mode[1]="+" */
     35 	mode[2]=0;
     36 	if ( oflag==(O_WRONLY|O_CREAT) )
     37 		mode[0]='w';
     38 	else if (oflag==O_RDONLY)
     39 		mode[0]='r';
     40 	return (int) fopen(filename, mode);
     41 }
     42 
     43 int close(int handle)
     44 {
     45 	return ( fclose((FILE *) handle) );
     46 }
     47 
     48 
     49 char *getcwd( char *buffer, unsigned int size)
     50 {
     51     /* Windows CE don't have the concept of a current directory
     52      * so we just return NULL to indicate an error
     53      */
     54     return NULL;
     55 }
     56 
     57 char *getenv( const char *varname )
     58 {
     59 	return NULL;
     60 }
     61 
     62 char *strerror(int errnum)
     63 {
     64 	if (errnum>MAX_STRERROR)
     65 		return strError[MAX_STRERROR];
     66 	else
     67 		return strError[errnum];
     68 }
     69