[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH] Add uselib syscall
From: |
Riku Voipio |
Subject: |
[Qemu-devel] [PATCH] Add uselib syscall |
Date: |
Fri, 19 Sep 2008 16:33:27 +0300 |
User-agent: |
Mutt/1.5.11+cvs20060126 |
Signed-off-by: Riku Voipio <address@hidden>
---
linux-user/syscall.c | 11 ++++++++++-
1 files changed, 10 insertions(+), 1 deletions(-)
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
index 6b38d8a..8b8262a 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -282,6 +282,7 @@ extern int flock(int, int);
extern int setfsuid(int);
extern int setfsgid(int);
extern int setgroups(int, gid_t *);
+extern int uselib(const char*);
#define ERRNO_TABLE_SIZE 1200
@@ -4313,7 +4314,15 @@ abi_long do_syscall(void *cpu_env, int num, abi_long
arg1,
#endif
#ifdef TARGET_NR_uselib
case TARGET_NR_uselib:
- goto unimplemented;
+ {
+ if(!(p = lock_user_string(arg1))) {
+ ret = -TARGET_EFAULT;
+ goto efault;
+ }
+ ret = get_errno(uselib(path(p)));
+ unlock_user(p, arg1, 0);
+ }
+ break;
#endif
#ifdef TARGET_NR_swapon
case TARGET_NR_swapon:
--
1.5.6.5
--
"rm -rf" only sounds scary if you don't have backups
- [Qemu-devel] [PATCH] Add uselib syscall,
Riku Voipio <=