summaryrefslogtreecommitdiff
path: root/source3/smbd/smb2_ioctl.c
diff options
context:
space:
mode:
authorStefan Metzmacher <metze@samba.org>2011-06-24 08:54:02 +0200
committerStefan Metzmacher <metze@samba.org>2011-06-24 11:25:36 +0200
commit2bb325ad913c1cff88faab55102cef75d14c04a6 (patch)
tree14497dc33cf69b7e85d3cfb5aa08247f98af5138 /source3/smbd/smb2_ioctl.c
parent511cb20d40221cac577a5910420b59f17b915b00 (diff)
downloadsamba-2bb325ad913c1cff88faab55102cef75d14c04a6.tar.gz
s3:smb2_ioctl/FSCTL_PIPE_TRANSCEIVE: generate STATUS_BUFFER_OVERFLOW if needed (bug #8260)
This should fix DCERPC responses with fragments larger than 1024 bytes. metze Autobuild-User: Stefan Metzmacher <metze@samba.org> Autobuild-Date: Fri Jun 24 11:25:36 CEST 2011 on sn-devel-104
Diffstat (limited to 'source3/smbd/smb2_ioctl.c')
-rw-r--r--source3/smbd/smb2_ioctl.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/source3/smbd/smb2_ioctl.c b/source3/smbd/smb2_ioctl.c
index bce02b0a3a8..abb1905ba09 100644
--- a/source3/smbd/smb2_ioctl.c
+++ b/source3/smbd/smb2_ioctl.c
@@ -590,6 +590,11 @@ static void smbd_smb2_ioctl_pipe_read_done(struct tevent_req *subreq)
state->out_output.length = nread;
+ if (is_data_outstanding) {
+ tevent_req_nterror(req, STATUS_BUFFER_OVERFLOW);
+ return;
+ }
+
tevent_req_done(req);
}