xref: /linux/fs/afs/afs_fs.h (revision b10494af4989d2d20679d0e3b7d1a45c2f8f8f1a)
1 /* AFS File Service definitions
2  *
3  * Copyright (C) 2007 Red Hat, Inc. All Rights Reserved.
4  * Written by David Howells (dhowells@redhat.com)
5  *
6  * This program is free software; you can redistribute it and/or
7  * modify it under the terms of the GNU General Public License
8  * as published by the Free Software Foundation; either version
9  * 2 of the License, or (at your option) any later version.
10  */
11 
12 #ifndef AFS_FS_H
13 #define AFS_FS_H
14 
15 #define AFS_FS_PORT		7000	/* AFS file server port */
16 #define FS_SERVICE		1	/* AFS File Service ID */
17 
18 enum AFS_FS_Operations {
19 	FSFETCHDATA		= 130,	/* AFS Fetch file data */
20 	FSFETCHACL		= 131,	/* AFS Fetch file ACL */
21 	FSFETCHSTATUS		= 132,	/* AFS Fetch file status */
22 	FSSTOREDATA		= 133,	/* AFS Store file data */
23 	FSSTOREACL		= 134,	/* AFS Store file ACL */
24 	FSSTORESTATUS		= 135,	/* AFS Store file status */
25 	FSREMOVEFILE		= 136,	/* AFS Remove a file */
26 	FSCREATEFILE		= 137,	/* AFS Create a file */
27 	FSRENAME		= 138,	/* AFS Rename or move a file or directory */
28 	FSSYMLINK		= 139,	/* AFS Create a symbolic link */
29 	FSLINK			= 140,	/* AFS Create a hard link */
30 	FSMAKEDIR		= 141,	/* AFS Create a directory */
31 	FSREMOVEDIR		= 142,	/* AFS Remove a directory */
32 	FSGIVEUPCALLBACKS	= 147,	/* AFS Discard callback promises */
33 	FSGETVOLUMEINFO		= 148,	/* AFS Get information about a volume */
34 	FSGETVOLUMESTATUS	= 149,	/* AFS Get volume status information */
35 	FSGETROOTVOLUME		= 151,	/* AFS Get root volume name */
36 	FSBULKSTATUS		= 155,	/* AFS Fetch multiple file statuses */
37 	FSSETLOCK		= 156,	/* AFS Request a file lock */
38 	FSEXTENDLOCK		= 157,	/* AFS Extend a file lock */
39 	FSRELEASELOCK		= 158,	/* AFS Release a file lock */
40 	FSLOOKUP		= 161,	/* AFS lookup file in directory */
41 	FSINLINEBULKSTATUS	= 65536, /* AFS Fetch multiple file statuses with inline errors */
42 	FSFETCHDATA64		= 65537, /* AFS Fetch file data */
43 	FSSTOREDATA64		= 65538, /* AFS Store file data */
44 	FSGIVEUPALLCALLBACKS	= 65539, /* AFS Give up all outstanding callbacks on a server */
45 	FSGETCAPABILITIES	= 65540, /* Probe and get the capabilities of a fileserver */
46 };
47 
48 enum AFS_FS_Errors {
49 	VRESTARTING	= -100,	/* Server is restarting */
50 	VSALVAGE	= 101,	/* volume needs salvaging */
51 	VNOVNODE	= 102,	/* no such file/dir (vnode) */
52 	VNOVOL		= 103,	/* no such volume or volume unavailable */
53 	VVOLEXISTS	= 104,	/* volume name already exists */
54 	VNOSERVICE	= 105,	/* volume not currently in service */
55 	VOFFLINE	= 106,	/* volume is currently offline (more info available [VVL-spec]) */
56 	VONLINE		= 107,	/* volume is already online */
57 	VDISKFULL	= 108,	/* disk partition is full */
58 	VOVERQUOTA	= 109,	/* volume's maximum quota exceeded */
59 	VBUSY		= 110,	/* volume is temporarily unavailable */
60 	VMOVED		= 111,	/* volume moved to new server - ask this FS where */
61 	VIO		= 112,	/* I/O error in volume */
62 	VSALVAGING	= 113,	/* Volume is being salvaged */
63 	VRESTRICTED	= 120,	/* Volume is restricted from using  */
64 };
65 
66 #endif /* AFS_FS_H */
67