/daten/src/linux-2.4.27-rsbac-v1.2.3/include/rsbac/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 Tue Aug 31 10:05:22 2004 for RSBAC by doxygen 1.3.8