From 8f60648009ebb0d1370ce9a03c74e07d635c9c5c Mon Sep 17 00:00:00 2001 From: Ginger Date: Mon, 13 Jul 2026 10:01:50 -0400 Subject: [PATCH] fix: Use correct error code for invalid client ID --- src/service/oauth/grant.rs | 1 + src/service/oauth/mod.rs | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/service/oauth/grant.rs b/src/service/oauth/grant.rs index f53c18600..d0bd66d0b 100644 --- a/src/service/oauth/grant.rs +++ b/src/service/oauth/grant.rs @@ -195,6 +195,7 @@ pub enum ErrorCode { AccessDenied, InvalidScope, InvalidGrant, + InvalidClient, InvalidClientMetadata, AuthorizationPending, ExpiredToken, diff --git a/src/service/oauth/mod.rs b/src/service/oauth/mod.rs index ba8958cfa..a999810ce 100644 --- a/src/service/oauth/mod.rs +++ b/src/service/oauth/mod.rs @@ -326,7 +326,7 @@ impl Service { query: DeviceCodeRequest, ) -> Result { let Some(client_metadata) = self.get_client_metadata(&query.client_id).await else { - return Err(OAuthError::invalid_grant("Invalid client ID")); + return Err(OAuthError::new_static(ErrorCode::InvalidClient, "Invalid client ID")); }; let requested_scopes = query @@ -434,7 +434,7 @@ impl Service { let TokenRequest { client_id, request } = request; let Some(client_metadata) = self.get_client_metadata(&client_id).await else { - return Err(OAuthError::invalid_request("Invalid client ID")); + return Err(OAuthError::new_static(ErrorCode::InvalidClient, "Invalid client ID")); }; if !client_metadata.grant_types.contains(&request.grant_type()) {