diff options
author | Tias Guns <tias@ulyssis.org> | 2012-06-10 14:40:30 +0200 |
---|---|---|
committer | Denys Vlasenko <vda.linux@googlemail.com> | 2012-06-10 14:40:30 +0200 |
commit | c9677ed83c948c9afb7f1bbd9bac91c854289887 (patch) | |
tree | f1e29d1e221b0ac256a0682c972af6e518e1eeae | |
parent | bd01f22986c03c9cb951d5c54196c28e958a6cd4 (diff) |
libbb: add missing_syscalls.c: for now, only Android syscalls
Signed-off-by: Tias Guns <tias@ulyssis.org>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
-rw-r--r-- | libbb/missing_syscalls.c | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/libbb/missing_syscalls.c b/libbb/missing_syscalls.c new file mode 100644 index 000000000..dd430e3e2 --- /dev/null +++ b/libbb/missing_syscalls.c @@ -0,0 +1,42 @@ +/* + * Copyright 2012, Denys Vlasenko + * + * Licensed under GPLv2, see file LICENSE in this source tree. + */ + +//kbuild:lib-y += missing_syscalls.o + +/*#include <linux/timex.h> - for struct timex, but may collide with <time.h> */ +#include <sys/syscall.h> +#include "libbb.h" + +#if defined(ANDROID) || defined(__ANDROID__) +pid_t getsid(pid_t pid) +{ + return syscall(__NR_getsid, pid); +} + +int stime(const time_t *t) +{ + struct timeval tv; + tv.tv_sec = *t; + tv.tv_usec = 0; + return settimeofday(&tv, NULL); +} + +int sethostname(const char *name, size_t len) +{ + return syscall(__NR_sethostname, name, len); +} + +struct timex; +int adjtimex(struct timex *buf) +{ + return syscall(__NR_adjtimex, buf); +} + +int pivot_root(const char *new_root, const char *put_old) +{ + return syscall(__NR_pivot_root, new_root, put_old); +} +#endif |