[SCM] Samba Shared Repository - branch master updated
Günther Deschner
gd at samba.org
Wed Mar 16 10:48:02 MDT 2011
The branch, master has been updated
via 48c2117 s4-smbtorture: use torture_assert in torture_samba3_rpc_sharesec().
via 9295cff s4-smbtorture: use torture_fail and _assert in torture_samba3_rpc_getusername().
via 7544f23 s4-smbtorture: remove explicit mem_ctx from torture_samba3_rpc_getusername().
via 9f9e195 s3-packet: only include packet.h where needed.
via 1f6aecb s3-interfaces: only include interfaces.h where needed.
via 1ce4d2d s3-msdfs: avoid global inclusion of msdfs.h.
via 97addd8 s4-smbtorture: use torture_assert in samr large-dc test.
from 97cdf15 s3-printing: fix memory leak in print_cups.c
http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master
- Log -----------------------------------------------------------------
commit 48c2117019845aca56de96feebcd4feb25f3e12d
Author: Günther Deschner <gd at samba.org>
Date: Wed Mar 16 16:54:31 2011 +0100
s4-smbtorture: use torture_assert in torture_samba3_rpc_sharesec().
Guenther
Autobuild-User: Günther Deschner <gd at samba.org>
Autobuild-Date: Wed Mar 16 17:47:11 CET 2011 on sn-devel-104
commit 9295cffad882132963a778ef0769316c68ec3e33
Author: Günther Deschner <gd at samba.org>
Date: Wed Mar 16 16:41:28 2011 +0100
s4-smbtorture: use torture_fail and _assert in torture_samba3_rpc_getusername().
Guenther
commit 7544f23d20799b3ea72ff3e994ebf227d6fae086
Author: Günther Deschner <gd at samba.org>
Date: Wed Mar 16 16:32:09 2011 +0100
s4-smbtorture: remove explicit mem_ctx from torture_samba3_rpc_getusername().
Guenther
commit 9f9e19512435a11cc066cf86baed3bf4c31eb10d
Author: Günther Deschner <gd at samba.org>
Date: Fri Feb 25 00:11:14 2011 +0100
s3-packet: only include packet.h where needed.
Guenther
commit 1f6aecb5cf8c8dcd7b767ecb792475bb7b505f7d
Author: Günther Deschner <gd at samba.org>
Date: Thu Feb 24 23:51:28 2011 +0100
s3-interfaces: only include interfaces.h where needed.
Guenther
commit 1ce4d2d83a21b89a2ca8ad5a601b181feafc18e7
Author: Günther Deschner <gd at samba.org>
Date: Thu Feb 24 22:58:08 2011 +0100
s3-msdfs: avoid global inclusion of msdfs.h.
Guenther
commit 97addd8fc2ce9e9cf187a2ccfa442f329b2a80f6
Author: Günther Deschner <gd at samba.org>
Date: Wed Mar 16 16:20:58 2011 +0100
s4-smbtorture: use torture_assert in samr large-dc test.
Guenther
-----------------------------------------------------------------------
Summary of changes:
source3/include/includes.h | 3 -
source3/include/proto.h | 2 +
source3/lib/access.c | 1 +
source3/lib/ctdbd_conn.c | 1 +
source3/lib/interface.c | 1 +
source3/lib/interfaces.c | 1 +
source3/lib/packet.c | 1 +
source3/lib/util_sock.c | 1 +
source3/libsmb/clidfs.c | 1 +
source3/rpc_server/dfs/srv_dfs_nt.c | 1 +
source3/smbd/msdfs.c | 1 +
source4/torture/rpc/samba3rpc.c | 135 ++++++++++++-----------------------
source4/torture/rpc/samr.c | 52 ++++++++++----
13 files changed, 95 insertions(+), 106 deletions(-)
Changeset truncated at 500 lines:
diff --git a/source3/include/includes.h b/source3/include/includes.h
index eafecb7..c508266 100644
--- a/source3/include/includes.h
+++ b/source3/include/includes.h
@@ -543,7 +543,6 @@ extern void *cmdline_lp_ctx;
#include "../lib/util/asn1.h"
#include "libads/ads_status.h"
-#include "interfaces.h"
#include "trans2.h"
#include "../libcli/util/error.h"
#include "ntioctl.h"
@@ -559,7 +558,6 @@ extern void *cmdline_lp_ctx;
#include "../lib/util/byteorder.h"
#include "mapping.h"
#include "passdb.h"
-#include "msdfs.h"
#include "auth.h"
#include "librpc/rpc/dcerpc.h"
@@ -567,7 +565,6 @@ extern void *cmdline_lp_ctx;
#include "client.h"
#include "module.h"
-#include "packet.h"
#include "../lib/util/talloc_stack.h"
#include "../lib/util/smb_threads.h"
#include "../lib/util/smb_threads_internal.h"
diff --git a/source3/include/proto.h b/source3/include/proto.h
index caa2d29..7126103 100644
--- a/source3/include/proto.h
+++ b/source3/include/proto.h
@@ -1652,6 +1652,7 @@ struct cli_state *cli_cm_open(TALLOC_CTX *ctx,
int port,
int name_type);
void cli_cm_display(const struct cli_state *c);
+struct client_dfs_referral;
NTSTATUS cli_dfs_get_referral(TALLOC_CTX *ctx,
struct cli_state *cli,
const char *path,
@@ -4410,6 +4411,7 @@ void reply_sendend(struct smb_request *req);
bool is_msdfs_link(connection_struct *conn,
const char *path,
SMB_STRUCT_STAT *sbufp);
+struct junction_map;
NTSTATUS get_referred_path(TALLOC_CTX *ctx,
const char *dfs_path,
struct junction_map *jucn,
diff --git a/source3/lib/access.c b/source3/lib/access.c
index b674144..a7475a5 100644
--- a/source3/lib/access.c
+++ b/source3/lib/access.c
@@ -12,6 +12,7 @@
#include "includes.h"
#include "memcache.h"
+#include "interfaces.h"
#define NAME_INDEX 0
#define ADDR_INDEX 1
diff --git a/source3/lib/ctdbd_conn.c b/source3/lib/ctdbd_conn.c
index cfe241e..16e8cb9 100644
--- a/source3/lib/ctdbd_conn.c
+++ b/source3/lib/ctdbd_conn.c
@@ -25,6 +25,7 @@
#include "librpc/gen_ndr/messaging.h"
#include "librpc/gen_ndr/ndr_messaging.h"
#include "ctdbd_conn.h"
+#include "packet.h"
/* paths to these include files come from --with-ctdb= in configure */
#include "ctdb.h"
diff --git a/source3/lib/interface.c b/source3/lib/interface.c
index 79c62a7..30e9406 100644
--- a/source3/lib/interface.c
+++ b/source3/lib/interface.c
@@ -19,6 +19,7 @@
*/
#include "includes.h"
+#include "interfaces.h"
static struct iface_struct *probed_ifaces;
static int total_probed;
diff --git a/source3/lib/interfaces.c b/source3/lib/interfaces.c
index 5996fde..e40eaa9 100644
--- a/source3/lib/interfaces.c
+++ b/source3/lib/interfaces.c
@@ -19,6 +19,7 @@
*/
#include "includes.h"
+#include "interfaces.h"
/****************************************************************************
Create a struct sockaddr_storage with the netmask bits set to 1.
diff --git a/source3/lib/packet.c b/source3/lib/packet.c
index cce23db..26ca1da 100644
--- a/source3/lib/packet.c
+++ b/source3/lib/packet.c
@@ -20,6 +20,7 @@
#include "includes.h"
#include "../lib/util/select.h"
#include "system/select.h"
+#include "packet.h"
struct packet_context {
int fd;
diff --git a/source3/lib/util_sock.c b/source3/lib/util_sock.c
index 73b69b4..3c97495 100644
--- a/source3/lib/util_sock.c
+++ b/source3/lib/util_sock.c
@@ -23,6 +23,7 @@
#include "memcache.h"
#include "../lib/async_req/async_sock.h"
#include "../lib/util/select.h"
+#include "interfaces.h"
/****************************************************************************
Get a port number in host byte order from a sockaddr_storage.
diff --git a/source3/libsmb/clidfs.c b/source3/libsmb/clidfs.c
index a23f477..c6fe67f 100644
--- a/source3/libsmb/clidfs.c
+++ b/source3/libsmb/clidfs.c
@@ -21,6 +21,7 @@
#include "includes.h"
#include "libsmb/clirap.h"
+#include "msdfs.h"
/********************************************************************
Important point.
diff --git a/source3/rpc_server/dfs/srv_dfs_nt.c b/source3/rpc_server/dfs/srv_dfs_nt.c
index 01ecf79..e886206 100644
--- a/source3/rpc_server/dfs/srv_dfs_nt.c
+++ b/source3/rpc_server/dfs/srv_dfs_nt.c
@@ -23,6 +23,7 @@
#include "includes.h"
#include "../librpc/gen_ndr/srv_dfs.h"
+#include "msdfs.h"
#undef DBGC_CLASS
#define DBGC_CLASS DBGC_MSDFS
diff --git a/source3/smbd/msdfs.c b/source3/smbd/msdfs.c
index c11e66e..d5d46fd 100644
--- a/source3/smbd/msdfs.c
+++ b/source3/smbd/msdfs.c
@@ -23,6 +23,7 @@
#define DBGC_CLASS DBGC_MSDFS
#include "includes.h"
#include "smbd/globals.h"
+#include "msdfs.h"
/**********************************************************************
Parse a DFS pathname of the form \hostname\service\reqpath
diff --git a/source4/torture/rpc/samba3rpc.c b/source4/torture/rpc/samba3rpc.c
index 74450a6..d0de309 100644
--- a/source4/torture/rpc/samba3rpc.c
+++ b/source4/torture/rpc/samba3rpc.c
@@ -41,6 +41,7 @@
#include "param/param.h"
#include "lib/registry/registry.h"
#include "libcli/resolve/resolve.h"
+#include "torture/ndr/ndr.h"
/*
* This tests a RPC call using an invalid vuid
@@ -1754,7 +1755,6 @@ static bool torture_samba3_rpc_getusername(struct torture_context *torture)
{
NTSTATUS status;
struct smbcli_state *cli;
- TALLOC_CTX *mem_ctx;
bool ret = true;
struct dom_sid *user_sid;
struct dom_sid *created_sid;
@@ -1764,71 +1764,45 @@ static bool torture_samba3_rpc_getusername(struct torture_context *torture)
struct smbcli_options options;
struct smbcli_session_options session_options;
- if (!(mem_ctx = talloc_new(torture))) {
- return false;
- }
-
lpcfg_smbcli_options(torture->lp_ctx, &options);
lpcfg_smbcli_session_options(torture->lp_ctx, &session_options);
status = smbcli_full_connection(
- mem_ctx, &cli, torture_setting_string(torture, "host", NULL),
+ torture, &cli, torture_setting_string(torture, "host", NULL),
lpcfg_smb_ports(torture->lp_ctx),
"IPC$", NULL, lpcfg_socket_options(torture->lp_ctx), cmdline_credentials,
lpcfg_resolve_context(torture->lp_ctx), torture->ev, &options,
&session_options, lpcfg_gensec_settings(torture, torture->lp_ctx));
- if (!NT_STATUS_IS_OK(status)) {
- torture_warning(torture, "smbcli_full_connection failed: %s\n",
- nt_errstr(status));
- ret = false;
- goto done;
- }
+ torture_assert_ntstatus_ok(torture, status, "smbcli_full_connection failed\n");
- if (!(user_sid = whoami(torture, mem_ctx, cli->tree))) {
- torture_warning(torture, "whoami on auth'ed connection failed\n");
- ret = false;
+ if (!(user_sid = whoami(torture, torture, cli->tree))) {
+ torture_fail(torture, "whoami on auth'ed connection failed\n");
}
talloc_free(cli);
- if (!(anon_creds = cli_credentials_init_anon(mem_ctx))) {
- torture_warning(torture, "create_anon_creds failed\n");
- ret = false;
- goto done;
+ if (!(anon_creds = cli_credentials_init_anon(torture))) {
+ torture_fail(torture, "create_anon_creds failed\n");
}
status = smbcli_full_connection(
- mem_ctx, &cli, torture_setting_string(torture, "host", NULL),
+ torture, &cli, torture_setting_string(torture, "host", NULL),
lpcfg_smb_ports(torture->lp_ctx), "IPC$", NULL,
lpcfg_socket_options(torture->lp_ctx), anon_creds,
lpcfg_resolve_context(torture->lp_ctx),
torture->ev, &options, &session_options,
lpcfg_gensec_settings(torture, torture->lp_ctx));
- if (!NT_STATUS_IS_OK(status)) {
- torture_warning(torture, "anon smbcli_full_connection failed: %s\n",
- nt_errstr(status));
- ret = false;
- goto done;
- }
+ torture_assert_ntstatus_ok(torture, status, "anon smbcli_full_connection failed\n");
- if (!(user_sid = whoami(torture, mem_ctx, cli->tree))) {
- torture_warning(torture, "whoami on anon connection failed\n");
- ret = false;
- goto done;
+ if (!(user_sid = whoami(torture, torture, cli->tree))) {
+ torture_fail(torture, "whoami on anon connection failed\n");
}
- if (!dom_sid_equal(user_sid,
- dom_sid_parse_talloc(mem_ctx, "s-1-5-7"))) {
- torture_warning(torture, "Anon lsa_GetUserName returned %s, expected "
- "S-1-5-7",
- dom_sid_string(mem_ctx, user_sid));
- ret = false;
- }
+ torture_assert_sid_equal(torture, user_sid, dom_sid_parse_talloc(torture, "s-1-5-7"),
+ "Anon lsa_GetUserName returned unexpected SID");
- if (!(user_creds = cli_credentials_init(mem_ctx))) {
- torture_warning(torture, "cli_credentials_init failed\n");
- ret = false;
- goto done;
+ if (!(user_creds = cli_credentials_init(torture))) {
+ torture_fail(torture, "cli_credentials_init failed\n");
}
cli_credentials_set_conf(user_creds, torture->lp_ctx);
@@ -1838,13 +1812,11 @@ static bool torture_samba3_rpc_getusername(struct torture_context *torture)
generate_random_password(user_creds, 8, 255),
CRED_SPECIFIED);
- if (!create_user(torture, mem_ctx, cli, cmdline_credentials,
+ if (!create_user(torture, torture, cli, cmdline_credentials,
cli_credentials_get_username(user_creds),
cli_credentials_get_password(user_creds),
&domain_name, &created_sid)) {
- torture_warning(torture, "create_user failed\n");
- ret = false;
- goto done;
+ torture_fail(torture, "create_user failed\n");
}
cli_credentials_set_domain(user_creds, domain_name,
@@ -1855,10 +1827,9 @@ static bool torture_samba3_rpc_getusername(struct torture_context *torture)
struct smb_composite_sesssetup setup;
struct smbcli_tree *tree;
- session2 = smbcli_session_init(cli->transport, mem_ctx, false, session_options);
+ session2 = smbcli_session_init(cli->transport, torture, false, session_options);
if (session2 == NULL) {
- torture_warning(torture, "smbcli_session_init failed\n");
- goto done;
+ torture_fail(torture, "smbcli_session_init failed\n");
}
setup.in.sesskey = cli->transport->negotiate.sesskey;
@@ -1868,23 +1839,17 @@ static bool torture_samba3_rpc_getusername(struct torture_context *torture)
setup.in.gensec_settings = lpcfg_gensec_settings(torture, torture->lp_ctx);
status = smb_composite_sesssetup(session2, &setup);
- if (!NT_STATUS_IS_OK(status)) {
- torture_warning(torture, "session setup with new user failed: "
- "%s\n", nt_errstr(status));
- ret = false;
- goto done;
- }
+ torture_assert_ntstatus_ok(torture, status, "session setup with new user failed");
+
session2->vuid = setup.out.vuid;
- if (!NT_STATUS_IS_OK(secondary_tcon(torture, mem_ctx, session2,
+ if (!NT_STATUS_IS_OK(secondary_tcon(torture, torture, session2,
"IPC$", &tree))) {
- torture_warning(torture, "secondary_tcon failed\n");
- ret = false;
- goto done;
+ torture_fail(torture, "secondary_tcon failed\n");
}
- if (!(user_sid = whoami(torture, mem_ctx, tree))) {
- torture_warning(torture, "whoami on user connection failed\n");
+ if (!(user_sid = whoami(torture, torture, tree))) {
+ torture_fail_goto(torture, del, "whoami on user connection failed\n");
ret = false;
goto del;
}
@@ -1893,8 +1858,8 @@ static bool torture_samba3_rpc_getusername(struct torture_context *torture)
}
torture_comment(torture, "Created %s, found %s\n",
- dom_sid_string(mem_ctx, created_sid),
- dom_sid_string(mem_ctx, user_sid));
+ dom_sid_string(torture, created_sid),
+ dom_sid_string(torture, user_sid));
if (!dom_sid_equal(created_sid, user_sid)) {
ret = false;
@@ -1904,12 +1869,9 @@ static bool torture_samba3_rpc_getusername(struct torture_context *torture)
if (!delete_user(torture, cli,
cmdline_credentials,
cli_credentials_get_username(user_creds))) {
- torture_warning(torture, "delete_user failed\n");
- ret = false;
+ torture_fail(torture, "delete_user failed\n");
}
- done:
- talloc_free(mem_ctx);
return ret;
}
@@ -2422,48 +2384,43 @@ bool try_tcon(struct torture_context *tctx,
static bool torture_samba3_rpc_sharesec(struct torture_context *torture)
{
- TALLOC_CTX *mem_ctx;
- bool ret = true;
struct smbcli_state *cli;
struct security_descriptor *sd;
struct dom_sid *user_sid;
- if (!(mem_ctx = talloc_new(torture))) {
- return false;
- }
-
if (!(torture_open_connection_share(
- mem_ctx, &cli, torture, torture_setting_string(torture, "host", NULL),
+ torture, &cli, torture, torture_setting_string(torture, "host", NULL),
"IPC$", torture->ev))) {
- torture_comment(torture, "IPC$ connection failed\n");
- talloc_free(mem_ctx);
- return false;
+ torture_fail(torture, "IPC$ connection failed\n");
}
- if (!(user_sid = whoami(torture, mem_ctx, cli->tree))) {
- torture_comment(torture, "whoami failed\n");
- talloc_free(mem_ctx);
- return false;
+ if (!(user_sid = whoami(torture, torture, cli->tree))) {
+ torture_fail(torture, "whoami failed\n");
}
- sd = get_sharesec(torture, mem_ctx, cli->session,
+ sd = get_sharesec(torture, torture, cli->session,
torture_setting_string(torture, "share", NULL));
- ret &= try_tcon(torture, mem_ctx, sd, cli->session,
+ torture_assert(torture, try_tcon(
+ torture, torture, sd, cli->session,
torture_setting_string(torture, "share", NULL),
- user_sid, 0, NT_STATUS_ACCESS_DENIED, NT_STATUS_OK);
+ user_sid, 0, NT_STATUS_ACCESS_DENIED, NT_STATUS_OK),
+ "failed to test tcon with 0 access_mask");
- ret &= try_tcon(torture, mem_ctx, sd, cli->session,
+ torture_assert(torture, try_tcon(
+ torture, torture, sd, cli->session,
torture_setting_string(torture, "share", NULL),
user_sid, SEC_FILE_READ_DATA, NT_STATUS_OK,
- NT_STATUS_MEDIA_WRITE_PROTECTED);
+ NT_STATUS_MEDIA_WRITE_PROTECTED),
+ "failed to test tcon with SEC_FILE_READ_DATA access_mask");
- ret &= try_tcon(torture, mem_ctx, sd, cli->session,
+ torture_assert(torture, try_tcon(
+ torture, torture, sd, cli->session,
torture_setting_string(torture, "share", NULL),
- user_sid, SEC_FILE_ALL, NT_STATUS_OK, NT_STATUS_OK);
+ user_sid, SEC_FILE_ALL, NT_STATUS_OK, NT_STATUS_OK),
+ "failed to test tcon with SEC_FILE_ALL access_mask")
- talloc_free(mem_ctx);
- return ret;
+ return true;
}
static bool torture_samba3_rpc_lsa(struct torture_context *torture)
diff --git a/source4/torture/rpc/samr.c b/source4/torture/rpc/samr.c
index f83cc02..53cb10a 100644
--- a/source4/torture/rpc/samr.c
+++ b/source4/torture/rpc/samr.c
@@ -7421,7 +7421,6 @@ static bool test_ManyObjects(struct dcerpc_pipe *p,
uint32_t num_disp = 0;
uint32_t num_created = 0;
uint32_t num_anounced = 0;
- bool ret = true;
uint32_t i;
struct dcerpc_binding_handle *b = p->binding_handle;
@@ -7465,15 +7464,21 @@ static bool test_ManyObjects(struct dcerpc_pipe *p,
switch (ctx->choice) {
case TORTURE_SAMR_MANY_ACCOUNTS:
name = talloc_asprintf(tctx, "%s%04d", TEST_ACCOUNT_NAME, i);
- ret &= test_CreateUser(p, tctx, domain_handle, name, &handles[i], domain_sid, 0, NULL, false);
+ torture_assert(tctx,
+ test_CreateUser(p, tctx, domain_handle, name, &handles[i], domain_sid, 0, NULL, false),
+ "failed to create user");
break;
case TORTURE_SAMR_MANY_GROUPS:
name = talloc_asprintf(tctx, "%s%04d", TEST_GROUPNAME, i);
- ret &= test_CreateDomainGroup(b, tctx, domain_handle, name, &handles[i], domain_sid, false);
+ torture_assert(tctx,
+ test_CreateDomainGroup(b, tctx, domain_handle, name, &handles[i], domain_sid, false),
+ "failed to create group");
break;
case TORTURE_SAMR_MANY_ALIASES:
name = talloc_asprintf(tctx, "%s%04d", TEST_ALIASNAME, i);
- ret &= test_CreateAlias(b, tctx, domain_handle, name, &handles[i], domain_sid, false);
+ torture_assert(tctx,
+ test_CreateAlias(b, tctx, domain_handle, name, &handles[i], domain_sid, false),
+ "failed to create alias");
break;
default:
return false;
@@ -7487,13 +7492,19 @@ static bool test_ManyObjects(struct dcerpc_pipe *p,
switch (ctx->choice) {
case TORTURE_SAMR_MANY_ACCOUNTS:
- ret &= test_EnumDomainUsers(b, tctx, domain_handle, &num_enum);
+ torture_assert(tctx,
+ test_EnumDomainUsers(b, tctx, domain_handle, &num_enum),
+ "failed to enum users");
break;
case TORTURE_SAMR_MANY_GROUPS:
- ret &= test_EnumDomainGroups(b, tctx, domain_handle, &num_enum);
+ torture_assert(tctx,
+ test_EnumDomainGroups(b, tctx, domain_handle, &num_enum),
+ "failed to enum groups");
break;
case TORTURE_SAMR_MANY_ALIASES:
- ret &= test_EnumDomainAliases(b, tctx, domain_handle, &num_enum);
+ torture_assert(tctx,
+ test_EnumDomainAliases(b, tctx, domain_handle, &num_enum),
+ "failed to enum aliases");
break;
default:
return false;
@@ -7503,10 +7514,14 @@ static bool test_ManyObjects(struct dcerpc_pipe *p,
switch (ctx->choice) {
case TORTURE_SAMR_MANY_ACCOUNTS:
- ret &= test_QueryDisplayInfo_level(b, tctx, domain_handle, 1, &num_disp);
+ torture_assert(tctx,
+ test_QueryDisplayInfo_level(b, tctx, domain_handle, 1, &num_disp),
+ "failed to query display info");
break;
case TORTURE_SAMR_MANY_GROUPS:
- ret &= test_QueryDisplayInfo_level(b, tctx, domain_handle, 3, &num_disp);
+ torture_assert(tctx,
+ test_QueryDisplayInfo_level(b, tctx, domain_handle, 3, &num_disp),
+ "failed to query display info");
break;
case TORTURE_SAMR_MANY_ALIASES:
/* no aliases in dispinfo */
@@ -7524,17 +7539,25 @@ static bool test_ManyObjects(struct dcerpc_pipe *p,
}
if (torture_setting_bool(tctx, "samba3", false)) {
- ret &= test_samr_handle_Close(b, tctx, &handles[i]);
+ torture_assert(tctx,
+ test_samr_handle_Close(b, tctx, &handles[i]),
+ "failed to close handle");
} else {
switch (ctx->choice) {
--
Samba Shared Repository
More information about the samba-cvs
mailing list