The branch, v3-6-test has been updated
       via  9c5c31c s3:rpc_server: create binding_handle in 
rpc_pipe_open_external()
       via  3710996 s3:rpc_client: make rpccli_bh_create() non-static for now
      from  e58ac20 Add fdopendir to the VFS. We will use this to reuse a 
directory fd already open by NtCreateX.

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-6-test


- Log -----------------------------------------------------------------
commit 9c5c31c0d21033f53e76b021a71e98fbdc90dd4e
Author: Stefan Metzmacher <[email protected]>
Date:   Wed Feb 9 06:56:25 2011 +0100

    s3:rpc_server: create binding_handle in rpc_pipe_open_external()
    
    metze
    
    Autobuild-User: Volker Lendecke <[email protected]>
    Autobuild-Date: Wed Feb  9 12:30:50 CET 2011 on sn-devel-104

commit 3710996d9d2b32598a93d03ee3735b873b24c262
Author: Stefan Metzmacher <[email protected]>
Date:   Wed Feb 9 06:55:33 2011 +0100

    s3:rpc_client: make rpccli_bh_create() non-static for now
    
    metze

-----------------------------------------------------------------------

Summary of changes:
 source3/include/proto.h           |    1 +
 source3/rpc_client/cli_pipe.c     |    2 +-
 source3/rpc_server/rpc_ncacn_np.c |   10 +++++++++-
 3 files changed, 11 insertions(+), 2 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source3/include/proto.h b/source3/include/proto.h
index 00e9de4..0cca013 100644
--- a/source3/include/proto.h
+++ b/source3/include/proto.h
@@ -4107,6 +4107,7 @@ NTSTATUS rpc_pipe_open_tcp(TALLOC_CTX *mem_ctx, const 
char *host,
 NTSTATUS rpc_pipe_open_ncalrpc(TALLOC_CTX *mem_ctx, const char *socket_path,
                               const struct ndr_syntax_id *abstract_syntax,
                               struct rpc_pipe_client **presult);
+struct dcerpc_binding_handle *rpccli_bh_create(struct rpc_pipe_client *c);
 struct pipes_struct *make_internal_rpc_pipe_p(TALLOC_CTX *mem_ctx,
                                              const struct ndr_syntax_id 
*syntax,
                                              struct client_address *client_id,
diff --git a/source3/rpc_client/cli_pipe.c b/source3/rpc_client/cli_pipe.c
index df1535c..a5e8e73 100644
--- a/source3/rpc_client/cli_pipe.c
+++ b/source3/rpc_client/cli_pipe.c
@@ -2181,7 +2181,7 @@ static const struct dcerpc_binding_handle_ops 
rpccli_bh_ops = {
 };
 
 /* initialise a rpc_pipe_client binding handle */
-static struct dcerpc_binding_handle *rpccli_bh_create(struct rpc_pipe_client 
*c)
+struct dcerpc_binding_handle *rpccli_bh_create(struct rpc_pipe_client *c)
 {
        struct dcerpc_binding_handle *h;
        struct rpccli_bh_state *hs;
diff --git a/source3/rpc_server/rpc_ncacn_np.c 
b/source3/rpc_server/rpc_ncacn_np.c
index 896a53d..af21ec2 100644
--- a/source3/rpc_server/rpc_ncacn_np.c
+++ b/source3/rpc_server/rpc_ncacn_np.c
@@ -762,6 +762,13 @@ static NTSTATUS rpc_pipe_open_external(TALLOC_CTX *mem_ctx,
                goto done;
        }
 
+       result->binding_handle = rpccli_bh_create(result);
+       if (result->binding_handle == NULL) {
+               status = NT_STATUS_NO_MEMORY;
+               DEBUG(0, ("Failed to create binding handle.\n"));
+               goto done;
+       }
+
        result->auth = talloc_zero(result, struct pipe_auth_data);
        if (!result->auth) {
                status = NT_STATUS_NO_MEMORY;
@@ -778,9 +785,10 @@ static NTSTATUS rpc_pipe_open_external(TALLOC_CTX *mem_ctx,
 
        status = rpc_pipe_bind(result, auth);
        if (!NT_STATUS_IS_OK(status)) {
-               DEBUG(0, ("Failed to bind spoolss pipe.\n"));
+               DEBUG(0, ("Failed to bind external pipe.\n"));
                goto done;
        }
+
 done:
        if (!NT_STATUS_IS_OK(status)) {
                TALLOC_FREE(result);


-- 
Samba Shared Repository

Reply via email to