summaryrefslogtreecommitdiffstats
path: root/libc/sysdeps/linux/common
diff options
context:
space:
mode:
Diffstat (limited to 'libc/sysdeps/linux/common')
-rw-r--r--libc/sysdeps/linux/common/getcwd.c4
-rw-r--r--libc/sysdeps/linux/common/mremap.c9
2 files changed, 9 insertions, 4 deletions
diff --git a/libc/sysdeps/linux/common/getcwd.c b/libc/sysdeps/linux/common/getcwd.c
index a9042c76b..165ea317e 100644
--- a/libc/sysdeps/linux/common/getcwd.c
+++ b/libc/sysdeps/linux/common/getcwd.c
@@ -12,9 +12,11 @@
#include <dirent.h>
#include <string.h>
#include <unistd.h>
+#include <sys/param.h>
#include <sys/syscall.h>
libc_hidden_proto(getcwd)
+libc_hidden_proto(getpagesize)
libc_hidden_proto(strcat)
libc_hidden_proto(strcpy)
@@ -182,7 +184,7 @@ char *getcwd(char *buf, size_t size)
__set_errno(EINVAL);
return NULL;
}
- alloc_size = PATH_MAX;
+ alloc_size = MAX (PATH_MAX, getpagesize ());
}
path=buf;
if (buf == NULL) {
diff --git a/libc/sysdeps/linux/common/mremap.c b/libc/sysdeps/linux/common/mremap.c
index 080d2c1c2..5499c0975 100644
--- a/libc/sysdeps/linux/common/mremap.c
+++ b/libc/sysdeps/linux/common/mremap.c
@@ -9,10 +9,13 @@
#include "syscalls.h"
#include <unistd.h>
+#define mremap _hidemremap
#include <sys/mman.h>
+#undef mremap
-libc_hidden_proto(mremap)
+void *mremap(void *, size_t, size_t, int, void *);
-_syscall4(__ptr_t, mremap, __ptr_t, old_address, size_t, old_size, size_t,
- new_size, int, may_move);
+libc_hidden_proto(mremap)
+_syscall5(void *, mremap, void *, old_address, size_t, old_size, size_t,
+ new_size, int, may_move, void *, new_address);
libc_hidden_def(mremap)