[SCM] Samba Shared Repository - branch master updated

Volker Lendecke vlendec at samba.org
Sun Jan 9 03:41:02 MST 2011


The branch, master has been updated
       via  b57721f s3: Convert enc_blob_send_receive to cli_trans()
       via  3274d80 s3: Fix two incompatible pointer type warnings on Solaris
      from  bdff459 s3: Fix some warnings in the zfsacl module

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


- Log -----------------------------------------------------------------
commit b57721faafad749f01df22bf555841aac158fa71
Author: Volker Lendecke <vl at samba.org>
Date:   Sun Jan 9 10:53:04 2011 +0100

    s3: Convert enc_blob_send_receive to cli_trans()
    
    Autobuild-User: Volker Lendecke <vlendec at samba.org>
    Autobuild-Date: Sun Jan  9 11:40:04 CET 2011 on sn-devel-104

commit 3274d80ffd19ccb5e5783f7577909121d8111854
Author: Volker Lendecke <vl at samba.org>
Date:   Sun Jan 9 10:20:29 2011 +0100

    s3: Fix two incompatible pointer type warnings on Solaris

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

Summary of changes:
 source3/libsmb/clifsinfo.c  |   55 ++++++++++++++++--------------------------
 source3/libsmb/unexpected.c |    4 +-
 2 files changed, 23 insertions(+), 36 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source3/libsmb/clifsinfo.c b/source3/libsmb/clifsinfo.c
index 69e6546..a5f58bb 100644
--- a/source3/libsmb/clifsinfo.c
+++ b/source3/libsmb/clifsinfo.c
@@ -519,48 +519,35 @@ NTSTATUS cli_get_posix_fs_info(struct cli_state *cli,
 
 static NTSTATUS enc_blob_send_receive(struct cli_state *cli, DATA_BLOB *in, DATA_BLOB *out, DATA_BLOB *param_out)
 {
-	uint16 setup;
-	char param[4];
-	char *rparam=NULL, *rdata=NULL;
-	unsigned int rparam_count=0, rdata_count=0;
-	NTSTATUS status = NT_STATUS_OK;
-
-	setup = TRANSACT2_SETFSINFO;
+	uint16_t setup[1];
+	uint8_t param[4];
+	uint8_t *rparam=NULL, *rdata=NULL;
+	uint32_t num_rparam, num_rdata;
+	NTSTATUS status;
 
+	SSVAL(setup+0, 0, TRANSACT2_SETFSINFO);
 	SSVAL(param,0,0);
 	SSVAL(param,2,SMB_REQUEST_TRANSPORT_ENCRYPTION);
 
-	if (!cli_send_trans(cli, SMBtrans2,
-				NULL,
-				0, 0,
-				&setup, 1, 0,
-				param, 4, 0,
-				(char *)in->data, in->length, CLI_BUFFER_SIZE)) {
-		status = cli_nt_error(cli);
-		goto out;
-	}
-
-	if (!cli_receive_trans(cli, SMBtrans2,
-				&rparam, &rparam_count,
-				&rdata, &rdata_count)) {
-		status = cli_nt_error(cli);
-		goto out;
-	}
+	status = cli_trans(talloc_tos(), cli, SMBtrans2, NULL, 0, 0, 0,
+			   setup, 1, 0,
+			   param, 4, 2,
+			   (uint8_t *)in->data, in->length, CLI_BUFFER_SIZE,
+			   NULL,	  /* recv_flags */
+			   NULL, 0, NULL, /* rsetup */
+			   &rparam, 0, &num_rparam,
+			   &rdata, 0, &num_rdata);
 
-	if (cli_is_error(cli)) {
-		status = cli_nt_error(cli);
-		if (!NT_STATUS_EQUAL(status, NT_STATUS_MORE_PROCESSING_REQUIRED)) {
-			goto out;
-		}
+	if (!NT_STATUS_IS_OK(status) &&
+	    !NT_STATUS_EQUAL(status, NT_STATUS_MORE_PROCESSING_REQUIRED)) {
+		return status;
 	}
 
-	*out = data_blob(rdata, rdata_count);
-	*param_out = data_blob(rparam, rparam_count);
-
-  out:
+	*out = data_blob(rdata, num_rdata);
+	*param_out = data_blob(rparam, num_rparam);
 
-	SAFE_FREE(rparam);
-	SAFE_FREE(rdata);
+	TALLOC_FREE(rparam);
+	TALLOC_FREE(rdata);
 	return status;
 }
 
diff --git a/source3/libsmb/unexpected.c b/source3/libsmb/unexpected.c
index 12832f6..faee559 100644
--- a/source3/libsmb/unexpected.c
+++ b/source3/libsmb/unexpected.c
@@ -390,7 +390,7 @@ static void nb_packet_client_send(struct nb_packet_client *client,
 	state->hdr.type = p->packet_type;
 	state->hdr.len = build_packet(state->buf, sizeof(state->buf), p);
 
-	state->iov[0].iov_base = &state->hdr;
+	state->iov[0].iov_base = (char *)&state->hdr;
 	state->iov[0].iov_len = sizeof(state->hdr);
 	state->iov[1].iov_base = state->buf;
 	state->iov[1].iov_len = state->hdr.len;
@@ -540,7 +540,7 @@ static void nb_packet_reader_connected(struct tevent_req *subreq)
 		return;
 	}
 
-	state->iov[0].iov_base = &state->query;
+	state->iov[0].iov_base = (char *)&state->query;
 	state->iov[0].iov_len = sizeof(state->query);
 
 	if (state->mailslot_name != NULL) {


-- 
Samba Shared Repository


More information about the samba-cvs mailing list