libcli:smb: add defines for SMB2.2 global capabilities
[ira/wip.git] / libcli / smb / smb2_constants.h
index 2b4fb7c47eb7b3914db187fdd3ee664c68ecea10..2b1223c240d5038ac247e818847d6f8317e4b856 100644 (file)
 #define SMB2_NEGOTIATE_SIGNING_ENABLED   0x01
 #define SMB2_NEGOTIATE_SIGNING_REQUIRED  0x02
 
-/* SMB2 capabilities - only 1 so far. I'm sure more will be added */
-#define SMB2_CAP_DFS                     0x00000001
-#define SMB2_CAP_LEASING                 0x00000002 /* only in dialect 0x210 */
-#define SMB2_CAP_LARGE_MTU              0x00000004 /* only in dialect 0x210 */
+/* SMB2 global capabilities */
+#define SMB2_CAP_DFS                   0x00000001
+#define SMB2_CAP_LEASING               0x00000002 /* only in dialect >= 0x210 */
+#define SMB2_CAP_LARGE_MTU             0x00000004 /* only in dialect >= 0x210 */
+#define SMB2_CAP_MULTI_CHANNEL         0x00000008 /* only in dialect >= 0x222 */
+#define SMB2_CAP_PERSISTENT_HANDLES    0x00000010 /* only in dialect >= 0x222 */
+#define SMB2_CAP_DIRECTORY_LEASING     0x00000020 /* only in dialect >= 0x222 */
+#define SMB2_CAP_ENCRYPTION            0x00000040 /* only in dialect >= 0x222 */
+
 /* so we can spot new caps as added */
 #define SMB2_CAP_ALL                     SMB2_CAP_DFS
 
 #define SMB2_SHAREFLAG_ACCESS_BASED_DIRECTORY_ENUM       0x0800
 #define SMB2_SHAREFLAG_ALL                               0x0F33
 
-/* SMB2 share capafilities */
+/* SMB2 share capabilities */
 #define SMB2_SHARE_CAP_DFS             0x8
 
 /* SMB2 create security flags */
 #define SMB2_CREATE_TAG_TWRP "TWrp"
 #define SMB2_CREATE_TAG_QFID "QFid"
 #define SMB2_CREATE_TAG_RQLS "RqLs"
+#define SMB2_CREATE_TAG_DH2Q "DH2Q"
+#define SMB2_CREATE_TAG_DH2C "DH2C"
 
 /* SMB2 notify flags */
 #define SMB2_WATCH_TREE 0x0001