mirror of
https://github.com/samba-team/samba.git
synced 2025-08-03 04:22:09 +03:00
s4:libcli/smb2: setup a smbXcli_tcon for each smb2_tree
metze
This commit is contained in:
@ -244,6 +244,13 @@ static void smb2_connect_tcon_done(struct smb2_request *smb2req)
|
||||
state->tree->tid = state->tcon.out.tid;
|
||||
state->tree->capabilities = state->tcon.out.capabilities;
|
||||
|
||||
smb2cli_tcon_set_values(state->tree->smbXcli,
|
||||
state->tcon.out.tid,
|
||||
state->tcon.out.share_type,
|
||||
state->tcon.out.flags,
|
||||
state->tcon.out.capabilities,
|
||||
state->tcon.out.access_mask);
|
||||
|
||||
tevent_req_done(req);
|
||||
}
|
||||
|
||||
|
@ -108,6 +108,7 @@ struct smb2_tree {
|
||||
struct smb2_session *session;
|
||||
uint32_t tid;
|
||||
uint32_t capabilities;
|
||||
struct smbXcli_tcon *smbXcli;
|
||||
};
|
||||
|
||||
/*
|
||||
|
@ -22,6 +22,7 @@
|
||||
#include "includes.h"
|
||||
#include "libcli/smb2/smb2.h"
|
||||
#include "libcli/smb2/smb2_calls.h"
|
||||
#include "../libcli/smb/smbXcli_base.h"
|
||||
|
||||
/*
|
||||
initialise a smb2_session structure
|
||||
@ -40,6 +41,13 @@ struct smb2_tree *smb2_tree_init(struct smb2_session *session,
|
||||
} else {
|
||||
tree->session = talloc_reference(tree, session);
|
||||
}
|
||||
|
||||
tree->smbXcli = smbXcli_tcon_create(tree);
|
||||
if (tree->smbXcli == NULL) {
|
||||
talloc_free(tree);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
return tree;
|
||||
}
|
||||
|
||||
|
@ -23,6 +23,7 @@
|
||||
#include "includes.h"
|
||||
#include "libcli/smb2/smb2.h"
|
||||
#include "libcli/smb2/smb2_calls.h"
|
||||
#include "../libcli/smb/smbXcli_base.h"
|
||||
|
||||
#include "torture/torture.h"
|
||||
#include "torture/smb2/proto.h"
|
||||
@ -1820,6 +1821,15 @@ static struct smb2_tree *secondary_tcon(struct smb2_tree *tree,
|
||||
}
|
||||
|
||||
tree1->tid = tcon.smb2.out.tid;
|
||||
tree1->capabilities = tcon.smb2.out.capabilities;
|
||||
|
||||
smb2cli_tcon_set_values(tree1->smbXcli,
|
||||
tcon.smb2.out.tid,
|
||||
tcon.smb2.out.share_type,
|
||||
tcon.smb2.out.flags,
|
||||
tcon.smb2.out.capabilities,
|
||||
tcon.smb2.out.access_mask);
|
||||
|
||||
torture_comment(tctx,"tid1=%d tid2=%d\n", tree->tid, tree1->tid);
|
||||
|
||||
return tree1;
|
||||
|
@ -23,6 +23,7 @@
|
||||
#include "libcli/security/security_descriptor.h"
|
||||
#include "libcli/smb2/smb2.h"
|
||||
#include "libcli/smb2/smb2_calls.h"
|
||||
#include "../libcli/smb/smbXcli_base.h"
|
||||
#include "lib/cmdline/popt_common.h"
|
||||
#include "system/time.h"
|
||||
#include "librpc/gen_ndr/ndr_security.h"
|
||||
@ -297,6 +298,13 @@ bool torture_smb2_tree_connect(struct torture_context *tctx,
|
||||
tree->tid = tcon.out.tid;
|
||||
tree->capabilities = tcon.out.capabilities;
|
||||
|
||||
smb2cli_tcon_set_values(tree->smbXcli,
|
||||
tcon.out.tid,
|
||||
tcon.out.share_type,
|
||||
tcon.out.flags,
|
||||
tcon.out.capabilities,
|
||||
tcon.out.access_mask);
|
||||
|
||||
*_tree = tree;
|
||||
|
||||
return true;
|
||||
|
Reference in New Issue
Block a user