Lines Matching refs:hdr
14 static int check_smb2_hdr(struct smb2_hdr *hdr) in check_smb2_hdr() argument
19 if (hdr->Flags & SMB2_FLAGS_SERVER_TO_REDIR) in check_smb2_hdr()
86 struct smb2_hdr *hdr) in smb2_get_data_area_len() argument
98 switch (hdr->Command) { in smb2_get_data_area_len()
100 *off = le16_to_cpu(((struct smb2_sess_setup_req *)hdr)->SecurityBufferOffset); in smb2_get_data_area_len()
101 *len = le16_to_cpu(((struct smb2_sess_setup_req *)hdr)->SecurityBufferLength); in smb2_get_data_area_len()
104 *off = le16_to_cpu(((struct smb2_tree_connect_req *)hdr)->PathOffset); in smb2_get_data_area_len()
105 *len = le16_to_cpu(((struct smb2_tree_connect_req *)hdr)->PathLength); in smb2_get_data_area_len()
109 if (((struct smb2_create_req *)hdr)->CreateContextsLength) { in smb2_get_data_area_len()
111 hdr)->CreateContextsOffset); in smb2_get_data_area_len()
113 hdr)->CreateContextsLength); in smb2_get_data_area_len()
117 *off = le16_to_cpu(((struct smb2_create_req *)hdr)->NameOffset); in smb2_get_data_area_len()
118 *len = le16_to_cpu(((struct smb2_create_req *)hdr)->NameLength); in smb2_get_data_area_len()
122 *off = le16_to_cpu(((struct smb2_query_info_req *)hdr)->InputBufferOffset); in smb2_get_data_area_len()
123 *len = le32_to_cpu(((struct smb2_query_info_req *)hdr)->InputBufferLength); in smb2_get_data_area_len()
126 *off = le16_to_cpu(((struct smb2_set_info_req *)hdr)->BufferOffset); in smb2_get_data_area_len()
127 *len = le32_to_cpu(((struct smb2_set_info_req *)hdr)->BufferLength); in smb2_get_data_area_len()
130 *off = le16_to_cpu(((struct smb2_read_req *)hdr)->ReadChannelInfoOffset); in smb2_get_data_area_len()
131 *len = le16_to_cpu(((struct smb2_read_req *)hdr)->ReadChannelInfoLength); in smb2_get_data_area_len()
134 if (((struct smb2_write_req *)hdr)->DataOffset || in smb2_get_data_area_len()
135 ((struct smb2_write_req *)hdr)->Length) { in smb2_get_data_area_len()
137 le16_to_cpu(((struct smb2_write_req *)hdr)->DataOffset), in smb2_get_data_area_len()
139 *len = le32_to_cpu(((struct smb2_write_req *)hdr)->Length); in smb2_get_data_area_len()
143 *off = le16_to_cpu(((struct smb2_write_req *)hdr)->WriteChannelInfoOffset); in smb2_get_data_area_len()
144 *len = le16_to_cpu(((struct smb2_write_req *)hdr)->WriteChannelInfoLength); in smb2_get_data_area_len()
147 *off = le16_to_cpu(((struct smb2_query_directory_req *)hdr)->FileNameOffset); in smb2_get_data_area_len()
148 *len = le16_to_cpu(((struct smb2_query_directory_req *)hdr)->FileNameLength); in smb2_get_data_area_len()
154 lock_count = le16_to_cpu(((struct smb2_lock_req *)hdr)->LockCount); in smb2_get_data_area_len()
162 *off = le32_to_cpu(((struct smb2_ioctl_req *)hdr)->InputOffset); in smb2_get_data_area_len()
163 *len = le32_to_cpu(((struct smb2_ioctl_req *)hdr)->InputCount); in smb2_get_data_area_len()
189 struct smb2_hdr *hdr = &pdu->hdr; in smb2_calc_size() local
195 *len = le16_to_cpu(hdr->StructureSize); in smb2_calc_size()
208 if (hdr->Command == SMB2_LOCK) in smb2_calc_size()
211 if (has_smb2_data_area[le16_to_cpu(hdr->Command)] == false) in smb2_calc_size()
214 ret = smb2_get_data_area_len(&offset, &data_length, hdr); in smb2_calc_size()
281 struct smb2_hdr *hdr) in smb2_validate_credit_charge() argument
284 unsigned short credit_charge = le16_to_cpu(hdr->CreditCharge); in smb2_validate_credit_charge()
285 void *__hdr = hdr; in smb2_validate_credit_charge()
288 switch (hdr->Command) { in smb2_validate_credit_charge()
350 struct smb2_hdr *hdr = &pdu->hdr; in ksmbd_smb2_check_message() local
354 __u32 req_struct_size, next_cmd = le32_to_cpu(hdr->NextCommand); in ksmbd_smb2_check_message()
367 if (check_smb2_hdr(hdr)) in ksmbd_smb2_check_message()
370 if (hdr->StructureSize != SMB2_HEADER_STRUCTURE_SIZE) { in ksmbd_smb2_check_message()
372 le16_to_cpu(hdr->StructureSize)); in ksmbd_smb2_check_message()
376 command = le16_to_cpu(hdr->Command); in ksmbd_smb2_check_message()
402 if (smb2_calc_size(hdr, &clc_len)) in ksmbd_smb2_check_message()
436 le64_to_cpu(hdr->MessageId)); in ksmbd_smb2_check_message()
443 smb2_validate_credit_charge(work->conn, hdr)) in ksmbd_smb2_check_message()