Lines Matching refs:rsp
42 static void __wbuf(struct ksmbd_work *work, void **req, void **rsp) in __wbuf() argument
46 *rsp = ksmbd_resp_buf_next(work); in __wbuf()
49 *rsp = smb2_get_msg(work->response_buf); in __wbuf()
229 struct smb2_negotiate_rsp *rsp; in init_smb2_neg_rsp() local
252 rsp = smb2_get_msg(work->response_buf); in init_smb2_neg_rsp()
256 rsp->StructureSize = cpu_to_le16(65); in init_smb2_neg_rsp()
258 rsp->DialectRevision = cpu_to_le16(conn->dialect); in init_smb2_neg_rsp()
262 rsp->Capabilities = cpu_to_le32(conn->vals->capabilities); in init_smb2_neg_rsp()
264 rsp->MaxTransactSize = cpu_to_le32(conn->vals->max_trans_size); in init_smb2_neg_rsp()
265 rsp->MaxReadSize = cpu_to_le32(conn->vals->max_read_size); in init_smb2_neg_rsp()
266 rsp->MaxWriteSize = cpu_to_le32(conn->vals->max_write_size); in init_smb2_neg_rsp()
268 rsp->SystemTime = cpu_to_le64(ksmbd_systime()); in init_smb2_neg_rsp()
269 rsp->ServerStartTime = 0; in init_smb2_neg_rsp()
271 rsp->SecurityBufferOffset = cpu_to_le16(128); in init_smb2_neg_rsp()
272 rsp->SecurityBufferLength = cpu_to_le16(AUTH_GSS_LENGTH); in init_smb2_neg_rsp()
273 ksmbd_copy_gss_neg_header((char *)(&rsp->hdr) + in init_smb2_neg_rsp()
274 le16_to_cpu(rsp->SecurityBufferOffset)); in init_smb2_neg_rsp()
278 rsp->SecurityMode = SMB2_NEGOTIATE_SIGNING_ENABLED_LE; in init_smb2_neg_rsp()
280 rsp->SecurityMode |= SMB2_NEGOTIATE_SIGNING_REQUIRED_LE; in init_smb2_neg_rsp()
360 struct smb2_hdr *rsp = ksmbd_resp_buf_next(work); in init_chained_smb2_rsp() local
373 if (req->Command == SMB2_CREATE && rsp->Status == STATUS_SUCCESS) { in init_chained_smb2_rsp()
374 work->compound_fid = ((struct smb2_create_rsp *)rsp)->VolatileFileId; in init_chained_smb2_rsp()
375 work->compound_pfid = ((struct smb2_create_rsp *)rsp)->PersistentFileId; in init_chained_smb2_rsp()
376 work->compound_sid = le64_to_cpu(rsp->SessionId); in init_chained_smb2_rsp()
385 rsp->NextCommand = cpu_to_le32(new_len); in init_chained_smb2_rsp()
799 struct smb2_negotiate_rsp *rsp, in assemble_neg_contexts() argument
802 char *pneg_ctxt = (char *)rsp + in assemble_neg_contexts()
803 le32_to_cpu(rsp->NegotiateContextOffset); in assemble_neg_contexts()
811 rsp->NegotiateContextCount = cpu_to_le16(neg_ctxt_cnt); in assemble_neg_contexts()
823 rsp->NegotiateContextCount = cpu_to_le16(++neg_ctxt_cnt); in assemble_neg_contexts()
838 rsp->NegotiateContextCount = cpu_to_le16(++neg_ctxt_cnt); in assemble_neg_contexts()
850 rsp->NegotiateContextCount = cpu_to_le16(++neg_ctxt_cnt); in assemble_neg_contexts()
862 rsp->NegotiateContextCount = cpu_to_le16(++neg_ctxt_cnt); in assemble_neg_contexts()
1061 struct smb2_negotiate_rsp *rsp = smb2_get_msg(work->response_buf); in smb2_handle_negotiate() local
1076 rsp->hdr.Status = STATUS_INVALID_PARAMETER; in smb2_handle_negotiate()
1084 rsp->hdr.Status = STATUS_INVALID_PARAMETER; in smb2_handle_negotiate()
1093 rsp->hdr.Status = STATUS_INVALID_PARAMETER; in smb2_handle_negotiate()
1099 rsp->hdr.Status = STATUS_INVALID_PARAMETER; in smb2_handle_negotiate()
1106 rsp->hdr.Status = STATUS_INVALID_PARAMETER; in smb2_handle_negotiate()
1113 rsp->hdr.Status = STATUS_INVALID_PARAMETER; in smb2_handle_negotiate()
1127 rsp->hdr.Status = STATUS_INVALID_PARAMETER; in smb2_handle_negotiate()
1136 rsp->hdr.Status = status; in smb2_handle_negotiate()
1145 rsp->hdr.Status = STATUS_INVALID_PARAMETER; in smb2_handle_negotiate()
1154 rsp->NegotiateContextOffset = in smb2_handle_negotiate()
1156 assemble_neg_contexts(conn, rsp, work->response_buf); in smb2_handle_negotiate()
1172 rsp->hdr.Status = STATUS_NOT_SUPPORTED; in smb2_handle_negotiate()
1176 rsp->Capabilities = cpu_to_le32(conn->vals->capabilities); in smb2_handle_negotiate()
1181 rsp->MaxTransactSize = cpu_to_le32(conn->vals->max_trans_size); in smb2_handle_negotiate()
1182 rsp->MaxReadSize = cpu_to_le32(conn->vals->max_read_size); in smb2_handle_negotiate()
1183 rsp->MaxWriteSize = cpu_to_le32(conn->vals->max_write_size); in smb2_handle_negotiate()
1189 rsp->StructureSize = cpu_to_le16(65); in smb2_handle_negotiate()
1190 rsp->DialectRevision = cpu_to_le16(conn->dialect); in smb2_handle_negotiate()
1194 memset(rsp->ServerGUID, 0, SMB2_CLIENT_GUID_SIZE); in smb2_handle_negotiate()
1196 rsp->SystemTime = cpu_to_le64(ksmbd_systime()); in smb2_handle_negotiate()
1197 rsp->ServerStartTime = 0; in smb2_handle_negotiate()
1199 le32_to_cpu(rsp->NegotiateContextOffset), in smb2_handle_negotiate()
1200 le16_to_cpu(rsp->NegotiateContextCount)); in smb2_handle_negotiate()
1202 rsp->SecurityBufferOffset = cpu_to_le16(128); in smb2_handle_negotiate()
1203 rsp->SecurityBufferLength = cpu_to_le16(AUTH_GSS_LENGTH); in smb2_handle_negotiate()
1204 ksmbd_copy_gss_neg_header((char *)(&rsp->hdr) + in smb2_handle_negotiate()
1205 le16_to_cpu(rsp->SecurityBufferOffset)); in smb2_handle_negotiate()
1208 rsp->SecurityMode = SMB2_NEGOTIATE_SIGNING_ENABLED_LE; in smb2_handle_negotiate()
1217 rsp->SecurityMode |= SMB2_NEGOTIATE_SIGNING_REQUIRED_LE; in smb2_handle_negotiate()
1221 conn->srv_sec_mode = le16_to_cpu(rsp->SecurityMode); in smb2_handle_negotiate()
1297 struct smb2_sess_setup_rsp *rsp = smb2_get_msg(work->response_buf); in ntlm_negotiate() local
1309 sz = le16_to_cpu(rsp->SecurityBufferOffset); in ntlm_negotiate()
1311 (struct challenge_message *)((char *)&rsp->hdr.ProtocolId + sz); in ntlm_negotiate()
1319 rsp->SecurityBufferLength = cpu_to_le16(sz); in ntlm_negotiate()
1344 sz = le16_to_cpu(rsp->SecurityBufferOffset); in ntlm_negotiate()
1345 memcpy((char *)&rsp->hdr.ProtocolId + sz, spnego_blob, spnego_blob_len); in ntlm_negotiate()
1346 rsp->SecurityBufferLength = cpu_to_le16(spnego_blob_len); in ntlm_negotiate()
1406 struct smb2_sess_setup_rsp *rsp = smb2_get_msg(work->response_buf); in ntlm_authenticate() local
1425 sz = le16_to_cpu(rsp->SecurityBufferOffset); in ntlm_authenticate()
1426 memcpy((char *)&rsp->hdr.ProtocolId + sz, spnego_blob, spnego_blob_len); in ntlm_authenticate()
1427 rsp->SecurityBufferLength = cpu_to_le16(spnego_blob_len); in ntlm_authenticate()
1463 rsp->SessionFlags = SMB2_SESSION_FLAG_IS_GUEST_LE; in ntlm_authenticate()
1488 if ((rsp->SessionFlags != SMB2_SESSION_FLAG_IS_GUEST_LE && in ntlm_authenticate()
1503 rsp->SessionFlags = SMB2_SESSION_FLAG_ENCRYPT_DATA_LE; in ntlm_authenticate()
1543 struct smb2_sess_setup_rsp *rsp = smb2_get_msg(work->response_buf); in krb5_authenticate() local
1555 out_blob = (char *)&rsp->hdr.ProtocolId + in krb5_authenticate()
1556 le16_to_cpu(rsp->SecurityBufferOffset); in krb5_authenticate()
1558 (le16_to_cpu(rsp->SecurityBufferOffset) + 4); in krb5_authenticate()
1574 rsp->SecurityBufferLength = cpu_to_le16(out_len); in krb5_authenticate()
1590 rsp->SessionFlags = SMB2_SESSION_FLAG_ENCRYPT_DATA_LE; in krb5_authenticate()
1631 struct smb2_sess_setup_rsp *rsp = smb2_get_msg(work->response_buf); in smb2_sess_setup() local
1639 rsp->StructureSize = cpu_to_le16(9); in smb2_sess_setup()
1640 rsp->SessionFlags = 0; in smb2_sess_setup()
1641 rsp->SecurityBufferOffset = cpu_to_le16(72); in smb2_sess_setup()
1642 rsp->SecurityBufferLength = 0; in smb2_sess_setup()
1651 rsp->hdr.SessionId = cpu_to_le64(sess->id); in smb2_sess_setup()
1755 rsp->hdr.Status = in smb2_sess_setup()
1762 le16_to_cpu(rsp->SecurityBufferLength) - 1); in smb2_sess_setup()
1796 rsp->hdr.Status = STATUS_INVALID_PARAMETER; in smb2_sess_setup()
1798 rsp->hdr.Status = STATUS_USER_SESSION_DELETED; in smb2_sess_setup()
1800 rsp->hdr.Status = STATUS_REQUEST_NOT_ACCEPTED; in smb2_sess_setup()
1802 rsp->hdr.Status = STATUS_NETWORK_SESSION_EXPIRED; in smb2_sess_setup()
1804 rsp->hdr.Status = STATUS_INSUFFICIENT_RESOURCES; in smb2_sess_setup()
1806 rsp->hdr.Status = STATUS_LOGON_FAILURE; in smb2_sess_setup()
1818 rsp->SecurityBufferOffset = 0; in smb2_sess_setup()
1853 struct smb2_tree_connect_rsp *rsp = smb2_get_msg(work->response_buf); in smb2_tree_connect() local
1880 rsp->hdr.Id.SyncId.TreeId = cpu_to_le32(status.tree_conn->id); in smb2_tree_connect()
1887 rsp->ShareType = SMB2_SHARE_TYPE_PIPE; in smb2_tree_connect()
1888 rsp->MaximalAccess = FILE_READ_DATA_LE | FILE_READ_EA_LE | in smb2_tree_connect()
1894 rsp->ShareType = SMB2_SHARE_TYPE_DISK; in smb2_tree_connect()
1895 rsp->MaximalAccess = FILE_READ_DATA_LE | FILE_READ_EA_LE | in smb2_tree_connect()
1899 rsp->MaximalAccess |= FILE_WRITE_DATA_LE | in smb2_tree_connect()
1908 status.tree_conn->maximal_access = le32_to_cpu(rsp->MaximalAccess); in smb2_tree_connect()
1912 rsp->StructureSize = cpu_to_le16(16); in smb2_tree_connect()
1915 rsp->Capabilities = 0; in smb2_tree_connect()
1916 rsp->Reserved = 0; in smb2_tree_connect()
1918 rsp->ShareFlags = SMB2_SHAREFLAG_MANUAL_CACHING; in smb2_tree_connect()
1927 rsp->hdr.Status = STATUS_SUCCESS; in smb2_tree_connect()
1933 rsp->hdr.Status = STATUS_BAD_NETWORK_NAME; in smb2_tree_connect()
1937 rsp->hdr.Status = STATUS_NO_MEMORY; in smb2_tree_connect()
1942 rsp->hdr.Status = STATUS_ACCESS_DENIED; in smb2_tree_connect()
1945 rsp->hdr.Status = STATUS_INVALID_PARAMETER; in smb2_tree_connect()
1948 rsp->hdr.Status = STATUS_ACCESS_DENIED; in smb2_tree_connect()
2028 struct smb2_tree_disconnect_rsp *rsp = smb2_get_msg(work->response_buf); in smb2_tree_disconnect() local
2032 rsp->StructureSize = cpu_to_le16(4); in smb2_tree_disconnect()
2042 rsp->hdr.Status = STATUS_NETWORK_NAME_DELETED; in smb2_tree_disconnect()
2062 struct smb2_logoff_rsp *rsp = smb2_get_msg(work->response_buf); in smb2_session_logoff() local
2065 rsp->StructureSize = cpu_to_le16(4); in smb2_session_logoff()
2079 rsp->hdr.Status = STATUS_NETWORK_NAME_DELETED; in smb2_session_logoff()
2103 struct smb2_create_rsp *rsp = smb2_get_msg(work->response_buf); in create_smb2_pipe() local
2112 rsp->hdr.Status = STATUS_NO_MEMORY; in create_smb2_pipe()
2124 rsp->hdr.Status = STATUS_SUCCESS; in create_smb2_pipe()
2125 rsp->StructureSize = cpu_to_le16(89); in create_smb2_pipe()
2126 rsp->OplockLevel = SMB2_OPLOCK_LEVEL_NONE; in create_smb2_pipe()
2127 rsp->Flags = 0; in create_smb2_pipe()
2128 rsp->CreateAction = cpu_to_le32(FILE_OPENED); in create_smb2_pipe()
2130 rsp->CreationTime = cpu_to_le64(0); in create_smb2_pipe()
2131 rsp->LastAccessTime = cpu_to_le64(0); in create_smb2_pipe()
2132 rsp->ChangeTime = cpu_to_le64(0); in create_smb2_pipe()
2133 rsp->AllocationSize = cpu_to_le64(0); in create_smb2_pipe()
2134 rsp->EndofFile = cpu_to_le64(0); in create_smb2_pipe()
2135 rsp->FileAttributes = FILE_ATTRIBUTE_NORMAL_LE; in create_smb2_pipe()
2136 rsp->Reserved2 = 0; in create_smb2_pipe()
2137 rsp->VolatileFileId = id; in create_smb2_pipe()
2138 rsp->PersistentFileId = 0; in create_smb2_pipe()
2139 rsp->CreateContextsOffset = 0; in create_smb2_pipe()
2140 rsp->CreateContextsLength = 0; in create_smb2_pipe()
2149 rsp->hdr.Status = STATUS_INVALID_PARAMETER; in create_smb2_pipe()
2153 rsp->hdr.Status = STATUS_NO_MEMORY; in create_smb2_pipe()
2494 struct smb2_create_rsp *rsp; in smb2_open() local
2520 WORK_BUFFERS(work, req, rsp); in smb2_open()
2525 rsp->hdr.Status = STATUS_INVALID_PARAMETER; in smb2_open()
2592 rsp->hdr.Status = STATUS_BAD_IMPERSONATION_LEVEL; in smb2_open()
2660 rsp->hdr.Status = STATUS_ACCESS_DENIED; in smb2_open()
2758 rsp->hdr.Status = STATUS_NOT_A_DIRECTORY; in smb2_open()
2764 rsp->hdr.Status = STATUS_FILE_IS_A_DIRECTORY; in smb2_open()
2770 rsp->hdr.Status = STATUS_NOT_A_DIRECTORY; in smb2_open()
2783 rsp->hdr.Status = STATUS_FILE_IS_A_DIRECTORY; in smb2_open()
2791 rsp->hdr.Status = STATUS_NOT_A_DIRECTORY; in smb2_open()
2845 rsp->hdr.Status = STATUS_OBJECT_PATH_NOT_FOUND; in smb2_open()
3142 rsp->StructureSize = cpu_to_le16(89); in smb2_open()
3145 rsp->OplockLevel = opinfo != NULL ? opinfo->level : 0; in smb2_open()
3147 rsp->Flags = 0; in smb2_open()
3148 rsp->CreateAction = cpu_to_le32(file_info); in smb2_open()
3149 rsp->CreationTime = cpu_to_le64(fp->create_time); in smb2_open()
3151 rsp->LastAccessTime = cpu_to_le64(time); in smb2_open()
3153 rsp->LastWriteTime = cpu_to_le64(time); in smb2_open()
3155 rsp->ChangeTime = cpu_to_le64(time); in smb2_open()
3156 rsp->AllocationSize = S_ISDIR(stat.mode) ? 0 : in smb2_open()
3158 rsp->EndofFile = S_ISDIR(stat.mode) ? 0 : cpu_to_le64(stat.size); in smb2_open()
3159 rsp->FileAttributes = fp->f_ci->m_fattr; in smb2_open()
3161 rsp->Reserved2 = 0; in smb2_open()
3163 rsp->PersistentFileId = fp->persistent_id; in smb2_open()
3164 rsp->VolatileFileId = fp->volatile_id; in smb2_open()
3166 rsp->CreateContextsOffset = 0; in smb2_open()
3167 rsp->CreateContextsLength = 0; in smb2_open()
3176 rsp->OplockLevel = SMB2_OPLOCK_LEVEL_LEASE; in smb2_open()
3178 lease_ccontext = (struct create_context *)rsp->Buffer; in smb2_open()
3180 create_lease_buf(rsp->Buffer, opinfo->o_lease); in smb2_open()
3181 le32_add_cpu(&rsp->CreateContextsLength, in smb2_open()
3196 mxac_ccontext = (struct create_context *)(rsp->Buffer + in smb2_open()
3197 le32_to_cpu(rsp->CreateContextsLength)); in smb2_open()
3199 create_mxac_rsp_buf(rsp->Buffer + in smb2_open()
3200 le32_to_cpu(rsp->CreateContextsLength), in smb2_open()
3202 le32_add_cpu(&rsp->CreateContextsLength, in smb2_open()
3215 disk_id_ccontext = (struct create_context *)(rsp->Buffer + in smb2_open()
3216 le32_to_cpu(rsp->CreateContextsLength)); in smb2_open()
3218 create_disk_id_rsp_buf(rsp->Buffer + in smb2_open()
3219 le32_to_cpu(rsp->CreateContextsLength), in smb2_open()
3221 le32_add_cpu(&rsp->CreateContextsLength, in smb2_open()
3233 create_posix_rsp_buf(rsp->Buffer + in smb2_open()
3234 le32_to_cpu(rsp->CreateContextsLength), in smb2_open()
3236 le32_add_cpu(&rsp->CreateContextsLength, in smb2_open()
3245 rsp->CreateContextsOffset = in smb2_open()
3256 rsp->hdr.Status = STATUS_INVALID_PARAMETER; in smb2_open()
3258 rsp->hdr.Status = STATUS_NOT_SUPPORTED; in smb2_open()
3260 rsp->hdr.Status = STATUS_ACCESS_DENIED; in smb2_open()
3262 rsp->hdr.Status = STATUS_OBJECT_NAME_INVALID; in smb2_open()
3264 rsp->hdr.Status = STATUS_SHARING_VIOLATION; in smb2_open()
3266 rsp->hdr.Status = STATUS_DELETE_PENDING; in smb2_open()
3268 rsp->hdr.Status = STATUS_OBJECT_NAME_NOT_FOUND; in smb2_open()
3270 rsp->hdr.Status = STATUS_DUPLICATE_OBJECTID; in smb2_open()
3272 rsp->hdr.Status = STATUS_NO_SUCH_DEVICE; in smb2_open()
3274 rsp->hdr.Status = STATUS_OBJECT_NAME_COLLISION; in smb2_open()
3276 rsp->hdr.Status = STATUS_INSUFFICIENT_RESOURCES; in smb2_open()
3277 if (!rsp->hdr.Status) in smb2_open()
3278 rsp->hdr.Status = STATUS_UNEXPECTED_IO_ERROR; in smb2_open()
3283 ksmbd_debug(SMB, "Error response: %x\n", rsp->hdr.Status); in smb2_open()
3851 struct smb2_query_directory_rsp *rsp; in smb2_query_dir() local
3861 WORK_BUFFERS(work, req, rsp); in smb2_query_dir()
3864 rsp->hdr.Status = STATUS_NO_MEMORY; in smb2_query_dir()
3914 d_info.wptr = (char *)rsp->Buffer; in smb2_query_dir()
3915 d_info.rptr = (char *)rsp->Buffer; in smb2_query_dir()
3970 rsp->hdr.Status = STATUS_NO_SUCH_FILE; in smb2_query_dir()
3973 rsp->hdr.Status = STATUS_NO_MORE_FILES; in smb2_query_dir()
3975 rsp->StructureSize = cpu_to_le16(9); in smb2_query_dir()
3976 rsp->OutputBufferOffset = cpu_to_le16(0); in smb2_query_dir()
3977 rsp->OutputBufferLength = cpu_to_le32(0); in smb2_query_dir()
3978 rsp->Buffer[0] = 0; in smb2_query_dir()
3983 ((char *)rsp->Buffer + d_info.last_entry_offset)) in smb2_query_dir()
3988 rsp->StructureSize = cpu_to_le16(9); in smb2_query_dir()
3989 rsp->OutputBufferOffset = cpu_to_le16(72); in smb2_query_dir()
3990 rsp->OutputBufferLength = cpu_to_le32(d_info.data_count); in smb2_query_dir()
4005 rsp->hdr.Status = STATUS_INVALID_PARAMETER; in smb2_query_dir()
4007 rsp->hdr.Status = STATUS_ACCESS_DENIED; in smb2_query_dir()
4009 rsp->hdr.Status = STATUS_NO_SUCH_FILE; in smb2_query_dir()
4011 rsp->hdr.Status = STATUS_FILE_CLOSED; in smb2_query_dir()
4013 rsp->hdr.Status = STATUS_NO_MEMORY; in smb2_query_dir()
4015 rsp->hdr.Status = STATUS_INVALID_INFO_CLASS; in smb2_query_dir()
4017 rsp->hdr.Status = STATUS_FILE_CORRUPT_ERROR; in smb2_query_dir()
4018 if (!rsp->hdr.Status) in smb2_query_dir()
4019 rsp->hdr.Status = STATUS_UNEXPECTED_IO_ERROR; in smb2_query_dir()
4037 struct smb2_query_info_rsp *rsp, in buffer_check_err() argument
4040 if (reqOutputBufferLength < le32_to_cpu(rsp->OutputBufferLength)) { in buffer_check_err()
4043 rsp->hdr.Status = STATUS_INFO_LENGTH_MISMATCH; in buffer_check_err()
4049 rsp->hdr.Status = STATUS_BUFFER_OVERFLOW; in buffer_check_err()
4052 rsp->OutputBufferLength = cpu_to_le32(reqOutputBufferLength); in buffer_check_err()
4057 static void get_standard_info_pipe(struct smb2_query_info_rsp *rsp, in get_standard_info_pipe() argument
4062 sinfo = (struct smb2_file_standard_info *)rsp->Buffer; in get_standard_info_pipe()
4069 rsp->OutputBufferLength = in get_standard_info_pipe()
4074 static void get_internal_info_pipe(struct smb2_query_info_rsp *rsp, u64 num, in get_internal_info_pipe() argument
4079 file_info = (struct smb2_file_internal_info *)rsp->Buffer; in get_internal_info_pipe()
4083 rsp->OutputBufferLength = in get_internal_info_pipe()
4090 struct smb2_query_info_rsp *rsp, in smb2_get_info_file_pipe() argument
4109 get_standard_info_pipe(rsp, rsp_org); in smb2_get_info_file_pipe()
4111 rsp, rsp_org, in smb2_get_info_file_pipe()
4115 get_internal_info_pipe(rsp, id, rsp_org); in smb2_get_info_file_pipe()
4117 rsp, rsp_org, in smb2_get_info_file_pipe()
4140 struct smb2_query_info_rsp *rsp, void *rsp_org) in smb2_get_ea() argument
4180 rsp->hdr.Status = STATUS_INVALID_HANDLE; in smb2_get_ea()
4188 ptr = (char *)rsp->Buffer; in smb2_get_ea()
4232 rsp->hdr.Status = STATUS_INVALID_HANDLE; in smb2_get_ea()
4284 rsp->hdr.Status = STATUS_NO_EAS_ON_FILE; in smb2_get_ea()
4285 rsp->OutputBufferLength = cpu_to_le32(rsp_data_cnt); in smb2_get_ea()
4292 static void get_file_access_info(struct smb2_query_info_rsp *rsp, in get_file_access_info() argument
4297 file_info = (struct smb2_file_access_info *)rsp->Buffer; in get_file_access_info()
4299 rsp->OutputBufferLength = in get_file_access_info()
4304 static int get_file_basic_info(struct smb2_query_info_rsp *rsp, in get_file_basic_info() argument
4317 basic_info = (struct smb2_file_basic_info *)rsp->Buffer; in get_file_basic_info()
4329 rsp->OutputBufferLength = in get_file_basic_info()
4350 static void get_file_standard_info(struct smb2_query_info_rsp *rsp, in get_file_standard_info() argument
4361 sinfo = (struct smb2_file_standard_info *)rsp->Buffer; in get_file_standard_info()
4369 rsp->OutputBufferLength = in get_file_standard_info()
4375 static void get_file_alignment_info(struct smb2_query_info_rsp *rsp, in get_file_alignment_info() argument
4380 file_info = (struct smb2_file_alignment_info *)rsp->Buffer; in get_file_alignment_info()
4382 rsp->OutputBufferLength = in get_file_alignment_info()
4389 struct smb2_query_info_rsp *rsp, in get_file_all_info() argument
4417 file_info = (struct smb2_file_all_info *)rsp->Buffer; in get_file_all_info()
4446 rsp->OutputBufferLength = in get_file_all_info()
4449 inc_rfc1001_len(rsp_org, le32_to_cpu(rsp->OutputBufferLength)); in get_file_all_info()
4454 struct smb2_query_info_rsp *rsp, in get_file_alternate_info() argument
4464 file_info = (struct smb2_file_alt_name_info *)rsp->Buffer; in get_file_alternate_info()
4470 rsp->OutputBufferLength = in get_file_alternate_info()
4472 inc_rfc1001_len(rsp_org, le32_to_cpu(rsp->OutputBufferLength)); in get_file_alternate_info()
4476 struct smb2_query_info_rsp *rsp, in get_file_stream_info() argument
4492 file_info = (struct smb2_file_stream_info *)rsp->Buffer; in get_file_stream_info()
4538 file_info = (struct smb2_file_stream_info *)&rsp->Buffer[nbytes]; in get_file_stream_info()
4557 &rsp->Buffer[nbytes]; in get_file_stream_info()
4571 rsp->OutputBufferLength = cpu_to_le32(nbytes); in get_file_stream_info()
4575 static void get_file_internal_info(struct smb2_query_info_rsp *rsp, in get_file_internal_info() argument
4583 file_info = (struct smb2_file_internal_info *)rsp->Buffer; in get_file_internal_info()
4585 rsp->OutputBufferLength = in get_file_internal_info()
4590 static int get_file_network_open_info(struct smb2_query_info_rsp *rsp, in get_file_network_open_info() argument
4604 file_info = (struct smb2_file_ntwrk_info *)rsp->Buffer; in get_file_network_open_info()
4621 rsp->OutputBufferLength = in get_file_network_open_info()
4627 static void get_file_ea_info(struct smb2_query_info_rsp *rsp, void *rsp_org) in get_file_ea_info() argument
4631 file_info = (struct smb2_file_ea_info *)rsp->Buffer; in get_file_ea_info()
4633 rsp->OutputBufferLength = in get_file_ea_info()
4638 static void get_file_position_info(struct smb2_query_info_rsp *rsp, in get_file_position_info() argument
4643 file_info = (struct smb2_file_pos_info *)rsp->Buffer; in get_file_position_info()
4645 rsp->OutputBufferLength = in get_file_position_info()
4650 static void get_file_mode_info(struct smb2_query_info_rsp *rsp, in get_file_mode_info() argument
4655 file_info = (struct smb2_file_mode_info *)rsp->Buffer; in get_file_mode_info()
4657 rsp->OutputBufferLength = in get_file_mode_info()
4662 static void get_file_compression_info(struct smb2_query_info_rsp *rsp, in get_file_compression_info() argument
4671 file_info = (struct smb2_file_comp_info *)rsp->Buffer; in get_file_compression_info()
4679 rsp->OutputBufferLength = in get_file_compression_info()
4684 static int get_file_attribute_tag_info(struct smb2_query_info_rsp *rsp, in get_file_attribute_tag_info() argument
4695 file_info = (struct smb2_file_attr_tag_info *)rsp->Buffer; in get_file_attribute_tag_info()
4698 rsp->OutputBufferLength = in get_file_attribute_tag_info()
4704 static int find_file_posix_info(struct smb2_query_info_rsp *rsp, in find_file_posix_info() argument
4715 file_info = (struct smb311_posix_qinfo *)rsp->Buffer; in find_file_posix_info()
4741 rsp->OutputBufferLength = cpu_to_le32(out_buf_len); in find_file_posix_info()
4748 struct smb2_query_info_rsp *rsp) in smb2_get_info_file() argument
4759 return smb2_get_info_file_pipe(work->sess, req, rsp, in smb2_get_info_file()
4785 get_file_access_info(rsp, fp, work->response_buf); in smb2_get_info_file()
4790 rc = get_file_basic_info(rsp, fp, work->response_buf); in smb2_get_info_file()
4795 get_file_standard_info(rsp, fp, work->response_buf); in smb2_get_info_file()
4800 get_file_alignment_info(rsp, work->response_buf); in smb2_get_info_file()
4805 rc = get_file_all_info(work, rsp, fp, work->response_buf); in smb2_get_info_file()
4810 get_file_alternate_info(work, rsp, fp, work->response_buf); in smb2_get_info_file()
4815 get_file_stream_info(work, rsp, fp, work->response_buf); in smb2_get_info_file()
4820 get_file_internal_info(rsp, fp, work->response_buf); in smb2_get_info_file()
4825 rc = get_file_network_open_info(rsp, fp, work->response_buf); in smb2_get_info_file()
4830 get_file_ea_info(rsp, work->response_buf); in smb2_get_info_file()
4835 rc = smb2_get_ea(work, fp, req, rsp, work->response_buf); in smb2_get_info_file()
4840 get_file_position_info(rsp, fp, work->response_buf); in smb2_get_info_file()
4845 get_file_mode_info(rsp, fp, work->response_buf); in smb2_get_info_file()
4850 get_file_compression_info(rsp, fp, work->response_buf); in smb2_get_info_file()
4855 rc = get_file_attribute_tag_info(rsp, fp, work->response_buf); in smb2_get_info_file()
4863 file_infoclass_size = find_file_posix_info(rsp, fp, in smb2_get_info_file()
4874 rsp, work->response_buf, in smb2_get_info_file()
4882 struct smb2_query_info_rsp *rsp) in smb2_get_info_filesystem() argument
4913 info = (struct filesystem_device_info *)rsp->Buffer; in smb2_get_info_filesystem()
4917 rsp->OutputBufferLength = cpu_to_le32(8); in smb2_get_info_filesystem()
4927 info = (struct filesystem_attribute_info *)rsp->Buffer; in smb2_get_info_filesystem()
4943 rsp->OutputBufferLength = cpu_to_le32(sz); in smb2_get_info_filesystem()
4954 info = (struct filesystem_vol_info *)(rsp->Buffer); in smb2_get_info_filesystem()
4971 rsp->OutputBufferLength = cpu_to_le32(sz); in smb2_get_info_filesystem()
4980 info = (struct filesystem_info *)(rsp->Buffer); in smb2_get_info_filesystem()
4985 rsp->OutputBufferLength = cpu_to_le32(24); in smb2_get_info_filesystem()
4994 info = (struct smb2_fs_full_size_info *)(rsp->Buffer); in smb2_get_info_filesystem()
5002 rsp->OutputBufferLength = cpu_to_le32(32); in smb2_get_info_filesystem()
5011 info = (struct object_id_info *)(rsp->Buffer); in smb2_get_info_filesystem()
5023 rsp->OutputBufferLength = cpu_to_le32(64); in smb2_get_info_filesystem()
5034 info = (struct smb3_fs_ss_info *)(rsp->Buffer); in smb2_get_info_filesystem()
5046 rsp->OutputBufferLength = cpu_to_le32(28); in smb2_get_info_filesystem()
5061 info = (struct smb2_fs_control_info *)(rsp->Buffer); in smb2_get_info_filesystem()
5068 rsp->OutputBufferLength = cpu_to_le32(48); in smb2_get_info_filesystem()
5081 info = (struct filesystem_posix_info *)(rsp->Buffer); in smb2_get_info_filesystem()
5089 rsp->OutputBufferLength = cpu_to_le32(56); in smb2_get_info_filesystem()
5100 rsp, work->response_buf, in smb2_get_info_filesystem()
5108 struct smb2_query_info_rsp *rsp) in smb2_get_info_sec() argument
5112 struct smb_ntsd *pntsd = (struct smb_ntsd *)rsp->Buffer, *ppntsd = NULL; in smb2_get_info_sec()
5134 rsp->OutputBufferLength = cpu_to_le32(secdesclen); in smb2_get_info_sec()
5179 rsp->OutputBufferLength = cpu_to_le32(secdesclen); in smb2_get_info_sec()
5193 struct smb2_query_info_rsp *rsp; in smb2_query_info() local
5196 WORK_BUFFERS(work, req, rsp); in smb2_query_info()
5203 rc = smb2_get_info_file(work, req, rsp); in smb2_query_info()
5207 rc = smb2_get_info_filesystem(work, req, rsp); in smb2_query_info()
5211 rc = smb2_get_info_sec(work, req, rsp); in smb2_query_info()
5221 rsp->hdr.Status = STATUS_ACCESS_DENIED; in smb2_query_info()
5223 rsp->hdr.Status = STATUS_FILE_CLOSED; in smb2_query_info()
5225 rsp->hdr.Status = STATUS_UNEXPECTED_IO_ERROR; in smb2_query_info()
5226 else if (rc == -EOPNOTSUPP || rsp->hdr.Status == 0) in smb2_query_info()
5227 rsp->hdr.Status = STATUS_INVALID_INFO_CLASS; in smb2_query_info()
5234 rsp->StructureSize = cpu_to_le16(9); in smb2_query_info()
5235 rsp->OutputBufferOffset = cpu_to_le16(72); in smb2_query_info()
5250 struct smb2_close_rsp *rsp = smb2_get_msg(work->response_buf); in smb2_close_pipe() local
5255 rsp->StructureSize = cpu_to_le16(60); in smb2_close_pipe()
5256 rsp->Flags = 0; in smb2_close_pipe()
5257 rsp->Reserved = 0; in smb2_close_pipe()
5258 rsp->CreationTime = 0; in smb2_close_pipe()
5259 rsp->LastAccessTime = 0; in smb2_close_pipe()
5260 rsp->LastWriteTime = 0; in smb2_close_pipe()
5261 rsp->ChangeTime = 0; in smb2_close_pipe()
5262 rsp->AllocationSize = 0; in smb2_close_pipe()
5263 rsp->EndOfFile = 0; in smb2_close_pipe()
5264 rsp->Attributes = 0; in smb2_close_pipe()
5280 struct smb2_close_rsp *rsp; in smb2_close() local
5287 WORK_BUFFERS(work, req, rsp); in smb2_close()
5303 rsp->hdr.Status = STATUS_USER_SESSION_DELETED; in smb2_close()
5305 rsp->hdr.Status = STATUS_INVALID_PARAMETER; in smb2_close()
5315 rsp->hdr.Status = STATUS_FILE_CLOSED; in smb2_close()
5334 rsp->StructureSize = cpu_to_le16(60); in smb2_close()
5335 rsp->Reserved = 0; in smb2_close()
5345 rsp->Flags = SMB2_CLOSE_FLAG_POSTQUERY_ATTRIB; in smb2_close()
5346 rsp->AllocationSize = S_ISDIR(inode->i_mode) ? 0 : in smb2_close()
5348 rsp->EndOfFile = cpu_to_le64(inode->i_size); in smb2_close()
5349 rsp->Attributes = fp->f_ci->m_fattr; in smb2_close()
5350 rsp->CreationTime = cpu_to_le64(fp->create_time); in smb2_close()
5352 rsp->LastAccessTime = cpu_to_le64(time); in smb2_close()
5354 rsp->LastWriteTime = cpu_to_le64(time); in smb2_close()
5356 rsp->ChangeTime = cpu_to_le64(time); in smb2_close()
5359 rsp->Flags = 0; in smb2_close()
5360 rsp->AllocationSize = 0; in smb2_close()
5361 rsp->EndOfFile = 0; in smb2_close()
5362 rsp->Attributes = 0; in smb2_close()
5363 rsp->CreationTime = 0; in smb2_close()
5364 rsp->LastAccessTime = 0; in smb2_close()
5365 rsp->LastWriteTime = 0; in smb2_close()
5366 rsp->ChangeTime = 0; in smb2_close()
5372 if (rsp->hdr.Status == 0) in smb2_close()
5373 rsp->hdr.Status = STATUS_FILE_CLOSED; in smb2_close()
5390 struct smb2_echo_rsp *rsp = smb2_get_msg(work->response_buf); in smb2_echo() local
5392 rsp->StructureSize = cpu_to_le16(4); in smb2_echo()
5393 rsp->Reserved = 0; in smb2_echo()
6008 struct smb2_set_info_rsp *rsp; in smb2_set_info() local
6017 rsp = ksmbd_resp_buf_next(work); in smb2_set_info()
6026 rsp = smb2_get_msg(work->response_buf); in smb2_set_info()
6065 rsp->StructureSize = cpu_to_le16(2); in smb2_set_info()
6072 rsp->hdr.Status = STATUS_ACCESS_DENIED; in smb2_set_info()
6074 rsp->hdr.Status = STATUS_INVALID_PARAMETER; in smb2_set_info()
6076 rsp->hdr.Status = STATUS_SHARING_VIOLATION; in smb2_set_info()
6078 rsp->hdr.Status = STATUS_OBJECT_NAME_INVALID; in smb2_set_info()
6080 rsp->hdr.Status = STATUS_DIRECTORY_NOT_EMPTY; in smb2_set_info()
6082 rsp->hdr.Status = STATUS_FILE_LOCK_CONFLICT; in smb2_set_info()
6084 rsp->hdr.Status = STATUS_INVALID_HANDLE; in smb2_set_info()
6086 rsp->hdr.Status = STATUS_OBJECT_NAME_COLLISION; in smb2_set_info()
6087 else if (rsp->hdr.Status == 0 || rc == -EOPNOTSUPP) in smb2_set_info()
6088 rsp->hdr.Status = STATUS_INVALID_INFO_CLASS; in smb2_set_info()
6107 struct smb2_read_rsp *rsp = smb2_get_msg(work->response_buf); in smb2_read_pipe() local
6135 rsp->StructureSize = cpu_to_le16(17); in smb2_read_pipe()
6136 rsp->DataOffset = 80; in smb2_read_pipe()
6137 rsp->Reserved = 0; in smb2_read_pipe()
6138 rsp->DataLength = cpu_to_le32(nbytes); in smb2_read_pipe()
6139 rsp->DataRemaining = 0; in smb2_read_pipe()
6140 rsp->Flags = 0; in smb2_read_pipe()
6145 rsp->hdr.Status = STATUS_UNEXPECTED_IO_ERROR; in smb2_read_pipe()
6207 struct smb2_read_rsp *rsp; in smb2_read() local
6216 WORK_BUFFERS(work, req, rsp); in smb2_read()
6287 rsp->hdr.Status = STATUS_END_OF_FILE; in smb2_read()
6311 rsp->StructureSize = cpu_to_le16(17); in smb2_read()
6312 rsp->DataOffset = 80; in smb2_read()
6313 rsp->Reserved = 0; in smb2_read()
6314 rsp->DataLength = cpu_to_le32(nbytes); in smb2_read()
6315 rsp->DataRemaining = cpu_to_le32(remain_bytes); in smb2_read()
6316 rsp->Flags = 0; in smb2_read()
6327 rsp->hdr.Status = STATUS_INVALID_DEVICE_REQUEST; in smb2_read()
6329 rsp->hdr.Status = STATUS_FILE_LOCK_CONFLICT; in smb2_read()
6331 rsp->hdr.Status = STATUS_FILE_CLOSED; in smb2_read()
6333 rsp->hdr.Status = STATUS_ACCESS_DENIED; in smb2_read()
6335 rsp->hdr.Status = STATUS_SHARING_VIOLATION; in smb2_read()
6337 rsp->hdr.Status = STATUS_INVALID_PARAMETER; in smb2_read()
6339 rsp->hdr.Status = STATUS_INVALID_HANDLE; in smb2_read()
6356 struct smb2_write_rsp *rsp = smb2_get_msg(work->response_buf); in smb2_write_pipe() local
6381 rsp->hdr.Status = STATUS_NOT_SUPPORTED; in smb2_write_pipe()
6387 rsp->hdr.Status = STATUS_INVALID_HANDLE; in smb2_write_pipe()
6395 rsp->StructureSize = cpu_to_le16(17); in smb2_write_pipe()
6396 rsp->DataOffset = 0; in smb2_write_pipe()
6397 rsp->Reserved = 0; in smb2_write_pipe()
6398 rsp->DataLength = cpu_to_le32(length); in smb2_write_pipe()
6399 rsp->DataRemaining = 0; in smb2_write_pipe()
6400 rsp->Reserved2 = 0; in smb2_write_pipe()
6405 rsp->hdr.Status = STATUS_INVALID_HANDLE; in smb2_write_pipe()
6451 struct smb2_write_rsp *rsp; in smb2_write() local
6461 WORK_BUFFERS(work, req, rsp); in smb2_write()
6552 rsp->StructureSize = cpu_to_le16(17); in smb2_write()
6553 rsp->DataOffset = 0; in smb2_write()
6554 rsp->Reserved = 0; in smb2_write()
6555 rsp->DataLength = cpu_to_le32(nbytes); in smb2_write()
6556 rsp->DataRemaining = 0; in smb2_write()
6557 rsp->Reserved2 = 0; in smb2_write()
6564 rsp->hdr.Status = STATUS_FILE_LOCK_CONFLICT; in smb2_write()
6566 rsp->hdr.Status = STATUS_DISK_FULL; in smb2_write()
6568 rsp->hdr.Status = STATUS_FILE_CLOSED; in smb2_write()
6570 rsp->hdr.Status = STATUS_ACCESS_DENIED; in smb2_write()
6572 rsp->hdr.Status = STATUS_SHARING_VIOLATION; in smb2_write()
6574 rsp->hdr.Status = STATUS_INVALID_PARAMETER; in smb2_write()
6576 rsp->hdr.Status = STATUS_INVALID_HANDLE; in smb2_write()
6592 struct smb2_flush_rsp *rsp; in smb2_flush() local
6595 WORK_BUFFERS(work, req, rsp); in smb2_flush()
6603 rsp->StructureSize = cpu_to_le16(4); in smb2_flush()
6604 rsp->Reserved = 0; in smb2_flush()
6610 rsp->hdr.Status = STATUS_INVALID_HANDLE; in smb2_flush()
6791 struct smb2_lock_rsp *rsp = smb2_get_msg(work->response_buf); in smb2_lock() local
6839 rsp->hdr.Status = STATUS_INVALID_LOCK_RANGE; in smb2_lock()
6859 rsp->hdr.Status = STATUS_INVALID_LOCK_RANGE; in smb2_lock()
6983 rsp->hdr.Status = STATUS_RANGE_NOT_LOCKED; in smb2_lock()
7002 rsp->hdr.Status = STATUS_NOT_LOCKED; in smb2_lock()
7057 rsp->hdr.Status = in smb2_lock()
7067 rsp->hdr.Status = in smb2_lock()
7097 rsp->StructureSize = cpu_to_le16(4); in smb2_lock()
7099 rsp->hdr.Status = STATUS_SUCCESS; in smb2_lock()
7100 rsp->Reserved = 0; in smb2_lock()
7138 if (!rsp->hdr.Status) { in smb2_lock()
7140 rsp->hdr.Status = STATUS_INVALID_PARAMETER; in smb2_lock()
7142 rsp->hdr.Status = STATUS_INSUFFICIENT_RESOURCES; in smb2_lock()
7144 rsp->hdr.Status = STATUS_FILE_CLOSED; in smb2_lock()
7146 rsp->hdr.Status = STATUS_LOCK_NOT_GRANTED; in smb2_lock()
7160 struct smb2_ioctl_rsp *rsp) in fsctl_copychunk() argument
7170 ci_rsp = (struct copychunk_ioctl_rsp *)&rsp->Buffer[0]; in fsctl_copychunk()
7172 rsp->VolatileFileId = volatile_id; in fsctl_copychunk()
7173 rsp->PersistentFileId = persistent_id; in fsctl_copychunk()
7191 rsp->hdr.Status = STATUS_INVALID_PARAMETER; in fsctl_copychunk()
7204 rsp->hdr.Status = STATUS_INVALID_PARAMETER; in fsctl_copychunk()
7214 rsp->hdr.Status = STATUS_OBJECT_NAME_NOT_FOUND; in fsctl_copychunk()
7219 rsp->hdr.Status = STATUS_FILE_CLOSED; in fsctl_copychunk()
7229 rsp->hdr.Status = STATUS_ACCESS_DENIED; in fsctl_copychunk()
7240 rsp->hdr.Status = STATUS_ACCESS_DENIED; in fsctl_copychunk()
7242 rsp->hdr.Status = STATUS_FILE_LOCK_CONFLICT; in fsctl_copychunk()
7244 rsp->hdr.Status = STATUS_INVALID_HANDLE; in fsctl_copychunk()
7246 rsp->hdr.Status = STATUS_DISK_FULL; in fsctl_copychunk()
7248 rsp->hdr.Status = STATUS_INVALID_PARAMETER; in fsctl_copychunk()
7250 rsp->hdr.Status = STATUS_FILE_IS_A_DIRECTORY; in fsctl_copychunk()
7252 rsp->hdr.Status = STATUS_INVALID_VIEW_SIZE; in fsctl_copychunk()
7254 rsp->hdr.Status = STATUS_UNEXPECTED_IO_ERROR; in fsctl_copychunk()
7285 struct smb2_ioctl_rsp *rsp, in fsctl_query_iface_info_ioctl() argument
7313 &rsp->Buffer[nbytes]; in fsctl_query_iface_info_ioctl()
7387 rsp->PersistentFileId = SMB2_NO_FID; in fsctl_query_iface_info_ioctl()
7388 rsp->VolatileFileId = SMB2_NO_FID; in fsctl_query_iface_info_ioctl()
7466 struct smb2_ioctl_rsp *rsp) in fsctl_pipe_transceive() argument
7480 rsp->hdr.Status = STATUS_SOME_NOT_MAPPED; in fsctl_pipe_transceive()
7482 rsp->hdr.Status = STATUS_NOT_SUPPORTED; in fsctl_pipe_transceive()
7485 rsp->hdr.Status = STATUS_INVALID_PARAMETER; in fsctl_pipe_transceive()
7491 rsp->hdr.Status = STATUS_BUFFER_OVERFLOW; in fsctl_pipe_transceive()
7496 rsp->hdr.Status = in fsctl_pipe_transceive()
7501 memcpy((char *)rsp->Buffer, rpc_resp->payload, nbytes); in fsctl_pipe_transceive()
7576 struct smb2_ioctl_rsp *rsp; in smb2_ioctl() local
7584 rsp = ksmbd_resp_buf_next(work); in smb2_ioctl()
7592 rsp = smb2_get_msg(work->response_buf); in smb2_ioctl()
7599 rsp->hdr.Status = STATUS_NOT_SUPPORTED; in smb2_ioctl()
7607 rsp->hdr.Status = STATUS_INVALID_PARAMETER; in smb2_ioctl()
7617 rsp->hdr.Status = STATUS_FS_DRIVER_REQUIRED; in smb2_ioctl()
7625 &rsp->Buffer[0]; in smb2_ioctl()
7640 nbytes = fsctl_pipe_transceive(work, id, out_buf_len, req, rsp); in smb2_ioctl()
7661 (struct validate_negotiate_info_rsp *)&rsp->Buffer[0], in smb2_ioctl()
7667 rsp->PersistentFileId = SMB2_NO_FID; in smb2_ioctl()
7668 rsp->VolatileFileId = SMB2_NO_FID; in smb2_ioctl()
7671 ret = fsctl_query_iface_info_ioctl(conn, rsp, out_buf_len); in smb2_ioctl()
7683 (struct resume_key_ioctl_rsp *)&rsp->Buffer[0]); in smb2_ioctl()
7686 rsp->PersistentFileId = req->PersistentFileId; in smb2_ioctl()
7687 rsp->VolatileFileId = req->VolatileFileId; in smb2_ioctl()
7710 rsp->VolatileFileId = req->VolatileFileId; in smb2_ioctl()
7711 rsp->PersistentFileId = req->PersistentFileId; in smb2_ioctl()
7718 rsp); in smb2_ioctl()
7782 (struct file_allocated_range_buffer *)&rsp->Buffer[0], in smb2_ioctl()
7786 rsp->hdr.Status = STATUS_BUFFER_OVERFLOW; in smb2_ioctl()
7799 reparse_ptr = (struct reparse_data_buffer *)&rsp->Buffer[0]; in smb2_ioctl()
7885 rsp->CtlCode = cpu_to_le32(cnt_code); in smb2_ioctl()
7886 rsp->InputCount = cpu_to_le32(0); in smb2_ioctl()
7887 rsp->InputOffset = cpu_to_le32(112); in smb2_ioctl()
7888 rsp->OutputOffset = cpu_to_le32(112); in smb2_ioctl()
7889 rsp->OutputCount = cpu_to_le32(nbytes); in smb2_ioctl()
7890 rsp->StructureSize = cpu_to_le16(49); in smb2_ioctl()
7891 rsp->Reserved = cpu_to_le16(0); in smb2_ioctl()
7892 rsp->Flags = cpu_to_le32(0); in smb2_ioctl()
7893 rsp->Reserved2 = cpu_to_le32(0); in smb2_ioctl()
7900 rsp->hdr.Status = STATUS_ACCESS_DENIED; in smb2_ioctl()
7902 rsp->hdr.Status = STATUS_OBJECT_NAME_NOT_FOUND; in smb2_ioctl()
7904 rsp->hdr.Status = STATUS_NOT_SUPPORTED; in smb2_ioctl()
7906 rsp->hdr.Status = STATUS_BUFFER_TOO_SMALL; in smb2_ioctl()
7907 else if (ret < 0 || rsp->hdr.Status == 0) in smb2_ioctl()
7908 rsp->hdr.Status = STATUS_INVALID_PARAMETER; in smb2_ioctl()
7922 struct smb2_oplock_break *rsp = smb2_get_msg(work->response_buf); in smb20_oplock_break_ack() local
7939 rsp->hdr.Status = STATUS_FILE_CLOSED; in smb20_oplock_break_ack()
7947 rsp->hdr.Status = STATUS_INVALID_OPLOCK_PROTOCOL; in smb20_oplock_break_ack()
7954 rsp->hdr.Status = STATUS_INVALID_OPLOCK_PROTOCOL; in smb20_oplock_break_ack()
7960 rsp->hdr.Status = STATUS_UNSUCCESSFUL; in smb20_oplock_break_ack()
8014 rsp->hdr.Status = err; in smb20_oplock_break_ack()
8023 rsp->StructureSize = cpu_to_le16(24); in smb20_oplock_break_ack()
8024 rsp->OplockLevel = rsp_oplevel; in smb20_oplock_break_ack()
8025 rsp->Reserved = 0; in smb20_oplock_break_ack()
8026 rsp->Reserved2 = 0; in smb20_oplock_break_ack()
8027 rsp->VolatileFid = volatile_id; in smb20_oplock_break_ack()
8028 rsp->PersistentFid = persistent_id; in smb20_oplock_break_ack()
8066 struct smb2_lease_ack *rsp = smb2_get_msg(work->response_buf); in smb21_lease_break_ack() local
8080 rsp->hdr.Status = STATUS_UNSUCCESSFUL; in smb21_lease_break_ack()
8088 rsp->hdr.Status = STATUS_UNSUCCESSFUL; in smb21_lease_break_ack()
8093 rsp->hdr.Status = STATUS_REQUEST_NOT_ACCEPTED; in smb21_lease_break_ack()
8101 rsp->hdr.Status = STATUS_UNSUCCESSFUL; in smb21_lease_break_ack()
8168 rsp->hdr.Status = err; in smb21_lease_break_ack()
8172 rsp->StructureSize = cpu_to_le16(36); in smb21_lease_break_ack()
8173 rsp->Reserved = 0; in smb21_lease_break_ack()
8174 rsp->Flags = 0; in smb21_lease_break_ack()
8175 memcpy(rsp->LeaseKey, req->LeaseKey, 16); in smb21_lease_break_ack()
8176 rsp->LeaseState = lease_state; in smb21_lease_break_ack()
8177 rsp->LeaseDuration = 0; in smb21_lease_break_ack()
8200 struct smb2_oplock_break *rsp = smb2_get_msg(work->response_buf); in smb2_oplock_break() local
8212 rsp->hdr.Status = STATUS_INVALID_PARAMETER; in smb2_oplock_break()
8228 struct smb2_change_notify_rsp *rsp; in smb2_notify() local
8230 WORK_BUFFERS(work, req, rsp); in smb2_notify()
8233 rsp->hdr.Status = STATUS_INTERNAL_ERROR; in smb2_notify()
8239 rsp->hdr.Status = STATUS_NOT_IMPLEMENTED; in smb2_notify()
8492 struct smb2_hdr *req, *rsp; in smb3_preauth_hash_rsp() local
8497 WORK_BUFFERS(work, req, rsp); in smb3_preauth_hash_rsp()
8504 if (le16_to_cpu(rsp->Command) == SMB2_SESSION_SETUP_HE && sess) { in smb3_preauth_hash_rsp()
8640 struct smb2_hdr *rsp = smb2_get_msg(work->response_buf); in smb3_11_final_sess_setup_resp() local
8646 rsp = ksmbd_resp_buf_next(work); in smb3_11_final_sess_setup_resp()
8648 if (le16_to_cpu(rsp->Command) == SMB2_SESSION_SETUP_HE && in smb3_11_final_sess_setup_resp()
8650 rsp->Status == STATUS_SUCCESS) in smb3_11_final_sess_setup_resp()