diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/xine/attributes.h | 9 | ||||
-rw-r--r-- | include/xine/xine_internal.h | 3 | ||||
-rw-r--r-- | include/xine/xineutils.h | 18 |
3 files changed, 30 insertions, 0 deletions
diff --git a/include/xine/attributes.h b/include/xine/attributes.h index 2326dab18..9f02d9b7b 100644 --- a/include/xine/attributes.h +++ b/include/xine/attributes.h @@ -66,6 +66,15 @@ # define XINE_PROTECTED #endif +/* Export hidden only for private/internal libxine functions */ +#if defined(XINE_LIBRARY_COMPILE) && defined(SUPPORT_ATTRIBUTE_VISIBILITY_INTERNAL) +# define XINE_INTERNAL __attribute__((__visibility__("internal"))) +#elif defined(XINE_LIBRARY_COMPILE) && defined(SUPPORT_ATTRIBUTE_VISIBILITY_DEFAULT) +# define XINE_INTERNAL __attribute__((__visibility__("default"))) +#else +# define XINE_INTERNAL +#endif + #ifdef SUPPORT_ATTRIBUTE_SENTINEL # define XINE_SENTINEL __attribute__((__sentinel__)) #else diff --git a/include/xine/xine_internal.h b/include/xine/xine_internal.h index 7064539ab..9a7a7fee3 100644 --- a/include/xine/xine_internal.h +++ b/include/xine/xine_internal.h @@ -47,6 +47,9 @@ extern "C" { #include <xine/io_helper.h> #include <xine/info_helper.h> #include <xine/alphablend.h> +#ifdef XINE_COMPILE +# include "xine_private.h" +#endif #define XINE_MAX_EVENT_LISTENERS 50 #define XINE_MAX_EVENT_TYPES 100 diff --git a/include/xine/xineutils.h b/include/xine/xineutils.h index 6c62bb84f..fa34931ec 100644 --- a/include/xine/xineutils.h +++ b/include/xine/xineutils.h @@ -181,6 +181,24 @@ void xine_usec_sleep(unsigned usec) XINE_PROTECTED; */ char *xine_strcat_realloc (char **dest, char *append) XINE_PROTECTED; +/** + * opens a file, ensuring that the descriptor will be closed + * automatically after a fork/execute. + */ +int xine_open_cloexec(const char *name, int flags) XINE_PROTECTED; + +/** + * creates a file, ensuring that the descriptor will be closed + * automatically after a fork/execute. + */ +int xine_create_cloexec(const char *name, int flags, mode_t mode) XINE_PROTECTED; + +/** + * creates a socket, ensuring that the descriptor will be closed + * automatically after a fork/execute. + */ +int xine_socket_cloexec(int domain, int type, int protocol) XINE_PROTECTED; + /* * Color Conversion Utility Functions * The following data structures and functions facilitate the conversion |