pub struct SecTrust(/* private fields */);
Expand description
A type representing a trust evaluation for a certificate.
Implementations§
Source§impl SecTrust
impl SecTrust
Sourcepub fn create_with_certificates(
certs: &[SecCertificate],
policies: &[SecPolicy],
) -> Result<Self>
pub fn create_with_certificates( certs: &[SecCertificate], policies: &[SecPolicy], ) -> Result<Self>
Creates a SecTrustRef
that is configured with a certificate chain, for validating
that chain against a collection of policies.
Sourcepub fn set_trust_verify_date(&mut self, date: &CFDate) -> Result<()>
pub fn set_trust_verify_date(&mut self, date: &CFDate) -> Result<()>
Sets the date and time against which the certificates in this trust object are verified.
Sourcepub fn set_anchor_certificates(
&mut self,
certs: &[SecCertificate],
) -> Result<()>
pub fn set_anchor_certificates( &mut self, certs: &[SecCertificate], ) -> Result<()>
Sets additional anchor certificates used to validate trust.
Sourcepub fn copy_anchor_certificates() -> Result<Vec<SecCertificate>>
pub fn copy_anchor_certificates() -> Result<Vec<SecCertificate>>
Retrieves the anchor (root) certificates stored by macOS
Sourcepub fn set_trust_anchor_certificates_only(&mut self, only: bool) -> Result<()>
pub fn set_trust_anchor_certificates_only(&mut self, only: bool) -> Result<()>
If set to true
, only the certificates specified by
set_anchor_certificates
will be trusted, but not globally trusted
certificates.
Sourcepub fn set_policy(&mut self, policy: &SecPolicy) -> Result<()>
pub fn set_policy(&mut self, policy: &SecPolicy) -> Result<()>
Sets the policy used to evaluate trust.
Sourcepub fn set_options(&mut self, options: TrustOptions) -> Result<()>
pub fn set_options(&mut self, options: TrustOptions) -> Result<()>
Sets option flags for customizing evaluation of a trust object.
Sourcepub fn get_network_fetch_allowed(&mut self) -> Result<bool>
pub fn get_network_fetch_allowed(&mut self) -> Result<bool>
Indicates whether this trust object is permitted to fetch missing intermediate certificates from the network.
Sourcepub fn set_network_fetch_allowed(&mut self, allowed: bool) -> Result<()>
pub fn set_network_fetch_allowed(&mut self, allowed: bool) -> Result<()>
Specifies whether this trust object is permitted to fetch missing intermediate certificates from the network.
Sourcepub fn set_trust_ocsp_response<I: Iterator<Item = impl AsRef<[u8]>>>(
&mut self,
ocsp_response: I,
) -> Result<()>
pub fn set_trust_ocsp_response<I: Iterator<Item = impl AsRef<[u8]>>>( &mut self, ocsp_response: I, ) -> Result<()>
Attaches Online Certificate Status Protocol (OSCP) response data to this trust object.
Sourcepub fn set_signed_certificate_timestamps<I: Iterator<Item = impl AsRef<[u8]>>>(
&mut self,
scts: I,
) -> Result<()>
pub fn set_signed_certificate_timestamps<I: Iterator<Item = impl AsRef<[u8]>>>( &mut self, scts: I, ) -> Result<()>
Attaches signed certificate timestamp data to this trust object.
Sourcepub fn copy_public_key(&mut self) -> Result<SecKey>
pub fn copy_public_key(&mut self) -> Result<SecKey>
Returns the public key for a leaf certificate after it has been evaluated.
Sourcepub fn evaluate(&self) -> Result<TrustResult>
👎Deprecated: use evaluate_with_error
pub fn evaluate(&self) -> Result<TrustResult>
Evaluates trust.
Sourcepub fn evaluate_with_error(&self) -> Result<(), CFError>
pub fn evaluate_with_error(&self) -> Result<(), CFError>
Evaluates trust. Requires macOS 10.14 or iOS, otherwise it just calls evaluate()
Sourcepub fn certificate_count(&self) -> CFIndex
pub fn certificate_count(&self) -> CFIndex
Returns the number of certificates in an evaluated certificate chain.
Note: evaluate must first be called on the SecTrust
.
Sourcepub fn certificate_at_index(&self, ix: CFIndex) -> Option<SecCertificate>
👎Deprecated: deprecated by Apple
pub fn certificate_at_index(&self, ix: CFIndex) -> Option<SecCertificate>
Returns a specific certificate from the certificate chain used to evaluate trust.
Note: evaluate must first be called on the SecTrust
.
Trait Implementations§
Source§impl TCFType for SecTrust
impl TCFType for SecTrust
Source§type Ref = *mut __SecTrust
type Ref = *mut __SecTrust
Source§fn as_concrete_TypeRef(&self) -> SecTrustRef
fn as_concrete_TypeRef(&self) -> SecTrustRef
TypeRef
.Source§unsafe fn wrap_under_get_rule(reference: SecTrustRef) -> Self
unsafe fn wrap_under_get_rule(reference: SecTrustRef) -> Self
CFTypeRef
subclass. Use this
when following Core Foundation’s “Get Rule”. The reference count is bumped.Source§fn as_CFTypeRef(&self) -> CFTypeRef
fn as_CFTypeRef(&self) -> CFTypeRef
CFTypeRef
. The reference count is not adjusted.Source§unsafe fn wrap_under_create_rule(reference: SecTrustRef) -> Self
unsafe fn wrap_under_create_rule(reference: SecTrustRef) -> Self
CFTypeRef
subclass. Use this
when following Core Foundation’s “Create Rule”. The reference count is not bumped.Source§fn as_CFType(&self) -> CFType
fn as_CFType(&self) -> CFType
CFType
. The reference count is incremented by one.Source§fn into_CFType(self) -> CFTypewhere
Self: Sized,
fn into_CFType(self) -> CFTypewhere
Self: Sized,
CFType
. Consumes self and avoids changing the reference
count.Source§fn retain_count(&self) -> isize
fn retain_count(&self) -> isize
Source§fn instance_of<OtherCFType>(&self) -> boolwhere
OtherCFType: TCFType,
fn instance_of<OtherCFType>(&self) -> boolwhere
OtherCFType: TCFType,
true
if this value is an instance of another type.impl ConcreteCFType for SecTrust
impl Eq for SecTrust
impl Send for SecTrust
impl Sync for SecTrust
Auto Trait Implementations§
impl Freeze for SecTrust
impl RefUnwindSafe for SecTrust
impl Unpin for SecTrust
impl UnwindSafe for SecTrust
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)