1 /* 2 * smb.h 3 * 4 * Copyright (C) 1995, 1996 by Paal-Kr. Engstad and Volker Lendecke 5 * Copyright (C) 1997 by Volker Lendecke 6 * 7 */ 8 9 #ifndef _LINUX_SMB_H 10 #define _LINUX_SMB_H 11 12 #include <linux/types.h> 13 #include <linux/magic.h> 14 15 enum smb_protocol { 16 SMB_PROTOCOL_NONE, 17 SMB_PROTOCOL_CORE, 18 SMB_PROTOCOL_COREPLUS, 19 SMB_PROTOCOL_LANMAN1, 20 SMB_PROTOCOL_LANMAN2, 21 SMB_PROTOCOL_NT1 22 }; 23 24 enum smb_case_hndl { 25 SMB_CASE_DEFAULT, 26 SMB_CASE_LOWER, 27 SMB_CASE_UPPER 28 }; 29 30 struct smb_dskattr { 31 __u16 total; 32 __u16 allocblocks; 33 __u16 blocksize; 34 __u16 free; 35 }; 36 37 struct smb_conn_opt { 38 39 /* The socket */ 40 unsigned int fd; 41 42 enum smb_protocol protocol; 43 enum smb_case_hndl case_handling; 44 45 /* Connection-Options */ 46 47 __u32 max_xmit; 48 __u16 server_uid; 49 __u16 tid; 50 51 /* The following are LANMAN 1.0 options */ 52 __u16 secmode; 53 __u16 maxmux; 54 __u16 maxvcs; 55 __u16 rawmode; 56 __u32 sesskey; 57 58 /* The following are NT LM 0.12 options */ 59 __u32 maxraw; 60 __u32 capabilities; 61 __s16 serverzone; 62 }; 63 64 #endif 65