summaryrefslogtreecommitdiff
path: root/source4/smb_server/request.c
diff options
context:
space:
mode:
authorAndrew Tridgell <tridge@samba.org>2004-12-08 08:09:42 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 13:06:25 -0500
commit071439c1e1c5a7e6deb7866ff9716977e527e826 (patch)
treee09dce079b9b3f9f1b3cbe6ff0168810bac5689b /source4/smb_server/request.c
parent57314e0df30296291ef3b9698de44249fa1fc77e (diff)
downloadsamba-071439c1e1c5a7e6deb7866ff9716977e527e826.tar.gz
samba-071439c1e1c5a7e6deb7866ff9716977e527e826.tar.bz2
samba-071439c1e1c5a7e6deb7866ff9716977e527e826.zip
r4095: smbsrv_terminate_connection() doesn't exit() in single processor mode, so after we
call it we need to return, and not continue processing packets (This used to be commit 33e4cee17dbfbb79e5ae68fda893a4d313865eb5)
Diffstat (limited to 'source4/smb_server/request.c')
-rw-r--r--source4/smb_server/request.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/source4/smb_server/request.c b/source4/smb_server/request.c
index 4e63acdd92..7f13998605 100644
--- a/source4/smb_server/request.c
+++ b/source4/smb_server/request.c
@@ -86,6 +86,7 @@ static void req_setup_chain_reply(struct smbsrv_request *req, uint_t wct, uint_t
req->out.buffer = talloc_realloc(req, req->out.buffer, req->out.allocated);
if (!req->out.buffer) {
smbsrv_terminate_connection(req->smb_conn, "allocation failed");
+ return;
}
req->out.hdr = req->out.buffer + NBT_HDR_SIZE;
@@ -120,6 +121,7 @@ void req_setup_reply(struct smbsrv_request *req, uint_t wct, uint_t buflen)
req->out.buffer = talloc(req, req->out.allocated);
if (!req->out.buffer) {
smbsrv_terminate_connection(req->smb_conn, "allocation failed");
+ return;
}
req->out.hdr = req->out.buffer + NBT_HDR_SIZE;