]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/blame - fs/cifs/smb2glob.h
UBUNTU: Ubuntu-4.13.0-45.50
[mirror_ubuntu-artful-kernel.git] / fs / cifs / smb2glob.h
CommitLineData
be4cb9e3
PS
1/*
2 * fs/cifs/smb2glob.h
3 *
4 * Definitions for various global variables and structures
5 *
6 * Copyright (C) International Business Machines Corp., 2002, 2011
7 * Etersoft, 2012
8 * Author(s): Steve French (sfrench@us.ibm.com)
9 * Jeremy Allison (jra@samba.org)
10 * Pavel Shilovsky (pshilovsky@samba.org) 2012
11 *
12 * This library is free software; you can redistribute it and/or modify
13 * it under the terms of the GNU Lesser General Public License as published
14 * by the Free Software Foundation; either version 2.1 of the License, or
15 * (at your option) any later version.
16 *
17 * This library is distributed in the hope that it will be useful,
18 * but WITHOUT ANY WARRANTY; without even the implied warranty of
19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See
20 * the GNU Lesser General Public License for more details.
21 *
22 */
23#ifndef _SMB2_GLOB_H
24#define _SMB2_GLOB_H
25
6fc05c25
PS
26#define SMB2_MAGIC_NUMBER 0xFE534D42
27
be4cb9e3
PS
28/*
29 *****************************************************************
30 * Constants go here
31 *****************************************************************
32 */
33
34/*
35 * Identifiers for functions that use the open, operation, close pattern
36 * in smb2inode.c:smb2_open_op_close()
37 */
38#define SMB2_OP_SET_DELETE 1
39#define SMB2_OP_SET_INFO 2
40#define SMB2_OP_QUERY_INFO 3
41#define SMB2_OP_QUERY_DIR 4
42#define SMB2_OP_MKDIR 5
43#define SMB2_OP_RENAME 6
44#define SMB2_OP_DELETE 7
568798cc 45#define SMB2_OP_HARDLINK 8
c839ff24 46#define SMB2_OP_SET_EOF 9
897fba11 47#define SMB2_OP_RMDIR 10
be4cb9e3 48
09a4707e
PS
49/* Used when constructing chained read requests. */
50#define CHAINED_REQUEST 1
51#define START_OF_CHAIN 2
52#define END_OF_CHAIN 4
53#define RELATED_REQUEST 8
54
3c1bf7e4
PS
55#define SMB2_SIGNATURE_SIZE (16)
56#define SMB2_NTLMV2_SESSKEY_SIZE (16)
57#define SMB2_HMACSHA256_SIZE (32)
429b46f4
SF
58#define SMB2_CMACAES_SIZE (16)
59#define SMB3_SIGNKEY_SIZE (16)
3c1bf7e4 60
2365c4ea
PS
61/* Maximum buffer size value we can send with 1 credit */
62#define SMB2_MAX_BUFFER_SIZE 65536
63
31473fc4
PS
64static inline struct smb2_sync_hdr *get_sync_hdr(void *buf)
65{
66 return &(((struct smb2_hdr *)buf)->sync_hdr);
67}
68
be4cb9e3 69#endif /* _SMB2_GLOB_H */