svn commit: samba r3320 - in branches/SAMBA_4_0/source/rpc_server: .
tridge at samba.org
tridge at samba.org
Thu Oct 28 11:59:03 GMT 2004
Author: tridge
Date: 2004-10-28 11:59:03 +0000 (Thu, 28 Oct 2004)
New Revision: 3320
WebSVN: http://websvn.samba.org/websvn/changeset.php?rep=samba&path=/branches/SAMBA_4_0/source/rpc_server&rev=3320&nolog=1
Log:
fixed bugs in the rpc_server code in handling partial packet receives and sends
it now passes the non-blocking test suite
Modified:
branches/SAMBA_4_0/source/rpc_server/dcerpc_server.c
branches/SAMBA_4_0/source/rpc_server/dcerpc_sock.c
Changeset:
Modified: branches/SAMBA_4_0/source/rpc_server/dcerpc_server.c
===================================================================
--- branches/SAMBA_4_0/source/rpc_server/dcerpc_server.c 2004-10-28 11:58:09 UTC (rev 3319)
+++ branches/SAMBA_4_0/source/rpc_server/dcerpc_server.c 2004-10-28 11:59:03 UTC (rev 3320)
@@ -907,7 +907,6 @@
struct dcesrv_call_state *call;
struct dcesrv_call_reply *rep;
ssize_t nwritten;
- NTSTATUS status = NT_STATUS_OK;
call = dce_conn->call_list;
if (!call || !call->replies) {
@@ -928,8 +927,6 @@
if (rep->data.length == 0) {
/* we're done with this section of the call */
DLIST_REMOVE(call->replies, rep);
- } else {
- status = STATUS_BUFFER_OVERFLOW;
}
if (call->replies == NULL) {
@@ -938,7 +935,7 @@
talloc_free(call);
}
- return status;
+ return NT_STATUS_OK;
}
Modified: branches/SAMBA_4_0/source/rpc_server/dcerpc_sock.c
===================================================================
--- branches/SAMBA_4_0/source/rpc_server/dcerpc_sock.c 2004-10-28 11:58:09 UTC (rev 3319)
+++ branches/SAMBA_4_0/source/rpc_server/dcerpc_sock.c 2004-10-28 11:59:03 UTC (rev 3320)
@@ -39,7 +39,7 @@
size_t sendlen;
status = socket_send(sock, out, &sendlen, 0);
- if (!NT_STATUS_IS_OK(status)) {
+ if (NT_STATUS_IS_ERR(status)) {
return -1;
}
@@ -265,6 +265,7 @@
return;
}
if (nread == 0) {
+ talloc_free(tmp_blob.data);
return;
}
More information about the samba-cvs
mailing list