librpc/rpc: pass struct dcerpc_pipe to dcerpc_auth3()
authorStefan Metzmacher <metze@samba.org>
Wed, 6 Aug 2008 19:34:00 +0000 (21:34 +0200)
committerStefan Metzmacher <metze@samba.org>
Thu, 7 Aug 2008 13:40:20 +0000 (15:40 +0200)
metze

source/librpc/rpc/dcerpc.c
source/librpc/rpc/dcerpc_auth.c

index 4758189d3b38f3cf42d9e1958702ce8d4d2e993b..33a8ed569a7f158102503e8914ee3cc079ba936f 100644 (file)
@@ -790,30 +790,33 @@ NTSTATUS dcerpc_bind_recv(struct composite_context *ctx)
 /* 
    perform a continued bind (and auth3)
 */
-NTSTATUS dcerpc_auth3(struct dcerpc_connection *c, 
+NTSTATUS dcerpc_auth3(struct dcerpc_pipe *p,
                      TALLOC_CTX *mem_ctx)
 {
        struct ncacn_packet pkt;
        NTSTATUS status;
        DATA_BLOB blob;
 
-       init_ncacn_hdr(c, &pkt);
+       init_ncacn_hdr(p->conn, &pkt);
 
        pkt.ptype = DCERPC_PKT_AUTH3;
        pkt.pfc_flags = DCERPC_PFC_FLAG_FIRST | DCERPC_PFC_FLAG_LAST;
-       pkt.call_id = next_call_id(c);
+       pkt.call_id = next_call_id(p->conn);
        pkt.auth_length = 0;
        pkt.u.auth3._pad = 0;
        pkt.u.auth3.auth_info = data_blob(NULL, 0);
 
        /* construct the NDR form of the packet */
-       status = ncacn_push_auth(&blob, mem_ctx, c->iconv_convenience, &pkt, c->security_state.auth_info);
+       status = ncacn_push_auth(&blob, mem_ctx,
+                                p->conn->iconv_convenience,
+                                &pkt,
+                                p->conn->security_state.auth_info);
        if (!NT_STATUS_IS_OK(status)) {
                return status;
        }
 
        /* send it on its way */
-       status = c->transport.send_request(c, &blob, false);
+       status = p->conn->transport.send_request(p->conn, &blob, false);
        if (!NT_STATUS_IS_OK(status)) {
                return status;
        }
index f990029f1dc58196cdc1e2508789bfc8e4218098..661cd13c5a5054dea1f8fa49317379f2a924df91 100644 (file)
@@ -146,7 +146,7 @@ static void bind_auth_next_step(struct composite_context *c)
 
        if (!more_processing) {
                /* NO reply expected, so just send it */
-               c->status = dcerpc_auth3(state->pipe->conn, state);
+               c->status = dcerpc_auth3(state->pipe, state);
                if (!composite_is_ok(c)) return;
 
                composite_done(c);