1 2/* : : generated by proto : : */ 3/* : : generated from contrib/ast/src/lib/libdll/features/dll by iffe version 2012-07-17 : : */ 4 5#ifndef _def_dll_dll 6#if !defined(__PROTO__) 7# if defined(__STDC__) || defined(__cplusplus) || defined(_proto) || defined(c_plusplus) 8# if defined(__cplusplus) 9# define __LINKAGE__ "C" 10# else 11# define __LINKAGE__ 12# endif 13# define __STDARG__ 14# define __PROTO__(x) x 15# define __OTORP__(x) 16# define __PARAM__(n,o) n 17# if !defined(__STDC__) && !defined(__cplusplus) 18# if !defined(c_plusplus) 19# define const 20# endif 21# define signed 22# define void int 23# define volatile 24# define __V_ char 25# else 26# define __V_ void 27# endif 28# else 29# define __PROTO__(x) () 30# define __OTORP__(x) x 31# define __PARAM__(n,o) o 32# define __LINKAGE__ 33# define __V_ char 34# define const 35# define signed 36# define void int 37# define volatile 38# endif 39# define __MANGLE__ __LINKAGE__ 40# if defined(__cplusplus) || defined(c_plusplus) 41# define __VARARG__ ... 42# else 43# define __VARARG__ 44# endif 45# if defined(__STDARG__) 46# define __VA_START__(p,a) va_start(p,a) 47# else 48# define __VA_START__(p,a) va_start(p) 49# endif 50# if !defined(__INLINE__) 51# if defined(__cplusplus) 52# define __INLINE__ extern __MANGLE__ inline 53# else 54# if defined(_WIN32) && !defined(__GNUC__) 55# define __INLINE__ __inline 56# endif 57# endif 58# endif 59#endif 60#if !defined(__LINKAGE__) 61#define __LINKAGE__ /* 2004-08-11 transition */ 62#endif 63 64#define _def_dll_dll 1 65#define _sys_types 1 /* #include <sys/types.h> ok */ 66#define _hdr_dlfcn 1 /* #include <dlfcn.h> ok */ 67#define _LIB_dl 1 /* -ldl is a library */ 68#define _lib_dlopen 1 /* dlopen() in default lib(s) */ 69#define _DLL_NEXT_PATH "/usr/lib/libc.so.1" 70 71#if defined(__MVS__) && !defined(__SUSV3) 72#define __SUSV3 1 73#endif 74#include <dlfcn.h> 75 76#define DLL_INFO_PREVER 0x0001 /* pre-suffix style version */ 77#define DLL_INFO_DOTVER 0x0002 /* post-suffix style version */ 78 79typedef unsigned long (*Dll_plugin_version_f) __PROTO__((void)); 80typedef int (*Dllerror_f) __PROTO__((__V_*, __V_*, int, ...)); 81 82typedef struct Dllinfo_s 83{ 84 char** sibling; /* sibling dirs on $PATH */ 85 char* prefix; /* library name prefix */ 86 char* suffix; /* library name suffix */ 87 char* env; /* library path env var */ 88 int flags; /* DLL_INFO_* flags */ 89#ifdef _DLLINFO_PRIVATE_ 90 _DLLINFO_PRIVATE_ 91#endif 92} Dllinfo_t; 93 94typedef struct Dllnames_s 95{ 96 char* id; 97 char* name; 98 char* base; 99 char* type; 100 char* opts; 101 char* path; 102 char data[1024]; 103} Dllnames_t; 104 105typedef struct Dllent_s 106{ 107 char* path; 108 char* name; 109#ifdef _DLLENT_PRIVATE_ 110 _DLLENT_PRIVATE_ 111#endif 112} Dllent_t; 113 114typedef struct Dllscan_s 115{ 116 __V_* pad; 117#ifdef _DLLSCAN_PRIVATE_ 118 _DLLSCAN_PRIVATE_ 119#endif 120} Dllscan_t; 121 122#if _BLD_dll && defined(__EXPORT__) 123#undef __MANGLE__ 124#define __MANGLE__ __LINKAGE__ __EXPORT__ 125#endif 126 127extern __MANGLE__ Dllinfo_t* dllinfo __PROTO__((void)); 128extern __MANGLE__ __V_* dllplugin __PROTO__((const char*, const char*, const char*, unsigned long, unsigned long*, int, char*, size_t)); 129extern __MANGLE__ __V_* dllplug __PROTO__((const char*, const char*, const char*, int, char*, size_t)); 130extern __MANGLE__ __V_* dllfind __PROTO__((const char*, const char*, int, char*, size_t)); 131extern __MANGLE__ Dllnames_t* dllnames __PROTO__((const char*, const char*, Dllnames_t*)); 132extern __MANGLE__ __V_* dll_lib __PROTO__((Dllnames_t*, unsigned long, Dllerror_f, __V_*)); 133extern __MANGLE__ __V_* dllmeth __PROTO__((const char*, const char*, unsigned long)); 134extern __MANGLE__ __V_* dllopen __PROTO__((const char*, int)); 135extern __MANGLE__ __V_* dllnext __PROTO__((int)); 136extern __MANGLE__ __V_* dlllook __PROTO__((__V_*, const char*)); 137extern __MANGLE__ int dllcheck __PROTO__((__V_*, const char*, unsigned long, unsigned long*)); 138extern __MANGLE__ unsigned long dllversion __PROTO__((__V_*, const char*)); 139extern __MANGLE__ char* dllerror __PROTO__((int)); 140 141extern __MANGLE__ Dllscan_t* dllsopen __PROTO__((const char*, const char*, const char*)); 142extern __MANGLE__ Dllent_t* dllsread __PROTO__((Dllscan_t*)); 143extern __MANGLE__ int dllsclose __PROTO__((Dllscan_t*)); 144 145#undef __MANGLE__ 146#define __MANGLE__ __LINKAGE__ 147 148#endif 149