tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

pkix_pl_nameconstraints.h (1940B)


      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_pl_nameconstraints.h
      6 *
      7 * Name Constraints Object Definitions
      8 *
      9 */
     10 
     11 #ifndef _PKIX_PL_NAMECONSTRAINTS_H
     12 #define _PKIX_PL_NAMECONSTRAINTS_H
     13 
     14 #include "pkix_pl_common.h"
     15 
     16 #ifdef __cplusplus
     17 extern "C" {
     18 #endif
     19 
     20 struct PKIX_PL_CertNameConstraintsStruct {
     21        PLArenaPool *arena;
     22        CERTNameConstraints **nssNameConstraintsList;
     23        PKIX_UInt32 numNssNameConstraints;
     24        PKIX_List *permittedList; /* list of PKIX_PL_GeneralName */
     25        PKIX_List *excludedList; /* list of PKIX_PL_GeneralName */
     26 };
     27 
     28 /* see source file for function documentation */
     29 
     30 PKIX_Error *pkix_pl_CertNameConstraints_RegisterSelf(void *plContext);
     31 
     32 PKIX_Error *pkix_pl_CertNameConstraints_Create(
     33        CERTCertificate *nssCert,
     34        PKIX_PL_CertNameConstraints **pNameConstraints,
     35        void *plContext);
     36 
     37 PKIX_Error *
     38 pkix_pl_CertNameConstraints_CreateWithNames(
     39        PKIX_List *names, /* List of PKIX_PL_GeneralName */
     40        PKIX_PL_CertNameConstraints **pNameConstraints,
     41        void *plContext);
     42 
     43 PKIX_Error *
     44 pkix_pl_CertNameConstraints_CheckNameSpaceNssNames(
     45        CERTGeneralName *nssSubjectNames,
     46        PKIX_PL_CertNameConstraints *nameConstraints,
     47        PKIX_Boolean *pCheckPass,
     48        void *plContext);
     49 
     50 PKIX_Error *
     51 pkix_pl_CertNameConstraints_CheckNameSpacePkixNames(
     52        PKIX_List *nameList,
     53        PKIX_PL_CertNameConstraints *nameConstraints,
     54        PKIX_Boolean *pCheckPass,
     55        void *plContext);
     56 
     57 
     58 PKIX_Error *pkix_pl_CertNameConstraints_Merge(
     59        PKIX_PL_CertNameConstraints *firstNC,
     60        PKIX_PL_CertNameConstraints *secondNC,
     61        PKIX_PL_CertNameConstraints **pMergedNC,
     62        void *plContext);
     63 
     64 #ifdef __cplusplus
     65 }
     66 #endif
     67 
     68 #endif /* _PKIX_PL_NAMECONSTRAINTS_H */