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 	FSFETCHSTATUS		= 132,	/* AFS Fetch file status */
21 	FSSTOREDATA		= 133,	/* AFS Store file data */
22 	FSSTORESTATUS		= 135,	/* AFS Store file status */
23 	FSREMOVEFILE		= 136,	/* AFS Remove a file */
24 	FSCREATEFILE		= 137,	/* AFS Create a file */
25 	FSRENAME		= 138,	/* AFS Rename or move a file or directory */
26 	FSSYMLINK		= 139,	/* AFS Create a symbolic link */
27 	FSLINK			= 140,	/* AFS Create a hard link */
28 	FSMAKEDIR		= 141,	/* AFS Create a directory */
29 	FSREMOVEDIR		= 142,	/* AFS Remove a directory */
30 	FSGIVEUPCALLBACKS	= 147,	/* AFS Discard callback promises */
31 	FSGETVOLUMEINFO		= 148,	/* AFS Get information about a volume */
32 	FSGETVOLUMESTATUS	= 149,	/* AFS Get volume status information */
33 	FSGETROOTVOLUME		= 151,	/* AFS Get root volume name */
34 	FSBULKSTATUS		= 155,	/* AFS Fetch multiple file statuses */
35 	FSSETLOCK		= 156,	/* AFS Request a file lock */
36 	FSEXTENDLOCK		= 157,	/* AFS Extend a file lock */
37 	FSRELEASELOCK		= 158,	/* AFS Release a file lock */
38 	FSLOOKUP		= 161,	/* AFS lookup file in directory */
39 	FSINLINEBULKSTATUS	= 65536, /* AFS Fetch multiple file statuses with inline errors */
40 	FSFETCHDATA64		= 65537, /* AFS Fetch file data */
41 	FSSTOREDATA64		= 65538, /* AFS Store file data */
42 	FSGIVEUPALLCALLBACKS	= 65539, /* AFS Give up all outstanding callbacks on a server */
43 	FSGETCAPABILITIES	= 65540, /* Probe and get the capabilities of a fileserver */
44 };
45 
46 enum AFS_FS_Errors {
47 	VRESTARTING	= -100,	/* Server is restarting */
48 	VSALVAGE	= 101,	/* volume needs salvaging */
49 	VNOVNODE	= 102,	/* no such file/dir (vnode) */
50 	VNOVOL		= 103,	/* no such volume or volume unavailable */
51 	VVOLEXISTS	= 104,	/* volume name already exists */
52 	VNOSERVICE	= 105,	/* volume not currently in service */
53 	VOFFLINE	= 106,	/* volume is currently offline (more info available [VVL-spec]) */
54 	VONLINE		= 107,	/* volume is already online */
55 	VDISKFULL	= 108,	/* disk partition is full */
56 	VOVERQUOTA	= 109,	/* volume's maximum quota exceeded */
57 	VBUSY		= 110,	/* volume is temporarily unavailable */
58 	VMOVED		= 111,	/* volume moved to new server - ask this FS where */
59 	VIO		= 112,	/* I/O error in volume */
60 	VSALVAGING	= 113,	/* Volume is being salvaged */
61 	VRESTRICTED	= 120,	/* Volume is restricted from using  */
62 };
63 
64 #endif /* AFS_FS_H */
65