pkix_pl_basicconstraints.h (1265B)
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_basicconstraints.h 6 * 7 * BasicConstraints Object Definitions 8 * 9 */ 10 11 #ifndef _PKIX_PL_BASICCONSTRAINTS_H 12 #define _PKIX_PL_BASICCONSTRAINTS_H 13 14 #include "pkix_pl_common.h" 15 16 #ifdef __cplusplus 17 extern "C" { 18 #endif 19 20 /* This structure reflects the contents of the basic constraints 21 * extension as described in Section 4.2.1.10 of RFC 3280. 22 * The cA flag indicates whether the public key in this certificate 23 * belongs to a certification authority. The pathLen constraint 24 * gives the maximum number of non-self-issued intermediate certificates 25 * that may follow this certificate in a valid certification path. 26 */ 27 struct PKIX_PL_CertBasicConstraintsStruct { 28 PKIX_Boolean isCA; 29 PKIX_Int32 pathLen; 30 }; 31 32 PKIX_Error * 33 pkix_pl_CertBasicConstraints_Create( 34 PKIX_Boolean isCA, 35 PKIX_Int32 pathLen, 36 PKIX_PL_CertBasicConstraints **object, 37 void *plContext); 38 39 PKIX_Error * 40 pkix_pl_CertBasicConstraints_RegisterSelf( 41 void *plContext); 42 43 #ifdef __cplusplus 44 } 45 #endif 46 47 #endif /* _PKIX_PL_BASICCONSTRAINTS_H */