The branch, master has been updated
       via  df09511 s3-rpc_server: Fixed segfaults in rpc daemons.
      from  73bfd16 Fix bug #8307 - brl_close_fnum does not call 
SMB_VFS_BRL_UNLOCK_WINDOWS on all locks

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -----------------------------------------------------------------
commit df09511cf2d4462384b85ef0d0a82e059a93d4c5
Author: Andreas Schneider <[email protected]>
Date:   Mon Jul 18 11:42:43 2011 +0200

    s3-rpc_server: Fixed segfaults in rpc daemons.
    
    Autobuild-User: Andreas Schneider <[email protected]>
    Autobuild-Date: Mon Jul 18 14:01:02 CEST 2011 on sn-devel-104

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

Summary of changes:
 source3/printing/spoolssd.c     |    2 +-
 source3/rpc_server/epmd.c       |    2 +-
 source3/rpc_server/rpc_server.c |    6 +++++-
 source3/rpc_server/rpc_server.h |    3 ++-
 4 files changed, 9 insertions(+), 4 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source3/printing/spoolssd.c b/source3/printing/spoolssd.c
index cb90a9f..039eb88 100644
--- a/source3/printing/spoolssd.c
+++ b/source3/printing/spoolssd.c
@@ -222,7 +222,7 @@ void start_spoolssd(struct tevent_context *ev_ctx,
                exit(1);
        }
 
-       if (!setup_named_pipe_socket(SPOOLSS_PIPE_NAME, ev_ctx)) {
+       if (!setup_named_pipe_socket(SPOOLSS_PIPE_NAME, ev_ctx, msg_ctx)) {
                exit(1);
        }
 
diff --git a/source3/rpc_server/epmd.c b/source3/rpc_server/epmd.c
index bb241ff..6f3959b 100644
--- a/source3/rpc_server/epmd.c
+++ b/source3/rpc_server/epmd.c
@@ -274,7 +274,7 @@ void start_epmd(struct tevent_context *ev_ctx,
                exit(1);
        }
 
-       ok = setup_named_pipe_socket("epmapper", ev_ctx);
+       ok = setup_named_pipe_socket("epmapper", ev_ctx, msg_ctx);
        if (!ok) {
                DEBUG(0, ("Failed to open epmd named pipe!\n"));
                exit(1);
diff --git a/source3/rpc_server/rpc_server.c b/source3/rpc_server/rpc_server.c
index 2dffaff..6eef6f1 100644
--- a/source3/rpc_server/rpc_server.c
+++ b/source3/rpc_server/rpc_server.c
@@ -212,7 +212,8 @@ static void named_pipe_listener(struct tevent_context *ev,
                                void *private_data);
 
 bool setup_named_pipe_socket(const char *pipe_name,
-                            struct tevent_context *ev_ctx)
+                            struct tevent_context *ev_ctx,
+                            struct messaging_context *msg_ctx)
 {
        struct dcerpc_ncacn_listen_state *state;
        struct tevent_fd *fde;
@@ -230,6 +231,9 @@ bool setup_named_pipe_socket(const char *pipe_name,
        }
        state->fd = -1;
 
+       state->ev_ctx = ev_ctx;
+       state->msg_ctx = msg_ctx;
+
        /*
         * As lp_ncalrpc_dir() should have 0755, but
         * lp_ncalrpc_dir()/np should have 0700, we need to
diff --git a/source3/rpc_server/rpc_server.h b/source3/rpc_server/rpc_server.h
index aafc962..be6a154 100644
--- a/source3/rpc_server/rpc_server.h
+++ b/source3/rpc_server/rpc_server.h
@@ -27,7 +27,8 @@ typedef bool (*dcerpc_ncacn_disconnect_fn)(struct 
pipes_struct *p);
 void set_incoming_fault(struct pipes_struct *p);
 void process_complete_pdu(struct pipes_struct *p);
 bool setup_named_pipe_socket(const char *pipe_name,
-                            struct tevent_context *ev_ctx);
+                            struct tevent_context *ev_ctx,
+                            struct messaging_context *msg_ctx);
 
 uint16_t setup_dcerpc_ncacn_tcpip_socket(struct tevent_context *ev_ctx,
                                         struct messaging_context *msg_ctx,


-- 
Samba Shared Repository

Reply via email to