[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL 4/9] linux-user: Add open_tree() syscall
From: |
Laurent Vivier |
Subject: |
[PULL 4/9] linux-user: Add open_tree() syscall |
Date: |
Fri, 12 May 2023 13:22:33 +0200 |
From: Thomas Weißschuh <thomas@t-8ch.de>
Signed-off-by: Thomas Weißschuh <thomas@t-8ch.de>
Reviewed-by: Laurent Vivier <laurent@vivier.eu>
Message-Id: <20230424153429.276788-2-thomas@t-8ch.de>
[lv: move declaration at the beginning of the block]
Signed-off-by: Laurent Vivier <laurent@vivier.eu>
---
linux-user/syscall.c | 27 +++++++++++++++++++++++++++
1 file changed, 27 insertions(+)
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
index fccc46e609c6..95da74ab1234 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -9196,6 +9196,33 @@ static abi_long do_syscall1(CPUArchState *cpu_env, int
num, abi_long arg1,
return ret;
}
#endif
+#ifdef TARGET_NR_open_tree
+ case TARGET_NR_open_tree:
+ {
+ void *p2;
+ int host_flags;
+
+ if (!arg2) {
+ return -TARGET_EFAULT;
+ }
+
+ p2 = lock_user_string(arg2);
+ if (!p2) {
+ return -TARGET_EFAULT;
+ }
+
+ host_flags = arg3 & ~TARGET_O_CLOEXEC;
+ if (arg3 & TARGET_O_CLOEXEC) {
+ host_flags |= O_CLOEXEC;
+ }
+
+ ret = get_errno(open_tree(arg1, p2, host_flags));
+
+ unlock_user(p2, arg2, 0);
+
+ return ret;
+ }
+#endif
#ifdef TARGET_NR_stime /* not on alpha */
case TARGET_NR_stime:
{
--
2.40.1
- [PULL 0/9] Linux user for 8.1 patches, Laurent Vivier, 2023/05/12
- [PULL 3/9] linux-user: Add move_mount() syscall, Laurent Vivier, 2023/05/12
- [PULL 2/9] linux-user: report ENOTTY for unknown ioctls, Laurent Vivier, 2023/05/12
- [PULL 6/9] linux-user: Add new flag VERIFY_NONE, Laurent Vivier, 2023/05/12
- [PULL 7/9] linux-user: Don't require PROT_READ for mincore, Laurent Vivier, 2023/05/12
- [PULL 4/9] linux-user: Add open_tree() syscall,
Laurent Vivier <=
- [PULL 9/9] linux-user: fix getgroups/setgroups allocations, Laurent Vivier, 2023/05/12
- [PULL 8/9] linux-user: Fix mips fp64 executables loading, Laurent Vivier, 2023/05/12
- [PULL 5/9] linux-user/main: Use list_cpus() instead of cpu_list(), Laurent Vivier, 2023/05/12
- [PULL 1/9] linux-user: Emulate /proc/cpuinfo output for riscv, Laurent Vivier, 2023/05/12
- Re: [PULL 0/9] Linux user for 8.1 patches, Richard Henderson, 2023/05/13