blob: 20ab344baf9d10d3cc15a38c8609b1bdf77a082f [file] [log] [blame]
Thomas Gleixner2874c5f2019-05-27 08:55:01 +02001/* SPDX-License-Identifier: GPL-2.0-or-later */
David Howells08e0e7c2007-04-26 15:55:03 -07002/* AFS File Service definitions
3 *
4 * Copyright (C) 2007 Red Hat, Inc. All Rights Reserved.
5 * Written by David Howells (dhowells@redhat.com)
David Howells08e0e7c2007-04-26 15:55:03 -07006 */
7
8#ifndef AFS_FS_H
9#define AFS_FS_H
10
11#define AFS_FS_PORT 7000 /* AFS file server port */
12#define FS_SERVICE 1 /* AFS File Service ID */
13
14enum AFS_FS_Operations {
David Howells08e0e7c2007-04-26 15:55:03 -070015 FSFETCHDATA = 130, /* AFS Fetch file data */
David Howells260f0822019-04-25 14:26:52 +010016 FSFETCHACL = 131, /* AFS Fetch file ACL */
David Howells260a9802007-04-26 15:59:35 -070017 FSFETCHSTATUS = 132, /* AFS Fetch file status */
David Howells31143d52007-05-09 02:33:46 -070018 FSSTOREDATA = 133, /* AFS Store file data */
Joe Gorseb10494a2019-04-25 14:26:52 +010019 FSSTOREACL = 134, /* AFS Store file ACL */
David Howells31143d52007-05-09 02:33:46 -070020 FSSTORESTATUS = 135, /* AFS Store file status */
David Howells260a9802007-04-26 15:59:35 -070021 FSREMOVEFILE = 136, /* AFS Remove a file */
22 FSCREATEFILE = 137, /* AFS Create a file */
23 FSRENAME = 138, /* AFS Rename or move a file or directory */
24 FSSYMLINK = 139, /* AFS Create a symbolic link */
25 FSLINK = 140, /* AFS Create a hard link */
26 FSMAKEDIR = 141, /* AFS Create a directory */
27 FSREMOVEDIR = 142, /* AFS Remove a directory */
David Howells08e0e7c2007-04-26 15:55:03 -070028 FSGIVEUPCALLBACKS = 147, /* AFS Discard callback promises */
David Howells45222b92007-05-10 22:22:20 -070029 FSGETVOLUMEINFO = 148, /* AFS Get information about a volume */
30 FSGETVOLUMESTATUS = 149, /* AFS Get volume status information */
David Howells08e0e7c2007-04-26 15:55:03 -070031 FSGETROOTVOLUME = 151, /* AFS Get root volume name */
David Howells5cf9dd52018-04-09 21:12:31 +010032 FSBULKSTATUS = 155, /* AFS Fetch multiple file statuses */
David Howellse8d6c552007-07-15 23:40:12 -070033 FSSETLOCK = 156, /* AFS Request a file lock */
34 FSEXTENDLOCK = 157, /* AFS Extend a file lock */
35 FSRELEASELOCK = 158, /* AFS Release a file lock */
David Howells260a9802007-04-26 15:59:35 -070036 FSLOOKUP = 161, /* AFS lookup file in directory */
David Howells5cf9dd52018-04-09 21:12:31 +010037 FSINLINEBULKSTATUS = 65536, /* AFS Fetch multiple file statuses with inline errors */
David Howellsb9b1f8d2007-05-10 03:15:21 -070038 FSFETCHDATA64 = 65537, /* AFS Fetch file data */
39 FSSTOREDATA64 = 65538, /* AFS Store file data */
David Howellsc435ee32017-11-02 15:27:49 +000040 FSGIVEUPALLCALLBACKS = 65539, /* AFS Give up all outstanding callbacks on a server */
David Howellsd2ddc772017-11-02 15:27:50 +000041 FSGETCAPABILITIES = 65540, /* Probe and get the capabilities of a fileserver */
David Howells08e0e7c2007-04-26 15:55:03 -070042};
43
44enum AFS_FS_Errors {
David Howells91a90382017-11-02 15:27:46 +000045 VRESTARTING = -100, /* Server is restarting */
David Howells08e0e7c2007-04-26 15:55:03 -070046 VSALVAGE = 101, /* volume needs salvaging */
47 VNOVNODE = 102, /* no such file/dir (vnode) */
48 VNOVOL = 103, /* no such volume or volume unavailable */
49 VVOLEXISTS = 104, /* volume name already exists */
50 VNOSERVICE = 105, /* volume not currently in service */
51 VOFFLINE = 106, /* volume is currently offline (more info available [VVL-spec]) */
52 VONLINE = 107, /* volume is already online */
53 VDISKFULL = 108, /* disk partition is full */
54 VOVERQUOTA = 109, /* volume's maximum quota exceeded */
55 VBUSY = 110, /* volume is temporarily unavailable */
56 VMOVED = 111, /* volume moved to new server - ask this FS where */
David Howells91a90382017-11-02 15:27:46 +000057 VIO = 112, /* I/O error in volume */
58 VSALVAGING = 113, /* Volume is being salvaged */
59 VRESTRICTED = 120, /* Volume is restricted from using */
David Howells08e0e7c2007-04-26 15:55:03 -070060};
61
62#endif /* AFS_FS_H */