Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1399)

Side by Side Diff: sandbox/linux/services/android_arm_ucontext.h

Issue 11971028: Android: create a generic android_ucontext.h (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Address nits. Created 7 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « sandbox/linux/seccomp-bpf/sandbox_bpf.cc ('k') | sandbox/linux/services/android_ucontext.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 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 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef SANDBOX_LINUX_SERVICES_ANDROID_ARM_UCONTEXT_H_ 5 #ifndef SANDBOX_LINUX_SERVICES_ANDROID_ARM_UCONTEXT_H_
6 #define SANDBOX_LINUX_SERVICES_ANDROID_ARM_UCONTEXT_H_ 6 #define SANDBOX_LINUX_SERVICES_ANDROID_ARM_UCONTEXT_H_
7 7
8 #if !defined(__BIONIC_HAVE_UCONTEXT_T)
8 #include <asm/sigcontext.h> 9 #include <asm/sigcontext.h>
9 10
10 typedef long int greg_t; 11 // We also need greg_t for the sandbox, include it in this header as well.
11 typedef unsigned long sigset_t; 12 typedef unsigned long greg_t;
13
14 // sigset_t from arch/arm/include/asm/signal.h in the Linux kernel.
15 typedef struct {
16 unsigned long sig[64 / 8 / sizeof(long)]; // Always 64 bits (yes we assume
17 // 8 bits per char).
18 } android_header_sigset_t; // Change name to avoid collissions if sigset_t
19 // gets defined in newer Android headers.
20
21 //typedef unsigned long sigset_t;
12 typedef struct ucontext { 22 typedef struct ucontext {
13 unsigned long uc_flags; 23 unsigned long uc_flags;
14 struct ucontext *uc_link; 24 struct ucontext *uc_link;
15 stack_t uc_stack; 25 stack_t uc_stack;
16 struct sigcontext uc_mcontext; 26 struct sigcontext uc_mcontext;
17 sigset_t uc_sigmask; 27 sigset_t uc_sigmask;
18 /* Allow for uc_sigmask growth. Glibc uses a 1024-bit sigset_t. */ 28 /* Allow for uc_sigmask growth. Glibc uses a 1024-bit sigset_t. */
19 int __not_used[32 - (sizeof (sigset_t) / sizeof (int))]; 29 int __not_used[32 - (sizeof (android_header_sigset_t) / sizeof (int))];
20 /* Last for extensibility. Eight byte aligned because some 30 /* Last for extensibility. Eight byte aligned because some
21 coprocessors require eight byte alignment. */ 31 coprocessors require eight byte alignment. */
22 unsigned long uc_regspace[128] __attribute__((__aligned__(8))); 32 unsigned long uc_regspace[128] __attribute__((__aligned__(8)));
23 } ucontext_t; 33 } ucontext_t;
34
35 #else
36 #include <sys/ucontext.h>
37 #endif // __BIONIC_HAVE_UCONTEXT_T
38
24 #endif // SANDBOX_LINUX_SERVICES_ANDROID_ARM_UCONTEXT_H_ 39 #endif // SANDBOX_LINUX_SERVICES_ANDROID_ARM_UCONTEXT_H_
OLDNEW
« no previous file with comments | « sandbox/linux/seccomp-bpf/sandbox_bpf.cc ('k') | sandbox/linux/services/android_ucontext.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698