aboutsummaryrefslogtreecommitdiffstats
path: root/cipher/dynload.c
diff options
context:
space:
mode:
Diffstat (limited to 'cipher/dynload.c')
-rw-r--r--cipher/dynload.c19
1 files changed, 19 insertions, 0 deletions
diff --git a/cipher/dynload.c b/cipher/dynload.c
index e2c988e02..adf576780 100644
--- a/cipher/dynload.c
+++ b/cipher/dynload.c
@@ -67,6 +67,25 @@ dlsym(void *handle, char *name)
}
#endif /*HAVE_DL_SHL_LOAD*/
+#ifdef __MINGW32__
+#warning Needs some more work. Based on [email protected] patch.
+
+#define dlopen(PATHNAME,MODE) ((void *)LoadLibrary(PATHNAME))
+#define dlclose(HANDLE) FreeLibrary(HANDLE)
+char *dlerror(void)
+{
+ static char dlerrstr[10];
+ int err=GetLastError();
+ if (!err)
+ return NULL;
+ sprintf(dlerrstr, "%u", err);
+ return dlerrstr;
+}
+#define dlsym(HANDLE,NAME) GetProcAddress(HANDLE,NAME)
+#endif /*__MINGW32__*/
+
+
+
typedef struct ext_list {