diff --git a/libc/bionic/ndk_cruft.cpp b/libc/bionic/ndk_cruft.cpp index 77412aca6..ceff6a1db 100644 --- a/libc/bionic/ndk_cruft.cpp +++ b/libc/bionic/ndk_cruft.cpp @@ -26,8 +26,7 @@ * SUCH DAMAGE. */ -// This file perpetuates the mistakes of the past, but only for 32-bit targets. -#if !defined(__LP64__) +// This file perpetuates the mistakes of the past. #include #include @@ -46,6 +45,11 @@ #include #include +#include "private/libc_logging.h" + +// The part is only for 32-bit targets. +#if !defined(__LP64__) + // These were accidentally declared in because we stupidly used to inline // getpagesize() and __getpageshift(). Needed for backwards compatibility with old NDK apps. extern "C" { @@ -342,4 +346,15 @@ extern "C" void* dlmalloc(size_t size) { return malloc(size); } -#endif +#endif // !defined(__LP64__) + +// This is never implemented in bionic, only needed for ABI compatibility with the NDK. +extern "C" char* getusershell() { + return NULL; +} + +// This is never implemented in bionic, only needed for ABI compatibility with the NDK. +extern "C" void setusershell() { } + +// This is never implemented in bionic, only needed for ABI compatibility with the NDK. +extern "C" void endusershell() { } diff --git a/libc/bionic/stubs.cpp b/libc/bionic/stubs.cpp index 1264fd7c1..c192bf83e 100644 --- a/libc/bionic/stubs.cpp +++ b/libc/bionic/stubs.cpp @@ -458,19 +458,6 @@ void endpwent() { UNIMPLEMENTED; } -char* getusershell() { - UNIMPLEMENTED; - return NULL; -} - -void setusershell() { - UNIMPLEMENTED; -} - -void endusershell() { - UNIMPLEMENTED; -} - // Portable code should use sysconf(_SC_PAGE_SIZE) directly instead. int getpagesize() { // We dont use sysconf(3) here because that drags in stdio, which makes static binaries fat. diff --git a/libc/include/unistd.h b/libc/include/unistd.h index a6d791c98..92d3abe3c 100644 --- a/libc/include/unistd.h +++ b/libc/include/unistd.h @@ -116,10 +116,6 @@ extern int setresgid(gid_t, gid_t, gid_t); extern int getresuid(uid_t *ruid, uid_t *euid, uid_t *suid); extern int getresgid(gid_t *rgid, gid_t *egid, gid_t *sgid); extern char* getlogin(void); -extern char* getusershell(void); -extern void setusershell(void); -extern void endusershell(void); - extern long fpathconf(int, int); extern long pathconf(const char*, int);