From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from firstgate.proxmox.com (firstgate.proxmox.com [IPv6:2a01:7e0:0:424::9]) by lore.proxmox.com (Postfix) with ESMTPS id 7AD2C1FF13D for ; Thu, 08 Jan 2026 12:27:10 +0100 (CET) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id E32FB21B6D; Thu, 8 Jan 2026 12:27:10 +0100 (CET) From: Samuel Rufinatscha To: pbs-devel@lists.proxmox.com Date: Thu, 8 Jan 2026 12:26:22 +0100 Message-ID: <20260108112629.189670-3-s.rufinatscha@proxmox.com> X-Mailer: git-send-email 2.47.3 In-Reply-To: <20260108112629.189670-1-s.rufinatscha@proxmox.com> References: <20260108112629.189670-1-s.rufinatscha@proxmox.com> MIME-Version: 1.0 X-Bm-Milter-Handled: 55990f41-d878-4baa-be0a-ee34c49e34d2 X-Bm-Transport-Timestamp: 1767871558456 X-SPAM-LEVEL: Spam detection results: 0 AWL 0.233 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% DMARC_MISSING 0.1 Missing DMARC policy KAM_DMARC_STATUS 0.01 Test Rule for DKIM or SPF Failure with Strict Alignment RCVD_IN_VALIDITY_CERTIFIED_BLOCKED 0.001 ADMINISTRATOR NOTICE: The query to Validity was blocked. See https://knowledge.validity.com/hc/en-us/articles/20961730681243 for more information. RCVD_IN_VALIDITY_RPBL_BLOCKED 0.001 ADMINISTRATOR NOTICE: The query to Validity was blocked. See https://knowledge.validity.com/hc/en-us/articles/20961730681243 for more information. RCVD_IN_VALIDITY_SAFE_BLOCKED 0.001 ADMINISTRATOR NOTICE: The query to Validity was blocked. See https://knowledge.validity.com/hc/en-us/articles/20961730681243 for more information. SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_PASS -0.001 SPF: sender matches SPF record Subject: [pbs-devel] [PATCH proxmox v5 2/4] acme: introduce http_status module X-BeenThere: pbs-devel@lists.proxmox.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Proxmox Backup Server development discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: Proxmox Backup Server development discussion Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: pbs-devel-bounces@lists.proxmox.com Sender: "pbs-devel" Introduce an internal http_status module with the common ACME HTTP response codes, and replace use of crate::request::CREATED as well as direct numeric status code usages. Signed-off-by: Samuel Rufinatscha --- proxmox-acme/src/account.rs | 8 ++++---- proxmox-acme/src/async_client.rs | 4 ++-- proxmox-acme/src/lib.rs | 2 ++ proxmox-acme/src/request.rs | 11 ++++++++++- 4 files changed, 18 insertions(+), 7 deletions(-) diff --git a/proxmox-acme/src/account.rs b/proxmox-acme/src/account.rs index d8eb3e73..ea1a3c60 100644 --- a/proxmox-acme/src/account.rs +++ b/proxmox-acme/src/account.rs @@ -84,7 +84,7 @@ impl Account { method: "POST", content_type: crate::request::JSON_CONTENT_TYPE, body, - expected: crate::request::CREATED, + expected: crate::http_status::CREATED, }; Ok(NewOrder::new(request)) @@ -106,7 +106,7 @@ impl Account { method: "POST", content_type: crate::request::JSON_CONTENT_TYPE, body, - expected: 200, + expected: crate::http_status::OK, }) } @@ -131,7 +131,7 @@ impl Account { method: "POST", content_type: crate::request::JSON_CONTENT_TYPE, body, - expected: 200, + expected: crate::http_status::OK, }) } @@ -321,7 +321,7 @@ impl AccountCreator { method: "POST", content_type: crate::request::JSON_CONTENT_TYPE, body, - expected: crate::request::CREATED, + expected: crate::http_status::CREATED, }) } diff --git a/proxmox-acme/src/async_client.rs b/proxmox-acme/src/async_client.rs index 2ff3ba22..043648bb 100644 --- a/proxmox-acme/src/async_client.rs +++ b/proxmox-acme/src/async_client.rs @@ -498,7 +498,7 @@ impl AcmeClient { method: "GET", content_type: "", body: String::new(), - expected: 200, + expected: crate::http_status::OK, }, nonce, ) @@ -550,7 +550,7 @@ impl AcmeClient { method: "HEAD", content_type: "", body: String::new(), - expected: 200, + expected: crate::http_status::OK, }, nonce, ) diff --git a/proxmox-acme/src/lib.rs b/proxmox-acme/src/lib.rs index 6722030c..6051a025 100644 --- a/proxmox-acme/src/lib.rs +++ b/proxmox-acme/src/lib.rs @@ -70,6 +70,8 @@ pub use order::Order; #[cfg(feature = "impl")] pub use order::NewOrder; #[cfg(feature = "impl")] +pub(crate) use request::http_status; +#[cfg(feature = "impl")] pub use request::ErrorResponse; /// Header name for nonces. diff --git a/proxmox-acme/src/request.rs b/proxmox-acme/src/request.rs index dadfc5af..341ce53e 100644 --- a/proxmox-acme/src/request.rs +++ b/proxmox-acme/src/request.rs @@ -1,7 +1,6 @@ use serde::Deserialize; pub(crate) const JSON_CONTENT_TYPE: &str = "application/jose+json"; -pub(crate) const CREATED: u16 = 201; /// A request which should be performed on the ACME provider. pub(crate) struct Request { @@ -21,6 +20,16 @@ pub(crate) struct Request { pub(crate) expected: u16, } +/// Common HTTP status codes used in ACME responses. +pub(crate) mod http_status { + /// 200 OK + pub(crate) const OK: u16 = 200; + /// 201 Created + pub(crate) const CREATED: u16 = 201; + /// 204 No Content + pub(crate) const NO_CONTENT: u16 = 204; +} + /// An ACME error response contains a specially formatted type string, and can optionally /// contain textual details and a set of sub problems. #[derive(Clone, Debug, Deserialize)] -- 2.47.3 _______________________________________________ pbs-devel mailing list pbs-devel@lists.proxmox.com https://lists.proxmox.com/cgi-bin/mailman/listinfo/pbs-devel