2 ** Licensed to the Apache Software Foundation (ASF) under one or more
3 ** contributor license agreements. See the NOTICE file distributed with
4 ** this work for additional information regarding copyright ownership.
5 ** The ASF licenses this file to You under the Apache License, Version 2.0
6 ** (the "License"); you may not use this file except in compliance with
7 ** the License. You may obtain a copy of the License at
9 ** http://www.apache.org/licenses/LICENSE-2.0
11 ** Unless required by applicable law or agreed to in writing, software
12 ** distributed under the License is distributed on an "AS IS" BASIS,
13 ** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 ** See the License for the specific language governing permissions and
15 ** limitations under the License.
21 #include "apr_errno.h"
29 * apreq's wrapper around apr_strerror();
30 * recognizes APREQ_ERROR_* status codes.
32 APREQ_DECLARE(char *) apreq_strerror(apr_status_t s,
38 * @brief Error status codes.
41 * Define the APREQ_ error codes.
46 * Bad Arguments return value
49 #define APR_EBADARG APR_BADARG /* XXX: don't use APR_BADARG */
52 /** Internal apreq error. */
53 #define APREQ_ERROR_GENERAL APR_OS_START_USERERR
54 /** Attempted to perform unsafe action with tainted data. */
55 #define APREQ_ERROR_TAINTED (APREQ_ERROR_GENERAL + 1)
56 /** Parsing interrupted. */
57 #define APREQ_ERROR_INTERRUPT (APREQ_ERROR_GENERAL + 2)
59 /** Invalid input data. */
60 #define APREQ_ERROR_BADDATA (APREQ_ERROR_GENERAL + 10)
61 /** Invalid character. */
62 #define APREQ_ERROR_BADCHAR (APREQ_ERROR_BADDATA + 1)
63 /** Invalid byte sequence. */
64 #define APREQ_ERROR_BADSEQ (APREQ_ERROR_BADDATA + 2)
65 /** Invalid attribute. */
66 #define APREQ_ERROR_BADATTR (APREQ_ERROR_BADDATA + 3)
67 /** Invalid header. */
68 #define APREQ_ERROR_BADHEADER (APREQ_ERROR_BADDATA + 4)
69 /** Invalid utf8 encoding. */
70 #define APREQ_ERROR_BADUTF8 (APREQ_ERROR_BADDATA + 5)
72 /** Missing input data. */
73 #define APREQ_ERROR_NODATA (APREQ_ERROR_GENERAL + 20)
74 /** Missing required token. */
75 #define APREQ_ERROR_NOTOKEN (APREQ_ERROR_NODATA + 1)
76 /** Missing attribute. */
77 #define APREQ_ERROR_NOATTR (APREQ_ERROR_NODATA + 2)
78 /** Missing header. */
79 #define APREQ_ERROR_NOHEADER (APREQ_ERROR_NODATA + 3)
80 /** Missing parser. */
81 #define APREQ_ERROR_NOPARSER (APREQ_ERROR_NODATA + 4)
84 /** Conflicting information. */
85 #define APREQ_ERROR_MISMATCH (APREQ_ERROR_GENERAL + 30)
86 /** Exceeds configured maximum limit. */
87 #define APREQ_ERROR_OVERLIMIT (APREQ_ERROR_MISMATCH + 1)
88 /** Below configured minimum limit. */
89 #define APREQ_ERROR_UNDERLIMIT (APREQ_ERROR_MISMATCH + 2)
90 /** Setting already configured. */
91 #define APREQ_ERROR_NOTEMPTY (APREQ_ERROR_MISMATCH + 3)
98 #endif /* APREQ_ERROR_H */