security/nss/lib/libpkix/pkix/checker/pkix_policychecker.h

Wed, 31 Dec 2014 06:09:35 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Wed, 31 Dec 2014 06:09:35 +0100
changeset 0
6474c204b198
permissions
-rwxr-xr-x

Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.

     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_policychecker.h
     6  *
     7  * Header file for policy checker.
     8  *
     9  */
    11 #ifndef _PKIX_POLICYCHECKER_H
    12 #define _PKIX_POLICYCHECKER_H
    14 #include "pkix_tools.h"
    16 #ifdef __cplusplus
    17 extern "C" {
    18 #endif
    20 typedef struct PKIX_PolicyCheckerStateStruct PKIX_PolicyCheckerState;
    22 struct PKIX_PolicyCheckerStateStruct{
    23         PKIX_PL_OID *certPoliciesExtension;             /* const */
    24         PKIX_PL_OID *policyMappingsExtension;           /* const */
    25         PKIX_PL_OID *policyConstraintsExtension;        /* const */
    26         PKIX_PL_OID *inhibitAnyPolicyExtension;         /* const */
    27         PKIX_PL_OID *anyPolicyOID;                      /* const */
    28         PKIX_Boolean initialIsAnyPolicy;                /* const */
    29         PKIX_PolicyNode *validPolicyTree;
    30         PKIX_List *userInitialPolicySet;                /* immutable */
    31         PKIX_List *mappedUserInitialPolicySet;
    32         PKIX_Boolean policyQualifiersRejected;
    33         PKIX_Boolean initialPolicyMappingInhibit;
    34         PKIX_Boolean initialExplicitPolicy;
    35         PKIX_Boolean initialAnyPolicyInhibit;
    36         PKIX_UInt32 explicitPolicy;
    37         PKIX_UInt32 inhibitAnyPolicy;
    38         PKIX_UInt32 policyMapping;
    39         PKIX_UInt32 numCerts;
    40         PKIX_UInt32 certsProcessed;
    41         PKIX_PolicyNode *anyPolicyNodeAtBottom;
    42         PKIX_PolicyNode *newAnyPolicyNode;
    43         /*
    44          * The following variables do not survive from one
    45          * certificate to the next. They are needed at each
    46          * level of recursive routines, any by placing them
    47          * in the state object we can pass fewer arguments.
    48          */
    49         PKIX_Boolean certPoliciesCritical;
    50         PKIX_List *mappedPolicyOIDs;
    51 };
    53 PKIX_Error *
    54 pkix_PolicyChecker_Initialize(
    55         PKIX_List *initialPolicies,
    56         PKIX_Boolean policyQualifiersRejected,
    57         PKIX_Boolean initialPolicyMappingInhibit,
    58         PKIX_Boolean initialExplicitPolicy,
    59         PKIX_Boolean initialAnyPolicyInhibit,
    60         PKIX_UInt32 numCerts,
    61         PKIX_CertChainChecker **pChecker,
    62         void *plContext);
    64 /* --Private-Functions-------------------------------------------- */
    66 PKIX_Error *
    67 pkix_PolicyCheckerState_RegisterSelf(void *plContext);
    69 #ifdef __cplusplus
    70 }
    71 #endif
    73 #endif /* _PKIX_POLICYCHECKER_H */

mercurial