From 79333d77e6124d67f1f9160ed7337ad8eca4e93b Mon Sep 17 00:00:00 2001 From: Giacomo Tesio Date: Mon, 21 Aug 2017 00:16:08 +0200 Subject: [PATCH] jehanne: add getcwd, getlogin, getlogin_r, getpass, pread and pwrite --- newlib/libc/sys/jehanne/syscalls.c | 43 ++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) diff --git a/newlib/libc/sys/jehanne/syscalls.c b/newlib/libc/sys/jehanne/syscalls.c index 523755ff9..680ba4b72 100644 --- a/newlib/libc/sys/jehanne/syscalls.c +++ b/newlib/libc/sys/jehanne/syscalls.c @@ -221,3 +221,46 @@ pipe(int fildes[2]) int *errnop = &_REENT->_errno; return POSIX_pipe(errnop, fildes); } + +char* +getcwd(char *buf, size_t size) +{ + int *errnop = &_REENT->_errno; + return POSIX_getcwd(errnop, buf, size); +} + +char* +getlogin(void) +{ + int *errnop = &_REENT->_errno; + return POSIX_getlogin(errnop); +} + +int +getlogin_r(char *name, size_t namesize) +{ + int *errnop = &_REENT->_errno; + return POSIX_getlogin_r(errnop, name, namesize); +} + +char* +getpass(const char *prompt) +{ + int *errnop = &_REENT->_errno; + return POSIX_getpass(errnop, prompt); +} + +#undef pread +ssize_t +pread(int fd, void *buf, size_t count, off_t offset) +{ + int *errnop = &_REENT->_errno; + return POSIX_pread(errnop, fd, buf, count, offset); +} +#undef pwrite +ssize_t +pwrite(int fd, const void *buf, size_t count, off_t offset) +{ + int *errnop = &_REENT->_errno; + return POSIX_pwrite(errnop, fd, buf, count, offset); +}