syscall_rsbac.h

Go to the documentation of this file.
00001 /************************************ */
00002 /* Rule Set Based Access Control      */
00003 /*                                    */
00004 /* Author and (c) 1999-2004:          */
00005 /*   Amon Ott <ao@rsbac.org>          */
00006 /*                                    */
00007 /* System Calls                       */
00008 /*                                    */
00009 /* Last modified: 13/Apr/2004         */
00010 /************************************ */
00011 
00012 #ifndef __RSBAC_SYSCALL_RSBAC_H
00013 #define __RSBAC_SYSCALL_RSBAC_H
00014 
00015 /* to keep include/asm-alpha/unistd.h happy */
00016 //#define __LIBRARY__
00017 
00018 #include <linux/unistd.h>
00019 #include <rsbac/types.h>
00020 #include <rsbac/syscalls.h>
00021 //#define __NR_rsbac                      1270
00022 
00023 #ifdef rsbac_syscall4
00024 static inline rsbac_syscall4(int, rsbac,
00025                  int, dummy,
00026                  rsbac_version_t, version,
00027                  enum rsbac_syscall_t, call,
00028                  union rsbac_syscall_arg_t *, arg_p);
00029 #define sys_rsbac(a,b,c) rsbac(0,a,b,c)
00030 
00031 #else
00032 #ifndef _syscall3
00033 #define _syscall3(type,name,type1,arg1,type2,arg2,type3,arg3)           \
00034 type                                                                    \
00035         name (type1 arg1, type2 arg2, type3 arg3)                               \
00036 {                                                                       \
00037         register long dummy4 __asm__ ("out3");                          \
00038         register long dummy5 __asm__ ("out4");                          \
00039                                                                         \
00040         return __ia64_syscall((long) arg1, (long) arg2, (long) arg3,    \
00041                               dummy4, dummy5, __NR_##name);             \
00042 }
00043 #endif
00044 
00045 static inline _syscall3(int, rsbac,
00046                  rsbac_version_t, version,
00047                  enum rsbac_syscall_t, call,
00048                 union rsbac_syscall_arg_t *, arg_p);
00049 #define sys_rsbac(a,b,c) rsbac(a,b,c)
00050 
00051 #endif
00052 
00053 #endif

Generated on Fri Jun 17 09:45:18 2005 for RSBAC by  doxygen 1.4.2