From 1512030832b9f6a172c1ddcda489a1282bda3257 Mon Sep 17 00:00:00 2001 From: Andrew Tridgell Date: Fri, 10 Sep 2004 07:14:02 +0000 Subject: r2275: don't crash on a rpc BIND_NAK response ... (This used to be commit 22a6e5d50d2d40c2dfc5e36bce1132b92723dd81) --- source4/librpc/rpc/dcerpc.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'source4/librpc') diff --git a/source4/librpc/rpc/dcerpc.c b/source4/librpc/rpc/dcerpc.c index 715a680fde..0595d5eade 100644 --- a/source4/librpc/rpc/dcerpc.c +++ b/source4/librpc/rpc/dcerpc.c @@ -465,10 +465,15 @@ NTSTATUS dcerpc_bind(struct dcerpc_pipe *p, return status; } + if (pkt.ptype == DCERPC_PKT_BIND_NAK) { + DEBUG(2,("dcerpc: bind_nak reason %d\n", pkt.u.bind_nak.reject_reason)); + return NT_STATUS_ACCESS_DENIED; + } + if ((pkt.ptype != DCERPC_PKT_BIND_ACK) || pkt.u.bind_ack.num_results == 0 || pkt.u.bind_ack.ctx_list[0].result != 0) { - status = NT_STATUS_UNSUCCESSFUL; + return NT_STATUS_UNSUCCESSFUL; } if (pkt.ptype == DCERPC_PKT_BIND_ACK) { -- cgit