xref: /openbmc/linux/fs/afs/afs_fs.h (revision 260f082b)
108e0e7c8SDavid Howells /* AFS File Service definitions
208e0e7c8SDavid Howells  *
308e0e7c8SDavid Howells  * Copyright (C) 2007 Red Hat, Inc. All Rights Reserved.
408e0e7c8SDavid Howells  * Written by David Howells (dhowells@redhat.com)
508e0e7c8SDavid Howells  *
608e0e7c8SDavid Howells  * This program is free software; you can redistribute it and/or
708e0e7c8SDavid Howells  * modify it under the terms of the GNU General Public License
808e0e7c8SDavid Howells  * as published by the Free Software Foundation; either version
908e0e7c8SDavid Howells  * 2 of the License, or (at your option) any later version.
1008e0e7c8SDavid Howells  */
1108e0e7c8SDavid Howells 
1208e0e7c8SDavid Howells #ifndef AFS_FS_H
1308e0e7c8SDavid Howells #define AFS_FS_H
1408e0e7c8SDavid Howells 
1508e0e7c8SDavid Howells #define AFS_FS_PORT		7000	/* AFS file server port */
1608e0e7c8SDavid Howells #define FS_SERVICE		1	/* AFS File Service ID */
1708e0e7c8SDavid Howells 
1808e0e7c8SDavid Howells enum AFS_FS_Operations {
1908e0e7c8SDavid Howells 	FSFETCHDATA		= 130,	/* AFS Fetch file data */
20260f082bSDavid Howells 	FSFETCHACL		= 131,	/* AFS Fetch file ACL */
21260a9803SDavid Howells 	FSFETCHSTATUS		= 132,	/* AFS Fetch file status */
2231143d5dSDavid Howells 	FSSTOREDATA		= 133,	/* AFS Store file data */
2331143d5dSDavid Howells 	FSSTORESTATUS		= 135,	/* AFS Store file status */
24260a9803SDavid Howells 	FSREMOVEFILE		= 136,	/* AFS Remove a file */
25260a9803SDavid Howells 	FSCREATEFILE		= 137,	/* AFS Create a file */
26260a9803SDavid Howells 	FSRENAME		= 138,	/* AFS Rename or move a file or directory */
27260a9803SDavid Howells 	FSSYMLINK		= 139,	/* AFS Create a symbolic link */
28260a9803SDavid Howells 	FSLINK			= 140,	/* AFS Create a hard link */
29260a9803SDavid Howells 	FSMAKEDIR		= 141,	/* AFS Create a directory */
30260a9803SDavid Howells 	FSREMOVEDIR		= 142,	/* AFS Remove a directory */
3108e0e7c8SDavid Howells 	FSGIVEUPCALLBACKS	= 147,	/* AFS Discard callback promises */
3245222b9eSDavid Howells 	FSGETVOLUMEINFO		= 148,	/* AFS Get information about a volume */
3345222b9eSDavid Howells 	FSGETVOLUMESTATUS	= 149,	/* AFS Get volume status information */
3408e0e7c8SDavid Howells 	FSGETROOTVOLUME		= 151,	/* AFS Get root volume name */
355cf9dd55SDavid Howells 	FSBULKSTATUS		= 155,	/* AFS Fetch multiple file statuses */
36e8d6c554SDavid Howells 	FSSETLOCK		= 156,	/* AFS Request a file lock */
37e8d6c554SDavid Howells 	FSEXTENDLOCK		= 157,	/* AFS Extend a file lock */
38e8d6c554SDavid Howells 	FSRELEASELOCK		= 158,	/* AFS Release a file lock */
39260a9803SDavid Howells 	FSLOOKUP		= 161,	/* AFS lookup file in directory */
405cf9dd55SDavid Howells 	FSINLINEBULKSTATUS	= 65536, /* AFS Fetch multiple file statuses with inline errors */
41b9b1f8d5SDavid Howells 	FSFETCHDATA64		= 65537, /* AFS Fetch file data */
42b9b1f8d5SDavid Howells 	FSSTOREDATA64		= 65538, /* AFS Store file data */
43c435ee34SDavid Howells 	FSGIVEUPALLCALLBACKS	= 65539, /* AFS Give up all outstanding callbacks on a server */
44d2ddc776SDavid Howells 	FSGETCAPABILITIES	= 65540, /* Probe and get the capabilities of a fileserver */
4508e0e7c8SDavid Howells };
4608e0e7c8SDavid Howells 
4708e0e7c8SDavid Howells enum AFS_FS_Errors {
4891a90380SDavid Howells 	VRESTARTING	= -100,	/* Server is restarting */
4908e0e7c8SDavid Howells 	VSALVAGE	= 101,	/* volume needs salvaging */
5008e0e7c8SDavid Howells 	VNOVNODE	= 102,	/* no such file/dir (vnode) */
5108e0e7c8SDavid Howells 	VNOVOL		= 103,	/* no such volume or volume unavailable */
5208e0e7c8SDavid Howells 	VVOLEXISTS	= 104,	/* volume name already exists */
5308e0e7c8SDavid Howells 	VNOSERVICE	= 105,	/* volume not currently in service */
5408e0e7c8SDavid Howells 	VOFFLINE	= 106,	/* volume is currently offline (more info available [VVL-spec]) */
5508e0e7c8SDavid Howells 	VONLINE		= 107,	/* volume is already online */
5608e0e7c8SDavid Howells 	VDISKFULL	= 108,	/* disk partition is full */
5708e0e7c8SDavid Howells 	VOVERQUOTA	= 109,	/* volume's maximum quota exceeded */
5808e0e7c8SDavid Howells 	VBUSY		= 110,	/* volume is temporarily unavailable */
5908e0e7c8SDavid Howells 	VMOVED		= 111,	/* volume moved to new server - ask this FS where */
6091a90380SDavid Howells 	VIO		= 112,	/* I/O error in volume */
6191a90380SDavid Howells 	VSALVAGING	= 113,	/* Volume is being salvaged */
6291a90380SDavid Howells 	VRESTRICTED	= 120,	/* Volume is restricted from using  */
6308e0e7c8SDavid Howells };
6408e0e7c8SDavid Howells 
6508e0e7c8SDavid Howells #endif /* AFS_FS_H */
66