1 /* This Source Code Form is subject to the terms of the Mozilla Public 2 * License, v. 2.0. If a copy of the MPL was not distributed with this 3 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 /* 5 * pkix_verifynode.h 6 * 7 * VerifyNode Type Definitions 8 * 9 */ 10 11 #ifndef _PKIX_VERIFYNODE_H 12 #define _PKIX_VERIFYNODE_H 13 14 #include "pkix_tools.h" 15 16 #ifdef __cplusplus 17 extern "C" { 18 #endif 19 20 /* This structure reflects the contents of a verify node... 21 */ 22 struct PKIX_VerifyNodeStruct { 23 PKIX_PL_Cert *verifyCert; 24 PKIX_List *children; /* VerifyNodes */ 25 PKIX_UInt32 depth; 26 PKIX_Error *error; 27 }; 28 29 PKIX_Error * 30 pkix_SingleVerifyNode_ToString( 31 PKIX_VerifyNode *node, 32 PKIX_PL_String **pString, 33 void *plContext); 34 35 PKIX_Error * 36 pkix_VerifyNode_Create( 37 PKIX_PL_Cert *verifyCert, 38 PKIX_UInt32 depth, 39 PKIX_Error *error, 40 PKIX_VerifyNode **pObject, 41 void *plContext); 42 43 PKIX_Error * 44 pkix_VerifyNode_AddToChain( 45 PKIX_VerifyNode *parentNode, 46 PKIX_VerifyNode *child, 47 void *plContext); 48 49 PKIX_Error * 50 pkix_VerifyNode_AddToTree( 51 PKIX_VerifyNode *parentNode, 52 PKIX_VerifyNode *child, 53 void *plContext); 54 55 PKIX_Error * 56 pkix_VerifyNode_SetError( 57 PKIX_VerifyNode *node, 58 PKIX_Error *error, 59 void *plContext); 60 61 PKIX_Error * 62 pkix_VerifyNode_RegisterSelf( 63 void *plContext); 64 65 PKIX_Error * 66 pkix_VerifyNode_FindError( 67 PKIX_VerifyNode *node, 68 PKIX_Error **error, 69 void *plContext); 70 71 #ifdef __cplusplus 72 } 73 #endif 74 75 #endif /* _PKIX_VERIFYNODE_H */ 76