github.com/krum110487/go-htaccess@v0.0.0-20240316004156-60641c8e7598/tests/data/apache_2_4_58/include/apu_errno.h (about)

     1  /* Licensed to the Apache Software Foundation (ASF) under one or more
     2   * contributor license agreements.  See the NOTICE file distributed with
     3   * this work for additional information regarding copyright ownership.
     4   * The ASF licenses this file to You under the Apache License, Version 2.0
     5   * (the "License"); you may not use this file except in compliance with
     6   * the License.  You may obtain a copy of the License at
     7   *
     8   *     http://www.apache.org/licenses/LICENSE-2.0
     9   *
    10   * Unless required by applicable law or agreed to in writing, software
    11   * distributed under the License is distributed on an "AS IS" BASIS,
    12   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    13   * See the License for the specific language governing permissions and
    14   * limitations under the License.
    15   */
    16  
    17  #ifndef APU_ERRNO_H
    18  #define APU_ERRNO_H
    19  
    20  /**
    21   * @file apu_errno.h
    22   * @brief APR-Util Error Codes
    23   */
    24  
    25  #include "apr.h"
    26  #include "apr_errno.h"
    27  
    28  #ifdef __cplusplus
    29  extern "C" {
    30  #endif /* __cplusplus */
    31  
    32  /**
    33   * @defgroup apu_errno Error Codes
    34   * @ingroup APR_Util
    35   * @{
    36   */
    37  
    38  /**
    39   * @defgroup APR_Util_Error APR_Util Error Values
    40   * <PRE>
    41   * <b>APU ERROR VALUES</b>
    42   * APR_ENOKEY         The key provided was empty or NULL
    43   * APR_ENOIV          The initialisation vector provided was NULL
    44   * APR_EKEYTYPE       The key type was not recognised
    45   * APR_ENOSPACE       The buffer supplied was not big enough
    46   * APR_ECRYPT         An error occurred while encrypting or decrypting
    47   * APR_EPADDING       Padding was not supported
    48   * APR_EKEYLENGTH     The key length was incorrect
    49   * APR_ENOCIPHER      The cipher provided was not recognised
    50   * APR_ENODIGEST      The digest provided was not recognised
    51   * APR_ENOENGINE      The engine provided was not recognised
    52   * APR_EINITENGINE    The engine could not be initialised
    53   * APR_EREINIT        Underlying crypto has already been initialised
    54   * </PRE>
    55   *
    56   * <PRE>
    57   * <b>APR STATUS VALUES</b>
    58   * APR_INCHILD        Program is currently executing in the child
    59   * </PRE>
    60   * @{
    61   */
    62  /** @see APR_STATUS_IS_ENOKEY */
    63  #define APR_ENOKEY           (APR_UTIL_START_STATUS + 1)
    64  /** @see APR_STATUS_IS_ENOIV */
    65  #define APR_ENOIV            (APR_UTIL_START_STATUS + 2)
    66  /** @see APR_STATUS_IS_EKEYTYPE */
    67  #define APR_EKEYTYPE         (APR_UTIL_START_STATUS + 3)
    68  /** @see APR_STATUS_IS_ENOSPACE */
    69  #define APR_ENOSPACE         (APR_UTIL_START_STATUS + 4)
    70  /** @see APR_STATUS_IS_ECRYPT */
    71  #define APR_ECRYPT           (APR_UTIL_START_STATUS + 5)
    72  /** @see APR_STATUS_IS_EPADDING */
    73  #define APR_EPADDING         (APR_UTIL_START_STATUS + 6)
    74  /** @see APR_STATUS_IS_EKEYLENGTH */
    75  #define APR_EKEYLENGTH       (APR_UTIL_START_STATUS + 7)
    76  /** @see APR_STATUS_IS_ENOCIPHER */
    77  #define APR_ENOCIPHER        (APR_UTIL_START_STATUS + 8)
    78  /** @see APR_STATUS_IS_ENODIGEST */
    79  #define APR_ENODIGEST        (APR_UTIL_START_STATUS + 9)
    80  /** @see APR_STATUS_IS_ENOENGINE */
    81  #define APR_ENOENGINE        (APR_UTIL_START_STATUS + 10)
    82  /** @see APR_STATUS_IS_EINITENGINE */
    83  #define APR_EINITENGINE      (APR_UTIL_START_STATUS + 11)
    84  /** @see APR_STATUS_IS_EREINIT */
    85  #define APR_EREINIT          (APR_UTIL_START_STATUS + 12)
    86  /** @} */
    87  
    88  /**
    89   * @defgroup APU_STATUS_IS Status Value Tests
    90   * @warning For any particular error condition, more than one of these tests
    91   *      may match. This is because platform-specific error codes may not
    92   *      always match the semantics of the POSIX codes these tests (and the
    93   *      corresponding APR error codes) are named after. A notable example
    94   *      are the APR_STATUS_IS_ENOENT and APR_STATUS_IS_ENOTDIR tests on
    95   *      Win32 platforms. The programmer should always be aware of this and
    96   *      adjust the order of the tests accordingly.
    97   * @{
    98   */
    99  
   100  /** @} */
   101  
   102  /**
   103   * @addtogroup APR_Util_Error
   104   * @{
   105   */
   106  /**
   107   * The key was empty or not provided
   108   */
   109  #define APR_STATUS_IS_ENOKEY(s)        ((s) == APR_ENOKEY)
   110  /**
   111   * The initialisation vector was not provided
   112   */
   113  #define APR_STATUS_IS_ENOIV(s)        ((s) == APR_ENOIV)
   114  /**
   115   * The key type was not recognised
   116   */
   117  #define APR_STATUS_IS_EKEYTYPE(s)        ((s) == APR_EKEYTYPE)
   118  /**
   119   * The buffer provided was not big enough
   120   */
   121  #define APR_STATUS_IS_ENOSPACE(s)        ((s) == APR_ENOSPACE)
   122  /**
   123   * An error occurred while encrypting or decrypting
   124   */
   125  #define APR_STATUS_IS_ECRYPT(s)        ((s) == APR_ECRYPT)
   126  /**
   127   * An error occurred while padding
   128   */
   129  #define APR_STATUS_IS_EPADDING(s)        ((s) == APR_EPADDING)
   130  /**
   131   * An error occurred with the key length
   132   */
   133  #define APR_STATUS_IS_EKEYLENGTH(s)        ((s) == APR_EKEYLENGTH)
   134  /**
   135   * The cipher provided was not recognised
   136   */
   137  #define APR_STATUS_IS_ENOCIPHER(s)        ((s) == APR_ENOCIPHER)
   138  /**
   139   * The digest provided was not recognised
   140   */
   141  #define APR_STATUS_IS_ENODIGEST(s)        ((s) == APR_ENODIGEST)
   142  /**
   143   * The engine provided was not recognised
   144   */
   145  #define APR_STATUS_IS_ENOENGINE(s)        ((s) == APR_ENOENGINE)
   146  /**
   147   * The engine could not be initialised
   148   */
   149  #define APR_STATUS_IS_EINITENGINE(s)        ((s) == APR_EINITENGINE)
   150  /**
   151   * Crypto has already been initialised
   152   */
   153  #define APR_STATUS_IS_EREINIT(s)        ((s) == APR_EREINIT)
   154  /** @} */
   155  
   156  /**
   157   * This structure allows the underlying API error codes to be returned
   158   * along with plain text error messages that explain to us mere mortals
   159   * what really happened.
   160   */
   161  typedef struct apu_err_t {
   162      const char *reason;
   163      const char *msg;
   164      int rc;
   165  } apu_err_t;
   166  
   167  /** @} */
   168  
   169  #ifdef __cplusplus
   170  }
   171  #endif
   172  
   173  #endif  /* ! APU_ERRNO_H */