mirror of
https://github.com/intel/linux-sgx
synced 2026-06-08 14:49:32 +00:00
75dd558bda
Security updates to Linux SDK and PSW Support for Intel SGX Protected Code Loader Signed-off-by: Li, Xun <xun.li@intel.com>
75 lines
2.9 KiB
C
75 lines
2.9 KiB
C
/*############################################################################
|
|
# Copyright 2016-2017 Intel Corporation
|
|
#
|
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
# you may not use this file except in compliance with the License.
|
|
# You may obtain a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
# See the License for the specific language governing permissions and
|
|
# limitations under the License.
|
|
############################################################################*/
|
|
#ifndef EPID_COMMON_ERRORS_H_
|
|
#define EPID_COMMON_ERRORS_H_
|
|
/*!
|
|
* \file
|
|
* \brief Error reporting.
|
|
*/
|
|
|
|
/// Error reporting interface.
|
|
/*!
|
|
\defgroup ErrorCodes errors
|
|
This module defines the return status type. It also provides tools for
|
|
interactions with status values, such as converting them to a string.
|
|
|
|
\ingroup EpidCommon
|
|
@{
|
|
*/
|
|
|
|
/// Return status for SDK functions.
|
|
/*!
|
|
Convention for status values is as follows:
|
|
- Zero indicates "success"
|
|
- Any positive number indicates "success with status"
|
|
- Any negative number indicates "failure"
|
|
*/
|
|
typedef enum {
|
|
kEpidNoErr = 0, //!< no error
|
|
kEpidSigValid = 0, //!< Signature is valid
|
|
kEpidSigInvalid = 1, //!< Signature is invalid
|
|
kEpidSigRevokedInGroupRl = 2, //!< Signature revoked in GroupRl
|
|
kEpidSigRevokedInPrivRl = 3, //!< Signature revoked in PrivRl
|
|
kEpidSigRevokedInSigRl = 4, //!< Signature revoked in SigRl
|
|
kEpidSigRevokedInVerifierRl = 5, //!< Signature revoked in VerifierRl
|
|
kEpidErr = -999, //!< unspecified error
|
|
kEpidNotImpl, //!< not implemented error
|
|
kEpidBadArgErr, //!< incorrect arg to function
|
|
kEpidNoMemErr, //!< not enough memory for the operation
|
|
kEpidMemAllocErr, //!< insufficient memory allocated for operation
|
|
kEpidMathErr, //!< internal math error
|
|
kEpidDivByZeroErr, //!< an attempt to divide by zero
|
|
kEpidUnderflowErr, //!< a value became less than minimum supported level
|
|
kEpidHashAlgorithmNotSupported, //!< unsupported hash algorithm type
|
|
kEpidRandMaxIterErr, //!< reached max iteration for random number generation
|
|
kEpidDuplicateErr, //!< argument would add duplicate entry
|
|
kEpidInconsistentBasenameSetErr, //!< set basename conflicts with arguments
|
|
kEpidMathQuadraticNonResidueError, //!< quadratic Non-Residue Error
|
|
kEpidOutOfSequenceError, //!< operation was performed out of sequence
|
|
} EpidStatus;
|
|
|
|
/// Returns string representation of error code.
|
|
/*!
|
|
\param e
|
|
The status value.
|
|
|
|
\returns The string describing the status.
|
|
*/
|
|
char const* EpidStatusToString(EpidStatus e);
|
|
|
|
/*! @} */
|
|
#endif // EPID_COMMON_ERRORS_H_
|