x509_cert/ext/pkix/
access.rs1use super::name::GeneralName;
2
3use alloc::vec::Vec;
4
5use const_oid::{
6 db::rfc5280::{ID_PE_AUTHORITY_INFO_ACCESS, ID_PE_SUBJECT_INFO_ACCESS},
7 AssociatedOid,
8};
9use der::{asn1::ObjectIdentifier, Sequence, ValueOrd};
10
11#[derive(Clone, Debug, Default, PartialEq, Eq)]
19pub struct AuthorityInfoAccessSyntax(pub Vec<AccessDescription>);
20
21impl AssociatedOid for AuthorityInfoAccessSyntax {
22 const OID: ObjectIdentifier = ID_PE_AUTHORITY_INFO_ACCESS;
23}
24
25impl_newtype!(AuthorityInfoAccessSyntax, Vec<AccessDescription>);
26impl_extension!(AuthorityInfoAccessSyntax, critical = false);
27
28#[derive(Clone, Debug, Default, PartialEq, Eq)]
36pub struct SubjectInfoAccessSyntax(pub Vec<AccessDescription>);
37
38impl AssociatedOid for SubjectInfoAccessSyntax {
39 const OID: ObjectIdentifier = ID_PE_SUBJECT_INFO_ACCESS;
40}
41
42impl_newtype!(SubjectInfoAccessSyntax, Vec<AccessDescription>);
43impl_extension!(SubjectInfoAccessSyntax, critical = false);
44
45#[derive(Clone, Debug, Eq, PartialEq, Sequence, ValueOrd)]
56#[allow(missing_docs)]
57pub struct AccessDescription {
58 pub access_method: ObjectIdentifier,
59 pub access_location: GeneralName,
60}