jehanne: define mkdir, chdir and fchdir
This commit is contained in:
parent
58696ccd34
commit
779da685df
|
@ -211,10 +211,14 @@ default_error_translator(char* error, uintptr_t caller)
|
|||
jehanne_fprint(2, "newlib: %s\n", error);
|
||||
if(caller == ADDRESS(POSIX_open))
|
||||
return PosixEIO;
|
||||
if(caller == ADDRESS(POSIX_chdir))
|
||||
return PosixEACCES;
|
||||
if(caller == ADDRESS(POSIX_chmod))
|
||||
return PosixEPERM;
|
||||
if(caller == ADDRESS(POSIX_fchmodat))
|
||||
return PosixEPERM;
|
||||
if(caller == ADDRESS(POSIX_fchdir))
|
||||
return PosixEACCES;
|
||||
return PosixEINVAL;
|
||||
}
|
||||
|
||||
|
@ -394,7 +398,7 @@ initialize_newlib(void)
|
|||
libposix_define_errno(PosixETXTBSY, ETXTBSY);
|
||||
libposix_define_errno(PosixEWOULDBLOCK, EWOULDBLOCK);
|
||||
libposix_define_errno(PosixEXDEV, EXDEV);
|
||||
|
||||
|
||||
/* let the application override defaults */
|
||||
if(__application_newlib_init != 0)
|
||||
__application_newlib_init();
|
||||
|
|
|
@ -250,6 +250,27 @@ getpass(const char *prompt)
|
|||
return POSIX_getpass(errnop, prompt);
|
||||
}
|
||||
|
||||
int
|
||||
mkdir(const char *path, int mode)
|
||||
{
|
||||
int *errnop = &_REENT->_errno;
|
||||
return POSIX_mkdir(errnop, path, mode);
|
||||
}
|
||||
|
||||
int
|
||||
chdir(const char *path)
|
||||
{
|
||||
int *errnop = &_REENT->_errno;
|
||||
return POSIX_chdir(errnop, path);
|
||||
}
|
||||
|
||||
int
|
||||
fchdir(int fd)
|
||||
{
|
||||
int *errnop = &_REENT->_errno;
|
||||
return POSIX_fchdir(errnop, fd);
|
||||
}
|
||||
|
||||
int
|
||||
getdents (int fd, void *buf, int buf_size)
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue