summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimo Sorce <idra@samba.org>2010-07-20 13:56:25 -0400
committerSimo Sorce <idra@samba.org>2010-07-21 19:12:59 -0400
commita3713d746949788c393ecf2b0d10d105c2220b22 (patch)
tree5ad5beebd5780ee20ce4ff66ef40f519dd52fb66
parent26f1218a3678e648c73db3b34732703396ad48b2 (diff)
downloadsamba-a3713d746949788c393ecf2b0d10d105c2220b22.tar.gz
samba-a3713d746949788c393ecf2b0d10d105c2220b22.tar.bz2
samba-a3713d746949788c393ecf2b0d10d105c2220b22.zip
s3-dcerpc: Properly initialize output buffers on nak/fault
-rw-r--r--source3/rpc_server/srv_pipe.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/source3/rpc_server/srv_pipe.c b/source3/rpc_server/srv_pipe.c
index 0132400029..b25f122e56 100644
--- a/source3/rpc_server/srv_pipe.c
+++ b/source3/rpc_server/srv_pipe.c
@@ -603,6 +603,8 @@ bool api_pipe_bind_auth3(pipes_struct *p, struct ncacn_packet *pkt)
return False;
}
+static bool pipe_init_outgoing_data(pipes_struct *p);
+
/*******************************************************************
Marshall a bind_nak pdu.
*******************************************************************/
@@ -613,7 +615,7 @@ static bool setup_bind_nak(pipes_struct *p, struct ncacn_packet *pkt)
union dcerpc_payload u;
/* Free any memory in the current return data buffer. */
- data_blob_free(&p->out_data.rdata);
+ pipe_init_outgoing_data(p);
/*
* Initialize a bind_nak header.
@@ -664,7 +666,7 @@ bool setup_fault_pdu(pipes_struct *p, NTSTATUS fault_status)
union dcerpc_payload u;
/* Free any memory in the current return data buffer. */
- data_blob_free(&p->out_data.rdata);
+ pipe_init_outgoing_data(p);
/*
* Initialize a fault header.