/* _Fopen function -- UNIX version */
#include "xstdio.h"
/* UNIX system call */
int _Open(const char *, int, int);
int _Fopen(const char *path, unsigned int smode,
const char *muds)
{ /* open from a file */
unsigned int acc;
acc = (smode & (_MOPENR|_MOPENW)) ==
(_MOPENR|_MOPENW) ? 2
: smode & _MOPENW ? 1 : 0;
if (smode & _MOPENA)
acc |= 010; /* 0_APPEND */
if (smode & _MTRUNC)
acc |= 02000; /* 0_TRUNC */
if (smode & _MCREAT)
acc |= 01000; /* 0_CREAT */
return (_Open(path, acc, 0666));
}
/* End of File */