diff options
author | Philip M. Gollucci <pgollucci@FreeBSD.org> | 2009-07-20 05:33:48 +0000 |
---|---|---|
committer | Philip M. Gollucci <pgollucci@FreeBSD.org> | 2009-07-20 05:33:48 +0000 |
commit | 2733280dcc88e7e3bf7fce97df6afc81cea67a4a (patch) | |
tree | 33961a61a17237c13cbe0f450ee0b34c33c60044 | |
parent | a80362c9ff2a22ce34e838e38f7cbfaa62c2c6d6 (diff) |
Notes
-rw-r--r-- | devel/gwenhywfar/files/patch-src::iolayer::io_tls.c | 20 | ||||
-rw-r--r-- | devel/gwenhywfar/files/patch-src::os::posix::inetsocket.c | 56 |
2 files changed, 76 insertions, 0 deletions
diff --git a/devel/gwenhywfar/files/patch-src::iolayer::io_tls.c b/devel/gwenhywfar/files/patch-src::iolayer::io_tls.c new file mode 100644 index 000000000000..af0211f437c4 --- /dev/null +++ b/devel/gwenhywfar/files/patch-src::iolayer::io_tls.c @@ -0,0 +1,20 @@ +# $FreeBSD$ +--- src/iolayer/io_tls.c.orig 2009-06-18 13:56:27.000000000 -0700 ++++ src/iolayer/io_tls.c 2009-07-12 09:56:45.000000000 -0700 +@@ -310,6 +310,7 @@ + if (lflags & GWEN_IO_LAYER_TLS_FLAGS_FORCE_SSL_V3) { + const int proto_prio[2] = { GNUTLS_SSL3, 0 }; + ++ DBG_INFO(GWEN_LOGDOMAIN, "Forcing SSL v3"); + rv=gnutls_protocol_set_priority(xio->session, proto_prio); + if (rv) { + DBG_ERROR(GWEN_LOGDOMAIN, "gnutls_protocol_set_priority: %d (%s)", rv, gnutls_strerror(rv)); +@@ -840,7 +841,7 @@ + + rv=GWEN_Io_LayerCodec_CheckWriteOut(io); + if (rv) { +- if (rv==GWEN_ERROR_TRY_AGAIN) { ++ if (rv==GWEN_ERROR_TRY_AGAIN || rv==GWEN_ERROR_IN_PROGRESS) { + DBG_INFO(GWEN_LOGDOMAIN, "here (%d)", rv); + #ifdef HAVE_GNUTLS_TRANSPORT_SET_ERRNO + gnutls_transport_set_errno(xio->session, EAGAIN); diff --git a/devel/gwenhywfar/files/patch-src::os::posix::inetsocket.c b/devel/gwenhywfar/files/patch-src::os::posix::inetsocket.c new file mode 100644 index 000000000000..a7e795fc1998 --- /dev/null +++ b/devel/gwenhywfar/files/patch-src::os::posix::inetsocket.c @@ -0,0 +1,56 @@ +# $FreeBSD$ +--- src/os/posix/inetsocket.c.orig 2008-07-31 10:56:06.000000000 -0700 ++++ src/os/posix/inetsocket.c 2009-07-12 09:59:23.000000000 -0700 +@@ -74,6 +74,7 @@ + int GWEN_Socket_NetError2GwenError(int rv) { + switch(rv) { + case EINTR: return GWEN_ERROR_INTERRUPTED; ++ case ENOTCONN: + case EWOULDBLOCK: return GWEN_ERROR_TIMEOUT; + case EACCES: + case EPERM: return GWEN_ERROR_PERMISSIONS; +@@ -348,7 +349,7 @@ + if (localSocket->socket==-1) { + GWEN_InetAddr_free(localAddr); + GWEN_Socket_free(localSocket); +- if (errno==EAGAIN) ++ if (errno==EAGAIN || errno==ENOTCONN) + return GWEN_ERROR_TIMEOUT; + else { + DBG_INFO(GWEN_LOGDOMAIN, "accept(): %s", strerror(errno)); +@@ -498,7 +499,7 @@ + assert(bsize); + i=recv(sp->socket,buffer, *bsize,0); + if (i<0) { +- if (errno==EAGAIN) ++ if (errno==EAGAIN || errno==ENOTCONN) + return GWEN_ERROR_TIMEOUT; + else if (errno==EINTR) + return GWEN_ERROR_INTERRUPTED; +@@ -542,7 +543,7 @@ + ); + + if (i<0) { +- if (errno==EAGAIN) ++ if (errno==EAGAIN || errno==ENOTCONN) + return GWEN_ERROR_TIMEOUT; + else if (errno==EINTR) + return GWEN_ERROR_INTERRUPTED; +@@ -594,7 +595,7 @@ + &addrlen); + if (i<0) { + GWEN_InetAddr_free(localAddr); +- if (errno==EAGAIN) ++ if (errno==EAGAIN || errno==ENOTCONN) + return GWEN_ERROR_TIMEOUT; + else if (errno==EINTR) + return GWEN_ERROR_INTERRUPTED; +@@ -632,7 +633,7 @@ + addr->address, + addr->size); + if (i<0) { +- if (errno==EAGAIN) ++ if (errno==EAGAIN || errno==ENOTCONN) + return GWEN_ERROR_TIMEOUT; + else if (errno==EINTR) + return GWEN_ERROR_INTERRUPTED; |