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