Skip to main content

gatel_core/hoops/
mod.rs

1pub mod acme_challenge;
2pub mod auth;
3pub mod buffer;
4pub mod cache;
5pub mod compress;
6pub mod decompress;
7pub mod error_pages;
8pub mod forward_auth;
9pub mod headers;
10pub mod ip_filter;
11pub mod logging;
12pub mod metrics;
13pub mod rate_limit;
14pub mod replace;
15pub mod rewrite;
16pub mod stream_replace;
17pub mod templates;
18
19use std::net::SocketAddr;
20
21/// Extract the client address from a Salvo request, falling back to 0.0.0.0:0.
22pub fn client_addr(req: &salvo::Request) -> SocketAddr {
23    req.remote_addr()
24        .clone()
25        .into_std()
26        .unwrap_or_else(|| ([0, 0, 0, 0], 0).into())
27}