1 | /* SPDX-License-Identifier: GPL-2.0-or-later */ |
2 | /* AFS File Service definitions |
3 | * |
4 | * Copyright (C) 2007 Red Hat, Inc. All Rights Reserved. |
5 | * Written by David Howells (dhowells@redhat.com) |
6 | */ |
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 | |
14 | enum AFS_FS_Operations { |
15 | FSFETCHDATA = 130, /* AFS Fetch file data */ |
16 | FSFETCHACL = 131, /* AFS Fetch file ACL */ |
17 | FSFETCHSTATUS = 132, /* AFS Fetch file status */ |
18 | FSSTOREDATA = 133, /* AFS Store file data */ |
19 | FSSTOREACL = 134, /* AFS Store file ACL */ |
20 | FSSTORESTATUS = 135, /* AFS Store file status */ |
21 | 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 */ |
28 | FSGIVEUPCALLBACKS = 147, /* AFS Discard callback promises */ |
29 | FSGETVOLUMEINFO = 148, /* AFS Get information about a volume */ |
30 | FSGETVOLUMESTATUS = 149, /* AFS Get volume status information */ |
31 | FSGETROOTVOLUME = 151, /* AFS Get root volume name */ |
32 | FSBULKSTATUS = 155, /* AFS Fetch multiple file statuses */ |
33 | FSSETLOCK = 156, /* AFS Request a file lock */ |
34 | FSEXTENDLOCK = 157, /* AFS Extend a file lock */ |
35 | FSRELEASELOCK = 158, /* AFS Release a file lock */ |
36 | FSLOOKUP = 161, /* AFS lookup file in directory */ |
37 | FSINLINEBULKSTATUS = 65536, /* AFS Fetch multiple file statuses with inline errors */ |
38 | FSFETCHDATA64 = 65537, /* AFS Fetch file data */ |
39 | FSSTOREDATA64 = 65538, /* AFS Store file data */ |
40 | FSGIVEUPALLCALLBACKS = 65539, /* AFS Give up all outstanding callbacks on a server */ |
41 | FSGETCAPABILITIES = 65540, /* Probe and get the capabilities of a fileserver */ |
42 | }; |
43 | |
44 | enum AFS_FS_Errors { |
45 | VRESTARTING = -100, /* Server is restarting */ |
46 | 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 */ |
57 | VIO = 112, /* I/O error in volume */ |
58 | VSALVAGING = 113, /* Volume is being salvaged */ |
59 | VRESTRICTED = 120, /* Volume is restricted from using */ |
60 | }; |
61 | |
62 | #endif /* AFS_FS_H */ |
63 | |