return NT_STATUS_OK;
}
-static NTSTATUS fsctl_network_resiliency(TALLOC_CTX *mem_ctx,
- struct tevent_context *ev,
- struct files_struct *in_fsp,
- DATA_BLOB *in_input,
- uint32_t in_max_output,
- DATA_BLOB *out_output)
-{
- NTSTATUS status;
- uint32_t in_timeout;
-
- *out_output = data_blob_null;
-
- if (in_fsp == NULL) {
- return NT_STATUS_FILE_CLOSED;
- }
-
- if (in_input->length < 8) {
- return NT_STATUS_INVALID_PARAMETER;
- }
-
- in_timeout = IVAL(in_input->data, 0);
- if (in_timeout > 300000) {
- return NT_STATUS_INVALID_PARAMETER;
- }
-
- in_fsp->op->global->is_resilient = true;
-
- status = smbXsrv_open_update(in_fsp->op);
- if (!NT_STATUS_IS_OK(status)) {
- in_fsp->op->global->is_resilient = false;
- return status;
- }
-
- return NT_STATUS_OK;
-}
-
static void smb2_ioctl_network_fs_copychunk_done(struct tevent_req *subreq);
static void smb2_ioctl_network_fs_offload_read_done(struct tevent_req *subreq);
tevent_req_set_callback(
subreq, smb2_ioctl_network_fs_offload_read_done, req);
return req;
- case FSCTL_LMR_REQ_RESILIENCY:
- status = fsctl_network_resiliency(state, ev,
- state->fsp,
- &state->in_input,
- state->in_max_output,
- &state->out_output);
- if (!tevent_req_nterror(req, status)) {
- tevent_req_done(req);
- }
- return tevent_req_post(req, ev);
- break;
+
default: {
uint8_t *out_data = NULL;
uint32_t out_data_len = 0;