8 #ifndef _CERTATTR_DEFINED
10 #define _CERTATTR_DEFINED
129 #define FL_VALID_CERT 0x0001
130 #define FL_VALID_ATTRCERT 0x0002
131 #define FL_VALID_CRL 0x0004
132 #define FL_VALID_CERTREQ 0x0008
133 #define FL_VALID_REVREQ 0x0010
134 #define FL_VALID_OCSPREQ 0x0010
135 #define FL_VALID_OCSPRESP 0x0010
137 #define FL_LEVEL_OBLIVIOUS 0x0000
138 #define FL_LEVEL_REDUCED 0x0100
139 #define FL_LEVEL_STANDARD 0x0200
140 #define FL_LEVEL_PKIX_PARTIAL 0x0300
141 #define FL_LEVEL_PKIX_FULL 0x0400
143 #define FL_ATTR_NOCOPY 0x1000
144 #define FL_ATTR_CRITICAL 0x2000
145 #define FL_ATTR_ATTRSTART 0x4000
146 #define FL_ATTR_ATTREND 0x8000
148 #define FL_VALID_MASK 0x1F
149 #define FL_LEVEL_SHIFT 8
150 #define FL_LEVEL_MASK 7
154 #define FL_SEQEND 0x0001
155 #define FL_SEQEND_2 0x0002
156 #define FL_SEQEND_3 0x0003
157 #define FL_SEQEND_4 0x0004
158 #define FL_SEQEND_5 0x0005
159 #define FL_SEQEND_6 0x0006
160 #define FL_SEQEND_7 0x0007
162 #define FL_SEQEND_MASK 7
164 #define FL_OPTIONAL 0x0010
165 #define FL_DEFAULT 0x0020
166 #define FL_EXPLICIT 0x0040
167 #define FL_IDENTIFIER 0x0080
168 #define FL_SETOF 0x0100
169 #define FL_EMPTYOK 0x0200
170 #define FL_NONENCODING 0x0400
171 #define FL_MULTIVALUED 0x0800
178 #define decodeNestingLevel( value ) ( ( value ) & FL_SEQEND_MASK )
185 #define decodeComplianceLevel( value ) \
186 ( ( ( value ) >> FL_LEVEL_SHIFT ) & FL_LEVEL_MASK )
191 #define isAttributeStart( attributeInfoPtr ) \
192 ( ( attributeInfoPtr )->typeInfoFlags & FL_ATTR_ATTRSTART )
211 #define FIELDTYPE_IDENTIFIER ( -2 )
227 #define FIELDTYPE_BLOB_ANY ( -3 )
228 #define FIELDTYPE_BLOB_BITSTRING ( -4 )
229 #define FIELDTYPE_BLOB_SEQUENCE ( -5 )
238 #define FIELDTYPE_CHOICE ( -6 )
245 #define FIELDTYPE_DN ( -7 )
254 #define FIELDTYPE_SUBTYPED ( -8 )
268 #define FIELDTYPE_TEXTSTRING ( -9 )
282 #define FIELDID_FOLLOWS ( -10 )
289 #define isBlobField( field ) \
290 ( ( field ) <= FIELDTYPE_BLOB_ANY && \
291 ( field ) >= FIELDTYPE_BLOB_SEQUENCE )
342 #define DESCRIPTION( text ) text,
344 #define DESCRIPTION( text )
372 #define ATTR_FLAG_NONE 0x0000
373 #define ATTR_FLAG_CRITICAL 0x0001
374 #define ATTR_FLAG_LOCKED 0x0002
375 #define ATTR_FLAG_BLOB 0x0004
376 #define ATTR_FLAG_BLOB_PAYLOAD 0x0008
377 #define ATTR_FLAG_MULTIVALUED 0x0010
378 #define ATTR_FLAG_DEFAULTVALUE 0x0020
379 #define ATTR_FLAG_IGNORED 0x0040
380 #define ATTR_FLAG_MAX 0x007F
386 #define ATTR_FLAGS_COMPARE_MASK ( ATTR_FLAG_CRITICAL )