1#ifndef _SELINUX_DSO_H 2#define _SELINUX_DSO_H 1 3 4#ifdef SHARED 5# define hidden __attribute__ ((visibility ("hidden"))) 6# define hidden_proto(fct) __hidden_proto (fct, fct##_internal) 7# define __hidden_proto(fct, internal) \ 8 extern __typeof (fct) internal; \ 9 extern __typeof (fct) fct __asm (#internal) hidden; 10# if defined(__alpha__) || defined(__mips__) 11# define hidden_def(fct) \ 12 asm (".globl " #fct "\n" #fct " = " #fct "_internal"); 13# else 14# define hidden_def(fct) \ 15 asm (".globl " #fct "\n.set " #fct ", " #fct "_internal"); 16#endif 17#else 18# define hidden 19# define hidden_proto(fct) 20# define hidden_def(fct) 21#endif 22 23#endif 24