OLD | NEW |
(Empty) | |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. |
| 4 |
| 5 #ifndef SANDBOX_LINUX_SERVICES_ANDROID_X86_UCONTEXT_H_ |
| 6 #define SANDBOX_LINUX_SERVICES_ANDROID_X86_UCONTEXT_H_ |
| 7 |
| 8 // This is basically include/uapi/asm-generic/ucontext.h from the Linux kernel. |
| 9 // In theory, Android libc's could expand the structure for its own internal |
| 10 // use, but if the libc provides an API that expects this expanded structure, |
| 11 // __BIONIC_HAVE_UCONTEXT_T should be defined. |
| 12 |
| 13 #if !defined(__BIONIC_HAVE_UCONTEXT_T) |
| 14 #include <asm/sigcontext.h> |
| 15 |
| 16 // We also need greg_t for the sandbox, include it in this header as well. |
| 17 typedef unsigned long greg_t; |
| 18 |
| 19 typedef struct ucontext { |
| 20 unsigned long uc_flags; |
| 21 struct ucontext *uc_link; |
| 22 stack_t uc_stack; |
| 23 struct sigcontext uc_mcontext; |
| 24 sigset_t uc_sigmask; /* mask last for extensibility */ |
| 25 } ucontext_t; |
| 26 |
| 27 #else |
| 28 #include <sys/ucontext.h> |
| 29 #endif // __BIONIC_HAVE_UCONTEXT_T |
| 30 |
| 31 #endif // SANDBOX_LINUX_SERVICES_ANDROID_X86_UCONTEXT_H_ |
OLD | NEW |