Skip to content

Commit 6454b43

Browse files
committed
Updated to latest rustls
1 parent a42be16 commit 6454b43

File tree

2 files changed

+11
-19
lines changed

2 files changed

+11
-19
lines changed

examples/client.rs

Lines changed: 6 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@ use std::{
77

88
use clap::Parser;
99
use rustls::{
10-
CertificateType, ClientConfig, ClientConnection, RootCertStore, SignatureScheme, Stream,
11-
client::ResolvesClientCert,
10+
CertificateType, ClientConfig, ClientConnection, RootCertStore, Stream,
11+
client::{CredentialRequest, ResolvesClientCert},
1212
sign::{CertifiedKey, CertifiedSigner},
1313
};
1414
use rustls_pki_types::{CertificateDer, ServerName};
@@ -46,18 +46,14 @@ fn get_chain(
4646
}
4747

4848
impl ResolvesClientCert for ClientCertResolver {
49-
fn resolve(
50-
&self,
51-
_negotiated_type: CertificateType,
52-
_root_hint_subjects: &[&[u8]],
53-
sigschemes: &[SignatureScheme],
54-
) -> Option<CertifiedSigner> {
55-
println!("Server sig schemes: {sigschemes:#?}");
49+
fn resolve(&self, server_hello: &CredentialRequest) -> Option<CertifiedSigner> {
50+
println!("Server sig schemes: {:?}", server_hello.signature_schemes());
5651
let (chain, signing_key) = get_chain(&self.store, &self.cert_name).ok()?;
5752
if let Some(ref pin) = self.pin {
5853
signing_key.key().set_pin(pin).ok()?;
5954
}
60-
CertifiedKey::new_unchecked(chain.into(), Box::new(signing_key)).signer(sigschemes)
55+
CertifiedKey::new_unchecked(chain.into(), Box::new(signing_key))
56+
.signer(server_hello.signature_schemes())
6157
}
6258

6359
fn supported_certificate_types(&self) -> &'static [CertificateType] {

tests/test_client_server.rs

Lines changed: 5 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,8 @@ mod client {
1111
};
1212

1313
use rustls::{
14-
CertificateType, ClientConfig, ClientConnection, RootCertStore, SignatureScheme, Stream,
15-
client::ResolvesClientCert,
14+
CertificateType, ClientConfig, ClientConnection, RootCertStore, Stream,
15+
client::{CredentialRequest, ResolvesClientCert},
1616
sign::{CertifiedKey, CertifiedSigner},
1717
};
1818
use rustls_pki_types::CertificateDer;
@@ -41,14 +41,10 @@ mod client {
4141
}
4242

4343
impl ResolvesClientCert for ClientCertResolver {
44-
fn resolve(
45-
&self,
46-
_negotiated_type: CertificateType,
47-
_root_hint_subjects: &[&[u8]],
48-
sigschemes: &[SignatureScheme],
49-
) -> Option<CertifiedSigner> {
44+
fn resolve(&self, server_hello: &CredentialRequest) -> Option<CertifiedSigner> {
5045
let (chain, signing_key) = get_chain(&self.0, &self.1).ok()?;
51-
CertifiedKey::new_unchecked(chain.into(), Box::new(signing_key)).signer(sigschemes)
46+
CertifiedKey::new_unchecked(chain.into(), Box::new(signing_key))
47+
.signer(server_hello.signature_schemes())
5248
}
5349

5450
fn supported_certificate_types(&self) -> &'static [CertificateType] {

0 commit comments

Comments
 (0)