blob: ddfa88a7a9c0d35ca3beb13d3ec2a90c83bb26f0 [file] [log] [blame]
David Howells08e0e7c2007-04-26 15:55:03 -07001/* 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
18enum AFS_FS_Operations {
David Howells08e0e7c2007-04-26 15:55:03 -070019 FSFETCHDATA = 130, /* AFS Fetch file data */
David Howells260a9802007-04-26 15:59:35 -070020 FSFETCHSTATUS = 132, /* AFS Fetch file status */
David Howells31143d52007-05-09 02:33:46 -070021 FSSTOREDATA = 133, /* AFS Store file data */
22 FSSTORESTATUS = 135, /* AFS Store file status */
David Howells260a9802007-04-26 15:59:35 -070023 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 */
David Howells08e0e7c2007-04-26 15:55:03 -070030 FSGIVEUPCALLBACKS = 147, /* AFS Discard callback promises */
David Howells45222b92007-05-10 22:22:20 -070031 FSGETVOLUMEINFO = 148, /* AFS Get information about a volume */
32 FSGETVOLUMESTATUS = 149, /* AFS Get volume status information */
David Howells08e0e7c2007-04-26 15:55:03 -070033 FSGETROOTVOLUME = 151, /* AFS Get root volume name */
David Howells5cf9dd52018-04-09 21:12:31 +010034 FSBULKSTATUS = 155, /* AFS Fetch multiple file statuses */
David Howellse8d6c552007-07-15 23:40:12 -070035 FSSETLOCK = 156, /* AFS Request a file lock */
36 FSEXTENDLOCK = 157, /* AFS Extend a file lock */
37 FSRELEASELOCK = 158, /* AFS Release a file lock */
David Howells260a9802007-04-26 15:59:35 -070038 FSLOOKUP = 161, /* AFS lookup file in directory */
David Howells5cf9dd52018-04-09 21:12:31 +010039 FSINLINEBULKSTATUS = 65536, /* AFS Fetch multiple file statuses with inline errors */
David Howellsb9b1f8d2007-05-10 03:15:21 -070040 FSFETCHDATA64 = 65537, /* AFS Fetch file data */
41 FSSTOREDATA64 = 65538, /* AFS Store file data */
David Howellsc435ee32017-11-02 15:27:49 +000042 FSGIVEUPALLCALLBACKS = 65539, /* AFS Give up all outstanding callbacks on a server */
David Howellsd2ddc772017-11-02 15:27:50 +000043 FSGETCAPABILITIES = 65540, /* Probe and get the capabilities of a fileserver */
David Howells08e0e7c2007-04-26 15:55:03 -070044};
45
46enum AFS_FS_Errors {
David Howells91a90382017-11-02 15:27:46 +000047 VRESTARTING = -100, /* Server is restarting */
David Howells08e0e7c2007-04-26 15:55:03 -070048 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 */
David Howells91a90382017-11-02 15:27:46 +000059 VIO = 112, /* I/O error in volume */
60 VSALVAGING = 113, /* Volume is being salvaged */
61 VRESTRICTED = 120, /* Volume is restricted from using */
David Howells08e0e7c2007-04-26 15:55:03 -070062};
63
64#endif /* AFS_FS_H */