|
|
|
@ -19,11 +19,11 @@ pub struct State {
|
|
|
|
|
fn rocket() -> _ {
|
|
|
|
|
let args: Vec<String> = std::env::args().collect();
|
|
|
|
|
|
|
|
|
|
if args.len() - 1 != 1 {
|
|
|
|
|
let [_exe, path] = args.as_slice() else {
|
|
|
|
|
panic!("Expected 1 argument, got {}", args.len() - 1)
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
let path = Path::new(&args[1]);
|
|
|
|
|
let path = Path::new(path);
|
|
|
|
|
let config = crate::config::Config::parse(path).unwrap();
|
|
|
|
|
|
|
|
|
|
let smtp_builder = SmtpClientBuilder::new(config.mailer.host.clone(), config.mailer.port)
|
|
|
|
@ -38,7 +38,7 @@ fn rocket() -> _ {
|
|
|
|
|
Duration::from_secs(config.rate_limit.replenish_seconds.into())
|
|
|
|
|
).unwrap().allow_burst(config.rate_limit.burst_max);
|
|
|
|
|
|
|
|
|
|
let rate_limit : RateLimiter<IpAddr, _, _> = RateLimiter::dashmap(quota);
|
|
|
|
|
let rate_limit = RateLimiter::dashmap(quota);
|
|
|
|
|
|
|
|
|
|
let state = State {
|
|
|
|
|
config,
|
|
|
|
@ -49,7 +49,7 @@ fn rocket() -> _ {
|
|
|
|
|
let rocket_conf = rocket::config::Config {
|
|
|
|
|
limits: Limits::default()
|
|
|
|
|
.limit("json", 2.kibibytes()),
|
|
|
|
|
..rocket::config::Config::default()
|
|
|
|
|
..Default::default()
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
rocket::custom(rocket_conf)
|
|
|
|
|