Function verify [src]

Prototype

pub fn verify(cb: Bundle, subject: Certificate.Parsed, now_sec: i64) VerifyError!void

Parameters

cb: Bundlesubject: Certificate.Parsednow_sec: i64

Possible Errors

CertificateExpired VerifyError
CertificateFieldHasInvalidLength VerifyError
CertificateFieldHasWrongDataType VerifyError
CertificateIssuerMismatch VerifyError
CertificateIssuerNotFound
CertificateNotYetValid VerifyError
CertificatePublicKeyInvalid VerifyError
CertificateSignatureAlgorithmMismatch VerifyError
CertificateSignatureAlgorithmUnsupported VerifyError
CertificateSignatureInvalid VerifyError
CertificateSignatureInvalidLength VerifyError
CertificateSignatureNamedCurveUnsupported VerifyError
CertificateSignatureUnsupportedBitCount VerifyError

Source

pub fn verify(cb: Bundle, subject: Certificate.Parsed, now_sec: i64) VerifyError!void { const bytes_index = cb.find(subject.issuer()) orelse return error.CertificateIssuerNotFound; const issuer_cert: Certificate = .{ .buffer = cb.bytes.items, .index = bytes_index, }; // Every certificate in the bundle is pre-parsed before adding it, ensuring // that parsing will succeed here. const issuer = issuer_cert.parse() catch unreachable; try subject.verify(issuer, now_sec); }