Author: tridge
Date: 2004-09-17 10:45:21 +0000 (Fri, 17 Sep 2004)
New Revision: 2383

WebSVN: 
http://websvn.samba.org/websvn/changeset.php?rep=samba&path=/branches/SAMBA_4_0/source/librpc/rpc&rev=2383&nolog=1

Log:
fixed the handling of sending zero length dcerpc packets (I broke this
recently, and this broke the autoidl code)

Modified:
   branches/SAMBA_4_0/source/librpc/rpc/dcerpc.c


Changeset:
Modified: branches/SAMBA_4_0/source/librpc/rpc/dcerpc.c
===================================================================
--- branches/SAMBA_4_0/source/librpc/rpc/dcerpc.c       2004-09-17 10:44:28 UTC (rev 
2382)
+++ branches/SAMBA_4_0/source/librpc/rpc/dcerpc.c       2004-09-17 10:45:21 UTC (rev 
2383)
@@ -785,6 +785,7 @@
        struct dcerpc_packet pkt;
        DATA_BLOB blob;
        uint32_t remaining, chunk_size;
+       BOOL first_packet = True;
 
        p->transport.recv_data = dcerpc_request_recv_data;
 
@@ -820,10 +821,11 @@
        DLIST_ADD(p->pending, req);
 
        /* we send a series of pdus without waiting for a reply */
-       while (remaining > 0) {
+       while (remaining > 0 || first_packet) {
                uint32_t chunk = MIN(chunk_size, remaining);
                BOOL last_frag = False;
 
+               first_packet = False;
                pkt.pfc_flags = 0;
 
                if (remaining == stub_data->length) {

Reply via email to