Home | History | Annotate | Download | only in services
      1 // Copyright 2014 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_ARM64_UCONTEXT_H_
      6 #define SANDBOX_LINUX_SERVICES_ANDROID_ARM64_UCONTEXT_H_
      7 
      8 #if !defined(__BIONIC_HAVE_UCONTEXT_T)
      9 #include <asm/sigcontext.h>
     10 #include <signal.h>
     11 // We also need greg_t for the sandbox, include it in this header as well.
     12 typedef uint64_t greg_t;
     13 
     14 struct ucontext_t {
     15   unsigned long uc_flags;
     16   struct ucontext* uc_link;
     17   stack_t uc_stack;
     18   sigset_t uc_sigmask;
     19   /* glibc uses a 1024-bit sigset_t */
     20   uint8_t unused[1024 / 8 - sizeof(sigset_t)];
     21   /* last for future expansion */
     22   struct sigcontext uc_mcontext;
     23 };
     24 
     25 #else
     26 #include <sys/ucontext.h>
     27 #endif  // __BIONIC_HAVE_UCONTEXT_T
     28 
     29 #endif  // SANDBOX_LINUX_SERVICES_ANDROID_ARM64_UCONTEXT_H_
     30