uint8_t clear_flags = 0;
uint16_t additional_flags2 = 0;
uint16_t clear_flags2 = 0;
+ uint16_t uid = 0;
state = talloc_zero(mem_ctx, struct cli_smb_req_state);
if (state == NULL) {
additional_flags2 |= FLAGS2_DFS_PATHNAMES;
}
+ uid = cli_state_get_uid(cli);
state->req = smb1cli_req_create(state, ev, cli->conn, smb_command,
additional_flags, clear_flags,
additional_flags2, clear_flags2,
cli->timeout,
cli->smb1.pid,
cli->smb1.tid,
- cli->smb1.uid,
+ uid,
wct, vwv, iov_count, bytes_iov);
if (state->req == NULL) {
talloc_free(state);
uint8_t clear_flags = 0;
uint16_t additional_flags2 = 0;
uint16_t clear_flags2 = 0;
+ uint16_t uid = 0;
state = talloc_zero(mem_ctx, struct cli_smb_req_state);
if (state == NULL) {
additional_flags2 |= FLAGS2_DFS_PATHNAMES;
}
+ uid = cli_state_get_uid(cli);
state->req = smb1cli_req_send(state, ev, cli->conn, smb_command,
additional_flags, clear_flags,
additional_flags2, clear_flags2,
cli->timeout,
cli->smb1.pid,
cli->smb1.tid,
- cli->smb1.uid,
+ uid,
wct, vwv, num_bytes, bytes);
if (state->req == NULL) {
talloc_free(state);
cli->smb1.pid = (uint16_t)getpid();
cli->smb1.vc_num = cli->smb1.pid;
cli->smb1.tid = UINT16_MAX;
- cli->smb1.uid = UID_FIELD_INVALID;
+ cli->smb1.session = smbXcli_session_create(cli, cli->conn);
+ if (cli->smb1.session == NULL) {
+ goto error;
+ }
cli->initialised = 1;
return cli;
uint16_t cli_state_get_uid(struct cli_state *cli)
{
- return cli->smb1.uid;
+ return smb1cli_session_current_id(cli->smb1.session);
}
uint16_t cli_state_set_uid(struct cli_state *cli, uint16_t uid)
{
- uint16_t ret = cli->smb1.uid;
- cli->smb1.uid = uid;
+ uint16_t ret = smb1cli_session_current_id(cli->smb1.session);
+ smb1cli_session_set_id(cli->smb1.session, uid);
return ret;
}
uint8_t clear_flags = 0;
uint16_t additional_flags2 = 0;
uint16_t clear_flags2 = 0;
+ uint16_t uid = 0;
state = talloc_zero(mem_ctx, struct cli_trans_state);
if (state == NULL) {
additional_flags2 |= FLAGS2_DFS_PATHNAMES;
}
+ uid = cli_state_get_uid(cli);
state->req = smb1cli_trans_send(state, ev,
cli->conn, cmd,
additional_flags, clear_flags,
additional_flags2, clear_flags2,
cli->timeout,
- cli->smb1.pid, cli->smb1.tid, cli->smb1.uid,
+ cli->smb1.pid, cli->smb1.tid, uid,
pipe_name, fid, function, flags,
setup, num_setup, max_setup,
param, num_param, max_param,
uint8_t clear_flags = 0;
uint16_t additional_flags2 = 0;
uint16_t clear_flags2 = 0;
+ uint16_t uid = 0;
if (cli->case_sensitive) {
clear_flags |= FLAG_CASELESS_PATHNAMES;
additional_flags2 |= FLAGS2_DFS_PATHNAMES;
}
+ uid = cli_state_get_uid(cli);
status = smb1cli_trans(mem_ctx,
cli->conn, trans_cmd,
additional_flags, clear_flags,
additional_flags2, clear_flags2,
cli->timeout,
- cli->smb1.pid, cli->smb1.tid, cli->smb1.uid,
+ cli->smb1.pid, cli->smb1.tid, uid,
pipe_name, fid, function, flags,
setup, num_setup, max_setup,
param, num_param, max_param,