summaryrefslogtreecommitdiff
path: root/fs/smb/client/smb2pdu.h
diff options
context:
space:
mode:
authorPaulo Alcantara <pc@manguebit.com>2024-01-27 01:26:06 +0300
committerSteve French <stfrench@microsoft.com>2024-03-11 03:33:58 +0300
commit5a4b09ecf8e8ad26ea03a37e52e310fe13f15b49 (patch)
tree8f2538b6668b1941a40b21cd6104a75146b54360 /fs/smb/client/smb2pdu.h
parentfa792d8d235c20df5f422e4bd172db1efde55ab9 (diff)
downloadlinux-5a4b09ecf8e8ad26ea03a37e52e310fe13f15b49.tar.xz
smb: client: add support for WSL reparse points
Add support for creating special files via WSL reparse points when using 'reparse=wsl' mount option. They're faster than NFS reparse points because they don't require extra roundtrips to figure out what ->d_type a specific dirent is as such information is already stored in query dir responses and then making getdents() calls faster. Signed-off-by: Paulo Alcantara <pc@manguebit.com> Signed-off-by: Steve French <stfrench@microsoft.com>
Diffstat (limited to 'fs/smb/client/smb2pdu.h')
-rw-r--r--fs/smb/client/smb2pdu.h11
1 files changed, 9 insertions, 2 deletions
diff --git a/fs/smb/client/smb2pdu.h b/fs/smb/client/smb2pdu.h
index db08194484e0..ea63d33e4553 100644
--- a/fs/smb/client/smb2pdu.h
+++ b/fs/smb/client/smb2pdu.h
@@ -117,9 +117,10 @@ struct share_redirect_error_context_rsp {
* [4] : posix context
* [5] : time warp context
* [6] : query id context
- * [7] : compound padding
+ * [7] : create ea context
+ * [8] : compound padding
*/
-#define SMB2_CREATE_IOV_SIZE 8
+#define SMB2_CREATE_IOV_SIZE 9
/*
* Maximum size of a SMB2_CREATE response is 64 (smb2 header) +
@@ -413,4 +414,10 @@ struct smb2_posix_info_parsed {
const u8 *name;
};
+struct smb2_create_ea_ctx {
+ struct create_context ctx;
+ __u8 name[8];
+ struct smb2_file_full_ea_info ea;
+} __packed;
+
#endif /* _SMB2PDU_H */