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 <[email protected]>
Date:   Sun Jan 9 10:53:04 2011 +0100

    s3: Convert enc_blob_send_receive to cli_trans()
    
    Autobuild-User: Volker Lendecke <[email protected]>
    Autobuild-Date: Sun Jan  9 11:40:04 CET 2011 on sn-devel-104

commit 3274d80ffd19ccb5e5783f7577909121d8111854
Author: Volker Lendecke <[email protected]>
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

Reply via email to