diff options
author | Luke Leighton <lkcl@samba.org> | 1999-02-09 21:42:39 +0000 |
---|---|---|
committer | Luke Leighton <lkcl@samba.org> | 1999-02-09 21:42:39 +0000 |
commit | 96983a13bac8276590024b37149b7bf3e80477dd (patch) | |
tree | f27296abb6b252aa0cc09d932ad20c73ee0433fe | |
parent | 748f296a76a76d38525ad35df6658811cae60222 (diff) | |
download | samba-96983a13bac8276590024b37149b7bf3e80477dd.tar.gz samba-96983a13bac8276590024b37149b7bf3e80477dd.tar.bz2 samba-96983a13bac8276590024b37149b7bf3e80477dd.zip |
when multiple independent large rpc calls come in on the same pipe,
prev_pdu_file_offset was not being re-initialised to zero.
(This used to be commit fcaa1214412f5a417a648d4da5c4332f75f59f57)
-rw-r--r-- | source3/rpc_server/srv_pipe_hnd.c | 7 | ||||
-rw-r--r-- | source3/smbd/ipc.c | 3 |
2 files changed, 4 insertions, 6 deletions
diff --git a/source3/rpc_server/srv_pipe_hnd.c b/source3/rpc_server/srv_pipe_hnd.c index ca5dde18d2..27aa79381c 100644 --- a/source3/rpc_server/srv_pipe_hnd.c +++ b/source3/rpc_server/srv_pipe_hnd.c @@ -208,11 +208,8 @@ int read_pipe(pipes_struct *p, char *data, uint32 pos, int n) int data_pos; /* entire rpc data sent - no headers, no auth verifiers */ int this_pdu_data_pos; - DEBUG(6,("read_pipe: %x", p->pnum)); - - DEBUG(6,("name: %s open: %s pos: %d len: %d", - p->name, - BOOLSTR(p->open), + DEBUG(6,("read_pipe: %x name: %s open: %s pos: %d len: %d", + p->pnum, p->name, BOOLSTR(p->open), pos, n)); if (!p || !p->open) diff --git a/source3/smbd/ipc.c b/source3/smbd/ipc.c index 41892504ad..31ae8e6fc0 100644 --- a/source3/smbd/ipc.c +++ b/source3/smbd/ipc.c @@ -3236,7 +3236,8 @@ static int api_fd_reply(connection_struct *conn,uint16 vuid,char *outbuf, subcommand, p->name, pnum)); /* record maximum data length that can be transmitted in an SMBtrans */ - p->file_offset = mdrcnt; + p->file_offset = mdrcnt; + p->prev_pdu_file_offset = 0; DEBUG(10,("api_fd_reply: p:%p file_offset: %d\n", p, p->file_offset)); |