summaryrefslogtreecommitdiff
path: root/source3/rpc_server/srv_pipe_hnd.c
diff options
context:
space:
mode:
authorJeremy Allison <jra@samba.org>2000-05-17 19:17:16 +0000
committerJeremy Allison <jra@samba.org>2000-05-17 19:17:16 +0000
commit819c15449882a0c08689a4565bf0b31f756f05bd (patch)
treebd08a1c3992905b20c2342209b214dcb95125d4b /source3/rpc_server/srv_pipe_hnd.c
parentec6c547390494c7a04b14aa787bd1a163d6ee65b (diff)
downloadsamba-819c15449882a0c08689a4565bf0b31f756f05bd.tar.gz
samba-819c15449882a0c08689a4565bf0b31f756f05bd.tar.bz2
samba-819c15449882a0c08689a4565bf0b31f756f05bd.zip
Fixed bug I introduced last night (sorry). Now truncate incoming prs_struct
buffer size to exact size of incoming data to prevent read overruns into slop space. Jeremy. (This used to be commit aa1a4f46da9584240cd6cee6fb652aa73e77015c)
Diffstat (limited to 'source3/rpc_server/srv_pipe_hnd.c')
-rw-r--r--source3/rpc_server/srv_pipe_hnd.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/source3/rpc_server/srv_pipe_hnd.c b/source3/rpc_server/srv_pipe_hnd.c
index f19aed1886..a349da839a 100644
--- a/source3/rpc_server/srv_pipe_hnd.c
+++ b/source3/rpc_server/srv_pipe_hnd.c
@@ -476,6 +476,13 @@ authentication failed. Denying the request.\n", p->name));
*/
/*
+ * Ensure the internal prs buffer size is *exactly* the same
+ * size as the current offset.
+ */
+
+ prs_set_buffer_size(&p->in_data.data, prs_offset(&p->in_data.data));
+
+ /*
* Set the parse offset to the start of the data and set the
* prs_struct to UNMARSHALL.
*/