@@ -4,12 +4,13 @@ use axum::{
44 http:: StatusCode ,
55 routing:: { get, post} ,
66} ;
7+ use axum_server:: tls_rustls:: RustlsConfig ;
78use co_noir:: { Address , Bn254 , CrsParser , NetworkParty , PartyID , Utils } ;
89use co_ultrahonk:: prelude:: ZeroKnowledge ;
910use rustls:: pki_types:: CertificateDer ;
1011use serde:: Deserialize ;
1112use serde_json:: json;
12- use std:: sync:: Arc ;
13+ use std:: { net :: SocketAddr , path :: PathBuf , sync:: Arc } ;
1314use token:: Token ;
1415use tower_http:: {
1516 cors:: { Any , CorsLayer } ,
@@ -54,6 +55,10 @@ async fn main() -> Result<(), Box<dyn std::error::Error + Send + Sync>> {
5455 . install_default ( )
5556 . unwrap ( ) ;
5657
58+ let ssl_dir = PathBuf :: from ( env ! ( "CARGO_MANIFEST_DIR" ) ) . join ( "ssl-cert" ) ;
59+ let config =
60+ RustlsConfig :: from_pem_file ( ssl_dir. join ( "cert.pem" ) , ssl_dir. join ( "key.pem" ) ) . await ?;
61+
5762 setup_db ( ) ?;
5863
5964 let parties = vec ! [
@@ -177,8 +182,12 @@ async fn main() -> Result<(), Box<dyn std::error::Error + Send + Sync>> {
177182 . on_response ( trace:: DefaultOnResponse :: new ( ) . level ( Level :: INFO ) ) ,
178183 ) ;
179184
180- let listener = tokio:: net:: TcpListener :: bind ( "0.0.0.0:8000" ) . await ?;
181- axum:: serve ( listener, app) . await ?;
185+ // let listener = tokio::net::TcpListener::bind("0.0.0.0:8000").await?;
186+ // axum::serve(listener, app).await?;
187+ let addr = SocketAddr :: from ( ( [ 0 , 0 , 0 , 0 ] , 8000 ) ) ;
188+ axum_server:: bind_rustls ( addr, config)
189+ . serve ( app. into_make_service ( ) )
190+ . await ?;
182191
183192 Ok ( ( ) )
184193}
0 commit comments