home *** CD-ROM | disk | FTP | other *** search
/ PC Welt 2006 November (DVD) / PCWELT_11_2006.ISO / casper / filesystem.squashfs / usr / src / linux-headers-2.6.17-6 / include / linux / seccomp.h < prev    next >
Encoding:
C/C++ Source or Header  |  2006-08-11  |  790 b   |  40 lines

  1. #ifndef _LINUX_SECCOMP_H
  2. #define _LINUX_SECCOMP_H
  3.  
  4.  
  5. #ifdef CONFIG_SECCOMP
  6.  
  7. #define NR_SECCOMP_MODES 1
  8.  
  9. #include <linux/thread_info.h>
  10. #include <asm/seccomp.h>
  11.  
  12. typedef struct { int mode; } seccomp_t;
  13.  
  14. extern void __secure_computing(int);
  15. static inline void secure_computing(int this_syscall)
  16. {
  17.     if (unlikely(test_thread_flag(TIF_SECCOMP)))
  18.         __secure_computing(this_syscall);
  19. }
  20.  
  21. static inline int has_secure_computing(struct thread_info *ti)
  22. {
  23.     return unlikely(test_ti_thread_flag(ti, TIF_SECCOMP));
  24. }
  25.  
  26. #else /* CONFIG_SECCOMP */
  27.  
  28. typedef struct { } seccomp_t;
  29.  
  30. #define secure_computing(x) do { } while (0)
  31. /* static inline to preserve typechecking */
  32. static inline int has_secure_computing(struct thread_info *ti)
  33. {
  34.     return 0;
  35. }
  36.  
  37. #endif /* CONFIG_SECCOMP */
  38.  
  39. #endif /* _LINUX_SECCOMP_H */
  40.