[SCM] Samba Shared Repository - branch master updated

Stefan Metzmacher metze at samba.org
Mon Aug 16 06:37:03 MDT 2010


The branch, master has been updated
       via  760948a... s3:winbindd: remove rpc_pipe_client references from winbind_dual_ndr code
       via  13c744f... s3:winbindd: use dcerpc_wbint_* functions instead of rpccli_wbint_*
       via  2ccaa23... s3:winbindd: add binding_handle to struct winbindd_child
       via  e79c809... s3:include: remove unused dispatch* fn pointers from rpc_pipe_client
       via  7f2343b... s3:winbindd: remove unused wb_ndr_dispatch* functions
       via  1237909... s3:rpc_server: remove unused rpc_pipe_internal_dispatch()
       via  745f63f... s3:rpc_client: remove unused cli_do_rpc_ndr* functions
       via  dd16d3b... s3:rpc_client: remove unused rpc_pipe_open_local()
      from  d418f9f... s3-printing: Lift the use of smbd_server_fd from job_submit.

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


- Log -----------------------------------------------------------------
commit 760948a5d4b65fe9353357e701e854f437adf7cb
Author: Stefan Metzmacher <metze at samba.org>
Date:   Thu Aug 12 15:28:27 2010 +0200

    s3:winbindd: remove rpc_pipe_client references from winbind_dual_ndr code
    
    metze

commit 13c744fa30b94e6ab4321c69a8a3d01ef42845d7
Author: Stefan Metzmacher <metze at samba.org>
Date:   Thu Aug 12 15:13:54 2010 +0200

    s3:winbindd: use dcerpc_wbint_* functions instead of rpccli_wbint_*
    
    metze

commit 2ccaa2355872612559935090cb032031659ea284
Author: Stefan Metzmacher <metze at samba.org>
Date:   Thu Aug 12 15:12:11 2010 +0200

    s3:winbindd: add binding_handle to struct winbindd_child
    
    metze

commit e79c8098d62d415d988a840f71f5733b9dfb9f68
Author: Stefan Metzmacher <metze at samba.org>
Date:   Thu Aug 12 14:50:47 2010 +0200

    s3:include: remove unused dispatch* fn pointers from rpc_pipe_client
    
    metze

commit 7f2343be122e80a426eeea29ed602fbc84bdc77b
Author: Stefan Metzmacher <metze at samba.org>
Date:   Thu Aug 12 14:49:47 2010 +0200

    s3:winbindd: remove unused wb_ndr_dispatch* functions
    
    metze

commit 12379097abbab06f7a41bdcd00093f0c7ba08a8f
Author: Stefan Metzmacher <metze at samba.org>
Date:   Thu Aug 12 14:48:27 2010 +0200

    s3:rpc_server: remove unused rpc_pipe_internal_dispatch()
    
    metze

commit 745f63fd1ead248d5a7cd257c0cb38af3ed9dd8b
Author: Stefan Metzmacher <metze at samba.org>
Date:   Thu Aug 12 14:46:24 2010 +0200

    s3:rpc_client: remove unused cli_do_rpc_ndr* functions
    
    metze

commit dd16d3b2d6cdaa036fe12c80b06d9963d20f5b27
Author: Stefan Metzmacher <metze at samba.org>
Date:   Thu Aug 12 14:39:42 2010 +0200

    s3:rpc_client: remove unused rpc_pipe_open_local()
    
    metze

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

