[SCM] Samba Shared Repository - branch master updated
Stefan Metzmacher
metze at samba.org
Mon Oct 24 02:19:05 MDT 2011
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 <metze at samba.org>
Date: Mon Oct 24 08:42:10 2011 +0200
libcli/smb: move source3/libsmb/read_smb.* to the toplevel
metze
Autobuild-User: Stefan Metzmacher <metze at samba.org>
Autobuild-Date: Mon Oct 24 10:18:06 CEST 2011 on sn-devel-104
commit 6e2ecaf77d789262aa417b751046e2bed15bf8fa
Author: Stefan Metzmacher <metze at samba.org>
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 <metze at samba.org>
Date: Tue Sep 20 04:47:21 2011 +0200
s3:libsmb: remove unused sync read_smb()
metze
commit 99666e4a8dd2751b1d39f370e82caa912f7079a2
Author: Stefan Metzmacher <metze at samba.org>
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
More information about the samba-cvs
mailing list