svn commit: samba r7745 - in branches/SAMBA_4_0/source/lib/tls: .
tridge at samba.org
tridge at samba.org
Sun Jun 19 07:19:43 GMT 2005
Author: tridge
Date: 2005-06-19 07:19:42 +0000 (Sun, 19 Jun 2005)
New Revision: 7745
WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=7745
Log:
better handling of recv errors in tls library
Modified:
branches/SAMBA_4_0/source/lib/tls/tls.c
Changeset:
Modified: branches/SAMBA_4_0/source/lib/tls/tls.c
===================================================================
--- branches/SAMBA_4_0/source/lib/tls/tls.c 2005-06-19 04:21:45 UTC (rev 7744)
+++ branches/SAMBA_4_0/source/lib/tls/tls.c 2005-06-19 07:19:42 UTC (rev 7745)
@@ -69,9 +69,19 @@
}
status = socket_recv(tls->socket, buf, size, &nread, 0);
+ if (NT_STATUS_EQUAL(status, NT_STATUS_END_OF_FILE)) {
+ return 0;
+ }
+ if (NT_STATUS_IS_ERR(status)) {
+ EVENT_FD_NOT_READABLE(tls->fde);
+ EVENT_FD_NOT_WRITEABLE(tls->fde);
+ errno = EBADF;
+ return -1;
+ }
if (!NT_STATUS_IS_OK(status)) {
EVENT_FD_READABLE(tls->fde);
EVENT_FD_NOT_WRITEABLE(tls->fde);
+ errno = EAGAIN;
return -1;
}
if (tls->output_pending) {
@@ -185,7 +195,6 @@
return STATUS_MORE_ENTRIES;
}
if (ret < 0) {
- DEBUG(0,("gnutls_record_recv failed - %s\n", gnutls_strerror(ret)));
return NT_STATUS_UNEXPECTED_NETWORK_ERROR;
}
*nread = ret;
More information about the samba-cvs
mailing list