1 /* 2 * fs/cifs/smberr.h 3 * 4 * Copyright (c) International Business Machines Corp., 2002,2004 5 * Author(s): Steve French (sfrench@us.ibm.com) 6 * 7 * See Error Codes section of the SNIA CIFS Specification 8 * for more information 9 * 10 * This library is free software; you can redistribute it and/or modify 11 * it under the terms of the GNU Lesser General Public License as published 12 * by the Free Software Foundation; either version 2.1 of the License, or 13 * (at your option) any later version. 14 * 15 * This library is distributed in the hope that it will be useful, 16 * but WITHOUT ANY WARRANTY; without even the implied warranty of 17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See 18 * the GNU Lesser General Public License for more details. 19 * 20 * You should have received a copy of the GNU Lesser General Public License 21 * along with this library; if not, write to the Free Software 22 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 23 */ 24 25 #define SUCCESS 0x00 /* The request was successful. */ 26 #define ERRDOS 0x01 /* Error is from the core DOS operating system set */ 27 #define ERRSRV 0x02 /* Error is generated by the file server daemon */ 28 #define ERRHRD 0x03 /* Error is a hardware error. */ 29 #define ERRCMD 0xFF /* Command was not in the "SMB" format. */ 30 31 /* The following error codes may be generated with the SUCCESS error class.*/ 32 33 /*#define SUCCESS 0 The request was successful. */ 34 35 /* The following error codes may be generated with the ERRDOS error class.*/ 36 37 #define ERRbadfunc 1 /* Invalid function. The server did not 38 recognize or could not perform a 39 system call generated by the server, 40 e.g., set the DIRECTORY attribute on 41 a data file, invalid seek mode. */ 42 #define ERRbadfile 2 /* File not found. The last component 43 of a file's pathname could not be 44 found. */ 45 #define ERRbadpath 3 /* Directory invalid. A directory 46 component in a pathname could not be 47 found. */ 48 #define ERRnofids 4 /* Too many open files. The server has 49 no file handles available. */ 50 #define ERRnoaccess 5 /* Access denied, the client's context 51 does not permit the requested 52 function. This includes the 53 following conditions: invalid rename 54 command, write to Fid open for read 55 only, read on Fid open for write 56 only, attempt to delete a non-empty 57 directory */ 58 #define ERRbadfid 6 /* Invalid file handle. The file handle 59 specified was not recognized by the 60 server. */ 61 #define ERRbadmcb 7 /* Memory control blocks destroyed. */ 62 #define ERRnomem 8 /* Insufficient server memory to 63 perform the requested function. */ 64 #define ERRbadmem 9 /* Invalid memory block address. */ 65 #define ERRbadenv 10 /* Invalid environment. */ 66 #define ERRbadformat 11 /* Invalid format. */ 67 #define ERRbadaccess 12 /* Invalid open mode. */ 68 #define ERRbaddata 13 /* Invalid data (generated only by 69 IOCTL calls within the server). */ 70 #define ERRbaddrive 15 /* Invalid drive specified. */ 71 #define ERRremcd 16 /* A Delete Directory request attempted 72 to remove the server's current 73 directory. */ 74 #define ERRdiffdevice 17 /* Not same device (e.g., a cross 75 volume rename was attempted */ 76 #define ERRnofiles 18 /* A File Search command can find no 77 more files matching the specified 78 criteria. */ 79 #define ERRwriteprot 19 /* media is write protected */ 80 #define ERRgeneral 31 81 #define ERRbadshare 32 /* The sharing mode specified for an 82 Open conflicts with existing FIDs on 83 the file. */ 84 #define ERRlock 33 /* A Lock request conflicted with an 85 existing lock or specified an 86 invalid mode, or an Unlock requested 87 attempted to remove a lock held by 88 another process. */ 89 #define ERRunsup 50 90 #define ERRnosuchshare 67 91 #define ERRfilexists 80 /* The file named in the request 92 already exists. */ 93 #define ERRinvparm 87 94 #define ERRdiskfull 112 95 #define ERRinvname 123 96 #define ERRinvlevel 124 97 #define ERRdirnotempty 145 98 #define ERRnotlocked 158 99 #define ERRcancelviolation 173 100 #define ERRalreadyexists 183 101 #define ERRbadpipe 230 102 #define ERRpipebusy 231 103 #define ERRpipeclosing 232 104 #define ERRnotconnected 233 105 #define ERRmoredata 234 106 #define ERReasnotsupported 282 107 #define ErrQuota 0x200 /* The operation would cause a quota 108 limit to be exceeded. */ 109 #define ErrNotALink 0x201 /* A link operation was performed on a 110 pathname that was not a link. */ 111 112 /* Below errors are used internally (do not come over the wire) for passthrough 113 from STATUS codes to POSIX only */ 114 #define ERRsymlink 0xFFFD 115 #define ErrTooManyLinks 0xFFFE 116 117 /* Following error codes may be generated with the ERRSRV error class.*/ 118 119 #define ERRerror 1 /* Non-specific error code. It is 120 returned under the following 121 conditions: resource other than disk 122 space exhausted (e.g. TIDs), first 123 SMB command was not negotiate, 124 multiple negotiates attempted, and 125 internal server error. */ 126 #define ERRbadpw 2 /* Bad password - name/password pair in 127 a TreeConnect or Session Setup are 128 invalid. */ 129 #define ERRbadtype 3 /* used for indicating DFS referral 130 needed */ 131 #define ERRaccess 4 /* The client does not have the 132 necessary access rights within the 133 specified context for requested 134 function. */ 135 #define ERRinvtid 5 /* The Tid specified in a command was 136 invalid. */ 137 #define ERRinvnetname 6 /* Invalid network name in tree 138 connect. */ 139 #define ERRinvdevice 7 /* Invalid device - printer request 140 made to non-printer connection or 141 non-printer request made to printer 142 connection. */ 143 #define ERRqfull 49 /* Print queue full (files) -- returned 144 by open print file. */ 145 #define ERRqtoobig 50 /* Print queue full -- no space. */ 146 #define ERRqeof 51 /* EOF on print queue dump */ 147 #define ERRinvpfid 52 /* Invalid print file FID. */ 148 #define ERRsmbcmd 64 /* The server did not recognize the 149 command received. */ 150 #define ERRsrverror 65 /* The server encountered an internal 151 error, e.g., system file 152 unavailable. */ 153 #define ERRbadBID 66 /* (obsolete) */ 154 #define ERRfilespecs 67 /* The Fid and pathname parameters 155 contained an invalid combination of 156 values. */ 157 #define ERRbadLink 68 /* (obsolete) */ 158 #define ERRbadpermits 69 /* The access permissions specified for 159 a file or directory are not a valid 160 combination. */ 161 #define ERRbadPID 70 162 #define ERRsetattrmode 71 /* attribute (mode) is invalid */ 163 #define ERRpaused 81 /* Server is paused */ 164 #define ERRmsgoff 82 /* reserved - messaging off */ 165 #define ERRnoroom 83 /* reserved - no room for message */ 166 #define ERRrmuns 87 /* reserved - too many remote names */ 167 #define ERRtimeout 88 /* operation timed out */ 168 #define ERRnoresource 89 /* No resources available for request 169 */ 170 #define ERRtoomanyuids 90 /* Too many UIDs active on this session 171 */ 172 #define ERRbaduid 91 /* The UID is not known as a valid user 173 */ 174 #define ERRusempx 250 /* temporarily unable to use raw */ 175 #define ERRusestd 251 /* temporarily unable to use either raw 176 or mpx */ 177 #define ERR_NOTIFY_ENUM_DIR 1024 178 #define ERRnoSuchUser 2238 /* user account does not exist */ 179 #define ERRaccountexpired 2239 180 #define ERRbadclient 2240 /* can not logon from this client */ 181 #define ERRbadLogonTime 2241 /* logon hours do not allow this */ 182 #define ERRpasswordExpired 2242 183 #define ERRnetlogonNotStarted 2455 184 #define ERRnosupport 0xFFFF 185