Summary of changes:
 source3/Makefile.in                             |    8 +-
 source3/include/client.h                        |   16 -
 source3/include/proto.h                         |    4 -
 source3/rpc_client/cli_pipe.c                   |   74 ---
 source3/rpc_client/ndr.c                        |  174 -----
 source3/rpc_client/rpc_transport_smbd.c         |  767 -----------------------
 source3/rpc_server/rpc_ncacn_np_internal.c      |  145 -----
 source3/winbindd/wb_dsgetdcname.c               |    6 +-
 source3/winbindd/wb_gid2sid.c                   |    6 +-
 source3/winbindd/wb_group_members.c             |    6 +-
 source3/winbindd/wb_lookupname.c                |   12 +-
 source3/winbindd/wb_lookupsid.c                 |   10 +-
 source3/winbindd/wb_lookupuseraliases.c         |    6 +-
 source3/winbindd/wb_lookupusergroups.c          |    6 +-
 source3/winbindd/wb_next_grent.c                |   10 +-
 source3/winbindd/wb_query_user_list.c           |    8 +-
 source3/winbindd/wb_queryuser.c                 |    4 +-
 source3/winbindd/wb_seqnum.c                    |    6 +-
 source3/winbindd/wb_sid2gid.c                   |    4 +-
 source3/winbindd/wb_sid2uid.c                   |    4 +-
 source3/winbindd/wb_uid2sid.c                   |    6 +-
 source3/winbindd/winbindd.h                     |    2 +-
 source3/winbindd/winbindd_allocate_gid.c        |    4 +-
 source3/winbindd/winbindd_allocate_uid.c        |    4 +-
 source3/winbindd/winbindd_change_machine_acct.c |    6 +-
 source3/winbindd/winbindd_check_machine_acct.c  |    6 +-
 source3/winbindd/winbindd_dsgetdcname.c         |    6 +-
 source3/winbindd/winbindd_dual.c                |    4 +-
 source3/winbindd/winbindd_dual_ndr.c            |  243 +-------
 source3/winbindd/winbindd_list_groups.c         |    6 +-
 source3/winbindd/winbindd_list_users.c          |    6 +-
 source3/winbindd/winbindd_lookuprids.c          |    6 +-
 source3/winbindd/winbindd_ping_dc.c             |    4 +-
 source3/winbindd/winbindd_proto.h               |    6 +-
 34 files changed, 91 insertions(+), 1494 deletions(-)
 delete mode 100644 source3/rpc_client/ndr.c
 delete mode 100644 source3/rpc_client/rpc_transport_smbd.c


Changeset truncated at 500 lines:

diff --git a/source3/Makefile.in b/source3/Makefile.in
index 755fdb2..fac4e0b 100644
--- a/source3/Makefile.in
+++ b/source3/Makefile.in
@@ -316,8 +316,6 @@ LIBNDR_OBJ = ../librpc/ndr/ndr_basic.o \
 	     librpc/ndr/util.o \
 	     librpc/gen_ndr/ndr_dcerpc.o
 
-RPCCLIENT_NDR_OBJ = rpc_client/ndr.o
-
 LIBNDR_GEN_OBJ0 = librpc/gen_ndr/ndr_samr.o \
 		  librpc/gen_ndr/ndr_lsa.o
 
@@ -595,8 +593,7 @@ LIBMSRPC_GEN_OBJ = librpc/gen_ndr/cli_lsa.o \
 		   ../librpc/rpc/dcerpc_util.o \
 		   ../librpc/rpc/binding_handle.o \
 		   librpc/rpc/dcerpc_helpers.o \
-		   $(LIBNDR_GEN_OBJ) \
-		   $(RPCCLIENT_NDR_OBJ)
+		   $(LIBNDR_GEN_OBJ)
 
 #
 # registry-related objects
@@ -706,8 +703,7 @@ RPC_CLIENT_OBJ = rpc_client/cli_pipe.o \
 		 librpc/rpc/dcerpc_spnego.o \
 		 librpc/rpc/rpc_common.o \
 		 rpc_client/rpc_transport_np.o \
-		 rpc_client/rpc_transport_sock.o \
-		 rpc_client/rpc_transport_smbd.o
+		 rpc_client/rpc_transport_sock.o
 
 LOCKING_OBJ = locking/locking.o locking/brlock.o locking/posix.o
 
