uint32 local_id;
[ref] smbXsrv_open_global0 *global;
smbXsrv_session *session;
+ smbXsrv_tcon *tcon;
NTSTATUS status;
NTTIME idle_time;
[ignore] files_struct *compat;
status = smbXsrv_open_create(req->xconn,
req->session,
+ fsp->conn->tcon,
now,
&op);
if (!NT_STATUS_IS_OK(status)) {
}
status = smb2srv_open_recreate(smb2req->xconn,
smb2req->session,
+ smb2req->tcon,
state->persistent_id,
state->create_guid,
lease_key,
NTSTATUS smbXsrv_open_create(struct smbXsrv_connection *conn,
struct smbXsrv_session *session,
+ struct smbXsrv_tcon *tcon,
NTTIME now,
struct smbXsrv_open **_open)
{
op->status = NT_STATUS_OK; /* TODO: start with INTERNAL_ERROR */
op->idle_time = now;
op->session = session;
+ op->tcon = tcon;
global = talloc_zero(op, struct smbXsrv_open_global0);
if (global == NULL) {
NTSTATUS smb2srv_open_recreate(struct smbXsrv_connection *conn,
struct smbXsrv_session *session,
+ struct smbXsrv_tcon *tcon,
uint64_t persistent_id,
const struct GUID *create_guid,
const struct smb2_lease_key *lease_key,
}
state.op->session = session;
+ state.op->tcon = tcon;
talloc_set_destructor(state.op, smbXsrv_open_destructor);
NTSTATUS smbXsrv_open_global_init(void);
NTSTATUS smbXsrv_open_create(struct smbXsrv_connection *conn,
struct smbXsrv_session *session,
+ struct smbXsrv_tcon *tcon,
NTTIME now,
struct smbXsrv_open **_open);
NTSTATUS smbXsrv_open_update(struct smbXsrv_open *_open);
struct smb2_lease_key;
NTSTATUS smb2srv_open_recreate(struct smbXsrv_connection *conn,
struct smbXsrv_session *session,
+ struct smbXsrv_tcon *tcon,
uint64_t persistent_id,
const struct GUID *create_guid,
const struct smb2_lease_key *lease_key,