55 lines
1.8 KiB
Diff
55 lines
1.8 KiB
Diff
|
diff --git a/src/ctypes.c b/src/ctypes.c
|
||
|
index 7d976ee..cd6411f 100644
|
||
|
--- a/src/ctypes.c
|
||
|
+++ b/src/ctypes.c
|
||
|
@@ -452,7 +452,7 @@ static char *dlcall_usage[] = {
|
||
|
"These are specified followed by a ':' then the type.",
|
||
|
"",
|
||
|
" $ dlopen libc.so.6",
|
||
|
- " $ dlcall lchown string:/tmp/foo int:$UID int:-1",
|
||
|
+ " $ dlcall lchown string:@TERMUX_PREFIX@/tmp/foo int:$UID int:-1",
|
||
|
"",
|
||
|
"Options:",
|
||
|
" -a abi Use the specified ABI rather than the default.",
|
||
|
diff --git a/src/struct/dutil.h b/src/struct/dutil.h
|
||
|
index 0401b3e..c6d35f3 100644
|
||
|
--- a/src/struct/dutil.h
|
||
|
+++ b/src/struct/dutil.h
|
||
|
@@ -296,7 +296,7 @@ void *zalloc(const size_t size);
|
||
|
Elf_Scn *elf_section_by_name(Elf *elf, GElf_Ehdr *ep,
|
||
|
GElf_Shdr *shp, const char *name, size_t *index);
|
||
|
|
||
|
-#ifndef SHT_GNU_ATTRIBUTES
|
||
|
+#if !defined(SHT_GNU_ATTRIBUTES) && !defined(__ANDROID__)
|
||
|
/* Just a way to check if we're using an old elfutils version */
|
||
|
static inline int elf_getshdrstrndx(Elf *elf, size_t *dst)
|
||
|
{
|
||
|
diff --git a/src/struct/struct.c b/src/struct/struct.c
|
||
|
index dd3687d..70d0a8d 100644
|
||
|
--- a/src/struct/struct.c
|
||
|
+++ b/src/struct/struct.c
|
||
|
@@ -21,6 +21,10 @@
|
||
|
|
||
|
#define MAX_ELEMENT_SIZE 128 // Maximum length of array_name[element_name]
|
||
|
|
||
|
+#ifdef __ANDROID__
|
||
|
+#define strdupa(s) strcpy(alloca(strlen(s) + 1), s)
|
||
|
+#endif
|
||
|
+
|
||
|
static int select_union_string(char *unionstr, const char *unionname, char *membername, size_t maxlen);
|
||
|
|
||
|
// This is just to disable ctf support.
|
||
|
diff --git a/src/unpack.c b/src/unpack.c
|
||
|
index e50c33b..d9dd611 100644
|
||
|
--- a/src/unpack.c
|
||
|
+++ b/src/unpack.c
|
||
|
@@ -22,7 +22,7 @@
|
||
|
#include "types.h"
|
||
|
#include "shell.h"
|
||
|
|
||
|
-#if !defined(__GLIBC__) && !defined(__NEWLIB__)
|
||
|
+#if !defined(__GLIBC__) && !defined(__NEWLIB__) && __ANDROID_API__ < 23
|
||
|
static inline void *mempcpy(void *dest, const void *src, size_t n)
|
||
|
{
|
||
|
memcpy(dest, src, n);
|