Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 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 0 /* 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 recognize or could not perform a system call generated by the server, e.g., set the DIRECTORY attribute on a data file, invalid seek mode. */ |
| 38 | #define ERRbadfile 2 /*File not found. The last component of a file's pathname could not be found. */ |
| 39 | #define ERRbadpath 3 /* Directory invalid. A directory component in a pathname could not be found. */ |
| 40 | #define ERRnofids 4 /* Too many open files. The server has no file handles available. */ |
| 41 | #define ERRnoaccess 5 /* Access denied, the client's context does not permit the requested function. This includes the following conditions: invalid rename command, write to Fid open for read only, read on Fid open for write only, attempt to delete a non-empty directory */ |
| 42 | #define ERRbadfid 6 /* Invalid file handle. The file handle specified was not recognized by the server. */ |
| 43 | #define ERRbadmcb 7 /* Memory control blocks destroyed. */ |
| 44 | #define ERRnomem 8 /* Insufficient server memory to perform the requested function. */ |
| 45 | #define ERRbadmem 9 /* Invalid memory block address. */ |
| 46 | #define ERRbadenv 10 /* Invalid environment. */ |
| 47 | #define ERRbadformat 11 /* Invalid format. */ |
| 48 | #define ERRbadaccess 12 /* Invalid open mode. */ |
| 49 | #define ERRbaddata 13 /* Invalid data (generated only by IOCTL calls within the server). */ |
| 50 | #define ERRbaddrive 15 /* Invalid drive specified. */ |
| 51 | #define ERRremcd 16 /* A Delete Directory request attempted to remove the server's current directory. */ |
| 52 | #define ERRdiffdevice 17 /* Not same device (e.g., a cross volume rename was attempted */ |
| 53 | #define ERRnofiles 18 /* A File Search command can find no more files matching the specified criteria. */ |
| 54 | #define ERRgeneral 31 |
| 55 | #define ERRbadshare 32 /* The sharing mode specified for an Open conflicts with existing FIDs on the file. */ |
| 56 | #define ERRlock 33 /* A Lock request conflicted with an existing lock or specified an invalid mode, or an Unlock requested attempted to remove a lock held by another process. */ |
| 57 | #define ERRunsup 50 |
| 58 | #define ERRnosuchshare 67 |
| 59 | #define ERRfilexists 80 /* The file named in the request already exists. */ |
| 60 | #define ERRinvparm 87 |
| 61 | #define ERRdiskfull 112 |
| 62 | #define ERRinvname 123 |
| 63 | #define ERRinvlevel 124 |
| 64 | #define ERRdirnotempty 145 |
| 65 | #define ERRnotlocked 158 |
| 66 | #define ERRalreadyexists 183 |
| 67 | #define ERRbadpipe 230 |
| 68 | #define ERRpipebusy 231 |
| 69 | #define ERRpipeclosing 232 |
| 70 | #define ERRnotconnected 233 |
| 71 | #define ERRmoredata 234 |
| 72 | #define ERReasnotsupported 282 |
| 73 | #define ErrQuota 0x200 /* The operation would cause a quota limit to be exceeded. */ |
| 74 | #define ErrNotALink 0x201 /* A link operation was performed on a pathname that |
| 75 | was not a link. */ |
| 76 | |
| 77 | /* Following error codes may be generated with the ERRSRV error |
| 78 | class.*/ |
| 79 | |
| 80 | #define ERRerror 1 /* Non-specific error code. It is returned under the following conditions: resource other than disk space exhausted (e.g. TIDs), first SMB command was not negotiate, multiple negotiates attempted, and internal server error. */ |
| 81 | #define ERRbadpw 2 /* Bad password - name/password pair in a TreeConnect or Session Setup are invalid. */ |
| 82 | #define ERRbadtype 3 /* used for indicating DFS referral needed */ |
| 83 | #define ERRaccess 4 /* The client does not have the necessary access rights within the specified context for requested function. */ |
| 84 | #define ERRinvtid 5 /* The Tid specified in a command was invalid. */ |
| 85 | #define ERRinvnetname 6 /* Invalid network name in tree connect. */ |
| 86 | #define ERRinvdevice 7 /* Invalid device - printer request made to non-printer connection or non-printer request made to printer connection. */ |
| 87 | #define ERRqfull 49 /* Print queue full (files) -- returned by open print file. */ |
| 88 | #define ERRqtoobig 50 /* Print queue full -- no space. */ |
| 89 | #define ERRqeof 51 /* EOF on print queue dump */ |
| 90 | #define ERRinvpfid 52 /* Invalid print file FID. */ |
| 91 | #define ERRsmbcmd 64 /* The server did not recognize the command received. */ |
| 92 | #define ERRsrverror 65 /* The server encountered an internal error, e.g., system file unavailable. */ |
| 93 | #define ERRbadBID 66 /* (obsolete) */ |
| 94 | #define ERRfilespecs 67 /* The Fid and pathname parameters contained an invalid combination of values. */ |
| 95 | #define ERRbadLink 68 /* (obsolete) */ |
| 96 | #define ERRbadpermits 69 /* The access permissions specified for a file or directory are not a valid combination. */ |
| 97 | #define ERRbadPID 70 |
| 98 | #define ERRsetattrmode 71 /* attribute (mode) is invalid */ |
| 99 | #define ERRpaused 81 /* Server is paused */ |
| 100 | #define ERRmsgoff 82 /* reserved - messaging off */ |
| 101 | #define ERRnoroom 83 /* reserved - no room for message */ |
| 102 | #define ERRrmuns 87 /* reserved - too many remote names */ |
| 103 | #define ERRtimeout 88 /* operation timed out */ |
| 104 | #define ERRnoresource 89 /* No resources available for request */ |
| 105 | #define ERRtoomanyuids 90 /* Too many UIDs active on this session */ |
| 106 | #define ERRbaduid 91 /* The UID is not known as a valid user */ |
| 107 | #define ERRusempx 250 /* temporarily unable to use raw */ |
| 108 | #define ERRusestd 251 /* temporarily unable to use either raw or mpx */ |
| 109 | #define ERR_NOTIFY_ENUM_DIR 1024 |
| 110 | #define ERRaccountexpired 2239 |
| 111 | #define ERRbadclient 2240 |
| 112 | #define ERRbadLogonTime 2241 |
| 113 | #define ERRpasswordExpired 2242 |
| 114 | #define ERRnetlogonNotStarted 2455 |
| 115 | #define ERRnosupport 0xFFFF |