summaryrefslogtreecommitdiffstats
path: root/libxml2/os400/wrappers.h
diff options
context:
space:
mode:
authorWilliam Joye <wjoye@cfa.harvard.edu>2016-10-19 18:22:05 (GMT)
committerWilliam Joye <wjoye@cfa.harvard.edu>2016-10-19 18:22:05 (GMT)
commit34be72f9ed749a5c013d3f7f47d810e8caf652cb (patch)
tree2f75b6050c088da53d774b3da3fb71e7fa49ec78 /libxml2/os400/wrappers.h
parent604eac5688c5d437ed6d585ee63e53fba6f558c0 (diff)
parent0f851b6f17365c29b56d6a17564d58a33120508a (diff)
downloadblt-34be72f9ed749a5c013d3f7f47d810e8caf652cb.zip
blt-34be72f9ed749a5c013d3f7f47d810e8caf652cb.tar.gz
blt-34be72f9ed749a5c013d3f7f47d810e8caf652cb.tar.bz2
Merge commit '0f851b6f17365c29b56d6a17564d58a33120508a' as 'libxml2'
Diffstat (limited to 'libxml2/os400/wrappers.h')
-rw-r--r--libxml2/os400/wrappers.h70
1 files changed, 70 insertions, 0 deletions
diff --git a/libxml2/os400/wrappers.h b/libxml2/os400/wrappers.h
new file mode 100644
index 0000000..388ec8c
--- /dev/null
+++ b/libxml2/os400/wrappers.h
@@ -0,0 +1,70 @@
+/**
+*** 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