• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 #ifndef _SEPOL_DSO_H
2 #define _SEPOL_DSO_H	1
3 
4 #if !defined(SHARED) || defined(ANDROID) || defined(__APPLE__)
5     #define DISABLE_SYMVER 1
6 #endif
7 
8 #ifdef SHARED
9 # define hidden __attribute__ ((visibility ("hidden")))
10 # define hidden_proto(fct) __hidden_proto (fct, fct##_internal)
11 # define __hidden_proto(fct, internal)	\
12      extern __typeof (fct) internal;	\
13      extern __typeof (fct) fct __asm (#internal) hidden;
14 # if defined(__alpha__) || defined(__mips__)
15 #  define hidden_def(fct) \
16      asm (".globl " #fct "\n" #fct " = " #fct "_internal");
17 # else
18 #  define hidden_def(fct) \
19      asm (".globl " #fct "\n.set " #fct ", " #fct "_internal");
20 #endif
21 #else
22 # define hidden
23 # define hidden_proto(fct)
24 # define hidden_def(fct)
25 #endif
26 
27 #endif
28