diff options
Diffstat (limited to 'src/error.rs')
-rw-r--r-- | src/error.rs | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/error.rs b/src/error.rs index cccfd78..4237a5e 100644 --- a/src/error.rs +++ b/src/error.rs @@ -53,6 +53,8 @@ pub enum ServiceError { ParseIntError(#[from] std::num::ParseIntError), #[error("invalid header")] InvalidHeader, + #[error("X-Real-IP header missing, your proxy is misconfigured")] + XRealIPMissing, #[error("invalid uri")] InvalidUri, #[error("too many concurrent users, please retry later")] @@ -89,6 +91,7 @@ impl ServiceError { ServiceError::CustomStatic(_) => StatusCode::BAD_REQUEST, ServiceError::ParseIntError(_) => StatusCode::BAD_REQUEST, ServiceError::InvalidHeader => StatusCode::BAD_REQUEST, + ServiceError::XRealIPMissing => StatusCode::INTERNAL_SERVER_ERROR, ServiceError::InvalidUri => StatusCode::BAD_REQUEST, ServiceError::TooManyIdentities => StatusCode::TOO_MANY_REQUESTS, ServiceError::Other => StatusCode::INTERNAL_SERVER_ERROR, |