@@ -2,8 +2,8 @@ extern crate schannel;
2
2
3
3
use self :: schannel:: cert_context:: { CertContext , HashAlgorithm , KeySpec } ;
4
4
use self :: schannel:: cert_store:: { CertAdd , CertStore , Memory , PfxImportOptions } ;
5
- use self :: schannel:: schannel_cred:: { Direction , Protocol , SchannelCred } ;
6
5
use self :: schannel:: crypt_prov:: { AcquireOptions , ProviderType } ;
6
+ use self :: schannel:: schannel_cred:: { Direction , Protocol , SchannelCred } ;
7
7
use self :: schannel:: tls_stream;
8
8
use std:: error;
9
9
use std:: fmt;
@@ -119,8 +119,7 @@ impl Identity {
119
119
Ok ( container) => container,
120
120
Err ( _) => options. new_keyset ( true ) . acquire ( type_) ?,
121
121
} ;
122
- container. import ( )
123
- . import_pkcs8_pem ( & key) ?;
122
+ container. import ( ) . import_pkcs8_pem ( & key) ?;
124
123
125
124
cert. set_key_prov_info ( )
126
125
. container ( "schannel" )
@@ -134,7 +133,7 @@ impl Identity {
134
133
let certificate = Certificate :: from_pem ( int_cert) ?;
135
134
context = store. add_cert ( & certificate. 0 , CertAdd :: Always ) ?;
136
135
}
137
- Ok ( Identity { cert : context} )
136
+ Ok ( Identity { cert : context } )
138
137
}
139
138
}
140
139
@@ -428,7 +427,6 @@ impl<S: io::Read + io::Write> io::Write for TlsStream<S> {
428
427
}
429
428
}
430
429
431
-
432
430
mod pem {
433
431
/// Split data by PEM guard lines
434
432
pub struct PemBlock < ' a > {
@@ -466,45 +464,87 @@ mod pem {
466
464
#[ test]
467
465
fn test_split ( ) {
468
466
// Split three certs, CRLF line terminators.
469
- assert_eq ! ( PemBlock :: new( b"-----BEGIN FIRST-----\r \n -----END FIRST-----\r \n \
467
+ assert_eq ! (
468
+ PemBlock :: new(
469
+ b"-----BEGIN FIRST-----\r \n -----END FIRST-----\r \n \
470
470
-----BEGIN SECOND-----\r \n -----END SECOND\r \n \
471
- -----BEGIN THIRD-----\r \n -----END THIRD\r \n ") . collect:: <Vec <& [ u8 ] >>( ) ,
472
- vec![ b"-----BEGIN FIRST-----\r \n -----END FIRST-----\r \n " as & [ u8 ] ,
473
- b"-----BEGIN SECOND-----\r \n -----END SECOND\r \n " ,
474
- b"-----BEGIN THIRD-----\r \n -----END THIRD\r \n " ] ) ;
471
+ -----BEGIN THIRD-----\r \n -----END THIRD\r \n "
472
+ )
473
+ . collect:: <Vec <& [ u8 ] >>( ) ,
474
+ vec![
475
+ b"-----BEGIN FIRST-----\r \n -----END FIRST-----\r \n " as & [ u8 ] ,
476
+ b"-----BEGIN SECOND-----\r \n -----END SECOND\r \n " ,
477
+ b"-----BEGIN THIRD-----\r \n -----END THIRD\r \n "
478
+ ]
479
+ ) ;
475
480
// Split three certs, CRLF line terminators except at EOF.
476
- assert_eq ! ( PemBlock :: new( b"-----BEGIN FIRST-----\r \n -----END FIRST-----\r \n \
481
+ assert_eq ! (
482
+ PemBlock :: new(
483
+ b"-----BEGIN FIRST-----\r \n -----END FIRST-----\r \n \
477
484
-----BEGIN SECOND-----\r \n -----END SECOND-----\r \n \
478
- -----BEGIN THIRD-----\r \n -----END THIRD-----") . collect:: <Vec <& [ u8 ] >>( ) ,
479
- vec![ b"-----BEGIN FIRST-----\r \n -----END FIRST-----\r \n " as & [ u8 ] ,
480
- b"-----BEGIN SECOND-----\r \n -----END SECOND-----\r \n " ,
481
- b"-----BEGIN THIRD-----\r \n -----END THIRD-----" ] ) ;
485
+ -----BEGIN THIRD-----\r \n -----END THIRD-----"
486
+ )
487
+ . collect:: <Vec <& [ u8 ] >>( ) ,
488
+ vec![
489
+ b"-----BEGIN FIRST-----\r \n -----END FIRST-----\r \n " as & [ u8 ] ,
490
+ b"-----BEGIN SECOND-----\r \n -----END SECOND-----\r \n " ,
491
+ b"-----BEGIN THIRD-----\r \n -----END THIRD-----"
492
+ ]
493
+ ) ;
482
494
// Split two certs, LF line terminators.
483
- assert_eq ! ( PemBlock :: new( b"-----BEGIN FIRST-----\n -----END FIRST-----\n \
484
- -----BEGIN SECOND-----\n -----END SECOND\n ") . collect:: <Vec <& [ u8 ] >>( ) ,
485
- vec![ b"-----BEGIN FIRST-----\n -----END FIRST-----\n " as & [ u8 ] ,
486
- b"-----BEGIN SECOND-----\n -----END SECOND\n " ] ) ;
495
+ assert_eq ! (
496
+ PemBlock :: new(
497
+ b"-----BEGIN FIRST-----\n -----END FIRST-----\n \
498
+ -----BEGIN SECOND-----\n -----END SECOND\n "
499
+ )
500
+ . collect:: <Vec <& [ u8 ] >>( ) ,
501
+ vec![
502
+ b"-----BEGIN FIRST-----\n -----END FIRST-----\n " as & [ u8 ] ,
503
+ b"-----BEGIN SECOND-----\n -----END SECOND\n "
504
+ ]
505
+ ) ;
487
506
// Split two certs, CR line terminators.
488
- assert_eq ! ( PemBlock :: new( b"-----BEGIN FIRST-----\r -----END FIRST-----\r \
489
- -----BEGIN SECOND-----\r -----END SECOND\r ") . collect:: <Vec <& [ u8 ] >>( ) ,
490
- vec![ b"-----BEGIN FIRST-----\r -----END FIRST-----\r " as & [ u8 ] ,
491
- b"-----BEGIN SECOND-----\r -----END SECOND\r " ] ) ;
507
+ assert_eq ! (
508
+ PemBlock :: new(
509
+ b"-----BEGIN FIRST-----\r -----END FIRST-----\r \
510
+ -----BEGIN SECOND-----\r -----END SECOND\r "
511
+ )
512
+ . collect:: <Vec <& [ u8 ] >>( ) ,
513
+ vec![
514
+ b"-----BEGIN FIRST-----\r -----END FIRST-----\r " as & [ u8 ] ,
515
+ b"-----BEGIN SECOND-----\r -----END SECOND\r "
516
+ ]
517
+ ) ;
492
518
// Split two certs, LF line terminators except at EOF.
493
- assert_eq ! ( PemBlock :: new( b"-----BEGIN FIRST-----\n -----END FIRST-----\n \
494
- -----BEGIN SECOND-----\n -----END SECOND") . collect:: <Vec <& [ u8 ] >>( ) ,
495
- vec![ b"-----BEGIN FIRST-----\n -----END FIRST-----\n " as & [ u8 ] ,
496
- b"-----BEGIN SECOND-----\n -----END SECOND" ] ) ;
519
+ assert_eq ! (
520
+ PemBlock :: new(
521
+ b"-----BEGIN FIRST-----\n -----END FIRST-----\n \
522
+ -----BEGIN SECOND-----\n -----END SECOND"
523
+ )
524
+ . collect:: <Vec <& [ u8 ] >>( ) ,
525
+ vec![
526
+ b"-----BEGIN FIRST-----\n -----END FIRST-----\n " as & [ u8 ] ,
527
+ b"-----BEGIN SECOND-----\n -----END SECOND"
528
+ ]
529
+ ) ;
497
530
// Split a single cert, LF line terminators.
498
- assert_eq ! ( PemBlock :: new( b"-----BEGIN FIRST-----\n -----END FIRST-----\n " ) . collect:: <Vec <& [ u8 ] >>( ) ,
499
- vec![ b"-----BEGIN FIRST-----\n -----END FIRST-----\n " as & [ u8 ] ] ) ;
531
+ assert_eq ! (
532
+ PemBlock :: new( b"-----BEGIN FIRST-----\n -----END FIRST-----\n " ) . collect:: <Vec <& [ u8 ] >>( ) ,
533
+ vec![ b"-----BEGIN FIRST-----\n -----END FIRST-----\n " as & [ u8 ] ]
534
+ ) ;
500
535
// Split a single cert, LF line terminators except at EOF.
501
- assert_eq ! ( PemBlock :: new( b"-----BEGIN FIRST-----\n -----END FIRST-----" ) . collect:: <Vec <& [ u8 ] >>( ) ,
502
- vec![ b"-----BEGIN FIRST-----\n -----END FIRST-----" as & [ u8 ] ] ) ;
536
+ assert_eq ! (
537
+ PemBlock :: new( b"-----BEGIN FIRST-----\n -----END FIRST-----" ) . collect:: <Vec <& [ u8 ] >>( ) ,
538
+ vec![ b"-----BEGIN FIRST-----\n -----END FIRST-----" as & [ u8 ] ]
539
+ ) ;
503
540
// (Don't) split garbage.
504
- assert_eq ! ( PemBlock :: new( b"junk" ) . collect:: <Vec <& [ u8 ] >>( ) ,
505
- Vec :: <& [ u8 ] >:: new( ) ) ;
506
- assert_eq ! ( PemBlock :: new( b"junk-----BEGIN garbage" ) . collect:: <Vec <& [ u8 ] >>( ) ,
507
- vec![ b"-----BEGIN garbage" as & [ u8 ] ] ) ;
541
+ assert_eq ! (
542
+ PemBlock :: new( b"junk" ) . collect:: <Vec <& [ u8 ] >>( ) ,
543
+ Vec :: <& [ u8 ] >:: new( )
544
+ ) ;
545
+ assert_eq ! (
546
+ PemBlock :: new( b"junk-----BEGIN garbage" ) . collect:: <Vec <& [ u8 ] >>( ) ,
547
+ vec![ b"-----BEGIN garbage" as & [ u8 ] ]
548
+ ) ;
508
549
}
509
550
}
510
-
0 commit comments