/* Microsoft Reference Implementation for TPM 2.0 | |
* | |
* The copyright in this software is being made available under the BSD License, | |
* included below. This software may be subject to other third party and | |
* contributor rights, including patent rights, and no such rights are granted | |
* under this license. | |
* | |
* Copyright (c) Microsoft Corporation | |
* | |
* All rights reserved. | |
* | |
* BSD License | |
* | |
* Redistribution and use in source and binary forms, with or without modification, | |
* are permitted provided that the following conditions are met: | |
* | |
* Redistributions of source code must retain the above copyright notice, this list | |
* of conditions and the following disclaimer. | |
* | |
* Redistributions in binary form must reproduce the above copyright notice, this | |
* list of conditions and the following disclaimer in the documentation and/or other | |
* materials provided with the distribution. | |
* | |
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ""AS IS"" | |
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | |
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE | |
* DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR | |
* ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES | |
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; | |
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON | |
* ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | |
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS | |
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | |
*/ | |
/*(Auto) | |
Automatically Generated by TpmPrototypes version 2.2 February 10, 2016 | |
Date: Sep 9, 2016 Time: 01:03:57 PM | |
*/ | |
#ifndef _RESPONSECODEPROCESSING_FP_H_ | |
#define _RESPONSECODEPROCESSING_FP_H_ | |
//** RcSafeAddToResult() | |
// Adds a modifier to a response code as long as the response code allows a modifier | |
// and no modifier has already been added. | |
#ifdef INLINE_FUNCTIONS | |
#define INLINE_RcSafeAddToResult | |
#endif | |
#ifndef INLINE_RcSafeAddToResult | |
TPM_RC | |
RcSafeAddToResult( | |
TPM_RC responseCode, | |
TPM_RC modifier | |
); | |
#else | |
INLINE TPM_RC | |
RcSafeAddToResult( | |
TPM_RC responseCode, | |
TPM_RC modifier | |
) | |
{ | |
if((responseCode & RC_FMT1) && !(responseCode & 0xf40)) | |
return responseCode + modifier; | |
else | |
return responseCode; | |
} | |
#endif // INLINE_RcSafeAddToResult | |
#endif // _RESPONSECODEPROCESSING_FP_H_ |