summaryrefslogtreecommitdiff
path: root/vio/viossl.c
diff options
context:
space:
mode:
authorunknown <monty@mysql.com>2004-05-25 22:00:14 +0300
committerunknown <monty@mysql.com>2004-05-25 22:00:14 +0300
commitb3851363ba8df0b3f55ecb358849a212db4b12a8 (patch)
tree2c56473da947b9807f0d1668171870a8e3dbc736 /vio/viossl.c
parent699cbc02cc3eac51524a56fc106d013633f336f6 (diff)
downloadmariadb-git-b3851363ba8df0b3f55ecb358849a212db4b12a8.tar.gz
Added patches from Novell
Build-tools/Do-compile: Fixed indentation configure.in: Added patches from Novell Added C_EXTRA_FLAGS as an easy way to pass flags to both CFLAGS and CXXFLAGS extra/perror.c: Fixed error number reporting to not report 'Unknown error' include/my_global.h: Defines to make NETWARE patches cleaner include/thr_alarm.h: Fixed wrong macro netware/mysql_install_db.c: Indentation fix
Diffstat (limited to 'vio/viossl.c')
-rw-r--r--vio/viossl.c25
1 files changed, 25 insertions, 0 deletions
diff --git a/vio/viossl.c b/vio/viossl.c
index fafe48b7a84..a489cb98f98 100644
--- a/vio/viossl.c
+++ b/vio/viossl.c
@@ -25,6 +25,31 @@
#ifdef HAVE_OPENSSL
+#ifdef __NETWARE__
+/*
+ The default OpenSSL implementation on NetWare uses WinSock.
+ This code allows us to use the BSD sockets.
+*/
+
+static int SSL_set_fd_bsd(SSL *s, int fd)
+{
+ int result= -1;
+ BIO_METHOD *BIO_s_bsdsocket();
+ BIO *bio;
+
+ if ((bio= BIO_new(BIO_s_bsdsocket())))
+ {
+ result= BIO_set_fd(bio, fd, BIO_NOCLOSE);
+ SSL_set_bio(s, bio, bio);
+ }
+ return result;
+}
+
+#define SSL_set_fd(A, B) SSL_set_fd_bsd((A), (B))
+
+#endif /* __NETWARE__ */
+
+
static void
report_errors()
{