Switch to macros for c++ extern "C" to please editors that want to autoindent
[heimdal.git] / lib / kafs / dlfcn.h
blobabe8536869fd858e562d00898d114cface8b264b
1 /*
2 * See README.dlfcn for license
3 */
4 /*
5 * @(#)dlfcn.h 1.4 revision of 95/04/25 09:36:52
6 * This is an unpublished work copyright (c) 1992 HELIOS Software GmbH
7 * 30159 Hannover, Germany
8 */
10 #ifndef __dlfcn_h__
11 #define __dlfcn_h__
13 #ifdef __cplusplus
14 extern "C" {
15 #endif
18 * Mode flags for the dlopen routine.
20 #define RTLD_LAZY 1 /* lazy function call binding */
21 #define RTLD_NOW 2 /* immediate function call binding */
22 #define RTLD_GLOBAL 0x100 /* allow symbols to be global */
25 * To be able to initialize, a library may provide a dl_info structure
26 * that contains functions to be called to initialize and terminate.
28 struct dl_info {
29 void (*init)(void);
30 void (*fini)(void);
33 #if __STDC__ || defined(_IBMR2)
34 void *dlopen(const char *path, int mode);
35 void *dlsym(void *handle, const char *symbol);
36 char *dlerror(void);
37 int dlclose(void *handle);
38 #else
39 void *dlopen();
40 void *dlsym();
41 char *dlerror();
42 int dlclose();
43 #endif
45 #ifdef __cplusplus
47 #endif
49 #endif /* __dlfcn_h__ */