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 437551FF17E for ; Thu, 13 Nov 2025 09:42:20 +0100 (CET) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id 66B07150A0; Thu, 13 Nov 2025 09:43:14 +0100 (CET) Message-ID: <9ec5bebd-cc7a-4577-b544-490b5fd8ba62@proxmox.com> Date: Thu, 13 Nov 2025 09:43:10 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird To: Proxmox Backup Server development discussion , =?UTF-8?Q?Fabian_Gr=C3=BCnbichler?= References: <20251112163624.691139-1-c.ebner@proxmox.com> <20251112163624.691139-5-c.ebner@proxmox.com> <1763021452.3pvb2jf8os.astroid@yuna.none> Content-Language: en-US, de-DE From: Christian Ebner In-Reply-To: <1763021452.3pvb2jf8os.astroid@yuna.none> X-Bm-Milter-Handled: 55990f41-d878-4baa-be0a-ee34c49e34d2 X-Bm-Transport-Timestamp: 1763023365262 X-SPAM-LEVEL: Spam detection results: 0 AWL -0.353 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_ASCII_DIVIDERS 0.8 Email that uses ascii formatting dividers and possible spam tricks 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: Re: [pbs-devel] [PATCH proxmox-backup v2 4/6] api: admin: factor out locking and maintenance mode clearing 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-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Errors-To: pbs-devel-bounces@lists.proxmox.com Sender: "pbs-devel" T24gMTEvMTMvMjUgOToxOCBBTSwgRmFiaWFuIEdyw7xuYmljaGxlciB3cm90ZToKPiBPbiBOb3Zl bWJlciAxMiwgMjAyNSA1OjM2IHBtLCBDaHJpc3RpYW4gRWJuZXIgd3JvdGU6Cj4+IFByb3ZpZGUg YSBoZWxwZXIgd2hpY2ggYWxsb3dzIHRvIGVpdGhlciBjbGVhciB0aGUgbWFpbnRlbmFuY2UgbW9k ZSBpZgo+PiB0aGUgd29ya2VyIHdhcyBhYm9ydGVkLCBvciBjYWxsIHRoZSBwcm92aWRlZCBjYWxs YmFjayB3aGlsZSBob2xkaW5nCj4+IHRoZSBkYXRhc3RvcmUgY29uZmlnIGxvY2suCj4+Cj4+IElu IHByZXBhcmF0aW9uIGZvciByZXVzaW5nIHRoZSBzYW1lIGxvZ2ljIGZvciB0aGUgczMgcmVmcmVz aC4KPj4KPj4gU2lnbmVkLW9mZi1ieTogQ2hyaXN0aWFuIEVibmVyIDxjLmVibmVyQHByb3htb3gu Y29tPgo+PiAtLS0KPj4gY2hhbmdlcyBzaW5jZSB2ZXJzaW9uIDE6Cj4+IC0gbm90IHByZXNlbnQg aW4gcHJldmlvdXMgdmVyc2lvbgo+Pgo+PiAgIHNyYy9hcGkyL2FkbWluL2RhdGFzdG9yZS5ycyB8 IDUwICsrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0KPj4gICAxIGZpbGUgY2hh bmdlZCwgMzQgaW5zZXJ0aW9ucygrKSwgMTYgZGVsZXRpb25zKC0pCj4+Cj4+IGRpZmYgLS1naXQg YS9zcmMvYXBpMi9hZG1pbi9kYXRhc3RvcmUucnMgYi9zcmMvYXBpMi9hZG1pbi9kYXRhc3RvcmUu cnMKPj4gaW5kZXggN2RhY2NmOWZkLi44ZDU4YjUwNTkgMTAwNjQ0Cj4+IC0tLSBhL3NyYy9hcGky L2FkbWluL2RhdGFzdG9yZS5ycwo+PiArKysgYi9zcmMvYXBpMi9hZG1pbi9kYXRhc3RvcmUucnMK Pj4gQEAgLTI1ODQsNyArMjU4NCw2IEBAIGZuIGRvX3VubW91bnRfZGV2aWNlKAo+PiAgICAgICBp ZiBkYXRhc3RvcmUuYmFja2luZ19kZXZpY2UuaXNfbm9uZSgpIHsKPj4gICAgICAgICAgIGJhaWwh KCJjYW4ndCB1bm1vdW50IG5vbi1yZW1vdmFibGUgZGF0YXN0b3JlIik7Cj4+ICAgICAgIH0KPj4g LSAgICBsZXQgbW91bnRfcG9pbnQgPSBkYXRhc3RvcmUuYWJzb2x1dGVfcGF0aCgpOwo+PiAgIAo+ PiAgICAgICBsZXQgbXV0IG9sZF9zdGF0dXMgPSBTdHJpbmc6Om5ldygpOwo+PiAgICAgICBsZXQg YWJvcnRlZCA9IHdhaXRfb25fYWN0aXZlX29wZXJhdGlvbnMoCj4+IEBAIC0yNjAyLDIxICsyNjAx LDE0IEBAIGZuIGRvX3VubW91bnRfZGV2aWNlKAo+PiAgICAgICAgICAgfSwKPj4gICAgICAgKT87 Cj4+ICAgCj4+IC0gICAgaWYgYWJvcnRlZCB8fCB3b3JrZXIuaXNfc29tZV9hbmQofHd8IHcuYWJv cnRfcmVxdWVzdGVkKCkpIHsKPj4gLSAgICAgICAgbGV0IF8gPSBleHBlY3RfbWFpbnRlbmFuY2Vf dHlwZSgmZGF0YXN0b3JlLm5hbWUsIE1haW50ZW5hbmNlVHlwZTo6VW5tb3VudCkKPj4gLSAgICAg ICAgICAgIC5pbnNwZWN0X2Vycih8ZXwgd2FybiEoIm1haW50ZW5hbmNlIG1vZGUgd2FzIG5vdCBh cyBleHBlY3RlZDoge2V9IikpCj4+IC0gICAgICAgICAgICAuYW5kX3RoZW4ofChsb2NrLCBjb25m aWcpfCB7Cj4+IC0gICAgICAgICAgICAgICAgdW5zZXRfbWFpbnRlbmFuY2UobG9jaywgY29uZmln KQo+PiAtICAgICAgICAgICAgICAgICAgICAuaW5zcGVjdF9lcnIofGV8IHdhcm4hKCJjb3VsZCBu b3QgcmVzZXQgbWFpbnRlbmFuY2UgbW9kZToge2V9IikpCj4+IC0gICAgICAgICAgICB9KTsKPj4g LSAgICAgICAgYmFpbCEoImFib3J0ZWQsIGR1ZSB0byB1c2VyIHJlcXVlc3QiKTsKPj4gLSAgICB9 IGVsc2Ugewo+PiAtICAgICAgICBsZXQgKGxvY2ssIGNvbmZpZykgPSBleHBlY3RfbWFpbnRlbmFu Y2VfdHlwZSgmZGF0YXN0b3JlLm5hbWUsIE1haW50ZW5hbmNlVHlwZTo6VW5tb3VudCk/Owo+PiAt ICAgICAgICBjcmF0ZTo6dG9vbHM6OmRpc2tzOjp1bm1vdW50X2J5X21vdW50cG9pbnQoUGF0aDo6 bmV3KCZtb3VudF9wb2ludCkpPzsKPj4gLSAgICAgICAgdW5zZXRfbWFpbnRlbmFuY2UobG9jaywg Y29uZmlnKQo+PiAtICAgICAgICAgICAgLm1hcF9lcnIofGV8IGZvcm1hdF9lcnIhKCJjb3VsZCBu b3QgcmVzZXQgbWFpbnRlbmFuY2UgbW9kZToge2V9IikpPzsKPj4gLSAgICB9Cj4+IC0gICAgT2so KCkpCj4+ICsgICAgbGV0IG1vdW50X3BvaW50ID0gZGF0YXN0b3JlLmFic29sdXRlX3BhdGgoKTsK Pj4gKyAgICBjbGVhcl9vcl9ydW5fbWFpbnRlbmFuY2VfbG9ja2VkKAo+PiArICAgICAgICAmZGF0 YXN0b3JlLm5hbWUsCj4+ICsgICAgICAgIHdvcmtlciwKPj4gKyAgICAgICAgTWFpbnRlbmFuY2VU eXBlOjpVbm1vdW50LAo+PiArICAgICAgICBhYm9ydGVkLAo+PiArICAgICAgICB8fCBjcmF0ZTo6 dG9vbHM6OmRpc2tzOjp1bm1vdW50X2J5X21vdW50cG9pbnQoUGF0aDo6bmV3KCZtb3VudF9wb2lu dCkpLAo+PiArICAgICkKPj4gICB9Cj4+ICAgCj4+ICAgI1thcGkoCj4+IEBAIC0yNzQ3LDYgKzI3 MzksMzIgQEAgZm4gd2FpdF9vbl9hY3RpdmVfb3BlcmF0aW9ucygKPj4gICAgICAgT2soZmFsc2Up Cj4+ICAgfQo+PiAgIAo+PiArLy8gRWl0aGVyIGNsZWFyIHRoZSBjdXJyZW50IG1haW50ZW5hbmNl IG1vZGUgaWYgdGhlIHdvcmtlciB3YXMgYWJvcnRlZCBvciBydW4gdGhlIHByb3ZpZGVkIGNhbGxi YWNrCj4+ICsvLyB3aGlsZSBrZWVwaW5nIHRoZSBkYXRhc3RvcmUgY29uZmlnIGxvY2ssIHNvIHRo ZSBtb2RlIGNhbm5vdCBiZSBhbHRlcmVkLiBDbGVhcnMgdGhlIG1haW50ZW5hbmNlCj4+ICsvLyBt b2RlIGFmdGVyIHN1Y2Nlc3NmdWwgY2FsbGJhY2sgZXhlY3V0aW9uLgo+PiArZm4gY2xlYXJfb3Jf cnVuX21haW50ZW5hbmNlX2xvY2tlZCgKPj4gKyAgICBzdG9yZTogJnN0ciwKPj4gKyAgICB3b3Jr ZXI6IE9wdGlvbjwmZHluIFdvcmtlclRhc2tDb250ZXh0PiwKPiAKPiB0aGlzIGNhbiBhbHNvIGRy b3AgdGhlIE9wdGlvbiA7KQo+IAo+IGJ1dCBnaXZlbiB0aGF0IHdlIG5vdyBoYXZlIHR3byBoZWxw ZXJzIHdpdGggdHdvIGFsbW9zdCBpZGVudGljYWwgY2FsbAo+IHNpdGVzLCBjb3VsZCB3ZSBub3Qg bWFrZSBpdCBhIHNpbmdsZSBoZWxwZXI/CgpPa2F5LCBjYW4gY29tYmluZSB0aGVtIGludG8gb25l LiBGb3IgbWUgaXQgd2FzIG1lbnRhbGx5IGxlc3MgZnJpY3Rpb24gdG8gCmhhdmUgdGhlc2Ugc2Vw YXJhdGVkLCBhcyBlc3BlY2lhbGx5IGdpdmVuIHRoYXQgdGhlIHdhaXRpbmcgb24gYWN0aXZlIApv cGVyYXRpb25zIHNlZW1lZCB3b3J0aCBpdCdzIG93biBlbmNhcHN1bGF0aW9uIGFuZCBnZXRzIGEg ZGVkaWNhdGVkIApjYWxsYmFjay4gTm93IHRoaXMgcmVxdWlyZXMgZWl0aGVyIDIgY2FsbGJhY2tz IG9yIGEgZm9ybWF0IHN0cmluZyBhbmQgCmNhbGxiYWNrLgoKQnV0IHNpbmNlIHRoaXMgaXMgbm90 IHJlcXVpcmVkIGVsc2V3aGVyZSAoeWV0PykgSSB3aWxsIGNvbWJpbmUgdGhpcyAKaGVscGVyIGlu dG8gb25lLgoKPiBlLmcuLCBgcnVuX21haW50ZW5hbmNlX2xvY2tlZGAgdGhhdAo+IC0gd2FpdHMg Zm9yIG9wZXJhdGlvbnMgdG8gZmluaXNoIHdoaWxlIGNoZWNraW5nIHdvcmtlciBzdGF0dXMgYW5k Cj4gICAgbWFpbnRlbmFuY2UgdHlwZSAod2l0aCBzdGF0dXMgdXBkYXRlcyB2aWEgYSBwYXNzZWQg aW4gZm9ybWF0IHN0cmluZyBvcgo+ICAgIGNhbGxiYWNrKQo+IC0gb2J0YWlucyB0aGUgbG9jawo+ IC0gcnVucyB0aGUgYWN0dWFsIG1haW50ZW5hbmNlIHRhc2sgdmlhIGEgcHJvdmlkZWQgY2xvc3Vy ZS9jYWxsYmFjay8uLgo+IC0gY2xlYXJzIHRoZSBtYWludGVuYW5jZSBtb2RlIGFuZCBkcm9wcyB0 aGUgbG9jawo+IAo+PiArICAgIG1haW50ZW5hbmNlX2V4cGVjdGVkOiBNYWludGVuYW5jZVR5cGUs Cj4+ICsgICAgYWJvcnRlZDogYm9vbCwKPj4gKyAgICBjYWxsYmFjazogaW1wbCBGbigpIC0+IFJl c3VsdDwoKSwgRXJyb3I+LAo+PiArKSAtPiBSZXN1bHQ8KCksIEVycm9yPiB7Cj4+ICsgICAgaWYg YWJvcnRlZCB8fCB3b3JrZXIuaXNfc29tZV9hbmQofHd8IHcuYWJvcnRfcmVxdWVzdGVkKCkpIHsK Pj4gKyAgICAgICAgbGV0IF8gPSBleHBlY3RfbWFpbnRlbmFuY2VfdHlwZShzdG9yZSwgbWFpbnRl bmFuY2VfZXhwZWN0ZWQpCj4+ICsgICAgICAgICAgICAuaW5zcGVjdF9lcnIofGV8IHdhcm4hKCJt YWludGVuYW5jZSBtb2RlIHdhcyBub3QgYXMgZXhwZWN0ZWQ6IHtlfSIpKQo+PiArICAgICAgICAg ICAgLmFuZF90aGVuKHwobG9jaywgY29uZmlnKXwgewo+PiArICAgICAgICAgICAgICAgIHVuc2V0 X21haW50ZW5hbmNlKGxvY2ssIGNvbmZpZykKPj4gKyAgICAgICAgICAgICAgICAgICAgLmluc3Bl Y3RfZXJyKHxlfCB3YXJuISgiY291bGQgbm90IHJlc2V0IG1haW50ZW5hbmNlIG1vZGU6IHtlfSIp KQo+PiArICAgICAgICAgICAgfSk7Cj4+ICsgICAgICAgIGJhaWwhKCJhYm9ydGVkLCBkdWUgdG8g dXNlciByZXF1ZXN0Iik7Cj4+ICsgICAgfSBlbHNlIHsKPj4gKyAgICAgICAgbGV0IChsb2NrLCBj b25maWcpID0gZXhwZWN0X21haW50ZW5hbmNlX3R5cGUoc3RvcmUsIG1haW50ZW5hbmNlX2V4cGVj dGVkKT87Cj4+ICsgICAgICAgIGNhbGxiYWNrKCk/Owo+PiArICAgICAgICB1bnNldF9tYWludGVu YW5jZShsb2NrLCBjb25maWcpCj4+ICsgICAgICAgICAgICAubWFwX2Vycih8ZXwgZm9ybWF0X2Vy ciEoImNvdWxkIG5vdCByZXNldCBtYWludGVuYW5jZSBtb2RlOiB7ZX0iKSkKPj4gKyAgICB9Cj4+ ICt9Cj4+ICsKPj4gICAjW3NvcnRhYmxlXQo+PiAgIGNvbnN0IERBVEFTVE9SRV9JTkZPX1NVQkRJ UlM6IFN1YmRpck1hcCA9ICZbCj4+ICAgICAgICgKPj4gLS0gCj4+IDIuNDcuMwo+Pgo+Pgo+Pgo+ PiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwo+PiBwYnMt ZGV2ZWwgbWFpbGluZyBsaXN0Cj4+IHBicy1kZXZlbEBsaXN0cy5wcm94bW94LmNvbQo+PiBodHRw czovL2xpc3RzLnByb3htb3guY29tL2NnaS1iaW4vbWFpbG1hbi9saXN0aW5mby9wYnMtZGV2ZWwK Pj4KPj4KPj4KPiAKPiAKPiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fXwo+IHBicy1kZXZlbCBtYWlsaW5nIGxpc3QKPiBwYnMtZGV2ZWxAbGlzdHMucHJveG1v eC5jb20KPiBodHRwczovL2xpc3RzLnByb3htb3guY29tL2NnaS1iaW4vbWFpbG1hbi9saXN0aW5m by9wYnMtZGV2ZWwKPiAKPiAKCgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX18KcGJzLWRldmVsIG1haWxpbmcgbGlzdApwYnMtZGV2ZWxAbGlzdHMucHJveG1v eC5jb20KaHR0cHM6Ly9saXN0cy5wcm94bW94LmNvbS9jZ2ktYmluL21haWxtYW4vbGlzdGluZm8v cGJzLWRldmVsCg==