diff options
author | Joseph Birr-Pixton <jpixton@gmail.com> | 2016-10-02 12:29:47 +0100 |
---|---|---|
committer | Joseph Birr-Pixton <jpixton@gmail.com> | 2016-10-02 12:29:47 +0100 |
commit | ce395d6a9f163ff237702138f15d81432a6de3c7 (patch) | |
tree | 8c063f278ce7a02c984b8bdd297e7eb35714cf6d | |
parent | f64db13b796fe41aa4fd9adcd43417a95c4c13ad (diff) |
ClientConfig needs to be Send+Sync
-rw-r--r-- | src/client.rs | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/src/client.rs b/src/client.rs index 201c9bfd..11c352c2 100644 --- a/src/client.rs +++ b/src/client.rs @@ -97,7 +97,7 @@ pub trait ResolvesClientCert { fn resolve(&self, acceptable_issuers: &DistinguishedNames, sigalgs: &SupportedSignatureAlgorithms) - -> Option<(CertificatePayload, Arc<Box<sign::Signer>>)>; + -> Option<(CertificatePayload, Arc<Box<sign::Signer + Send + Sync>>)>; /// Return true if any certificates at all are available. fn has_certs(&self) -> bool; @@ -109,7 +109,7 @@ impl ResolvesClientCert for FailResolveClientCert { fn resolve(&self, _acceptable_issuers: &DistinguishedNames, _sigalgs: &SupportedSignatureAlgorithms) - -> Option<(CertificatePayload, Arc<Box<sign::Signer>>)> + -> Option<(CertificatePayload, Arc<Box<sign::Signer + Send + Sync>>)> { None } @@ -119,7 +119,7 @@ impl ResolvesClientCert for FailResolveClientCert { struct AlwaysResolvesClientCert { chain: CertificatePayload, - key: Arc<Box<sign::Signer>> + key: Arc<Box<sign::Signer + Send + Sync>> } impl AlwaysResolvesClientCert { @@ -139,7 +139,7 @@ impl ResolvesClientCert for AlwaysResolvesClientCert { fn resolve(&self, _acceptable_issuers: &DistinguishedNames, _sigalgs: &SupportedSignatureAlgorithms) - -> Option<(CertificatePayload, Arc<Box<sign::Signer>>)> + -> Option<(CertificatePayload, Arc<Box<sign::Signer + Send + Sync>>)> { Some((self.chain.clone(), self.key.clone())) } @@ -170,7 +170,7 @@ pub struct ClientConfig { pub mtu: Option<usize>, /// How to decide what client auth certificate/keys to use. - pub client_auth_cert_resolver: Box<ResolvesClientCert>, + pub client_auth_cert_resolver: Box<ResolvesClientCert + Send + Sync>, /// Whether to support RFC5077 tickets. You must provide a working /// `session_persistence` member for this to have any meaningful @@ -257,7 +257,7 @@ pub struct ClientHandshakeData { pub doing_client_auth: bool, pub client_auth_sigalg: Option<SignatureAndHashAlgorithm>, pub client_auth_cert: Option<CertificatePayload>, - pub client_auth_key: Option<Arc<Box<sign::Signer>>> + pub client_auth_key: Option<Arc<Box<sign::Signer + Send + Sync>>> } impl ClientHandshakeData { |