summaryrefslogtreecommitdiff
path: root/src/error.rs
diff options
context:
space:
mode:
authormetamuffin <metamuffin@disroot.org>2025-03-31 19:45:31 +0200
committermetamuffin <metamuffin@disroot.org>2025-03-31 19:45:31 +0200
commitdd105f82d89070c6929f070a87848b9a9ac8799a (patch)
tree48395074f0c662d51d6a6cc95d0347ecca3614c5 /src/error.rs
parent939091713a21ac6e508ef365f8ee9f258f6d50f8 (diff)
downloadgnix-dd105f82d89070c6929f070a87848b9a9ac8799a.tar
gnix-dd105f82d89070c6929f070a87848b9a9ac8799a.tar.bz2
gnix-dd105f82d89070c6929f070a87848b9a9ac8799a.tar.zst
add source_ip_from_header option
Diffstat (limited to 'src/error.rs')
-rw-r--r--src/error.rs3
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,