1 /**
2  * @copyright
3  * ====================================================================
4  *    Licensed to the Apache Software Foundation (ASF) under one
5  *    or more contributor license agreements.  See the NOTICE file
6  *    distributed with this work for additional information
7  *    regarding copyright ownership.  The ASF licenses this file
8  *    to you under the Apache License, Version 2.0 (the
9  *    "License"); you may not use this file except in compliance
10  *    with the License.  You may obtain a copy of the License at
11  *
12  *      http://www.apache.org/licenses/LICENSE-2.0
13  *
14  *    Unless required by applicable law or agreed to in writing,
15  *    software distributed under the License is distributed on an
16  *    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
17  *    KIND, either express or implied.  See the License for the
18  *    specific language governing permissions and limitations
19  *    under the License.
20  * ====================================================================
21  * @endcopyright
22  *
23  * @file svn_error_codes.h
24  * @brief Subversion error codes.
25  */
26 
27 /* What's going on here?
28 
29    In order to define error codes and their associated description
30    strings in the same place, we overload the SVN_ERRDEF() macro with
31    two definitions below.  Both take two arguments, an error code name
32    and a description string.  One definition of the macro just throws
33    away the string and defines enumeration constants using the error
34    code names -- that definition is used by the header file that
35    exports error codes to the rest of Subversion.  The other
36    definition creates a static table mapping the enum codes to their
37    corresponding strings -- that definition is used by the C file that
38    implements svn_strerror().
39 
40    The header and C files both include this file, using #defines to
41    control which version of the macro they get.
42 */
43 
44 
45 /* Process this file if we're building an error array, or if we have
46    not defined the enumerated constants yet.  */
47 #if defined(SVN_ERROR_BUILD_ARRAY) || !defined(SVN_ERROR_ENUM_DEFINED)
48 
49 /* Note: despite lacking double underscores in its name, the macro
50    SVN_ERROR_BUILD_ARRAY is an implementation detail of Subversion and not
51    a public API. */
52 
53 
54 #include <apr_errno.h>     /* APR's error system */
55 
56 #ifdef __cplusplus
57 extern "C" {
58 #endif /* __cplusplus */
59 
60 #ifndef DOXYGEN_SHOULD_SKIP_THIS
61 
62 #if defined(SVN_ERROR_BUILD_ARRAY)
63 
64 #define SVN_ERROR_START \
65         static const err_defn error_table[] = { \
66           { SVN_WARNING, "SVN_WARNING", "Warning" },
67 #define SVN_ERRDEF(num, offset, str) { num, #num, str },
68 #define SVN_ERROR_END { 0, NULL, NULL } };
69 
70 #elif !defined(SVN_ERROR_ENUM_DEFINED)
71 
72 #define SVN_ERROR_START \
73         typedef enum svn_errno_t { \
74           SVN_WARNING = APR_OS_START_USERERR + 1,
75 #define SVN_ERRDEF(num, offset, str) /** str */ num = offset,
76 #define SVN_ERROR_END SVN_ERR_LAST } svn_errno_t;
77 
78 #define SVN_ERROR_ENUM_DEFINED
79 
80 #endif
81 
82 /* Define custom Subversion error numbers, in the range reserved for
83    that in APR: from APR_OS_START_USERERR to APR_OS_START_SYSERR (see
84    apr_errno.h).
85 
86    Error numbers are divided into categories of up to 5000 errors
87    each.  Since we're dividing up the APR user error space, which has
88    room for 500,000 errors, we can have up to 100 categories.
89    Categories are fixed-size; if a category has fewer than 5000
90    errors, then it just ends with a range of unused numbers.
91 
92    To maintain binary compatibility, please observe these guidelines:
93 
94       - When adding a new error, always add on the end of the
95         appropriate category, so that the real values of existing
96         errors are not changed.
97 
98       - When deleting an error, leave a placeholder comment indicating
99         the offset, again so that the values of other errors are not
100         perturbed.
101 */
102 
103 #define SVN_ERR_CATEGORY_SIZE 5000
104 
105 /* Leave one category of room at the beginning, for SVN_WARNING and
106    any other such beasts we might create in the future. */
107 #define SVN_ERR_BAD_CATEGORY_START      (APR_OS_START_USERERR \
108                                          + ( 1 * SVN_ERR_CATEGORY_SIZE))
109 #define SVN_ERR_XML_CATEGORY_START      (APR_OS_START_USERERR \
110                                          + ( 2 * SVN_ERR_CATEGORY_SIZE))
111 #define SVN_ERR_IO_CATEGORY_START       (APR_OS_START_USERERR \
112                                          + ( 3 * SVN_ERR_CATEGORY_SIZE))
113 #define SVN_ERR_STREAM_CATEGORY_START   (APR_OS_START_USERERR \
114                                          + ( 4 * SVN_ERR_CATEGORY_SIZE))
115 #define SVN_ERR_NODE_CATEGORY_START     (APR_OS_START_USERERR \
116                                          + ( 5 * SVN_ERR_CATEGORY_SIZE))
117 #define SVN_ERR_ENTRY_CATEGORY_START    (APR_OS_START_USERERR \
118                                          + ( 6 * SVN_ERR_CATEGORY_SIZE))
119 #define SVN_ERR_WC_CATEGORY_START       (APR_OS_START_USERERR \
120                                          + ( 7 * SVN_ERR_CATEGORY_SIZE))
121 #define SVN_ERR_FS_CATEGORY_START       (APR_OS_START_USERERR \
122                                          + ( 8 * SVN_ERR_CATEGORY_SIZE))
123 #define SVN_ERR_REPOS_CATEGORY_START    (APR_OS_START_USERERR \
124                                          + ( 9 * SVN_ERR_CATEGORY_SIZE))
125 #define SVN_ERR_RA_CATEGORY_START       (APR_OS_START_USERERR \
126                                          + (10 * SVN_ERR_CATEGORY_SIZE))
127 #define SVN_ERR_RA_DAV_CATEGORY_START   (APR_OS_START_USERERR \
128                                          + (11 * SVN_ERR_CATEGORY_SIZE))
129 #define SVN_ERR_RA_LOCAL_CATEGORY_START (APR_OS_START_USERERR \
130                                          + (12 * SVN_ERR_CATEGORY_SIZE))
131 #define SVN_ERR_SVNDIFF_CATEGORY_START  (APR_OS_START_USERERR \
132                                          + (13 * SVN_ERR_CATEGORY_SIZE))
133 #define SVN_ERR_APMOD_CATEGORY_START    (APR_OS_START_USERERR \
134                                          + (14 * SVN_ERR_CATEGORY_SIZE))
135 #define SVN_ERR_CLIENT_CATEGORY_START   (APR_OS_START_USERERR \
136                                          + (15 * SVN_ERR_CATEGORY_SIZE))
137 #define SVN_ERR_MISC_CATEGORY_START     (APR_OS_START_USERERR \
138                                          + (16 * SVN_ERR_CATEGORY_SIZE))
139 #define SVN_ERR_CL_CATEGORY_START       (APR_OS_START_USERERR \
140                                          + (17 * SVN_ERR_CATEGORY_SIZE))
141 #define SVN_ERR_RA_SVN_CATEGORY_START   (APR_OS_START_USERERR \
142                                          + (18 * SVN_ERR_CATEGORY_SIZE))
143 #define SVN_ERR_AUTHN_CATEGORY_START    (APR_OS_START_USERERR \
144                                          + (19 * SVN_ERR_CATEGORY_SIZE))
145 #define SVN_ERR_AUTHZ_CATEGORY_START    (APR_OS_START_USERERR \
146                                          + (20 * SVN_ERR_CATEGORY_SIZE))
147 #define SVN_ERR_DIFF_CATEGORY_START     (APR_OS_START_USERERR \
148                                          + (21 * SVN_ERR_CATEGORY_SIZE))
149 #define SVN_ERR_RA_SERF_CATEGORY_START  (APR_OS_START_USERERR \
150                                          + (22 * SVN_ERR_CATEGORY_SIZE))
151 #define SVN_ERR_MALFUNC_CATEGORY_START  (APR_OS_START_USERERR \
152                                          + (23 * SVN_ERR_CATEGORY_SIZE))
153 #define SVN_ERR_X509_CATEGORY_START     (APR_OS_START_USERERR \
154                                          + (24 * SVN_ERR_CATEGORY_SIZE))
155 
156 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
157 
158 /** Collection of Subversion error code values, located within the
159  * APR user error space. */
160 SVN_ERROR_START
161 
162   /* validation ("BAD_FOO") errors */
163 
164   SVN_ERRDEF(SVN_ERR_BAD_CONTAINING_POOL,
165              SVN_ERR_BAD_CATEGORY_START + 0,
166              "Bad parent pool passed to svn_make_pool()")
167 
168   SVN_ERRDEF(SVN_ERR_BAD_FILENAME,
169              SVN_ERR_BAD_CATEGORY_START + 1,
170              "Bogus filename")
171 
172   SVN_ERRDEF(SVN_ERR_BAD_URL,
173              SVN_ERR_BAD_CATEGORY_START + 2,
174              "Bogus URL")
175 
176   SVN_ERRDEF(SVN_ERR_BAD_DATE,
177              SVN_ERR_BAD_CATEGORY_START + 3,
178              "Bogus date")
179 
180   SVN_ERRDEF(SVN_ERR_BAD_MIME_TYPE,
181              SVN_ERR_BAD_CATEGORY_START + 4,
182              "Bogus mime-type")
183 
184   /** @since New in 1.5.
185    *
186    * Note that there was an unused slot sitting here at
187    * SVN_ERR_BAD_CATEGORY_START + 5, so error codes after this aren't
188    * necessarily "New in 1.5" just because they come later.
189    */
190   SVN_ERRDEF(SVN_ERR_BAD_PROPERTY_VALUE,
191              SVN_ERR_BAD_CATEGORY_START + 5,
192              "Wrong or unexpected property value")
193 
194   SVN_ERRDEF(SVN_ERR_BAD_VERSION_FILE_FORMAT,
195              SVN_ERR_BAD_CATEGORY_START + 6,
196              "Version file format not correct")
197 
198   SVN_ERRDEF(SVN_ERR_BAD_RELATIVE_PATH,
199              SVN_ERR_BAD_CATEGORY_START + 7,
200              "Path is not an immediate child of the specified directory")
201 
202   SVN_ERRDEF(SVN_ERR_BAD_UUID,
203              SVN_ERR_BAD_CATEGORY_START + 8,
204              "Bogus UUID")
205 
206   /** @since New in 1.6. */
207   SVN_ERRDEF(SVN_ERR_BAD_CONFIG_VALUE,
208              SVN_ERR_BAD_CATEGORY_START + 9,
209              "Invalid configuration value")
210 
211   SVN_ERRDEF(SVN_ERR_BAD_SERVER_SPECIFICATION,
212              SVN_ERR_BAD_CATEGORY_START + 10,
213              "Bogus server specification")
214 
215   SVN_ERRDEF(SVN_ERR_BAD_CHECKSUM_KIND,
216              SVN_ERR_BAD_CATEGORY_START + 11,
217              "Unsupported checksum type")
218 
219   SVN_ERRDEF(SVN_ERR_BAD_CHECKSUM_PARSE,
220              SVN_ERR_BAD_CATEGORY_START + 12,
221              "Invalid character in hex checksum")
222 
223   /** @since New in 1.7. */
224   SVN_ERRDEF(SVN_ERR_BAD_TOKEN,
225              SVN_ERR_BAD_CATEGORY_START + 13,
226              "Unknown string value of token")
227 
228   /** @since New in 1.7. */
229   SVN_ERRDEF(SVN_ERR_BAD_CHANGELIST_NAME,
230              SVN_ERR_BAD_CATEGORY_START + 14,
231              "Invalid changelist name")
232 
233   /** @since New in 1.8. */
234   SVN_ERRDEF(SVN_ERR_BAD_ATOMIC,
235              SVN_ERR_BAD_CATEGORY_START + 15,
236              "Invalid atomic")
237 
238   /** @since New in 1.9. */
239   SVN_ERRDEF(SVN_ERR_BAD_COMPRESSION_METHOD,
240              SVN_ERR_BAD_CATEGORY_START + 16,
241              "Invalid compression method")
242 
243   /** @since New in 1.10. */
244   SVN_ERRDEF(SVN_ERR_BAD_PROPERTY_VALUE_EOL,
245              SVN_ERR_BAD_CATEGORY_START + 17,
246              "Unexpected line ending in the property value")
247 
248   /* xml errors */
249 
250   SVN_ERRDEF(SVN_ERR_XML_ATTRIB_NOT_FOUND,
251              SVN_ERR_XML_CATEGORY_START + 0,
252              "No such XML tag attribute")
253 
254   SVN_ERRDEF(SVN_ERR_XML_MISSING_ANCESTRY,
255              SVN_ERR_XML_CATEGORY_START + 1,
256              "<delta-pkg> is missing ancestry")
257 
258   SVN_ERRDEF(SVN_ERR_XML_UNKNOWN_ENCODING,
259              SVN_ERR_XML_CATEGORY_START + 2,
260              "Unrecognized binary data encoding; can't decode")
261 
262   SVN_ERRDEF(SVN_ERR_XML_MALFORMED,
263              SVN_ERR_XML_CATEGORY_START + 3,
264              "XML data was not well-formed")
265 
266   SVN_ERRDEF(SVN_ERR_XML_UNESCAPABLE_DATA,
267              SVN_ERR_XML_CATEGORY_START + 4,
268              "Data cannot be safely XML-escaped")
269 
270   /** @since New in 1.9. */
271   SVN_ERRDEF(SVN_ERR_XML_UNEXPECTED_ELEMENT,
272              SVN_ERR_XML_CATEGORY_START + 5,
273              "Unexpected XML element found")
274 
275   /* io errors */
276 
277   SVN_ERRDEF(SVN_ERR_IO_INCONSISTENT_EOL,
278              SVN_ERR_IO_CATEGORY_START + 0,
279              "Inconsistent line ending style")
280 
281   SVN_ERRDEF(SVN_ERR_IO_UNKNOWN_EOL,
282              SVN_ERR_IO_CATEGORY_START + 1,
283              "Unrecognized line ending style")
284 
285   /** @deprecated Unused, slated for removal in the next major release. */
286   SVN_ERRDEF(SVN_ERR_IO_CORRUPT_EOL,
287              SVN_ERR_IO_CATEGORY_START + 2,
288              "Line endings other than expected")
289 
290   SVN_ERRDEF(SVN_ERR_IO_UNIQUE_NAMES_EXHAUSTED,
291              SVN_ERR_IO_CATEGORY_START + 3,
292              "Ran out of unique names")
293 
294   /** @deprecated Unused, slated for removal in the next major release. */
295   SVN_ERRDEF(SVN_ERR_IO_PIPE_FRAME_ERROR,
296              SVN_ERR_IO_CATEGORY_START + 4,
297              "Framing error in pipe protocol")
298 
299   /** @deprecated Unused, slated for removal in the next major release. */
300   SVN_ERRDEF(SVN_ERR_IO_PIPE_READ_ERROR,
301              SVN_ERR_IO_CATEGORY_START + 5,
302              "Read error in pipe")
303 
304   SVN_ERRDEF(SVN_ERR_IO_WRITE_ERROR,
305              SVN_ERR_IO_CATEGORY_START + 6,
306              "Write error")
307 
308   /** @since New in 1.7. */
309   SVN_ERRDEF(SVN_ERR_IO_PIPE_WRITE_ERROR,
310              SVN_ERR_IO_CATEGORY_START + 7,
311              "Write error in pipe")
312 
313   /* stream errors */
314 
315   SVN_ERRDEF(SVN_ERR_STREAM_UNEXPECTED_EOF,
316              SVN_ERR_STREAM_CATEGORY_START + 0,
317              "Unexpected EOF on stream")
318 
319   SVN_ERRDEF(SVN_ERR_STREAM_MALFORMED_DATA,
320              SVN_ERR_STREAM_CATEGORY_START + 1,
321              "Malformed stream data")
322 
323   SVN_ERRDEF(SVN_ERR_STREAM_UNRECOGNIZED_DATA,
324              SVN_ERR_STREAM_CATEGORY_START + 2,
325              "Unrecognized stream data")
326 
327   /** @since New in 1.7. */
328   SVN_ERRDEF(SVN_ERR_STREAM_SEEK_NOT_SUPPORTED,
329              SVN_ERR_STREAM_CATEGORY_START + 3,
330              "Stream doesn't support seeking")
331 
332   /** Since New in 1.9. */
333   SVN_ERRDEF(SVN_ERR_STREAM_NOT_SUPPORTED,
334              SVN_ERR_STREAM_CATEGORY_START + 4,
335              "Stream doesn't support this capability")
336 
337   /* node errors */
338 
339   SVN_ERRDEF(SVN_ERR_NODE_UNKNOWN_KIND,
340              SVN_ERR_NODE_CATEGORY_START + 0,
341              "Unknown svn_node_kind")
342 
343   SVN_ERRDEF(SVN_ERR_NODE_UNEXPECTED_KIND,
344              SVN_ERR_NODE_CATEGORY_START + 1,
345              "Unexpected node kind found")
346 
347   /* entry errors */
348 
349   SVN_ERRDEF(SVN_ERR_ENTRY_NOT_FOUND,
350              SVN_ERR_ENTRY_CATEGORY_START + 0,
351              "Can't find an entry")
352 
353   /* UNUSED error slot:                    + 1 */
354 
355   SVN_ERRDEF(SVN_ERR_ENTRY_EXISTS,
356              SVN_ERR_ENTRY_CATEGORY_START + 2,
357              "Entry already exists")
358 
359   SVN_ERRDEF(SVN_ERR_ENTRY_MISSING_REVISION,
360              SVN_ERR_ENTRY_CATEGORY_START + 3,
361              "Entry has no revision")
362 
363   SVN_ERRDEF(SVN_ERR_ENTRY_MISSING_URL,
364              SVN_ERR_ENTRY_CATEGORY_START + 4,
365              "Entry has no URL")
366 
367   SVN_ERRDEF(SVN_ERR_ENTRY_ATTRIBUTE_INVALID,
368              SVN_ERR_ENTRY_CATEGORY_START + 5,
369              "Entry has an invalid attribute")
370 
371   SVN_ERRDEF(SVN_ERR_ENTRY_FORBIDDEN,
372              SVN_ERR_ENTRY_CATEGORY_START + 6,
373              "Can't create an entry for a forbidden name")
374 
375   /* wc errors */
376 
377   SVN_ERRDEF(SVN_ERR_WC_OBSTRUCTED_UPDATE,
378              SVN_ERR_WC_CATEGORY_START + 0,
379              "Obstructed update")
380 
381   /** @deprecated Unused, slated for removal in the next major release. */
382   SVN_ERRDEF(SVN_ERR_WC_UNWIND_MISMATCH,
383              SVN_ERR_WC_CATEGORY_START + 1,
384              "Mismatch popping the WC unwind stack")
385 
386   /** @deprecated Unused, slated for removal in the next major release. */
387   SVN_ERRDEF(SVN_ERR_WC_UNWIND_EMPTY,
388              SVN_ERR_WC_CATEGORY_START + 2,
389              "Attempt to pop empty WC unwind stack")
390 
391   /** @deprecated Unused, slated for removal in the next major release. */
392   SVN_ERRDEF(SVN_ERR_WC_UNWIND_NOT_EMPTY,
393              SVN_ERR_WC_CATEGORY_START + 3,
394              "Attempt to unlock with non-empty unwind stack")
395 
396   SVN_ERRDEF(SVN_ERR_WC_LOCKED,
397              SVN_ERR_WC_CATEGORY_START + 4,
398              "Attempted to lock an already-locked dir")
399 
400   SVN_ERRDEF(SVN_ERR_WC_NOT_LOCKED,
401              SVN_ERR_WC_CATEGORY_START + 5,
402              "Working copy not locked; this is probably a bug, please report")
403 
404   /** @deprecated Unused, slated for removal in the next major release. */
405   SVN_ERRDEF(SVN_ERR_WC_INVALID_LOCK,
406              SVN_ERR_WC_CATEGORY_START + 6,
407              "Invalid lock")
408 
409   /** @since New in 1.7. Previously this error number was used by
410    * #SVN_ERR_WC_NOT_DIRECTORY, which is now an alias for this error. */
411   SVN_ERRDEF(SVN_ERR_WC_NOT_WORKING_COPY,
412              SVN_ERR_WC_CATEGORY_START + 7,
413              "Path is not a working copy directory")
414 
415   /** @deprecated Provided for backward compatibility with the 1.6 API.
416    * Use #SVN_ERR_WC_NOT_WORKING_COPY. */
417   SVN_ERRDEF(SVN_ERR_WC_NOT_DIRECTORY,
418              SVN_ERR_WC_NOT_WORKING_COPY,
419              "Path is not a working copy directory")
420 
421   SVN_ERRDEF(SVN_ERR_WC_NOT_FILE,
422              SVN_ERR_WC_CATEGORY_START + 8,
423              "Path is not a working copy file")
424 
425   SVN_ERRDEF(SVN_ERR_WC_BAD_ADM_LOG,
426              SVN_ERR_WC_CATEGORY_START + 9,
427              "Problem running log")
428 
429   SVN_ERRDEF(SVN_ERR_WC_PATH_NOT_FOUND,
430              SVN_ERR_WC_CATEGORY_START + 10,
431              "Can't find a working copy path")
432 
433   SVN_ERRDEF(SVN_ERR_WC_NOT_UP_TO_DATE,
434              SVN_ERR_WC_CATEGORY_START + 11,
435              "Working copy is not up-to-date")
436 
437   SVN_ERRDEF(SVN_ERR_WC_LEFT_LOCAL_MOD,
438              SVN_ERR_WC_CATEGORY_START + 12,
439              "Left locally modified or unversioned files")
440 
441   SVN_ERRDEF(SVN_ERR_WC_SCHEDULE_CONFLICT,
442              SVN_ERR_WC_CATEGORY_START + 13,
443              "Unmergeable scheduling requested on an entry")
444 
445   SVN_ERRDEF(SVN_ERR_WC_PATH_FOUND,
446              SVN_ERR_WC_CATEGORY_START + 14,
447              "Found a working copy path")
448 
449   SVN_ERRDEF(SVN_ERR_WC_FOUND_CONFLICT,
450              SVN_ERR_WC_CATEGORY_START + 15,
451              "A conflict in the working copy obstructs the current operation")
452 
453   SVN_ERRDEF(SVN_ERR_WC_CORRUPT,
454              SVN_ERR_WC_CATEGORY_START + 16,
455              "Working copy is corrupt")
456 
457   SVN_ERRDEF(SVN_ERR_WC_CORRUPT_TEXT_BASE,
458              SVN_ERR_WC_CATEGORY_START + 17,
459              "Working copy text base is corrupt")
460 
461   SVN_ERRDEF(SVN_ERR_WC_NODE_KIND_CHANGE,
462              SVN_ERR_WC_CATEGORY_START + 18,
463              "Cannot change node kind")
464 
465   SVN_ERRDEF(SVN_ERR_WC_INVALID_OP_ON_CWD,
466              SVN_ERR_WC_CATEGORY_START + 19,
467              "Invalid operation on the current working directory")
468 
469   SVN_ERRDEF(SVN_ERR_WC_BAD_ADM_LOG_START,
470              SVN_ERR_WC_CATEGORY_START + 20,
471              "Problem on first log entry in a working copy")
472 
473   SVN_ERRDEF(SVN_ERR_WC_UNSUPPORTED_FORMAT,
474              SVN_ERR_WC_CATEGORY_START + 21,
475              "Unsupported working copy format")
476 
477   SVN_ERRDEF(SVN_ERR_WC_BAD_PATH,
478              SVN_ERR_WC_CATEGORY_START + 22,
479              "Path syntax not supported in this context")
480 
481   /** @since New in 1.2. */
482   SVN_ERRDEF(SVN_ERR_WC_INVALID_SCHEDULE,
483              SVN_ERR_WC_CATEGORY_START + 23,
484              "Invalid schedule")
485 
486   /** @since New in 1.3. */
487   SVN_ERRDEF(SVN_ERR_WC_INVALID_RELOCATION,
488              SVN_ERR_WC_CATEGORY_START + 24,
489              "Invalid relocation")
490 
491   /** @since New in 1.3. */
492   SVN_ERRDEF(SVN_ERR_WC_INVALID_SWITCH,
493              SVN_ERR_WC_CATEGORY_START + 25,
494              "Invalid switch")
495 
496   /** @since New in 1.5. */
497   SVN_ERRDEF(SVN_ERR_WC_MISMATCHED_CHANGELIST,
498              SVN_ERR_WC_CATEGORY_START + 26,
499              "Changelist doesn't match")
500 
501   /** @since New in 1.5. */
502   SVN_ERRDEF(SVN_ERR_WC_CONFLICT_RESOLVER_FAILURE,
503              SVN_ERR_WC_CATEGORY_START + 27,
504              "Conflict resolution failed")
505 
506   SVN_ERRDEF(SVN_ERR_WC_COPYFROM_PATH_NOT_FOUND,
507              SVN_ERR_WC_CATEGORY_START + 28,
508              "Failed to locate 'copyfrom' path in working copy")
509 
510   /** @since New in 1.5.
511    * @deprecated Provided for backward compatibility with the 1.6 API.
512    * This event is not an error, and is now reported
513    * via the standard notification mechanism instead. */
514   SVN_ERRDEF(SVN_ERR_WC_CHANGELIST_MOVE,
515              SVN_ERR_WC_CATEGORY_START + 29,
516              "Moving a path from one changelist to another")
517 
518   /** @since New in 1.6. */
519   SVN_ERRDEF(SVN_ERR_WC_CANNOT_DELETE_FILE_EXTERNAL,
520              SVN_ERR_WC_CATEGORY_START + 30,
521              "Cannot delete a file external")
522 
523   /** @since New in 1.6. */
524   SVN_ERRDEF(SVN_ERR_WC_CANNOT_MOVE_FILE_EXTERNAL,
525              SVN_ERR_WC_CATEGORY_START + 31,
526              "Cannot move a file external")
527 
528   /** @since New in 1.7. */
529   SVN_ERRDEF(SVN_ERR_WC_DB_ERROR,
530              SVN_ERR_WC_CATEGORY_START + 32,
531              "Something's amiss with the wc sqlite database")
532 
533   /** @since New in 1.7. */
534   SVN_ERRDEF(SVN_ERR_WC_MISSING,
535              SVN_ERR_WC_CATEGORY_START + 33,
536              "The working copy is missing")
537 
538   /** @since New in 1.7. */
539   SVN_ERRDEF(SVN_ERR_WC_NOT_SYMLINK,
540              SVN_ERR_WC_CATEGORY_START + 34,
541              "The specified node is not a symlink")
542 
543   /** @since New in 1.7. */
544   SVN_ERRDEF(SVN_ERR_WC_PATH_UNEXPECTED_STATUS,
545              SVN_ERR_WC_CATEGORY_START + 35,
546              "The specified path has an unexpected status")
547 
548   /** @since New in 1.7. */
549   SVN_ERRDEF(SVN_ERR_WC_UPGRADE_REQUIRED,
550              SVN_ERR_WC_CATEGORY_START + 36,
551              "The working copy needs to be upgraded")
552 
553   /** @since New in 1.7. */
554   SVN_ERRDEF(SVN_ERR_WC_CLEANUP_REQUIRED,
555              SVN_ERR_WC_CATEGORY_START + 37,
556              "Previous operation has not finished; "
557              "run 'cleanup' if it was interrupted")
558 
559   /** @since New in 1.7. */
560   SVN_ERRDEF(SVN_ERR_WC_INVALID_OPERATION_DEPTH,
561              SVN_ERR_WC_CATEGORY_START + 38,
562              "The operation cannot be performed with the specified depth")
563 
564   /** @since New in 1.7. */
565   SVN_ERRDEF(SVN_ERR_WC_PATH_ACCESS_DENIED,
566              SVN_ERR_WC_CATEGORY_START + 39,
567              "Couldn't open a working copy file because access was denied")
568 
569   /** @since New in 1.8. */
570   SVN_ERRDEF(SVN_ERR_WC_MIXED_REVISIONS,
571              SVN_ERR_WC_CATEGORY_START + 40,
572              "Mixed-revision working copy was found but not expected")
573 
574   /** @since New in 1.8 */
575   SVN_ERRDEF(SVN_ERR_WC_DUPLICATE_EXTERNALS_TARGET,
576              SVN_ERR_WC_CATEGORY_START + 41,
577              "Duplicate targets in svn:externals property")
578 
579   /* fs errors */
580 
581   SVN_ERRDEF(SVN_ERR_FS_GENERAL,
582              SVN_ERR_FS_CATEGORY_START + 0,
583              "General filesystem error")
584 
585   SVN_ERRDEF(SVN_ERR_FS_CLEANUP,
586              SVN_ERR_FS_CATEGORY_START + 1,
587              "Error closing filesystem")
588 
589   SVN_ERRDEF(SVN_ERR_FS_ALREADY_OPEN,
590              SVN_ERR_FS_CATEGORY_START + 2,
591              "Filesystem is already open")
592 
593   SVN_ERRDEF(SVN_ERR_FS_NOT_OPEN,
594              SVN_ERR_FS_CATEGORY_START + 3,
595              "Filesystem is not open")
596 
597   SVN_ERRDEF(SVN_ERR_FS_CORRUPT,
598              SVN_ERR_FS_CATEGORY_START + 4,
599              "Filesystem is corrupt")
600 
601   SVN_ERRDEF(SVN_ERR_FS_PATH_SYNTAX,
602              SVN_ERR_FS_CATEGORY_START + 5,
603              "Invalid filesystem path syntax")
604 
605   SVN_ERRDEF(SVN_ERR_FS_NO_SUCH_REVISION,
606              SVN_ERR_FS_CATEGORY_START + 6,
607              "Invalid filesystem revision number")
608 
609   SVN_ERRDEF(SVN_ERR_FS_NO_SUCH_TRANSACTION,
610              SVN_ERR_FS_CATEGORY_START + 7,
611              "Invalid filesystem transaction name")
612 
613   SVN_ERRDEF(SVN_ERR_FS_NO_SUCH_ENTRY,
614              SVN_ERR_FS_CATEGORY_START + 8,
615              "Filesystem directory has no such entry")
616 
617   SVN_ERRDEF(SVN_ERR_FS_NO_SUCH_REPRESENTATION,
618              SVN_ERR_FS_CATEGORY_START + 9,
619              "Filesystem has no such representation")
620 
621   SVN_ERRDEF(SVN_ERR_FS_NO_SUCH_STRING,
622              SVN_ERR_FS_CATEGORY_START + 10,
623              "Filesystem has no such string")
624 
625   SVN_ERRDEF(SVN_ERR_FS_NO_SUCH_COPY,
626              SVN_ERR_FS_CATEGORY_START + 11,
627              "Filesystem has no such copy")
628 
629   SVN_ERRDEF(SVN_ERR_FS_TRANSACTION_NOT_MUTABLE,
630              SVN_ERR_FS_CATEGORY_START + 12,
631              "The specified transaction is not mutable")
632 
633   SVN_ERRDEF(SVN_ERR_FS_NOT_FOUND,
634              SVN_ERR_FS_CATEGORY_START + 13,
635              "Filesystem has no item")
636 
637   SVN_ERRDEF(SVN_ERR_FS_ID_NOT_FOUND,
638              SVN_ERR_FS_CATEGORY_START + 14,
639              "Filesystem has no such node-rev-id")
640 
641   SVN_ERRDEF(SVN_ERR_FS_NOT_ID,
642              SVN_ERR_FS_CATEGORY_START + 15,
643              "String does not represent a node or node-rev-id")
644 
645   SVN_ERRDEF(SVN_ERR_FS_NOT_DIRECTORY,
646              SVN_ERR_FS_CATEGORY_START + 16,
647              "Name does not refer to a filesystem directory")
648 
649   SVN_ERRDEF(SVN_ERR_FS_NOT_FILE,
650              SVN_ERR_FS_CATEGORY_START + 17,
651              "Name does not refer to a filesystem file")
652 
653   SVN_ERRDEF(SVN_ERR_FS_NOT_SINGLE_PATH_COMPONENT,
654              SVN_ERR_FS_CATEGORY_START + 18,
655              "Name is not a single path component")
656 
657   SVN_ERRDEF(SVN_ERR_FS_NOT_MUTABLE,
658              SVN_ERR_FS_CATEGORY_START + 19,
659              "Attempt to change immutable filesystem node")
660 
661   SVN_ERRDEF(SVN_ERR_FS_ALREADY_EXISTS,
662              SVN_ERR_FS_CATEGORY_START + 20,
663              "Item already exists in filesystem")
664 
665   SVN_ERRDEF(SVN_ERR_FS_ROOT_DIR,
666              SVN_ERR_FS_CATEGORY_START + 21,
667              "Attempt to remove or recreate fs root dir")
668 
669   SVN_ERRDEF(SVN_ERR_FS_NOT_TXN_ROOT,
670              SVN_ERR_FS_CATEGORY_START + 22,
671              "Object is not a transaction root")
672 
673   SVN_ERRDEF(SVN_ERR_FS_NOT_REVISION_ROOT,
674              SVN_ERR_FS_CATEGORY_START + 23,
675              "Object is not a revision root")
676 
677   SVN_ERRDEF(SVN_ERR_FS_CONFLICT,
678              SVN_ERR_FS_CATEGORY_START + 24,
679              "Merge conflict during commit")
680 
681   SVN_ERRDEF(SVN_ERR_FS_REP_CHANGED,
682              SVN_ERR_FS_CATEGORY_START + 25,
683              "A representation vanished or changed between reads")
684 
685   SVN_ERRDEF(SVN_ERR_FS_REP_NOT_MUTABLE,
686              SVN_ERR_FS_CATEGORY_START + 26,
687              "Tried to change an immutable representation")
688 
689   SVN_ERRDEF(SVN_ERR_FS_MALFORMED_SKEL,
690              SVN_ERR_FS_CATEGORY_START + 27,
691              "Malformed skeleton data")
692 
693   SVN_ERRDEF(SVN_ERR_FS_TXN_OUT_OF_DATE,
694              SVN_ERR_FS_CATEGORY_START + 28,
695              "Transaction is out of date")
696 
697   SVN_ERRDEF(SVN_ERR_FS_BERKELEY_DB,
698              SVN_ERR_FS_CATEGORY_START + 29,
699              "Berkeley DB error")
700 
701   SVN_ERRDEF(SVN_ERR_FS_BERKELEY_DB_DEADLOCK,
702              SVN_ERR_FS_CATEGORY_START + 30,
703              "Berkeley DB deadlock error")
704 
705   SVN_ERRDEF(SVN_ERR_FS_TRANSACTION_DEAD,
706              SVN_ERR_FS_CATEGORY_START + 31,
707              "Transaction is dead")
708 
709   SVN_ERRDEF(SVN_ERR_FS_TRANSACTION_NOT_DEAD,
710              SVN_ERR_FS_CATEGORY_START + 32,
711              "Transaction is not dead")
712 
713   /** @since New in 1.1. */
714   SVN_ERRDEF(SVN_ERR_FS_UNKNOWN_FS_TYPE,
715              SVN_ERR_FS_CATEGORY_START + 33,
716              "Unknown FS type")
717 
718   /** @since New in 1.2. */
719   SVN_ERRDEF(SVN_ERR_FS_NO_USER,
720              SVN_ERR_FS_CATEGORY_START + 34,
721              "No user associated with filesystem")
722 
723   /** @since New in 1.2. */
724   SVN_ERRDEF(SVN_ERR_FS_PATH_ALREADY_LOCKED,
725              SVN_ERR_FS_CATEGORY_START + 35,
726              "Path is already locked")
727 
728   /** @since New in 1.2. */
729   SVN_ERRDEF(SVN_ERR_FS_PATH_NOT_LOCKED,
730              SVN_ERR_FS_CATEGORY_START + 36,
731              "Path is not locked")
732 
733   /** @since New in 1.2. */
734   SVN_ERRDEF(SVN_ERR_FS_BAD_LOCK_TOKEN,
735              SVN_ERR_FS_CATEGORY_START + 37,
736              "Lock token is incorrect")
737 
738   /** @since New in 1.2. */
739   SVN_ERRDEF(SVN_ERR_FS_NO_LOCK_TOKEN,
740              SVN_ERR_FS_CATEGORY_START + 38,
741              "No lock token provided")
742 
743   /** @since New in 1.2. */
744   SVN_ERRDEF(SVN_ERR_FS_LOCK_OWNER_MISMATCH,
745              SVN_ERR_FS_CATEGORY_START + 39,
746              "Username does not match lock owner")
747 
748   /** @since New in 1.2. */
749   SVN_ERRDEF(SVN_ERR_FS_NO_SUCH_LOCK,
750              SVN_ERR_FS_CATEGORY_START + 40,
751              "Filesystem has no such lock")
752 
753   /** @since New in 1.2. */
754   SVN_ERRDEF(SVN_ERR_FS_LOCK_EXPIRED,
755              SVN_ERR_FS_CATEGORY_START + 41,
756              "Lock has expired")
757 
758   /** @since New in 1.2. */
759   SVN_ERRDEF(SVN_ERR_FS_OUT_OF_DATE,
760              SVN_ERR_FS_CATEGORY_START + 42,
761              "Item is out of date")
762 
763   /**@since New in 1.2.
764    *
765    * This is analogous to SVN_ERR_REPOS_UNSUPPORTED_VERSION.  To avoid
766    * confusion with "versions" (i.e., releases) of Subversion, we've
767    * started calling this the "format" number instead.  The old
768    * SVN_ERR_REPOS_UNSUPPORTED_VERSION error predates this and so
769    * retains its name.
770    */
771   SVN_ERRDEF(SVN_ERR_FS_UNSUPPORTED_FORMAT,
772              SVN_ERR_FS_CATEGORY_START + 43,
773              "Unsupported FS format")
774 
775   /** @since New in 1.5. */
776   SVN_ERRDEF(SVN_ERR_FS_REP_BEING_WRITTEN,
777              SVN_ERR_FS_CATEGORY_START + 44,
778              "Representation is being written")
779 
780   /** @since New in 1.5. */
781   SVN_ERRDEF(SVN_ERR_FS_TXN_NAME_TOO_LONG,
782              SVN_ERR_FS_CATEGORY_START + 45,
783              "The generated transaction name is too long")
784 
785   /** @since New in 1.5. */
786   SVN_ERRDEF(SVN_ERR_FS_NO_SUCH_NODE_ORIGIN,
787              SVN_ERR_FS_CATEGORY_START + 46,
788              "Filesystem has no such node origin record")
789 
790   /** @since New in 1.5. */
791   SVN_ERRDEF(SVN_ERR_FS_UNSUPPORTED_UPGRADE,
792              SVN_ERR_FS_CATEGORY_START + 47,
793              "Filesystem upgrade is not supported")
794 
795   /** @since New in 1.6. */
796   SVN_ERRDEF(SVN_ERR_FS_NO_SUCH_CHECKSUM_REP,
797              SVN_ERR_FS_CATEGORY_START + 48,
798              "Filesystem has no such checksum-representation index record")
799 
800   /** @since New in 1.7. */
801   SVN_ERRDEF(SVN_ERR_FS_PROP_BASEVALUE_MISMATCH,
802              SVN_ERR_FS_CATEGORY_START + 49,
803              "Property value in filesystem differs from the provided "
804              "base value")
805 
806   /** @since New in 1.8. */
807   SVN_ERRDEF(SVN_ERR_FS_INCORRECT_EDITOR_COMPLETION,
808              SVN_ERR_FS_CATEGORY_START + 50,
809              "The filesystem editor completion process was not followed")
810 
811   /** @since New in 1.8. */
812   SVN_ERRDEF(SVN_ERR_FS_PACKED_REVPROP_READ_FAILURE,
813              SVN_ERR_FS_CATEGORY_START + 51,
814              "A packed revprop could not be read")
815 
816   /** @since New in 1.8. */
817   SVN_ERRDEF(SVN_ERR_FS_REVPROP_CACHE_INIT_FAILURE,
818              SVN_ERR_FS_CATEGORY_START + 52,
819              "Could not initialize the revprop caching infrastructure.")
820 
821   /** @since New in 1.9. */
822   SVN_ERRDEF(SVN_ERR_FS_MALFORMED_TXN_ID,
823              SVN_ERR_FS_CATEGORY_START + 53,
824              "Malformed transaction ID string.")
825 
826   /** @since New in 1.9. */
827   SVN_ERRDEF(SVN_ERR_FS_INDEX_CORRUPTION,
828              SVN_ERR_FS_CATEGORY_START + 54,
829              "Corrupt index file.")
830 
831   /** @since New in 1.9. */
832   SVN_ERRDEF(SVN_ERR_FS_INDEX_REVISION,
833              SVN_ERR_FS_CATEGORY_START + 55,
834              "Revision not covered by index.")
835 
836   /** @since New in 1.9. */
837   SVN_ERRDEF(SVN_ERR_FS_INDEX_OVERFLOW,
838              SVN_ERR_FS_CATEGORY_START + 56,
839              "Item index too large for this revision.")
840 
841   /** @since New in 1.9. */
842   SVN_ERRDEF(SVN_ERR_FS_CONTAINER_INDEX,
843              SVN_ERR_FS_CATEGORY_START + 57,
844              "Container index out of range.")
845 
846   /** @since New in 1.9. */
847   SVN_ERRDEF(SVN_ERR_FS_INDEX_INCONSISTENT,
848              SVN_ERR_FS_CATEGORY_START + 58,
849              "Index files are inconsistent.")
850 
851   /** @since New in 1.9. */
852   SVN_ERRDEF(SVN_ERR_FS_LOCK_OPERATION_FAILED,
853              SVN_ERR_FS_CATEGORY_START + 59,
854              "Lock operation failed")
855 
856   /** @since New in 1.9. */
857   SVN_ERRDEF(SVN_ERR_FS_UNSUPPORTED_TYPE,
858              SVN_ERR_FS_CATEGORY_START + 60,
859              "Unsupported FS type")
860 
861   /** @since New in 1.9. */
862   SVN_ERRDEF(SVN_ERR_FS_CONTAINER_SIZE,
863              SVN_ERR_FS_CATEGORY_START + 61,
864              "Container capacity exceeded.")
865 
866   /** @since New in 1.9. */
867   SVN_ERRDEF(SVN_ERR_FS_MALFORMED_NODEREV_ID,
868              SVN_ERR_FS_CATEGORY_START + 62,
869              "Malformed node revision ID string.")
870 
871   /** @since New in 1.9. */
872   SVN_ERRDEF(SVN_ERR_FS_INVALID_GENERATION,
873              SVN_ERR_FS_CATEGORY_START + 63,
874              "Invalid generation number data.")
875 
876   /** @since New in 1.10. */
877   SVN_ERRDEF(SVN_ERR_FS_CORRUPT_REVPROP_MANIFEST,
878              SVN_ERR_FS_CATEGORY_START + 64,
879              "Revprop manifest corrupt.")
880 
881   /** @since New in 1.10. */
882   SVN_ERRDEF(SVN_ERR_FS_CORRUPT_PROPLIST,
883              SVN_ERR_FS_CATEGORY_START + 65,
884              "Property list is corrupt.")
885 
886   /** @since New in 1.10. */
887   SVN_ERRDEF(SVN_ERR_FS_AMBIGUOUS_CHECKSUM_REP,
888              SVN_ERR_FS_CATEGORY_START + 67,
889              "Content checksums supposedly match but content does not.")
890 
891   /** @since New in 1.13. */
892   SVN_ERRDEF(SVN_ERR_FS_UNRECOGNIZED_IOCTL_CODE,
893              SVN_ERR_FS_CATEGORY_START + 68,
894              "Unrecognized filesystem I/O control code")
895 
896   /** @since New in 1.14. */
897   SVN_ERRDEF(SVN_ERR_FS_REP_SHARING_NOT_ALLOWED,
898              SVN_ERR_FS_CATEGORY_START + 69,
899              "Rep-sharing is not allowed.")
900 
901   /** @since New in 1.14. */
902   SVN_ERRDEF(SVN_ERR_FS_REP_SHARING_NOT_SUPPORTED,
903              SVN_ERR_FS_CATEGORY_START + 70,
904              "Rep-sharing is not supported.")
905 
906   /* repos errors */
907 
908   SVN_ERRDEF(SVN_ERR_REPOS_LOCKED,
909              SVN_ERR_REPOS_CATEGORY_START + 0,
910              "The repository is locked, perhaps for db recovery")
911 
912   SVN_ERRDEF(SVN_ERR_REPOS_HOOK_FAILURE,
913              SVN_ERR_REPOS_CATEGORY_START + 1,
914              "A repository hook failed")
915 
916   SVN_ERRDEF(SVN_ERR_REPOS_BAD_ARGS,
917              SVN_ERR_REPOS_CATEGORY_START + 2,
918              "Incorrect arguments supplied")
919 
920   SVN_ERRDEF(SVN_ERR_REPOS_NO_DATA_FOR_REPORT,
921              SVN_ERR_REPOS_CATEGORY_START + 3,
922              "A report cannot be generated because no data was supplied")
923 
924   SVN_ERRDEF(SVN_ERR_REPOS_BAD_REVISION_REPORT,
925              SVN_ERR_REPOS_CATEGORY_START + 4,
926              "Bogus revision report")
927 
928   /* This is analogous to SVN_ERR_FS_UNSUPPORTED_FORMAT.  To avoid
929    * confusion with "versions" (i.e., releases) of Subversion, we
930    * started using the word "format" instead of "version".  However,
931    * this error code's name predates that decision.
932    */
933   SVN_ERRDEF(SVN_ERR_REPOS_UNSUPPORTED_VERSION,
934              SVN_ERR_REPOS_CATEGORY_START + 5,
935              "Unsupported repository version")
936 
937   SVN_ERRDEF(SVN_ERR_REPOS_DISABLED_FEATURE,
938              SVN_ERR_REPOS_CATEGORY_START + 6,
939              "Disabled repository feature")
940 
941   SVN_ERRDEF(SVN_ERR_REPOS_POST_COMMIT_HOOK_FAILED,
942              SVN_ERR_REPOS_CATEGORY_START + 7,
943              "Error running post-commit hook")
944 
945   /** @since New in 1.2. */
946   SVN_ERRDEF(SVN_ERR_REPOS_POST_LOCK_HOOK_FAILED,
947              SVN_ERR_REPOS_CATEGORY_START + 8,
948              "Error running post-lock hook")
949 
950   /** @since New in 1.2. */
951   SVN_ERRDEF(SVN_ERR_REPOS_POST_UNLOCK_HOOK_FAILED,
952              SVN_ERR_REPOS_CATEGORY_START + 9,
953              "Error running post-unlock hook")
954 
955   /** @since New in 1.5. */
956   SVN_ERRDEF(SVN_ERR_REPOS_UNSUPPORTED_UPGRADE,
957              SVN_ERR_REPOS_CATEGORY_START + 10,
958              "Repository upgrade is not supported")
959 
960   /* generic RA errors */
961 
962   SVN_ERRDEF(SVN_ERR_RA_ILLEGAL_URL,
963              SVN_ERR_RA_CATEGORY_START + 0,
964              "Bad URL passed to RA layer")
965 
966   SVN_ERRDEF(SVN_ERR_RA_NOT_AUTHORIZED,
967              SVN_ERR_RA_CATEGORY_START + 1,
968              "Authorization failed")
969 
970   SVN_ERRDEF(SVN_ERR_RA_UNKNOWN_AUTH,
971              SVN_ERR_RA_CATEGORY_START + 2,
972              "Unknown authorization method")
973 
974   SVN_ERRDEF(SVN_ERR_RA_NOT_IMPLEMENTED,
975              SVN_ERR_RA_CATEGORY_START + 3,
976              "Repository access method not implemented")
977 
978   SVN_ERRDEF(SVN_ERR_RA_OUT_OF_DATE,
979              SVN_ERR_RA_CATEGORY_START + 4,
980              "Item is out of date")
981 
982   SVN_ERRDEF(SVN_ERR_RA_NO_REPOS_UUID,
983              SVN_ERR_RA_CATEGORY_START + 5,
984              "Repository has no UUID")
985 
986   SVN_ERRDEF(SVN_ERR_RA_UNSUPPORTED_ABI_VERSION,
987              SVN_ERR_RA_CATEGORY_START + 6,
988              "Unsupported RA plugin ABI version")
989 
990   /** @since New in 1.2. */
991   SVN_ERRDEF(SVN_ERR_RA_NOT_LOCKED,
992              SVN_ERR_RA_CATEGORY_START + 7,
993              "Path is not locked")
994 
995   /** @since New in 1.5. */
996   SVN_ERRDEF(SVN_ERR_RA_PARTIAL_REPLAY_NOT_SUPPORTED,
997              SVN_ERR_RA_CATEGORY_START + 8,
998              "Server can only replay from the root of a repository")
999 
1000   /** @since New in 1.5. */
1001   SVN_ERRDEF(SVN_ERR_RA_UUID_MISMATCH,
1002              SVN_ERR_RA_CATEGORY_START + 9,
1003              "Repository UUID does not match expected UUID")
1004 
1005   /** @since New in 1.6. */
1006   SVN_ERRDEF(SVN_ERR_RA_REPOS_ROOT_URL_MISMATCH,
1007              SVN_ERR_RA_CATEGORY_START + 10,
1008              "Repository root URL does not match expected root URL")
1009 
1010   /** @since New in 1.7. */
1011   SVN_ERRDEF(SVN_ERR_RA_SESSION_URL_MISMATCH,
1012              SVN_ERR_RA_CATEGORY_START + 11,
1013              "Session URL does not match expected session URL")
1014 
1015   /** @since New in 1.8. */
1016   SVN_ERRDEF(SVN_ERR_RA_CANNOT_CREATE_TUNNEL,
1017              SVN_ERR_RA_CATEGORY_START + 12,
1018              "Can't create tunnel")
1019 
1020   /** @since New in 1.9. */
1021   SVN_ERRDEF(SVN_ERR_RA_CANNOT_CREATE_SESSION,
1022              SVN_ERR_RA_CATEGORY_START + 13,
1023              "Can't create session")
1024 
1025   /* ra_dav errors */
1026 
1027   SVN_ERRDEF(SVN_ERR_RA_DAV_SOCK_INIT,
1028              SVN_ERR_RA_DAV_CATEGORY_START + 0,
1029              "RA layer failed to init socket layer")
1030 
1031   SVN_ERRDEF(SVN_ERR_RA_DAV_CREATING_REQUEST,
1032              SVN_ERR_RA_DAV_CATEGORY_START + 1,
1033              "RA layer failed to create HTTP request")
1034 
1035   SVN_ERRDEF(SVN_ERR_RA_DAV_REQUEST_FAILED,
1036              SVN_ERR_RA_DAV_CATEGORY_START + 2,
1037              "RA layer request failed")
1038 
1039   SVN_ERRDEF(SVN_ERR_RA_DAV_OPTIONS_REQ_FAILED,
1040              SVN_ERR_RA_DAV_CATEGORY_START + 3,
1041              "RA layer didn't receive requested OPTIONS info")
1042 
1043   SVN_ERRDEF(SVN_ERR_RA_DAV_PROPS_NOT_FOUND,
1044              SVN_ERR_RA_DAV_CATEGORY_START + 4,
1045              "RA layer failed to fetch properties")
1046 
1047   SVN_ERRDEF(SVN_ERR_RA_DAV_ALREADY_EXISTS,
1048              SVN_ERR_RA_DAV_CATEGORY_START + 5,
1049              "RA layer file already exists")
1050 
1051   /** @deprecated To improve consistency between ra layers, this error code
1052       is replaced by SVN_ERR_BAD_CONFIG_VALUE.
1053       Slated for removal in the next major release. */
1054   SVN_ERRDEF(SVN_ERR_RA_DAV_INVALID_CONFIG_VALUE,
1055              SVN_ERR_RA_DAV_CATEGORY_START + 6,
1056              "Invalid configuration value")
1057 
1058   /** @deprecated To improve consistency between ra layers, this error code
1059       is replaced in ra_serf by SVN_ERR_FS_NOT_FOUND.
1060       Slated for removal in the next major release. */
1061   SVN_ERRDEF(SVN_ERR_RA_DAV_PATH_NOT_FOUND,
1062              SVN_ERR_RA_DAV_CATEGORY_START + 7,
1063              "HTTP Path Not Found")
1064 
1065   SVN_ERRDEF(SVN_ERR_RA_DAV_PROPPATCH_FAILED,
1066              SVN_ERR_RA_DAV_CATEGORY_START + 8,
1067              "Failed to execute WebDAV PROPPATCH")
1068 
1069   /** @since New in 1.2. */
1070   SVN_ERRDEF(SVN_ERR_RA_DAV_MALFORMED_DATA,
1071              SVN_ERR_RA_DAV_CATEGORY_START + 9,
1072              "Malformed network data")
1073 
1074   /** @since New in 1.3 */
1075   SVN_ERRDEF(SVN_ERR_RA_DAV_RESPONSE_HEADER_BADNESS,
1076              SVN_ERR_RA_DAV_CATEGORY_START + 10,
1077              "Unable to extract data from response header")
1078 
1079   /** @since New in 1.5 */
1080   SVN_ERRDEF(SVN_ERR_RA_DAV_RELOCATED,
1081              SVN_ERR_RA_DAV_CATEGORY_START + 11,
1082              "Repository has been moved")
1083 
1084   /** @since New in 1.7 */
1085   SVN_ERRDEF(SVN_ERR_RA_DAV_CONN_TIMEOUT,
1086              SVN_ERR_RA_DAV_CATEGORY_START + 12,
1087              "Connection timed out")
1088 
1089   /** @since New in 1.6 */
1090   SVN_ERRDEF(SVN_ERR_RA_DAV_FORBIDDEN,
1091              SVN_ERR_RA_DAV_CATEGORY_START + 13,
1092              "URL access forbidden for unknown reason")
1093 
1094   /** @since New in 1.9 */
1095   SVN_ERRDEF(SVN_ERR_RA_DAV_PRECONDITION_FAILED,
1096              SVN_ERR_RA_DAV_CATEGORY_START + 14,
1097              "The server state conflicts with the requested preconditions")
1098 
1099   /** @since New in 1.9 */
1100   SVN_ERRDEF(SVN_ERR_RA_DAV_METHOD_NOT_ALLOWED,
1101              SVN_ERR_RA_DAV_CATEGORY_START + 15,
1102              "The URL doesn't allow the requested method")
1103 
1104   /* ra_local errors */
1105 
1106   SVN_ERRDEF(SVN_ERR_RA_LOCAL_REPOS_NOT_FOUND,
1107              SVN_ERR_RA_LOCAL_CATEGORY_START + 0,
1108              "Couldn't find a repository")
1109 
1110   SVN_ERRDEF(SVN_ERR_RA_LOCAL_REPOS_OPEN_FAILED,
1111              SVN_ERR_RA_LOCAL_CATEGORY_START + 1,
1112              "Couldn't open a repository")
1113 
1114   /* svndiff errors */
1115 
1116   SVN_ERRDEF(SVN_ERR_SVNDIFF_INVALID_HEADER,
1117              SVN_ERR_SVNDIFF_CATEGORY_START + 0,
1118              "Svndiff data has invalid header")
1119 
1120   SVN_ERRDEF(SVN_ERR_SVNDIFF_CORRUPT_WINDOW,
1121              SVN_ERR_SVNDIFF_CATEGORY_START + 1,
1122              "Svndiff data contains corrupt window")
1123 
1124   SVN_ERRDEF(SVN_ERR_SVNDIFF_BACKWARD_VIEW,
1125              SVN_ERR_SVNDIFF_CATEGORY_START + 2,
1126              "Svndiff data contains backward-sliding source view")
1127 
1128   SVN_ERRDEF(SVN_ERR_SVNDIFF_INVALID_OPS,
1129              SVN_ERR_SVNDIFF_CATEGORY_START + 3,
1130              "Svndiff data contains invalid instruction")
1131 
1132   SVN_ERRDEF(SVN_ERR_SVNDIFF_UNEXPECTED_END,
1133              SVN_ERR_SVNDIFF_CATEGORY_START + 4,
1134              "Svndiff data ends unexpectedly")
1135 
1136   SVN_ERRDEF(SVN_ERR_SVNDIFF_INVALID_COMPRESSED_DATA,
1137              SVN_ERR_SVNDIFF_CATEGORY_START + 5,
1138              "Svndiff compressed data is invalid")
1139 
1140   /* mod_dav_svn errors */
1141 
1142   SVN_ERRDEF(SVN_ERR_APMOD_MISSING_PATH_TO_FS,
1143              SVN_ERR_APMOD_CATEGORY_START + 0,
1144              "Apache has no path to an SVN filesystem")
1145 
1146   SVN_ERRDEF(SVN_ERR_APMOD_MALFORMED_URI,
1147              SVN_ERR_APMOD_CATEGORY_START + 1,
1148              "Apache got a malformed URI")
1149 
1150   SVN_ERRDEF(SVN_ERR_APMOD_ACTIVITY_NOT_FOUND,
1151              SVN_ERR_APMOD_CATEGORY_START + 2,
1152              "Activity not found")
1153 
1154   SVN_ERRDEF(SVN_ERR_APMOD_BAD_BASELINE,
1155              SVN_ERR_APMOD_CATEGORY_START + 3,
1156              "Baseline incorrect")
1157 
1158   SVN_ERRDEF(SVN_ERR_APMOD_CONNECTION_ABORTED,
1159              SVN_ERR_APMOD_CATEGORY_START + 4,
1160              "Input/output error")
1161 
1162   /* libsvn_client errors */
1163 
1164   SVN_ERRDEF(SVN_ERR_CLIENT_VERSIONED_PATH_REQUIRED,
1165              SVN_ERR_CLIENT_CATEGORY_START + 0,
1166              "A path under version control is needed for this operation")
1167 
1168   SVN_ERRDEF(SVN_ERR_CLIENT_RA_ACCESS_REQUIRED,
1169              SVN_ERR_CLIENT_CATEGORY_START + 1,
1170              "Repository access is needed for this operation")
1171 
1172   SVN_ERRDEF(SVN_ERR_CLIENT_BAD_REVISION,
1173              SVN_ERR_CLIENT_CATEGORY_START + 2,
1174              "Bogus revision information given")
1175 
1176   SVN_ERRDEF(SVN_ERR_CLIENT_DUPLICATE_COMMIT_URL,
1177              SVN_ERR_CLIENT_CATEGORY_START + 3,
1178              "Attempting to commit to a URL more than once")
1179 
1180   SVN_ERRDEF(SVN_ERR_CLIENT_IS_BINARY_FILE,
1181              SVN_ERR_CLIENT_CATEGORY_START + 4,
1182              "Operation does not apply to binary file")
1183 
1184        /*### SVN_PROP_EXTERNALS needed to be replaced with "svn:externals"
1185          in order to get gettext translatable strings */
1186   SVN_ERRDEF(SVN_ERR_CLIENT_INVALID_EXTERNALS_DESCRIPTION,
1187              SVN_ERR_CLIENT_CATEGORY_START + 5,
1188              "Format of an svn:externals property was invalid")
1189 
1190   SVN_ERRDEF(SVN_ERR_CLIENT_MODIFIED,
1191              SVN_ERR_CLIENT_CATEGORY_START + 6,
1192              "Attempting restricted operation for modified resource")
1193 
1194   SVN_ERRDEF(SVN_ERR_CLIENT_IS_DIRECTORY,
1195              SVN_ERR_CLIENT_CATEGORY_START + 7,
1196              "Operation does not apply to directory")
1197 
1198   SVN_ERRDEF(SVN_ERR_CLIENT_REVISION_RANGE,
1199              SVN_ERR_CLIENT_CATEGORY_START + 8,
1200              "Revision range is not allowed")
1201 
1202   SVN_ERRDEF(SVN_ERR_CLIENT_INVALID_RELOCATION,
1203              SVN_ERR_CLIENT_CATEGORY_START + 9,
1204              "Inter-repository relocation not allowed")
1205 
1206   SVN_ERRDEF(SVN_ERR_CLIENT_REVISION_AUTHOR_CONTAINS_NEWLINE,
1207              SVN_ERR_CLIENT_CATEGORY_START + 10,
1208              "Author name cannot contain a newline")
1209 
1210   SVN_ERRDEF(SVN_ERR_CLIENT_PROPERTY_NAME,
1211              SVN_ERR_CLIENT_CATEGORY_START + 11,
1212              "Bad property name")
1213 
1214   /** @since New in 1.1. */
1215   SVN_ERRDEF(SVN_ERR_CLIENT_UNRELATED_RESOURCES,
1216              SVN_ERR_CLIENT_CATEGORY_START + 12,
1217              "Two versioned resources are unrelated")
1218 
1219   /** @since New in 1.2. */
1220   SVN_ERRDEF(SVN_ERR_CLIENT_MISSING_LOCK_TOKEN,
1221              SVN_ERR_CLIENT_CATEGORY_START + 13,
1222              "Path has no lock token")
1223 
1224   /** @since New in 1.5. */
1225   SVN_ERRDEF(SVN_ERR_CLIENT_MULTIPLE_SOURCES_DISALLOWED,
1226              SVN_ERR_CLIENT_CATEGORY_START + 14,
1227              "Operation does not support multiple sources")
1228 
1229   /** @since New in 1.5. */
1230   SVN_ERRDEF(SVN_ERR_CLIENT_NO_VERSIONED_PARENT,
1231              SVN_ERR_CLIENT_CATEGORY_START + 15,
1232              "No versioned parent directories")
1233 
1234   /** @since New in 1.5. */
1235   SVN_ERRDEF(SVN_ERR_CLIENT_NOT_READY_TO_MERGE,
1236              SVN_ERR_CLIENT_CATEGORY_START + 16,
1237              "Working copy and merge source not ready for reintegration")
1238 
1239   /** @since New in 1.6. */
1240   SVN_ERRDEF(SVN_ERR_CLIENT_FILE_EXTERNAL_OVERWRITE_VERSIONED,
1241              SVN_ERR_CLIENT_CATEGORY_START + 17,
1242              "A file external cannot overwrite an existing versioned item")
1243 
1244   /** @since New in 1.7. */
1245   SVN_ERRDEF(SVN_ERR_CLIENT_PATCH_BAD_STRIP_COUNT,
1246              SVN_ERR_CLIENT_CATEGORY_START + 18,
1247              "Invalid path component strip count specified")
1248 
1249   /** @since New in 1.7. */
1250   SVN_ERRDEF(SVN_ERR_CLIENT_CYCLE_DETECTED,
1251              SVN_ERR_CLIENT_CATEGORY_START + 19,
1252              "Detected a cycle while processing the operation")
1253 
1254   /** @since New in 1.7. */
1255   SVN_ERRDEF(SVN_ERR_CLIENT_MERGE_UPDATE_REQUIRED,
1256              SVN_ERR_CLIENT_CATEGORY_START + 20,
1257              "Working copy and merge source not ready for reintegration")
1258 
1259   /** @since New in 1.7. */
1260   SVN_ERRDEF(SVN_ERR_CLIENT_INVALID_MERGEINFO_NO_MERGETRACKING,
1261              SVN_ERR_CLIENT_CATEGORY_START + 21,
1262              "Invalid mergeinfo detected in merge target")
1263 
1264   /** @since New in 1.7. */
1265   SVN_ERRDEF(SVN_ERR_CLIENT_NO_LOCK_TOKEN,
1266              SVN_ERR_CLIENT_CATEGORY_START + 22,
1267              "Can't perform this operation without a valid lock token")
1268 
1269   /** @since New in 1.7. */
1270   SVN_ERRDEF(SVN_ERR_CLIENT_FORBIDDEN_BY_SERVER,
1271              SVN_ERR_CLIENT_CATEGORY_START + 23,
1272              "The operation is forbidden by the server")
1273 
1274   /** @since New in 1.10. */
1275   SVN_ERRDEF(SVN_ERR_CLIENT_CONFLICT_OPTION_NOT_APPLICABLE,
1276              SVN_ERR_CLIENT_CATEGORY_START + 24,
1277              "The conflict resolution option is not applicable")
1278 
1279   /* misc errors */
1280 
1281   SVN_ERRDEF(SVN_ERR_BASE,
1282              SVN_ERR_MISC_CATEGORY_START + 0,
1283              "A problem occurred; see other errors for details")
1284 
1285   SVN_ERRDEF(SVN_ERR_PLUGIN_LOAD_FAILURE,
1286              SVN_ERR_MISC_CATEGORY_START + 1,
1287              "Failure loading plugin")
1288 
1289   SVN_ERRDEF(SVN_ERR_MALFORMED_FILE,
1290              SVN_ERR_MISC_CATEGORY_START + 2,
1291              "Malformed file")
1292 
1293   SVN_ERRDEF(SVN_ERR_INCOMPLETE_DATA,
1294              SVN_ERR_MISC_CATEGORY_START + 3,
1295              "Incomplete data")
1296 
1297   SVN_ERRDEF(SVN_ERR_INCORRECT_PARAMS,
1298              SVN_ERR_MISC_CATEGORY_START + 4,
1299              "Incorrect parameters given")
1300 
1301   SVN_ERRDEF(SVN_ERR_UNVERSIONED_RESOURCE,
1302              SVN_ERR_MISC_CATEGORY_START + 5,
1303              "Tried a versioning operation on an unversioned resource")
1304 
1305   SVN_ERRDEF(SVN_ERR_TEST_FAILED,
1306              SVN_ERR_MISC_CATEGORY_START + 6,
1307              "Test failed")
1308 
1309   SVN_ERRDEF(SVN_ERR_UNSUPPORTED_FEATURE,
1310              SVN_ERR_MISC_CATEGORY_START + 7,
1311              "Trying to use an unsupported feature")
1312 
1313   SVN_ERRDEF(SVN_ERR_BAD_PROP_KIND,
1314              SVN_ERR_MISC_CATEGORY_START + 8,
1315              "Unexpected or unknown property kind")
1316 
1317   SVN_ERRDEF(SVN_ERR_ILLEGAL_TARGET,
1318              SVN_ERR_MISC_CATEGORY_START + 9,
1319              "Illegal target for the requested operation")
1320 
1321   SVN_ERRDEF(SVN_ERR_DELTA_MD5_CHECKSUM_ABSENT,
1322              SVN_ERR_MISC_CATEGORY_START + 10,
1323              "MD5 checksum is missing")
1324 
1325   SVN_ERRDEF(SVN_ERR_DIR_NOT_EMPTY,
1326              SVN_ERR_MISC_CATEGORY_START + 11,
1327              "Directory needs to be empty but is not")
1328 
1329   SVN_ERRDEF(SVN_ERR_EXTERNAL_PROGRAM,
1330              SVN_ERR_MISC_CATEGORY_START + 12,
1331              "Error calling external program")
1332 
1333   SVN_ERRDEF(SVN_ERR_SWIG_PY_EXCEPTION_SET,
1334              SVN_ERR_MISC_CATEGORY_START + 13,
1335              "Python exception has been set with the error")
1336 
1337   SVN_ERRDEF(SVN_ERR_CHECKSUM_MISMATCH,
1338              SVN_ERR_MISC_CATEGORY_START + 14,
1339              "A checksum mismatch occurred")
1340 
1341   SVN_ERRDEF(SVN_ERR_CANCELLED,
1342              SVN_ERR_MISC_CATEGORY_START + 15,
1343              "The operation was interrupted")
1344 
1345   SVN_ERRDEF(SVN_ERR_INVALID_DIFF_OPTION,
1346              SVN_ERR_MISC_CATEGORY_START + 16,
1347              "The specified diff option is not supported")
1348 
1349   SVN_ERRDEF(SVN_ERR_PROPERTY_NOT_FOUND,
1350              SVN_ERR_MISC_CATEGORY_START + 17,
1351              "Property not found")
1352 
1353   SVN_ERRDEF(SVN_ERR_NO_AUTH_FILE_PATH,
1354              SVN_ERR_MISC_CATEGORY_START + 18,
1355              "No auth file path available")
1356 
1357   /** @since New in 1.1. */
1358   SVN_ERRDEF(SVN_ERR_VERSION_MISMATCH,
1359              SVN_ERR_MISC_CATEGORY_START + 19,
1360              "Incompatible library version")
1361 
1362   /** @since New in 1.5. */
1363   SVN_ERRDEF(SVN_ERR_MERGEINFO_PARSE_ERROR,
1364              SVN_ERR_MISC_CATEGORY_START + 20,
1365              "Mergeinfo parse error")
1366 
1367   /** @since New in 1.5. */
1368   SVN_ERRDEF(SVN_ERR_CEASE_INVOCATION,
1369              SVN_ERR_MISC_CATEGORY_START + 21,
1370              "Cease invocation of this API")
1371 
1372   /** @since New in 1.5. */
1373   SVN_ERRDEF(SVN_ERR_REVNUM_PARSE_FAILURE,
1374              SVN_ERR_MISC_CATEGORY_START + 22,
1375              "Error parsing revision number")
1376 
1377   /** @since New in 1.5. */
1378   SVN_ERRDEF(SVN_ERR_ITER_BREAK,
1379              SVN_ERR_MISC_CATEGORY_START + 23,
1380              "Iteration terminated before completion")
1381 
1382   /** @since New in 1.5. */
1383   SVN_ERRDEF(SVN_ERR_UNKNOWN_CHANGELIST,
1384              SVN_ERR_MISC_CATEGORY_START + 24,
1385              "Unknown changelist")
1386 
1387   /** @since New in 1.5. */
1388   SVN_ERRDEF(SVN_ERR_RESERVED_FILENAME_SPECIFIED,
1389              SVN_ERR_MISC_CATEGORY_START + 25,
1390              "Reserved directory name in command line arguments")
1391 
1392   /** @since New in 1.5. */
1393   SVN_ERRDEF(SVN_ERR_UNKNOWN_CAPABILITY,
1394              SVN_ERR_MISC_CATEGORY_START + 26,
1395              "Inquiry about unknown capability")
1396 
1397   /** @since New in 1.6. */
1398   SVN_ERRDEF(SVN_ERR_TEST_SKIPPED,
1399              SVN_ERR_MISC_CATEGORY_START + 27,
1400              "Test skipped")
1401 
1402   /** @since New in 1.6. */
1403   SVN_ERRDEF(SVN_ERR_NO_APR_MEMCACHE,
1404              SVN_ERR_MISC_CATEGORY_START + 28,
1405              "APR memcache library not available")
1406 
1407   /** @since New in 1.6. */
1408   SVN_ERRDEF(SVN_ERR_ATOMIC_INIT_FAILURE,
1409              SVN_ERR_MISC_CATEGORY_START + 29,
1410              "Couldn't perform atomic initialization")
1411 
1412   /** @since New in 1.6. */
1413   SVN_ERRDEF(SVN_ERR_SQLITE_ERROR,
1414              SVN_ERR_MISC_CATEGORY_START + 30,
1415              "SQLite error")
1416 
1417   /** @since New in 1.6. */
1418   SVN_ERRDEF(SVN_ERR_SQLITE_READONLY,
1419              SVN_ERR_MISC_CATEGORY_START + 31,
1420              "Attempted to write to readonly SQLite db")
1421 
1422   /** @since New in 1.6.
1423    * @deprecated the internal sqlite support code does not manage schemas
1424    * any longer.  */
1425   SVN_ERRDEF(SVN_ERR_SQLITE_UNSUPPORTED_SCHEMA,
1426              SVN_ERR_MISC_CATEGORY_START + 32,
1427              "Unsupported schema found in SQLite db")
1428 
1429   /** @since New in 1.7. */
1430   SVN_ERRDEF(SVN_ERR_SQLITE_BUSY,
1431              SVN_ERR_MISC_CATEGORY_START + 33,
1432              "The SQLite db is busy")
1433 
1434   /** @since New in 1.7. */
1435   SVN_ERRDEF(SVN_ERR_SQLITE_RESETTING_FOR_ROLLBACK,
1436              SVN_ERR_MISC_CATEGORY_START + 34,
1437              "SQLite busy at transaction rollback; "
1438              "resetting all busy SQLite statements to allow rollback")
1439 
1440   /** @since New in 1.7. */
1441   SVN_ERRDEF(SVN_ERR_SQLITE_CONSTRAINT,
1442              SVN_ERR_MISC_CATEGORY_START + 35,
1443              "Constraint error in SQLite db")
1444 
1445   /** @since New in 1.8. */
1446   SVN_ERRDEF(SVN_ERR_TOO_MANY_MEMCACHED_SERVERS,
1447              SVN_ERR_MISC_CATEGORY_START + 36,
1448              "Too many memcached servers configured")
1449 
1450   /** @since New in 1.8. */
1451   SVN_ERRDEF(SVN_ERR_MALFORMED_VERSION_STRING,
1452              SVN_ERR_MISC_CATEGORY_START + 37,
1453              "Failed to parse version number string")
1454 
1455   /** @since New in 1.8. */
1456   SVN_ERRDEF(SVN_ERR_CORRUPTED_ATOMIC_STORAGE,
1457              SVN_ERR_MISC_CATEGORY_START + 38,
1458              "Atomic data storage is corrupt")
1459 
1460   /** @since New in 1.8. */
1461   SVN_ERRDEF(SVN_ERR_UTF8PROC_ERROR,
1462              SVN_ERR_MISC_CATEGORY_START + 39,
1463              "utf8proc library error")
1464 
1465   /** @since New in 1.8. */
1466   SVN_ERRDEF(SVN_ERR_UTF8_GLOB,
1467              SVN_ERR_MISC_CATEGORY_START + 40,
1468              "Bad arguments to SQL operators GLOB or LIKE")
1469 
1470   /** @since New in 1.9. */
1471   SVN_ERRDEF(SVN_ERR_CORRUPT_PACKED_DATA,
1472              SVN_ERR_MISC_CATEGORY_START + 41,
1473              "Packed data stream is corrupt")
1474 
1475   /** @since New in 1.9. */
1476   SVN_ERRDEF(SVN_ERR_COMPOSED_ERROR,
1477              SVN_ERR_MISC_CATEGORY_START + 42,
1478              "Additional errors:")
1479 
1480   /** @since New in 1.9. */
1481   SVN_ERRDEF(SVN_ERR_INVALID_INPUT,
1482              SVN_ERR_MISC_CATEGORY_START + 43,
1483              "Parser error: invalid input")
1484 
1485   /** @since New in 1.10. */
1486   SVN_ERRDEF(SVN_ERR_SQLITE_ROLLBACK_FAILED,
1487              SVN_ERR_MISC_CATEGORY_START + 44,
1488              "SQLite transaction rollback failed")
1489 
1490   /** @since New in 1.10. */
1491   SVN_ERRDEF(SVN_ERR_LZ4_COMPRESSION_FAILED,
1492              SVN_ERR_MISC_CATEGORY_START + 45,
1493              "LZ4 compression failed")
1494 
1495   /** @since New in 1.10. */
1496   SVN_ERRDEF(SVN_ERR_LZ4_DECOMPRESSION_FAILED,
1497              SVN_ERR_MISC_CATEGORY_START + 46,
1498              "LZ4 decompression failed")
1499 
1500   /** @since New in 1.12.  */
1501   SVN_ERRDEF(SVN_ERR_CANONICALIZATION_FAILED,
1502              SVN_ERR_MISC_CATEGORY_START + 47,
1503              "Could not canonicalize path or URI")
1504 
1505   /* command-line client errors */
1506 
1507   SVN_ERRDEF(SVN_ERR_CL_ARG_PARSING_ERROR,
1508              SVN_ERR_CL_CATEGORY_START + 0,
1509              "Error parsing arguments")
1510 
1511   SVN_ERRDEF(SVN_ERR_CL_INSUFFICIENT_ARGS,
1512              SVN_ERR_CL_CATEGORY_START + 1,
1513              "Not enough arguments provided")
1514 
1515   SVN_ERRDEF(SVN_ERR_CL_MUTUALLY_EXCLUSIVE_ARGS,
1516              SVN_ERR_CL_CATEGORY_START + 2,
1517              "Mutually exclusive arguments specified")
1518 
1519   SVN_ERRDEF(SVN_ERR_CL_ADM_DIR_RESERVED,
1520              SVN_ERR_CL_CATEGORY_START + 3,
1521              "Attempted command in administrative dir")
1522 
1523   SVN_ERRDEF(SVN_ERR_CL_LOG_MESSAGE_IS_VERSIONED_FILE,
1524              SVN_ERR_CL_CATEGORY_START + 4,
1525              "The log message file is under version control")
1526 
1527   SVN_ERRDEF(SVN_ERR_CL_LOG_MESSAGE_IS_PATHNAME,
1528              SVN_ERR_CL_CATEGORY_START + 5,
1529              "The log message is a pathname")
1530 
1531   SVN_ERRDEF(SVN_ERR_CL_COMMIT_IN_ADDED_DIR,
1532              SVN_ERR_CL_CATEGORY_START + 6,
1533              "Committing in directory scheduled for addition")
1534 
1535   SVN_ERRDEF(SVN_ERR_CL_NO_EXTERNAL_EDITOR,
1536              SVN_ERR_CL_CATEGORY_START + 7,
1537              "No external editor available")
1538 
1539   SVN_ERRDEF(SVN_ERR_CL_BAD_LOG_MESSAGE,
1540              SVN_ERR_CL_CATEGORY_START + 8,
1541              "Something is wrong with the log message's contents")
1542 
1543   SVN_ERRDEF(SVN_ERR_CL_UNNECESSARY_LOG_MESSAGE,
1544              SVN_ERR_CL_CATEGORY_START + 9,
1545              "A log message was given where none was necessary")
1546 
1547   SVN_ERRDEF(SVN_ERR_CL_NO_EXTERNAL_MERGE_TOOL,
1548              SVN_ERR_CL_CATEGORY_START + 10,
1549              "No external merge tool available")
1550 
1551   SVN_ERRDEF(SVN_ERR_CL_ERROR_PROCESSING_EXTERNALS,
1552              SVN_ERR_CL_CATEGORY_START + 11,
1553              "Failed processing one or more externals definitions")
1554 
1555   /** @since New in 1.9. */
1556   SVN_ERRDEF(SVN_ERR_CL_REPOS_VERIFY_FAILED,
1557              SVN_ERR_CL_CATEGORY_START + 12,
1558              "Repository verification failed")
1559 
1560   /* ra_svn errors */
1561 
1562   SVN_ERRDEF(SVN_ERR_RA_SVN_CMD_ERR,
1563              SVN_ERR_RA_SVN_CATEGORY_START + 0,
1564              "Special code for wrapping server errors to report to client")
1565 
1566   SVN_ERRDEF(SVN_ERR_RA_SVN_UNKNOWN_CMD,
1567              SVN_ERR_RA_SVN_CATEGORY_START + 1,
1568              "Unknown svn protocol command")
1569 
1570   SVN_ERRDEF(SVN_ERR_RA_SVN_CONNECTION_CLOSED,
1571              SVN_ERR_RA_SVN_CATEGORY_START + 2,
1572              "Network connection closed unexpectedly")
1573 
1574   SVN_ERRDEF(SVN_ERR_RA_SVN_IO_ERROR,
1575              SVN_ERR_RA_SVN_CATEGORY_START + 3,
1576              "Network read/write error")
1577 
1578   SVN_ERRDEF(SVN_ERR_RA_SVN_MALFORMED_DATA,
1579              SVN_ERR_RA_SVN_CATEGORY_START + 4,
1580              "Malformed network data")
1581 
1582   SVN_ERRDEF(SVN_ERR_RA_SVN_REPOS_NOT_FOUND,
1583              SVN_ERR_RA_SVN_CATEGORY_START + 5,
1584              "Couldn't find a repository")
1585 
1586   SVN_ERRDEF(SVN_ERR_RA_SVN_BAD_VERSION,
1587              SVN_ERR_RA_SVN_CATEGORY_START + 6,
1588              "Client/server version mismatch")
1589 
1590   /** @since New in 1.5. */
1591   SVN_ERRDEF(SVN_ERR_RA_SVN_NO_MECHANISMS,
1592              SVN_ERR_RA_SVN_CATEGORY_START + 7,
1593              "Cannot negotiate authentication mechanism")
1594 
1595   /** @since New in 1.7  */
1596   SVN_ERRDEF(SVN_ERR_RA_SVN_EDIT_ABORTED,
1597              SVN_ERR_RA_SVN_CATEGORY_START + 8,
1598              "Editor drive was aborted")
1599 
1600   /** @since New in 1.10  */
1601   SVN_ERRDEF(SVN_ERR_RA_SVN_REQUEST_SIZE,
1602              SVN_ERR_RA_SVN_CATEGORY_START + 9,
1603              "Client request too long")
1604 
1605   /** @since New in 1.10  */
1606   SVN_ERRDEF(SVN_ERR_RA_SVN_RESPONSE_SIZE,
1607              SVN_ERR_RA_SVN_CATEGORY_START + 10,
1608              "Server response too long")
1609 
1610   /* libsvn_auth errors */
1611 
1612        /* this error can be used when an auth provider doesn't have
1613           the creds, but no other "real" error occurred. */
1614   SVN_ERRDEF(SVN_ERR_AUTHN_CREDS_UNAVAILABLE,
1615              SVN_ERR_AUTHN_CATEGORY_START + 0,
1616              "Credential data unavailable")
1617 
1618   SVN_ERRDEF(SVN_ERR_AUTHN_NO_PROVIDER,
1619              SVN_ERR_AUTHN_CATEGORY_START + 1,
1620              "No authentication provider available")
1621 
1622   SVN_ERRDEF(SVN_ERR_AUTHN_PROVIDERS_EXHAUSTED,
1623              SVN_ERR_AUTHN_CATEGORY_START + 2,
1624              "All authentication providers exhausted")
1625 
1626   SVN_ERRDEF(SVN_ERR_AUTHN_CREDS_NOT_SAVED,
1627              SVN_ERR_AUTHN_CATEGORY_START + 3,
1628              "Credentials not saved")
1629 
1630   /** @since New in 1.5. */
1631   SVN_ERRDEF(SVN_ERR_AUTHN_FAILED,
1632              SVN_ERR_AUTHN_CATEGORY_START + 4,
1633              "Authentication failed")
1634 
1635   /* authorization errors */
1636 
1637   SVN_ERRDEF(SVN_ERR_AUTHZ_ROOT_UNREADABLE,
1638              SVN_ERR_AUTHZ_CATEGORY_START + 0,
1639              "Read access denied for root of edit")
1640 
1641   /** @since New in 1.1. */
1642   SVN_ERRDEF(SVN_ERR_AUTHZ_UNREADABLE,
1643              SVN_ERR_AUTHZ_CATEGORY_START + 1,
1644              "Item is not readable")
1645 
1646   /** @since New in 1.1. */
1647   SVN_ERRDEF(SVN_ERR_AUTHZ_PARTIALLY_READABLE,
1648              SVN_ERR_AUTHZ_CATEGORY_START + 2,
1649              "Item is partially readable")
1650 
1651   SVN_ERRDEF(SVN_ERR_AUTHZ_INVALID_CONFIG,
1652              SVN_ERR_AUTHZ_CATEGORY_START + 3,
1653              "Invalid authz configuration")
1654 
1655   /** @since New in 1.3 */
1656   SVN_ERRDEF(SVN_ERR_AUTHZ_UNWRITABLE,
1657              SVN_ERR_AUTHZ_CATEGORY_START + 4,
1658              "Item is not writable")
1659 
1660 
1661   /* libsvn_diff errors */
1662 
1663   SVN_ERRDEF(SVN_ERR_DIFF_DATASOURCE_MODIFIED,
1664              SVN_ERR_DIFF_CATEGORY_START + 0,
1665              "Diff data source modified unexpectedly")
1666 
1667   /** @since New in 1.10 */
1668   SVN_ERRDEF(SVN_ERR_DIFF_UNEXPECTED_DATA,
1669              SVN_ERR_DIFF_CATEGORY_START + 1,
1670              "Diff data unexpected")
1671 
1672   /* libsvn_ra_serf errors */
1673   /** @since New in 1.5.
1674       @deprecated SSPI now handled by serf rather than libsvn_ra_serf. */
1675   SVN_ERRDEF(SVN_ERR_RA_SERF_SSPI_INITIALISATION_FAILED,
1676              SVN_ERR_RA_SERF_CATEGORY_START + 0,
1677              "Initialization of SSPI library failed")
1678   /** @since New in 1.5.
1679       @deprecated Certificate verification now handled by serf rather
1680                   than libsvn_ra_serf. */
1681   SVN_ERRDEF(SVN_ERR_RA_SERF_SSL_CERT_UNTRUSTED,
1682              SVN_ERR_RA_SERF_CATEGORY_START + 1,
1683              "Server SSL certificate untrusted")
1684   /** @since New in 1.7.
1685       @deprecated GSSAPI now handled by serf rather than libsvn_ra_serf. */
1686   SVN_ERRDEF(SVN_ERR_RA_SERF_GSSAPI_INITIALISATION_FAILED,
1687              SVN_ERR_RA_SERF_CATEGORY_START + 2,
1688              "Initialization of the GSSAPI context failed")
1689 
1690   /** @since New in 1.7. */
1691   SVN_ERRDEF(SVN_ERR_RA_SERF_WRAPPED_ERROR,
1692              SVN_ERR_RA_SERF_CATEGORY_START + 3,
1693              "While handling serf response:")
1694 
1695   /** @since New in 1.10. */
1696   SVN_ERRDEF(SVN_ERR_RA_SERF_STREAM_BUCKET_READ_ERROR,
1697              SVN_ERR_RA_SERF_CATEGORY_START + 4,
1698              "Can't read from stream")
1699 
1700   /* malfunctions such as assertion failures */
1701 
1702   SVN_ERRDEF(SVN_ERR_ASSERTION_FAIL,
1703              SVN_ERR_MALFUNC_CATEGORY_START + 0,
1704              "Assertion failure")
1705 
1706   SVN_ERRDEF(SVN_ERR_ASSERTION_ONLY_TRACING_LINKS,
1707              SVN_ERR_MALFUNC_CATEGORY_START + 1,
1708              "No non-tracing links found in the error chain")
1709 
1710   /* X509 parser errors.
1711    * Names of these error codes are based on tropicssl error codes.
1712    * @since New in 1.9 */
1713 
1714   SVN_ERRDEF(SVN_ERR_ASN1_OUT_OF_DATA,
1715              SVN_ERR_X509_CATEGORY_START + 0,
1716              "Unexpected end of ASN1 data")
1717 
1718   SVN_ERRDEF(SVN_ERR_ASN1_UNEXPECTED_TAG,
1719              SVN_ERR_X509_CATEGORY_START + 1,
1720              "Unexpected ASN1 tag")
1721 
1722   SVN_ERRDEF(SVN_ERR_ASN1_INVALID_LENGTH,
1723              SVN_ERR_X509_CATEGORY_START + 2,
1724              "Invalid ASN1 length")
1725 
1726   SVN_ERRDEF(SVN_ERR_ASN1_LENGTH_MISMATCH,
1727              SVN_ERR_X509_CATEGORY_START + 3,
1728              "ASN1 length mismatch")
1729 
1730   SVN_ERRDEF(SVN_ERR_ASN1_INVALID_DATA,
1731              SVN_ERR_X509_CATEGORY_START + 4,
1732              "Invalid ASN1 data")
1733 
1734   SVN_ERRDEF(SVN_ERR_X509_FEATURE_UNAVAILABLE,
1735              SVN_ERR_X509_CATEGORY_START + 5,
1736              "Unavailable X509 feature")
1737 
1738   SVN_ERRDEF(SVN_ERR_X509_CERT_INVALID_PEM,
1739              SVN_ERR_X509_CATEGORY_START + 6,
1740              "Invalid PEM certificate")
1741 
1742   SVN_ERRDEF(SVN_ERR_X509_CERT_INVALID_FORMAT,
1743              SVN_ERR_X509_CATEGORY_START + 7,
1744              "Invalid certificate format")
1745 
1746   SVN_ERRDEF(SVN_ERR_X509_CERT_INVALID_VERSION,
1747              SVN_ERR_X509_CATEGORY_START + 8,
1748              "Invalid certificate version")
1749 
1750   SVN_ERRDEF(SVN_ERR_X509_CERT_INVALID_SERIAL,
1751              SVN_ERR_X509_CATEGORY_START + 9,
1752              "Invalid certificate serial number")
1753 
1754   SVN_ERRDEF(SVN_ERR_X509_CERT_INVALID_ALG,
1755              SVN_ERR_X509_CATEGORY_START + 10,
1756              "Found invalid algorithm in certificate")
1757 
1758   SVN_ERRDEF(SVN_ERR_X509_CERT_INVALID_NAME,
1759              SVN_ERR_X509_CATEGORY_START + 11,
1760              "Found invalid name in certificate")
1761 
1762   SVN_ERRDEF(SVN_ERR_X509_CERT_INVALID_DATE,
1763              SVN_ERR_X509_CATEGORY_START + 12,
1764              "Found invalid date in certificate")
1765 
1766   SVN_ERRDEF(SVN_ERR_X509_CERT_INVALID_PUBKEY,
1767              SVN_ERR_X509_CATEGORY_START + 13,
1768              "Found invalid public key in certificate")
1769 
1770   SVN_ERRDEF(SVN_ERR_X509_CERT_INVALID_SIGNATURE,
1771              SVN_ERR_X509_CATEGORY_START + 14,
1772              "Found invalid signature in certificate")
1773 
1774   SVN_ERRDEF(SVN_ERR_X509_CERT_INVALID_EXTENSIONS,
1775              SVN_ERR_X509_CATEGORY_START + 15,
1776              "Found invalid extensions in certificate")
1777 
1778   SVN_ERRDEF(SVN_ERR_X509_CERT_UNKNOWN_VERSION,
1779              SVN_ERR_X509_CATEGORY_START + 16,
1780              "Unknown certificate version")
1781 
1782   SVN_ERRDEF(SVN_ERR_X509_CERT_UNKNOWN_PK_ALG,
1783              SVN_ERR_X509_CATEGORY_START + 17,
1784              "Certificate uses unknown public key algorithm")
1785 
1786   SVN_ERRDEF(SVN_ERR_X509_CERT_SIG_MISMATCH,
1787              SVN_ERR_X509_CATEGORY_START + 18,
1788              "Certificate signature mismatch")
1789 
1790   SVN_ERRDEF(SVN_ERR_X509_CERT_VERIFY_FAILED,
1791              SVN_ERR_X509_CATEGORY_START + 19,
1792              "Certificate verification failed")
1793 
1794 SVN_ERROR_END
1795 
1796 
1797 #undef SVN_ERROR_START
1798 #undef SVN_ERRDEF
1799 #undef SVN_ERROR_END
1800 
1801 #ifdef __cplusplus
1802 }
1803 #endif /* __cplusplus */
1804 
1805 #endif /* defined(SVN_ERROR_BUILD_ARRAY) || !defined(SVN_ERROR_ENUM_DEFINED) */
1806