The branch, master has been updated
       via  7ebd433 libcli/smb: move source3/libsmb/read_smb.* to the toplevel
       via  6e2ecaf s3:libsmb/read_smb: make use of smb_len_tcp()
       via  8f356ba s3:libsmb: remove unused sync read_smb()
       via  99666e4 s3:torture: avoid using read_smb()
      from  6b06b0d talloc: simplifiy the logic to build talloc_testsuite in 
the standalone build

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


- Log -----------------------------------------------------------------
commit 7ebd4337acfeeb69ffbf615a0220d0d338705849
Author: Stefan Metzmacher <[email protected]>
Date:   Mon Oct 24 08:42:10 2011 +0200

    libcli/smb: move source3/libsmb/read_smb.* to the toplevel
    
    metze
    
    Autobuild-User: Stefan Metzmacher <[email protected]>
    Autobuild-Date: Mon Oct 24 10:18:06 CEST 2011 on sn-devel-104

commit 6e2ecaf77d789262aa417b751046e2bed15bf8fa
Author: Stefan Metzmacher <[email protected]>
Date:   Mon Oct 24 08:41:15 2011 +0200

    s3:libsmb/read_smb: make use of smb_len_tcp()
    
    metze

commit 8f356baab6c46535a1ed8a5e53859d2e69ce3166
Author: Stefan Metzmacher <[email protected]>
Date:   Tue Sep 20 04:47:21 2011 +0200

    s3:libsmb: remove unused sync read_smb()
    
    metze

commit 99666e4a8dd2751b1d39f370e82caa912f7079a2
Author: Stefan Metzmacher <[email protected]>
Date:   Tue Sep 20 04:43:05 2011 +0200

    s3:torture: avoid using read_smb()
    
    metze

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

Summary of changes:
 {source3/libsmb => libcli/smb}/read_smb.c |   28 +++-------------------------
 {source3/libsmb => libcli/smb}/read_smb.h |    1 -
 libcli/smb/wscript_build                  |    5 +++--
 source3/Makefile.in                       |    3 ++-
 source3/libsmb/async_smb.c                |    2 +-
 source3/libsmb/cliconnect.c               |    1 -
 source3/libsmb/smb2cli_base.c             |    2 +-
 source3/libsmb/smbsock_connect.c          |    2 +-
 source3/torture/torture.c                 |   19 +++++++++++++++++--
 source3/wscript_build                     |    5 +++--
 10 files changed, 31 insertions(+), 37 deletions(-)
 rename {source3/libsmb => libcli/smb}/read_smb.c (84%)
 rename {source3/libsmb => libcli/smb}/read_smb.h (93%)


Changeset truncated at 500 lines:

diff --git a/source3/libsmb/read_smb.c b/libcli/smb/read_smb.c
similarity index 84%
rename from source3/libsmb/read_smb.c
rename to libcli/smb/read_smb.c
index ecedcfb..26816c3 100644
--- a/source3/libsmb/read_smb.c
+++ b/libcli/smb/read_smb.c
@@ -18,9 +18,11 @@
 */
 
 #include "includes.h"
+#include "system/network.h"
 #include "lib/async_req/async_sock.h"
 #include "read_smb.h"
 #include "lib/util/tevent_unix.h"
+#include "libcli/smb/smb_constants.h"
 
 /*
  * Read an smb packet asynchronously, discard keepalives
@@ -65,7 +67,7 @@ static ssize_t read_smb_more(uint8_t *buf, size_t buflen, 
void *private_data)
        if (buflen > 4) {
                return 0;       /* We've been here, we're done */
        }
-       return smb_len_large(buf);
+       return smb_len_tcp(buf);
 }
 
 static void read_smb_done(struct tevent_req *subreq)
@@ -108,27 +110,3 @@ ssize_t read_smb_recv(struct tevent_req *req, TALLOC_CTX 
*mem_ctx,
        *pbuf = talloc_move(mem_ctx, &state->buf);
        return talloc_get_size(*pbuf);
 }
