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 5242A1FF13F for ; Thu, 12 Mar 2026 12:42:33 +0100 (CET) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id 8990C12312; Thu, 12 Mar 2026 12:42:25 +0100 (CET) From: Christian Ebner To: pbs-devel@lists.proxmox.com Subject: [PATCH proxmox{,-backup} v3 0/8] fix #6716: Add support for http proxy configuration for S3 endpoints Date: Thu, 12 Mar 2026 12:42:00 +0100 Message-ID: <20260312114208.514373-1-c.ebner@proxmox.com> X-Mailer: git-send-email 2.47.3 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Bm-Milter-Handled: 55990f41-d878-4baa-be0a-ee34c49e34d2 X-Bm-Transport-Timestamp: 1773315702989 X-SPAM-LEVEL: Spam detection results: 0 AWL 0.057 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_MSPIKE_H2 0.001 Average reputation (+2) SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_PASS -0.001 SPF: sender matches SPF record Message-ID-Hash: LVWVS56WYUKVQ33H2SFU3EZOCPU5K5UY X-Message-ID-Hash: LVWVS56WYUKVQ33H2SFU3EZOCPU5K5UY X-MailFrom: c.ebner@proxmox.com X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; loop; banned-address; emergency; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header X-Mailman-Version: 3.3.10 Precedence: list List-Id: Proxmox Backup Server development discussion List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: This patch series exposes the nodes proxy config setting to the S3 clients for datastores backed by an S3 object store. To honor crate boundaries, the proxy configuration is refactored to be part of pbs-config instead of proxmox-backup. The API types are move to pbs-api-types, inlining proxmox_backup::tools::config::from_property_string() and NodeConfig::validate() to do so without creating additional unwanted dependencies. The schema definition for the proxy is moved to proxmox-http instead, already containing the proxy config definition. Testing was performed by proxying traffic using https://www.mitmproxy.org/ Link to the bugtracker issue: https://bugzilla.proxmox.com/show_bug.cgi?id=6716 Changes since version 2 (thanks @Fabian for review and suggestions): - reworked completely by moving node config implementation and avoid lookup/callback hack. Changes since version 1: - rebased onto current master proxmox: Christian Ebner (2): http: move http proxy schema from PBS to crate's api types pbs-api-types: move over NodeConfig and related api type from PBS Cargo.toml | 1 + pbs-api-types/Cargo.toml | 3 + pbs-api-types/src/node.rs | 256 ++++++++++++++++++++++++++++++- proxmox-http/Cargo.toml | 2 + proxmox-http/debian/control | 18 +++ proxmox-http/src/lib.rs | 8 +- proxmox-http/src/proxy_config.rs | 16 ++ 7 files changed, 300 insertions(+), 4 deletions(-) proxmox-backup: Christian Ebner (6): pbs-config: use http proxy schema moved to proxmox-http crate config: inline NodeConfig::validate() to its only call side config: use moved NodeConfig definitions in pbs-api-types tools: drop unused from_property_string() helper config: move node config into pbs-config, including helper tools fix #6716: pass node http proxy config to s3 backend Cargo.toml | 2 +- pbs-config/Cargo.toml | 1 + pbs-config/src/lib.rs | 2 + pbs-config/src/node.rs | 55 +++++ {src => pbs-config/src}/tools/config.rs | 15 +- pbs-config/src/tools/mod.rs | 1 + pbs-datastore/src/datastore.rs | 4 +- src/api2/admin/s3.rs | 2 +- src/api2/config/remote.rs | 2 +- src/api2/config/s3.rs | 2 +- src/api2/node/apt.rs | 2 +- src/api2/node/certificates.rs | 4 +- src/api2/node/config.rs | 11 +- src/api2/node/subscription.rs | 2 +- src/api2/types/mod.rs | 11 - src/bin/proxmox-backup-proxy.rs | 9 +- src/bin/proxmox-daily-update.rs | 2 +- src/config/mod.rs | 1 - src/config/node.rs | 316 ------------------------ src/tools/mod.rs | 1 - 20 files changed, 81 insertions(+), 364 deletions(-) create mode 100644 pbs-config/src/node.rs rename {src => pbs-config/src}/tools/config.rs (94%) create mode 100644 pbs-config/src/tools/mod.rs delete mode 100644 src/config/node.rs Summary over all repositories: 27 files changed, 381 insertions(+), 368 deletions(-) -- Generated by murpp 0.9.0