@@ -16,7 +16,7 @@ use ironrdp_connector::sspi::credssp::{ClientState, ServerError, ServerState};
1616use ironrdp_connector:: sspi:: generator:: GeneratorState ;
1717use ironrdp_connector:: sspi:: kerberos:: ServerProperties ;
1818use ironrdp_connector:: sspi:: {
19- AuthIdentityBuffers , CredentialsBuffers , KerberosConfig as SspiKerberosConfig , KerberosServerConfig ,
19+ self , AuthIdentityBuffers , CredentialsBuffers , KerberosConfig as SspiKerberosConfig , KerberosServerConfig ,
2020} ;
2121use ironrdp_pdu:: { mcs, nego, x224} ;
2222use ironrdp_tokio:: AsyncSendableNetworkClient ;
@@ -453,7 +453,14 @@ async fn resolve_server_generator(
453453 loop {
454454 match state {
455455 GeneratorState :: Suspended ( request) => {
456- let response = network_client. send ( & request) . await . expect ( "todo" ) ;
456+ let response = network_client
457+ . send ( & request)
458+ . await
459+ . inspect_err ( |err| error ! ( ?err, "Failed to send a Kerberos message" ) )
460+ . map_err ( |err| ServerError {
461+ ts_request : None ,
462+ error : sspi:: Error :: new ( sspi:: ErrorKind :: InternalError , err) ,
463+ } ) ?;
457464 state = generator. resume ( Ok ( response) ) ;
458465 }
459466 GeneratorState :: Completed ( client_state) => {
@@ -552,10 +559,9 @@ where
552559 password,
553560 } = credentials;
554561
555- let username =
556- ironrdp_connector:: sspi:: Username :: new ( username, domain. as_deref ( ) ) . context ( "invalid username" ) ?;
562+ let username = sspi:: Username :: new ( username, domain. as_deref ( ) ) . context ( "invalid username" ) ?;
557563
558- let identity = ironrdp_connector :: sspi:: AuthIdentity {
564+ let identity = sspi:: AuthIdentity {
559565 username,
560566 password : password. expose_secret ( ) . to_owned ( ) . into ( ) ,
561567 } ;
0 commit comments