[SCM] Samba Shared Repository - branch master updated

Stefan Metzmacher metze at samba.org
Sun Jun 3 15:38:04 MDT 2012


The branch, master has been updated
       via  aea996d s3:libsmb: get rid of cli_smb_req_*,cli_smb_wct_ofs,cli_smb_chain_send
       via  9c80b91 s3:smbd: make conn_close_all() a void function
       via  9997b0a Revert "s3: Fix bug 8371"
      from  abcd095 s3:smbd/close: call del_share_mode() directly before TALLOC_FREE(lck)

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


- Log -----------------------------------------------------------------
commit aea996dba6d99d75b508628118c268f8f0619191
Author: Luk Claes <luk at debian.org>
Date:   Sat May 26 11:58:34 2012 +0200

    s3:libsmb: get rid of cli_smb_req_*,cli_smb_wct_ofs,cli_smb_chain_send
    
    Signed-off-by: Luk Claes <luk at debian.org>
    Signed-off-by: Stefan Metzmacher <metze at samba.org>
    
    Autobuild-User: Stefan Metzmacher <metze at samba.org>
    Autobuild-Date: Sun Jun  3 23:37:02 CEST 2012 on sn-devel-104

commit 9c80b91d8f793ad97736d8fb75566ca4d907e9cd
Author: Stefan Metzmacher <metze at samba.org>
Date:   Sun Jun 3 16:09:23 2012 +0200

    s3:smbd: make conn_close_all() a void function
    
    metze

commit 9997b0ae39d68e536a93a68c5a3d95cbc48ec643
Author: Stefan Metzmacher <metze at samba.org>
Date:   Sat May 26 11:04:16 2012 +0200

    Revert "s3: Fix bug 8371"
    
    This reverts commit 2642f385887fbd3aecd4286a4d6223a21d981714.
    
    This is not needed anymore, as 035342c11719d1daa647c0b2ae7cec27a969f83a
    "Fix bug #8373 - Can't join XP Pro workstations to 3.6.1 DC." is
    the more generic fix for the problem.
    
    metze

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

Summary of changes:
 librpc/ndr/ndr_nbt.c          |    2 --
 source3/include/async_smb.h   |    7 -------
 source3/libsmb/async_smb.c    |   39 ---------------------------------------
 source3/libsmb/cliconnect.c   |    4 ++--
 source3/libsmb/clifile.c      |    4 ++--
 source3/libsmb/clioplock.c    |    2 +-
 source3/libsmb/clireadwrite.c |    6 +++---
 source3/smbd/conn_idle.c      |    7 +------
 source3/smbd/proto.h          |    2 +-
 source3/smbd/server_exit.c    |    2 +-
 source3/torture/test_chain3.c |    3 ++-
 source3/torture/torture.c     |    4 ++--
 12 files changed, 15 insertions(+), 67 deletions(-)


Changeset truncated at 500 lines:

