| /** |
| *** Replace system/C library calls by EBCDIC wrappers. |
| *** This is a layer inserted between libxml2 itself and the EBCDIC |
| *** environment. |
| *** |
| *** See Copyright for the status of this software. |
| *** |
| *** Author: Patrick Monnerat <pm@datasphere.ch>, DATASPHERE S.A. |
| **/ |
| |
| #ifndef __WRAPPERS_H_ |
| #define __WRAPPERS_H_ |
| |
| /** |
| *** OS/400 specific defines. |
| **/ |
| |
| #define __cplusplus__strings__ |
| |
| /** |
| *** Force header inclusions before renaming procedures to UTF-8 wrappers. |
| **/ |
| |
| #include <sys/types.h> |
| #include <sys/socket.h> |
| #include <arpa/inet.h> |
| #include <netdb.h> |
| |
| #include "dlfcn.h" |
| |
| |
| /** |
| *** UTF-8 wrappers prototypes. |
| **/ |
| |
| extern int _lx_getaddrinfo(const char * node, const char * service, |
| const struct addrinfo * hints, struct addrinfo * * res); |
| extern const char * |
| _lx_inet_ntop(int af, |
| const void * src, char * dst, socklen_t size); |
| extern void * _lx_dlopen(const char * filename, int flag); |
| extern void * _lx_dlsym(void * handle, const char * symbol); |
| extern char * _lx_dlerror(void); |
| |
| |
| #ifdef HAVE_ZLIB_H |
| |
| #include <zlib.h> |
| |
| extern gzFile _lx_gzopen(const char * path, const char * mode); |
| extern gzFile _lx_gzdopen(int fd, const char * mode); |
| |
| #endif |
| |
| |
| /** |
| *** Rename data/procedures to UTF-8 wrappers. |
| **/ |
| |
| #define getaddrinfo _lx_getaddrinfo |
| #define inet_ntop _lx_inet_ntop |
| #define dlopen _lx_dlopen |
| #define dlsym _lx_dlsym |
| #define dlerror _lx_dlerror |
| #define gzopen _lx_gzopen |
| #define gzdopen _lx_gzdopen |
| #define inflateInit2_ _lx_inflateInit2_ |
| #define deflateInit2_ _lx_deflateInit2_ |
| |
| #endif |