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 FSSETLOCK = 156, /* AFS Request a file lock */ 35 FSEXTENDLOCK = 157, /* AFS Extend a file lock */ 36 FSRELEASELOCK = 158, /* AFS Release a file lock */ 37 FSLOOKUP = 161, /* AFS lookup file in directory */ 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