diff --git a/librpc/ndr/ndr_nbt.c b/librpc/ndr/ndr_nbt.c
index 29013f0..f2a1ca3 100644
--- a/librpc/ndr/ndr_nbt.c
+++ b/librpc/ndr/ndr_nbt.c
@@ -234,7 +234,6 @@ enum ndr_err_code ndr_push_NETLOGON_SAM_LOGON_REQUEST(struct ndr_push *ndr, int
 		if (ndr_size_dom_sid0(&r->sid, ndr->flags)) {
 			struct ndr_push *_ndr_sid;
 			uint32_t _flags_save_DATA_BLOB = ndr->flags;
-			ndr->flags &= ~LIBNDR_FLAG_NOALIGN;
 			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_ALIGN4);
 			NDR_CHECK(ndr_push_DATA_BLOB(ndr, NDR_SCALARS, r->_pad));
 			ndr->flags = _flags_save_DATA_BLOB;
@@ -280,7 +279,6 @@ enum ndr_err_code ndr_pull_NETLOGON_SAM_LOGON_REQUEST(struct ndr_pull *ndr, int
 		if (r->sid_size) {
 			uint32_t _flags_save_DATA_BLOB = ndr->flags;
 			struct ndr_pull *_ndr_sid;
-			ndr->flags &= ~LIBNDR_FLAG_NOALIGN;
 			ndr_set_flags(&ndr->flags, LIBNDR_FLAG_ALIGN4);
 			NDR_CHECK(ndr_pull_DATA_BLOB(ndr, NDR_SCALARS, &r->_pad));
 			ndr->flags = _flags_save_DATA_BLOB;
diff --git a/source3/include/async_smb.h b/source3/include/async_smb.h
index 121a6ec..00c2313 100644
--- a/source3/include/async_smb.h
+++ b/source3/include/async_smb.h
@@ -30,13 +30,6 @@ struct tevent_req *cli_smb_req_create(TALLOC_CTX *mem_ctx,
 				      uint8_t wct, uint16_t *vwv,
 				      int iov_count,
 				      struct iovec *bytes_iov);
-NTSTATUS cli_smb_req_send(struct tevent_req *req);
-size_t cli_smb_wct_ofs(struct tevent_req **reqs, int num_reqs);
-NTSTATUS cli_smb_chain_send(struct tevent_req **reqs, int num_reqs);
-uint16_t cli_smb_req_mid(struct tevent_req *req);
-void cli_smb_req_set_mid(struct tevent_req *req, uint16_t mid);
-uint32_t cli_smb_req_seqnum(struct tevent_req *req);
-void cli_smb_req_set_seqnum(struct tevent_req *req, uint32_t seqnum);
 struct tevent_req *cli_smb_send(TALLOC_CTX *mem_ctx, struct tevent_context *ev,
 				struct cli_state *cli,
 				uint8_t smb_command, uint8_t additional_flags,
diff --git a/source3/libsmb/async_smb.c b/source3/libsmb/async_smb.c
index 62aaa56..e30435a 100644
--- a/source3/libsmb/async_smb.c
+++ b/source3/libsmb/async_smb.c
@@ -23,30 +23,6 @@
 #include "async_smb.h"
 #include "../libcli/smb/smbXcli_base.h"
 
-/*
- * Fetch a smb request's mid. Only valid after the request has been sent by
- * cli_smb_req_send().
- */
-uint16_t cli_smb_req_mid(struct tevent_req *req)
-{
-	return smb1cli_req_mid(req);
-}
-
-void cli_smb_req_set_mid(struct tevent_req *req, uint16_t mid)
-{
-	smb1cli_req_set_mid(req, mid);
-}
-
-uint32_t cli_smb_req_seqnum(struct tevent_req *req)
-{
-	return smb1cli_req_seqnum(req);
-}
-
-void cli_smb_req_set_seqnum(struct tevent_req *req, uint32_t seqnum)
-{
-	smb1cli_req_set_seqnum(req, seqnum);
-}
-
 struct cli_smb_req_state {
 	struct cli_state *cli;
 	uint8_t smb_command;
@@ -131,11 +107,6 @@ struct tevent_req *cli_smb_req_create(TALLOC_CTX *mem_ctx,
 	return state->req;
 }
 
-NTSTATUS cli_smb_req_send(struct tevent_req *req)
-{
-	return smb1cli_req_chain_submit(&req, 1);
-}
-
 struct tevent_req *cli_smb_send(TALLOC_CTX *mem_ctx,
 				struct tevent_context *ev,
 				struct cli_state *cli,
@@ -308,13 +279,3 @@ NTSTATUS cli_smb_recv(struct tevent_req *req,
 
 	return status;
 }
-
-size_t cli_smb_wct_ofs(struct tevent_req **reqs, int num_reqs)
-{
-	return smb1cli_req_wct_ofs(reqs, num_reqs);
-}
-
-NTSTATUS cli_smb_chain_send(struct tevent_req **reqs, int num_reqs)
-{
-	return smb1cli_req_chain_submit(reqs, num_reqs);
-}
diff --git a/source3/libsmb/cliconnect.c b/source3/libsmb/cliconnect.c
index 9481e75..0858be9 100644
--- a/source3/libsmb/cliconnect.c
+++ b/source3/libsmb/cliconnect.c
@@ -453,7 +453,7 @@ struct tevent_req *cli_session_setup_guest_send(TALLOC_CTX *mem_ctx,
 		return NULL;
 	}
 
-	status = cli_smb_req_send(subreq);
+	status = smb1cli_req_chain_submit(&subreq, 1);
 	if (NT_STATUS_IS_OK(status)) {
 		tevent_req_nterror(req, status);
 		return tevent_req_post(req, ev);
@@ -2395,7 +2395,7 @@ struct tevent_req *cli_tcon_andx_send(TALLOC_CTX *mem_ctx,
 	if (subreq == NULL) {
 		return req;
 	}
-	status = cli_smb_req_send(subreq);
+	status = smb1cli_req_chain_submit(&subreq, 1);
 	if (!NT_STATUS_IS_OK(status)) {
 		tevent_req_nterror(req, status);
 		return tevent_req_post(req, ev);
diff --git a/source3/libsmb/clifile.c b/source3/libsmb/clifile.c
index 3bdb49d..b762a37 100644
--- a/source3/libsmb/clifile.c
+++ b/source3/libsmb/clifile.c
@@ -2226,7 +2226,7 @@ struct tevent_req *cli_openx_send(TALLOC_CTX *mem_ctx, struct event_context *ev,
 		return NULL;
 	}
 
-	status = cli_smb_req_send(subreq);
+	status = smb1cli_req_chain_submit(&subreq, 1);
 	if (tevent_req_nterror(req, status)) {
 		return tevent_req_post(req, ev);
 	}
@@ -2472,7 +2472,7 @@ struct tevent_req *cli_close_send(TALLOC_CTX *mem_ctx,
 		return NULL;
 	}
 
-	status = cli_smb_req_send(subreq);
+	status = smb1cli_req_chain_submit(&subreq, 1);
 	if (tevent_req_nterror(req, status)) {
 		return tevent_req_post(req, ev);
 	}
diff --git a/source3/libsmb/clioplock.c b/source3/libsmb/clioplock.c
index e6c20e4..2c5ec0b 100644
--- a/source3/libsmb/clioplock.c
+++ b/source3/libsmb/clioplock.c
@@ -51,7 +51,7 @@ struct tevent_req *cli_smb_oplock_break_waiter_send(TALLOC_CTX *mem_ctx,
 	if (tevent_req_nomem(subreq, req)) {
 		return tevent_req_post(req, ev);
 	}
-	cli_smb_req_set_mid(subreq, 0xffff);
+	smb1cli_req_set_mid(subreq, 0xffff);
 
 	if (!smbXcli_req_set_pending(subreq)) {
 		tevent_req_nterror(req, NT_STATUS_NO_MEMORY);
diff --git a/source3/libsmb/clireadwrite.c b/source3/libsmb/clireadwrite.c
index f2e1dbf..b7ee7d5 100644
--- a/source3/libsmb/clireadwrite.c
+++ b/source3/libsmb/clireadwrite.c
@@ -194,7 +194,7 @@ struct tevent_req *cli_read_andx_send(TALLOC_CTX *mem_ctx,
 		return NULL;
 	}
 
-	status = cli_smb_req_send(subreq);
+	status = smb1cli_req_chain_submit(&subreq, 1);
 	if (tevent_req_nterror(req, status)) {
 		return tevent_req_post(req, ev);
 	}
@@ -867,7 +867,7 @@ struct tevent_req *cli_write_andx_create(TALLOC_CTX *mem_ctx,
 	SSVAL(vwv+10, 0, state->size);
 
 	SSVAL(vwv+11, 0,
-	      cli_smb_wct_ofs(reqs_before, num_reqs_before)
+	      smb1cli_req_wct_ofs(reqs_before, num_reqs_before)
 	      + 1		/* the wct field */
 	      + wct * 2		/* vwv */
 	      + 2		/* num_bytes field */
@@ -908,7 +908,7 @@ struct tevent_req *cli_write_andx_send(TALLOC_CTX *mem_ctx,
 		return NULL;
 	}
 
-	status = cli_smb_req_send(subreq);
+	status = smb1cli_req_chain_submit(&subreq, 1);
 	if (tevent_req_nterror(req, status)) {
 		return tevent_req_post(req, ev);
 	}
diff --git a/source3/smbd/conn_idle.c b/source3/smbd/conn_idle.c
index f33bd8c..96b76ee 100644
--- a/source3/smbd/conn_idle.c
+++ b/source3/smbd/conn_idle.c
@@ -85,10 +85,8 @@ bool conn_idle_all(struct smbd_server_connection *sconn, time_t t)
  Return true if any were closed.
 ****************************************************************************/
 
-bool conn_close_all(struct smbd_server_connection *sconn)
+void conn_close_all(struct smbd_server_connection *sconn)
 {
-	bool ret = false;
-
 	if (sconn->using_smb2) {
 		/* SMB2 */
 		struct smbd_smb2_session *sess;
@@ -101,7 +99,6 @@ bool conn_close_all(struct smbd_server_connection *sconn)
 			for (tcon = sess->tcons.list; tcon; tcon = tc_next) {
 				tc_next = tcon->next;
 				TALLOC_FREE(tcon);
-				ret = true;
 			}
 		}
 	} else {
@@ -112,10 +109,8 @@ bool conn_close_all(struct smbd_server_connection *sconn)
 			next=conn->next;
 			set_current_service(conn, 0, True);
 			close_cnum(conn, conn->vuid);
-			ret = true;
 		}
 	}
-	return ret;
 }
 
 
diff --git a/source3/smbd/proto.h b/source3/smbd/proto.h
index 7fdbbea..6358286 100644
--- a/source3/smbd/proto.h
+++ b/source3/smbd/proto.h
@@ -149,7 +149,7 @@ bool conn_snum_used(struct smbd_server_connection *sconn, int snum);
 connection_struct *conn_find(struct smbd_server_connection *sconn,
 			     unsigned cnum);
 connection_struct *conn_new(struct smbd_server_connection *sconn);
-bool conn_close_all(struct smbd_server_connection *sconn);
+void conn_close_all(struct smbd_server_connection *sconn);
 bool conn_idle_all(struct smbd_server_connection *sconn, time_t t);
 void conn_clear_vuid_caches(struct smbd_server_connection *sconn, uint16 vuid);
 void conn_free(connection_struct *conn);
diff --git a/source3/smbd/server_exit.c b/source3/smbd/server_exit.c
index 9ff3cad..593bdac 100644
--- a/source3/smbd/server_exit.c
+++ b/source3/smbd/server_exit.c
@@ -107,7 +107,7 @@ static void exit_server_common(enum server_exit_reason how,
 			bool found = false;
 			files_forall(sconn, log_writeable_file_fn, &found);
 		}
-		(void)conn_close_all(sconn);
+		conn_close_all(sconn);
 		invalidate_all_vuids(sconn);
 	}
 
diff --git a/source3/torture/test_chain3.c b/source3/torture/test_chain3.c
index 7b9eeb0..a4b30ea 100644
--- a/source3/torture/test_chain3.c
+++ b/source3/torture/test_chain3.c
@@ -25,6 +25,7 @@
 #include "async_smb.h"
 #include "lib/util/tevent_ntstatus.h"
 #include "libcli/security/security.h"
+#include "libcli/smb/smbXcli_base.h"
 
 struct chain3_andx_state {
 	uint16_t fnum;
@@ -75,7 +76,7 @@ static struct tevent_req *chain3_andx_send(TALLOC_CTX *mem_ctx,
 	}
 	tevent_req_set_callback(subreq, chain3_andx_close_done, req);
 
-	status = cli_smb_chain_send(smbreqs, ARRAY_SIZE(smbreqs));
+	status = smb1cli_req_chain_submit(smbreqs, ARRAY_SIZE(smbreqs));
 	if (tevent_req_nterror(req, status)) {
 		return tevent_req_post(req, ev);
 	}
diff --git a/source3/torture/torture.c b/source3/torture/torture.c
index 1f463f6..1fc80fe 100644
--- a/source3/torture/torture.c
+++ b/source3/torture/torture.c
@@ -6540,7 +6540,7 @@ static bool run_chain1(int dummy)
 	if (reqs[2] == NULL) return false;
 	tevent_req_set_callback(reqs[2], chain1_close_completion, &done);
 
-	status = cli_smb_chain_send(smbreqs, ARRAY_SIZE(smbreqs));
+	status = smb1cli_req_chain_submit(smbreqs, ARRAY_SIZE(smbreqs));
 	if (!NT_STATUS_IS_OK(status)) {
 		return false;
 	}
@@ -6596,7 +6596,7 @@ static bool run_chain2(int dummy)
 	if (reqs[1] == NULL) return false;
 	tevent_req_set_callback(reqs[1], chain2_tcon_completion, &done);
 
-	status = cli_smb_chain_send(smbreqs, ARRAY_SIZE(smbreqs));
+	status = smb1cli_req_chain_submit(smbreqs, ARRAY_SIZE(smbreqs));
 	if (!NT_STATUS_IS_OK(status)) {
 		return false;
 	}


-- 
Samba Shared Repository


More information about the samba-cvs mailing list