-
-ssize_t read_smb(int fd, TALLOC_CTX *mem_ctx, uint8_t **pbuf, int *perrno)
-{
-       TALLOC_CTX *frame = talloc_stackframe();
-       struct event_context *ev;
-       struct tevent_req *req;
-       ssize_t ret = -1;
-
-       ev = event_context_init(frame);
-       if (ev == NULL) {
-               goto fail;
-       }
-       req = read_smb_send(frame, ev, fd);
-       if (req == NULL) {
-               goto fail;
-       }
-       if (!tevent_req_poll(req, ev)) {
-               goto fail;
-       }
-       ret = read_smb_recv(req, mem_ctx, pbuf, perrno);
- fail:
-       TALLOC_FREE(frame);
-       return ret;
-}
diff --git a/source3/libsmb/read_smb.h b/libcli/smb/read_smb.h
similarity index 93%
rename from source3/libsmb/read_smb.h
rename to libcli/smb/read_smb.h
index b0846c1..ae4dfdd 100644
--- a/source3/libsmb/read_smb.h
+++ b/libcli/smb/read_smb.h
@@ -29,6 +29,5 @@ struct tevent_req *read_smb_send(TALLOC_CTX *mem_ctx,
 
 ssize_t read_smb_recv(struct tevent_req *req, TALLOC_CTX *mem_ctx,
                      uint8_t **pbuf, int *perrno);
-ssize_t read_smb(int fd, TALLOC_CTX *mem_ctx, uint8_t **pbuf, int *perrno);
 
 #endif
diff --git a/libcli/smb/wscript_build b/libcli/smb/wscript_build
index 6334958..9339b96 100644
--- a/libcli/smb/wscript_build
+++ b/libcli/smb/wscript_build
@@ -2,13 +2,14 @@
 
 
 bld.SAMBA_LIBRARY('cli_smb_common',
-       source='smb_seal.c smb2_create_blob.c smb2_signing.c util.c',
+       source='smb_seal.c smb2_create_blob.c smb2_signing.c util.c read_smb.c',
        autoproto='smb_common_proto.h',
-       deps='LIBCRYPTO errors gssapi gensec KRB5_WRAP',
+       deps='LIBCRYPTO errors gssapi gensec KRB5_WRAP LIBASYNC_REQ',
        public_deps='talloc samba-util',
        private_library=True,
        public_headers='''smb_common.h smb2_constants.h smb_constants.h
                        smb_seal.h
                        smb2_create_blob.h smb2_signing.h smb_util.h 
smb_unix_ext.h
+                       read_smb.h
        ''',
        )
diff --git a/source3/Makefile.in b/source3/Makefile.in
index 62aff34..6f216c6 100644
--- a/source3/Makefile.in
+++ b/source3/Makefile.in
@@ -603,8 +603,9 @@ LIBSMB_OBJ = libsmb/clientgen.o libsmb/cliconnect.o 
libsmb/clifile.o \
             libsmb/clistr.o libsmb/cliquota.o libsmb/clifsinfo.o 
libsmb/clidfs.o \
             libsmb/clioplock.o libsmb/clirap2.o \
             libsmb/async_smb.o \
-            libsmb/read_smb.o libsmb/clisigning.o \
+            libsmb/clisigning.o \
             ../libcli/smb/smb_seal.o \
+            ../libcli/smb/read_smb.o \
             libsmb/smb2cli_base.o \
             libsmb/smb2cli_negprot.o \
             libsmb/smb2cli_session.o \
diff --git a/source3/libsmb/async_smb.c b/source3/libsmb/async_smb.c
index 3786638..283dec6 100644
--- a/source3/libsmb/async_smb.c
+++ b/source3/libsmb/async_smb.c
@@ -25,7 +25,7 @@
 #include "async_smb.h"
 #include "../libcli/smb/smb_seal.h"
 #include "libsmb/nmblib.h"
-#include "read_smb.h"
+#include "../libcli/smb/read_smb.h"
 
 static NTSTATUS cli_pull_raw_error(const uint8_t *buf)
 {
diff --git a/source3/libsmb/cliconnect.c b/source3/libsmb/cliconnect.c
index da47bc5..391903b 100644
--- a/source3/libsmb/cliconnect.c
+++ b/source3/libsmb/cliconnect.c
@@ -32,7 +32,6 @@
 #include "../lib/util/tevent_ntstatus.h"
 #include "async_smb.h"
 #include "libsmb/nmblib.h"
-#include "read_smb.h"
 #include "librpc/ndr/libndr.h"
 
 static const struct {
diff --git a/source3/libsmb/smb2cli_base.c b/source3/libsmb/smb2cli_base.c
index 52b7d05..3563af1 100644
--- a/source3/libsmb/smb2cli_base.c
+++ b/source3/libsmb/smb2cli_base.c
@@ -20,7 +20,7 @@
 
 #include "includes.h"
 #include "client.h"
-#include "read_smb.h"
+#include "libcli/smb/read_smb.h"
 #include "smb2cli_base.h"
 #include "libsmb/proto.h"
 #include "lib/async_req/async_sock.h"
diff --git a/source3/libsmb/smbsock_connect.c b/source3/libsmb/smbsock_connect.c
index 1bb076e..1926445 100644
--- a/source3/libsmb/smbsock_connect.c
+++ b/source3/libsmb/smbsock_connect.c
@@ -23,7 +23,7 @@
 #include "../lib/util/tevent_unix.h"
 #include "client.h"
 #include "async_smb.h"
-#include "read_smb.h"
+#include "../libcli/smb/read_smb.h"
 #include "libsmb/nmblib.h"
 
 struct cli_session_request_state {
diff --git a/source3/torture/torture.c b/source3/torture/torture.c
index 1e0983a..e42684d 100644
--- a/source3/torture/torture.c
+++ b/source3/torture/torture.c
@@ -39,7 +39,7 @@
 #include "libsmb/nmblib.h"
 #include "../lib/util/tevent_ntstatus.h"
 #include "util_tdb.h"
-#include "libsmb/read_smb.h"
+#include "../libcli/smb/read_smb.h"
 
 extern char *optarg;
 extern int optind;
@@ -234,6 +234,8 @@ static bool cli_bad_session_request(int fd,
        bool ret = false;
        uint8_t message_type;
        uint8_t error;
+       struct event_context *ev;
+       struct tevent_req *req;
 
        frame = talloc_stackframe();
 
@@ -279,11 +281,24 @@ static bool cli_bad_session_request(int fd,
        if (len == -1) {
                goto fail;
        }
-       len = read_smb(fd, talloc_tos(), &inbuf, &err);
+
+       ev = event_context_init(frame);
+       if (ev == NULL) {
+               goto fail;
+       }
+       req = read_smb_send(frame, ev, fd);
+       if (req == NULL) {
+               goto fail;
+       }
+       if (!tevent_req_poll(req, ev)) {
+               goto fail;
+       }
+       len = read_smb_recv(req, talloc_tos(), &inbuf, &err);
        if (len == -1) {
                errno = err;
                goto fail;
        }
+       TALLOC_FREE(ev);
 
        message_type = CVAL(inbuf, 0);
        if (message_type != 0x83) {
diff --git a/source3/wscript_build b/source3/wscript_build
index 1c43be3..26a1ea2 100755
--- a/source3/wscript_build
+++ b/source3/wscript_build
@@ -127,7 +127,7 @@ LIBSMB_SRC = '''libsmb/clientgen.c libsmb/cliconnect.c 
libsmb/clifile.c
              libsmb/clistr.c libsmb/cliquota.c libsmb/clifsinfo.c 
libsmb/clidfs.c
              libsmb/clioplock.c libsmb/clirap2.c
              libsmb/async_smb.c
-             libsmb/read_smb.c libsmb/clisigning.c
+             libsmb/clisigning.c
              libsmb/smb2cli_base.c
              libsmb/smb2cli_negprot.c
              libsmb/smb2cli_session.c
@@ -874,7 +874,8 @@ bld.SAMBA3_SUBSYSTEM('LIBAFS_SETTOKEN',
 bld.SAMBA3_LIBRARY('smbconf',
                    source=LIB_SMBCONF_SRC,
                    deps='''LIBSMBCONF smbregistry REG_SMBCONF talloc param
-                   util_reg samba-util errors3 charset SAMBA_VERSION''',
+                   util_reg samba-util errors3 charset SAMBA_VERSION
+                   cli_smb_common''',
                    public_headers='../lib/smbconf/smbconf.h',
                    pc_files=[],
                    vnum='0')


-- 
Samba Shared Repository

Reply via email to