diff --git a/source3/include/client.h b/source3/include/client.h
index c702996..326931c 100644
--- a/source3/include/client.h
+++ b/source3/include/client.h
@@ -115,22 +115,6 @@ struct rpc_pipe_client {
 	struct ndr_syntax_id abstract_syntax;
 	struct ndr_syntax_id transfer_syntax;
 
-	NTSTATUS (*dispatch) (struct rpc_pipe_client *cli,
-			TALLOC_CTX *mem_ctx,
-			const struct ndr_interface_table *table,
-			uint32_t opnum, void *r);
-
-	struct tevent_req *(*dispatch_send)(
-		TALLOC_CTX *mem_ctx,
-		struct tevent_context *ev,
-		struct rpc_pipe_client *cli,
-		const struct ndr_interface_table *table,
-		uint32_t opnum,
-		void *r);
-	NTSTATUS (*dispatch_recv)(struct tevent_req *req,
-				  TALLOC_CTX *mem_ctx);
-
-
 	char *desthost;
 	char *srv_name_slash;
 
diff --git a/source3/include/proto.h b/source3/include/proto.h
index 80d23e5..70a2102 100644
--- a/source3/include/proto.h
+++ b/source3/include/proto.h
@@ -4614,10 +4614,6 @@ NTSTATUS cli_rpc_pipe_open_spnego_krb5(struct cli_state *cli,
 NTSTATUS cli_get_session_key(TALLOC_CTX *mem_ctx,
 			     struct rpc_pipe_client *cli,
 			     DATA_BLOB *session_key);
-NTSTATUS rpc_pipe_open_local(TALLOC_CTX *mem_ctx,
-			     struct rpc_cli_smbd_conn *conn,
-			     const struct ndr_syntax_id *syntax,
-			     struct rpc_pipe_client **presult);
 
 /* The following definitions come from rpc_client/rpc_transport_np.c  */
 
diff --git a/source3/rpc_client/cli_pipe.c b/source3/rpc_client/cli_pipe.c
index 18724a6..840148b 100644
--- a/source3/rpc_client/cli_pipe.c
+++ b/source3/rpc_client/cli_pipe.c
@@ -2447,9 +2447,6 @@ static NTSTATUS rpc_pipe_open_tcp_port(TALLOC_CTX *mem_ctx, const char *host,
 
 	result->abstract_syntax = *abstract_syntax;
 	result->transfer_syntax = ndr_transfer_syntax;
-	result->dispatch = cli_do_rpc_ndr;
-	result->dispatch_send = cli_do_rpc_ndr_send;
-	result->dispatch_recv = cli_do_rpc_ndr_recv;
 
 	result->desthost = talloc_strdup(result, host);
 	result->srv_name_slash = talloc_asprintf_strupper_m(
@@ -2664,9 +2661,6 @@ NTSTATUS rpc_pipe_open_ncalrpc(TALLOC_CTX *mem_ctx, const char *socket_path,
 
 	result->abstract_syntax = *abstract_syntax;
 	result->transfer_syntax = ndr_transfer_syntax;
-	result->dispatch = cli_do_rpc_ndr;
-	result->dispatch_send = cli_do_rpc_ndr_send;
-	result->dispatch_recv = cli_do_rpc_ndr_recv;
 
 	result->desthost = get_myname(result);
 	result->srv_name_slash = talloc_asprintf_strupper_m(
@@ -2763,9 +2757,6 @@ static NTSTATUS rpc_pipe_open_np(struct cli_state *cli,
 
 	result->abstract_syntax = *abstract_syntax;
 	result->transfer_syntax = ndr_transfer_syntax;
-	result->dispatch = cli_do_rpc_ndr;
-	result->dispatch_send = cli_do_rpc_ndr_send;
-	result->dispatch_recv = cli_do_rpc_ndr_recv;
 	result->desthost = talloc_strdup(result, cli->desthost);
 	result->srv_name_slash = talloc_asprintf_strupper_m(
 		result, "\\\\%s", result->desthost);
@@ -2808,71 +2799,6 @@ static NTSTATUS rpc_pipe_open_np(struct cli_state *cli,
 	return NT_STATUS_OK;
 }
 
-NTSTATUS rpc_pipe_open_local(TALLOC_CTX *mem_ctx,
-			     struct rpc_cli_smbd_conn *conn,
-			     const struct ndr_syntax_id *syntax,
-			     struct rpc_pipe_client **presult)
-{
-	struct rpc_pipe_client *result;
-	struct pipe_auth_data *auth;
-	NTSTATUS status;
-
-	result = talloc(mem_ctx, struct rpc_pipe_client);
-	if (result == NULL) {
-		return NT_STATUS_NO_MEMORY;
-	}
-	result->abstract_syntax = *syntax;
-	result->transfer_syntax = ndr_transfer_syntax;
-	result->dispatch = cli_do_rpc_ndr;
-	result->dispatch_send = cli_do_rpc_ndr_send;
-	result->dispatch_recv = cli_do_rpc_ndr_recv;
-	result->max_xmit_frag = RPC_MAX_PDU_FRAG_LEN;
-	result->max_recv_frag = RPC_MAX_PDU_FRAG_LEN;
-
-	result->desthost = talloc_strdup(result, global_myname());
-	result->srv_name_slash = talloc_asprintf_strupper_m(
-		result, "\\\\%s", global_myname());
-	if ((result->desthost == NULL) || (result->srv_name_slash == NULL)) {
-		TALLOC_FREE(result);
-		return NT_STATUS_NO_MEMORY;
-	}
-
-	status = rpc_transport_smbd_init(result, conn, syntax,
-					 &result->transport);
-	if (!NT_STATUS_IS_OK(status)) {
-		DEBUG(1, ("rpc_transport_smbd_init failed: %s\n",
-			  nt_errstr(status)));
-		TALLOC_FREE(result);
-		return status;
-	}
-
-	status = rpccli_anon_bind_data(result, &auth);
-	if (!NT_STATUS_IS_OK(status)) {
-		DEBUG(1, ("rpccli_anon_bind_data failed: %s\n",
-			  nt_errstr(status)));
-		TALLOC_FREE(result);
-		return status;
-	}
-
-	status = rpc_pipe_bind(result, auth);
-	if (!NT_STATUS_IS_OK(status)) {
-		DEBUG(1, ("rpc_pipe_bind failed: %s\n", nt_errstr(status)));
-		TALLOC_FREE(result);
-		return status;
-	}
-
-	result->transport->transport = NCACN_INTERNAL;
-
-	result->binding_handle = rpccli_bh_create(result);
-	if (result->binding_handle == NULL) {
-		TALLOC_FREE(result);
-		return NT_STATUS_NO_MEMORY;
-	}
-
-	*presult = result;
-	return NT_STATUS_OK;
-}
-
 /****************************************************************************
  Open a pipe to a remote server.
  ****************************************************************************/
diff --git a/source3/rpc_client/ndr.c b/source3/rpc_client/ndr.c
deleted file mode 100644
index a1642c0..0000000
--- a/source3/rpc_client/ndr.c
+++ /dev/null
@@ -1,174 +0,0 @@
-/* 
-   Unix SMB/CIFS implementation.
-
-   libndr interface
-
-   Copyright (C) Jelmer Vernooij 2006
-   Copyright (C) Volker Lendecke 2009
-   
-   This program is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by
-   the Free Software Foundation; either version 3 of the License, or
-   (at your option) any later version.
-   
-   This program is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-   GNU General Public License for more details.
-   
-   You should have received a copy of the GNU General Public License
-   along with this program.  If not, see <http://www.gnu.org/licenses/>.
-*/
-
-#include "includes.h"
-
-struct cli_do_rpc_ndr_state {
-	const struct ndr_interface_call *call;
-	DATA_BLOB q_pdu;
-	DATA_BLOB r_pdu;
-	void *r;
-};
-
-static void cli_do_rpc_ndr_done(struct tevent_req *subreq);
-
-struct tevent_req *cli_do_rpc_ndr_send(TALLOC_CTX *mem_ctx,
-				       struct tevent_context *ev,
-				       struct rpc_pipe_client *cli,
-				       const struct ndr_interface_table *table,
-				       uint32_t opnum,
-				       void *r)
-{
-	struct tevent_req *req, *subreq;
-	struct cli_do_rpc_ndr_state *state;
-	struct ndr_push *push;
-	enum ndr_err_code ndr_err;
-
-	req = tevent_req_create(mem_ctx, &state,
-				struct cli_do_rpc_ndr_state);
-	if (req == NULL) {
-		return NULL;
-	}
-
-	if (!ndr_syntax_id_equal(&table->syntax_id, &cli->abstract_syntax)
-	    || (opnum >= table->num_calls)) {
-		tevent_req_nterror(req, NT_STATUS_INVALID_PARAMETER);
-		return tevent_req_post(req, ev);
-	}
-
-	state->r = r;
-	state->call = &table->calls[opnum];
-
-	if (DEBUGLEVEL >= 10) {
-		ndr_print_function_debug(state->call->ndr_print,
-					 state->call->name, NDR_IN, r);
-	}
-
-	push = ndr_push_init_ctx(state);
-	if (tevent_req_nomem(push, req)) {
-		return tevent_req_post(req, ev);
-	}
-
-	ndr_err = state->call->ndr_push(push, NDR_IN, r);
-	if (!NDR_ERR_CODE_IS_SUCCESS(ndr_err)) {
-		tevent_req_nterror(req, ndr_map_error2ntstatus(ndr_err));
-		TALLOC_FREE(push);
-		return tevent_req_post(req, ev);
-	}
-
-	state->q_pdu = ndr_push_blob(push);
-	talloc_steal(mem_ctx, state->q_pdu.data);
-	TALLOC_FREE(push);
-
-	subreq = rpc_api_pipe_req_send(state, ev, cli, opnum, &state->q_pdu);
-	if (tevent_req_nomem(subreq, req)) {
-		return tevent_req_post(req, ev);
-	}
-	tevent_req_set_callback(subreq, cli_do_rpc_ndr_done, req);
-	return req;
-}
-
-static void cli_do_rpc_ndr_done(struct tevent_req *subreq)
-{
-	struct tevent_req *req = tevent_req_callback_data(
-		subreq, struct tevent_req);
-	struct cli_do_rpc_ndr_state *state = tevent_req_data(
-		req, struct cli_do_rpc_ndr_state);
-	NTSTATUS status;
-
-	status = rpc_api_pipe_req_recv(subreq, state, &state->r_pdu);
-	TALLOC_FREE(subreq);
-	if (!NT_STATUS_IS_OK(status)) {
-		tevent_req_nterror(req, status);
-		return;
-	}
-	tevent_req_done(req);
-}
-
-NTSTATUS cli_do_rpc_ndr_recv(struct tevent_req *req, TALLOC_CTX *mem_ctx)
-{
-	struct cli_do_rpc_ndr_state *state = tevent_req_data(
-		req, struct cli_do_rpc_ndr_state);
-	struct ndr_pull *pull;
-	enum ndr_err_code ndr_err;
-	NTSTATUS status;
-
-	if (tevent_req_is_nterror(req, &status)) {
-		return status;
-	}
-
-	pull = ndr_pull_init_blob(&state->r_pdu, mem_ctx);
-	if (pull == NULL) {
-		return NT_STATUS_NO_MEMORY;
-	}
-
-	/* have the ndr parser alloc memory for us */
-	pull->flags |= LIBNDR_FLAG_REF_ALLOC;
-	ndr_err = state->call->ndr_pull(pull, NDR_OUT, state->r);
-	TALLOC_FREE(pull);
-
-	if (NDR_ERR_CODE_IS_SUCCESS(ndr_err)) {
-		if (DEBUGLEVEL >= 10) {
-			ndr_print_function_debug(state->call->ndr_print,
-						 state->call->name, NDR_OUT,
-						 state->r);
-		}
-	} else {
-		return ndr_map_error2ntstatus(ndr_err);
-	}
-
-	return NT_STATUS_OK;
-}
-
-NTSTATUS cli_do_rpc_ndr(struct rpc_pipe_client *cli,
-			TALLOC_CTX *mem_ctx,
-			const struct ndr_interface_table *table,
-			uint32_t opnum, void *r)
-{
-	TALLOC_CTX *frame = talloc_stackframe();
-	struct event_context *ev;
-	struct tevent_req *req;
-	NTSTATUS status = NT_STATUS_OK;
-
-	ev = event_context_init(frame);
-	if (ev == NULL) {
-		status = NT_STATUS_NO_MEMORY;
-		goto fail;
-	}
-
-	req = cli_do_rpc_ndr_send(frame, ev, cli, table, opnum, r);
-	if (req == NULL) {
-		status = NT_STATUS_NO_MEMORY;
-		goto fail;
-	}
-
-	if (!tevent_req_poll(req, ev)) {
-		status = map_nt_error_from_unix(errno);
-		goto fail;
-	}
-
-	status = cli_do_rpc_ndr_recv(req, mem_ctx);
-
- fail:
-	TALLOC_FREE(frame);
-	return status;
-}
diff --git a/source3/rpc_client/rpc_transport_smbd.c b/source3/rpc_client/rpc_transport_smbd.c
deleted file mode 100644
index 57fac68..0000000
--- a/source3/rpc_client/rpc_transport_smbd.c
+++ /dev/null
@@ -1,767 +0,0 @@
-/*
- *  Unix SMB/CIFS implementation.
- *  RPC client transport over named pipes to a child smbd
- *  Copyright (C) Volker Lendecke 2009
- *
- *  This program is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License as published by
- *  the Free Software Foundation; either version 3 of the License, or
- *  (at your option) any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, see <http://www.gnu.org/licenses/>.
- */
-
-#include "includes.h"
-
-#undef DBGC_CLASS
-#define DBGC_CLASS DBGC_RPC_CLI
-
-/**
- * struct rpc_cli_smbd_conn represents a forked smbd. This structure should
- * exist only once per process which does the rpc calls.
- *
- * RPC pipe handles can be attached to this smbd connection with
- * rpc_pipe_open_local().
- *
- * For this to work right, we can not use rpc_transport_np directly, because
- * the child smbd wants to write its DEBUG output somewhere. We redirect the
- * child's output to rpc_cli_smbd_conn->stdout_fd. While the RPC calls are
- * active, we have an event context available and attach a fd event to the
- * stdout_df.
- */
-
-struct rpc_cli_smbd_conn {
-	/**
-	 * The smb connection to handle the named pipe traffic over
-	 */
-	struct cli_state *cli;
-
-	/**
-	 * Attached to stdout in the forked smbd, this is where smbd will
-	 * print its DEBUG.
-	 */
-	int stdout_fd;
-
-	/**
-	 * Custom callback provided by the owner of the
-	 * rpc_cli_smbd_conn. Here we send the smbd DEBUG output. Can be NULL.
-	 */
-	struct {
-		void (*fn)(char *buf, size_t len, void *priv);
-		void *priv;
-	} stdout_callback ;
-};
-
-/**
- * Event handler to be called whenever the forked smbd prints debugging
- * output.
- */
-
-static void rpc_cli_smbd_stdout_reader(struct event_context *ev,
-				       struct fd_event *fde,
-				       uint16_t flags, void *priv)
-{
-	struct rpc_cli_smbd_conn *conn = talloc_get_type_abort(
-		priv, struct rpc_cli_smbd_conn);
-	char buf[1024];
-	ssize_t nread;
-
-	if ((flags & EVENT_FD_READ) == 0) {
-		return;
-	}
-
-	nread = read(conn->stdout_fd, buf, sizeof(buf)-1);
-	if (nread < 0) {
-		DEBUG(0, ("Could not read from smbd stdout: %s\n",
-			  strerror(errno)));
-		TALLOC_FREE(fde);
-		return;
-	}
-	if (nread == 0) {
-		DEBUG(0, ("EOF from smbd stdout\n"));
-		TALLOC_FREE(fde);
-		return;
-	}
-	buf[nread] = '\0';
-
-	if (conn->stdout_callback.fn != NULL) {
-		conn->stdout_callback.fn(buf, nread,
-					 conn->stdout_callback.priv);
-	}
-}
-
-/**
- * struct rpc_transport_smbd_state is the link from a struct rpc_pipe_client
- * to the rpc_cli_smbd_conn. We use a named pipe transport as a subtransport.
- */
-
-struct rpc_transport_smbd_state {
-	struct rpc_cli_smbd_conn *conn;
-	struct rpc_cli_transport *sub_transp;
-};
-
-static int rpc_cli_smbd_conn_destructor(struct rpc_cli_smbd_conn *conn)
-{
-	if (conn->cli != NULL) {
-		cli_shutdown(conn->cli);
-		conn->cli = NULL;
-	}
-	if (conn->stdout_fd != -1) {
-		close(conn->stdout_fd);
-		conn->stdout_fd = -1;
-	}
-	return 0;
-}
-
-/*
- * Do the negprot/sesssetup/tcon to an anonymous ipc$ connection
- */
-
-struct get_anon_ipc_state {
-	struct event_context *ev;
-	struct cli_state *cli;
-};
-
-static void get_anon_ipc_negprot_done(struct tevent_req *subreq);
-static void get_anon_ipc_sesssetup_done(struct tevent_req *subreq);
-static void get_anon_ipc_tcon_done(struct tevent_req *subreq);


-- 
Samba Shared Repository


More information about the samba-cvs mailing list