From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <pbs-devel-bounces@lists.proxmox.com>
Received: from firstgate.proxmox.com (firstgate.proxmox.com [IPv6:2a01:7e0:0:424::9])
	by lore.proxmox.com (Postfix) with ESMTPS id 8F8E41FF1A2
	for <inbox@lore.proxmox.com>; Wed, 26 Mar 2025 16:23:41 +0100 (CET)
Received: from firstgate.proxmox.com (localhost [127.0.0.1])
	by firstgate.proxmox.com (Proxmox) with ESMTP id BB7FF3B31A;
	Wed, 26 Mar 2025 16:23:36 +0100 (CET)
From: =?UTF-8?q?Fabian=20Gr=C3=BCnbichler?= <f.gruenbichler@proxmox.com>
To: pbs-devel@lists.proxmox.com
Date: Wed, 26 Mar 2025 16:23:09 +0100
Message-Id: <20250326152327.332179-6-f.gruenbichler@proxmox.com>
X-Mailer: git-send-email 2.39.5
In-Reply-To: <20250326152327.332179-1-f.gruenbichler@proxmox.com>
References: <20250326152327.332179-1-f.gruenbichler@proxmox.com>
MIME-Version: 1.0
X-SPAM-LEVEL: Spam detection results:  0
 AWL 0.044 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
 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 05/17] http: add Body implementation
X-BeenThere: pbs-devel@lists.proxmox.com
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Proxmox Backup Server development discussion
 <pbs-devel.lists.proxmox.com>
List-Unsubscribe: <https://lists.proxmox.com/cgi-bin/mailman/options/pbs-devel>, 
 <mailto:pbs-devel-request@lists.proxmox.com?subject=unsubscribe>
List-Archive: <http://lists.proxmox.com/pipermail/pbs-devel/>
List-Post: <mailto:pbs-devel@lists.proxmox.com>
List-Help: <mailto:pbs-devel-request@lists.proxmox.com?subject=help>
List-Subscribe: <https://lists.proxmox.com/cgi-bin/mailman/listinfo/pbs-devel>, 
 <mailto:pbs-devel-request@lists.proxmox.com?subject=subscribe>
Reply-To: Proxmox Backup Server development discussion
 <pbs-devel@lists.proxmox.com>
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: pbs-devel-bounces@lists.proxmox.com
Sender: "pbs-devel" <pbs-devel-bounces@lists.proxmox.com>

aHlwZXIvaHR0cCAxLjAgbm93IG9ubHkgaGF2ZSBhIEJvZHkgdHJhaXQgYW5kIHNvbWUgaW1wbGVt
ZW50YXRpb25zIGZvcgpzcGVjaWZpYyB1c2UgY2FzZXMuIGZvbGxvd2luZyByZXF3ZXN0J3MgbGVh
ZCAoYW5kIGNvcHlpbmcgc29tZSBwYXJ0cyBvZgppdHMgaW1wbGVtZW50YXRpb24pLCBpbXBsZW1l
bnQgb3VyIG93biBCb2R5IHN0cnVjdCBmb3IgdGhlIHR3byBjb21tb24KdXNlIGNhc2VzOgotIGEg
Ym9keSBpbnN0YW5jZSBjb250YWluaW5nIHRoZSBmdWxsIGJvZHkgZGF0YSBhcyBCeXRlcwotIGEg
c3RyZWFtaW5nIGJvZHkgaW5zdGFuY2UKCnRvZ2V0aGVyIHdpdGggdGhlIG1vc3QgY29tbW9uIGhl
bHBlciBtZXRob2RzIChlbXB0eSBib2R5LCBjb252ZXJ0LCB3cmFwCmV4aXN0aW5nIHN0cmVhbSBh
cyBib2R5KSB0aGlzIHNob3VsZCBtYWtlIHRoZSByZXN0IG9mIHRoZSB1cGdyYWRlIGZhaXJseQpz
dHJhaWdodC1mb3J3YXJkLgoKU2lnbmVkLW9mZi1ieTogRmFiaWFuIEdyw7xuYmljaGxlciA8Zi5n
cnVlbmJpY2hsZXJAcHJveG1veC5jb20+Ci0tLQogcHJveG1veC1odHRwL0NhcmdvLnRvbWwgIHwg
IDEwICsrKwogcHJveG1veC1odHRwL3NyYy9ib2R5LnJzIHwgMTMzICsrKysrKysrKysrKysrKysr
KysrKysrKysrKysrKysrKysrKysrKwogcHJveG1veC1odHRwL3NyYy9saWIucnMgIHwgICA1ICsr
CiAzIGZpbGVzIGNoYW5nZWQsIDE0OCBpbnNlcnRpb25zKCspCiBjcmVhdGUgbW9kZSAxMDA2NDQg
cHJveG1veC1odHRwL3NyYy9ib2R5LnJzCgpkaWZmIC0tZ2l0IGEvcHJveG1veC1odHRwL0Nhcmdv
LnRvbWwgYi9wcm94bW94LWh0dHAvQ2FyZ28udG9tbAppbmRleCA0ZWMxNDJjOS4uMWZiYzcwYTgg
MTAwNjQ0Ci0tLSBhL3Byb3htb3gtaHR0cC9DYXJnby50b21sCisrKyBiL3Byb3htb3gtaHR0cC9D
YXJnby50b21sCkBAIC00MCw2ICs0MCwxNSBAQCBmbGF0ZTIgPSB7IHdvcmtzcGFjZSA9IHRydWUg
fQogW2ZlYXR1cmVzXQogZGVmYXVsdCA9IFtdCiAKK2JvZHkgPSBbCisgICAgImRlcDpieXRlcyIs
CisgICAgImRlcDpmdXR1cmVzIiwKKyAgICAiZGVwOmh0dHAtYm9keSIsCisgICAgImRlcDpodHRw
LWJvZHktdXRpbCIsCisgICAgImRlcDpoeXBlciIsCisgICAgImRlcDpzeW5jX3dyYXBwZXIiLAor
ICAgICJzeW5jX3dyYXBwZXI/L2Z1dHVyZXMiLAorXQogcmF0ZS1saW1pdGVyID0gWyJkZXA6aHlw
ZXIiXQogcmF0ZS1saW1pdGVkLXN0cmVhbSA9IFsKICAgICAiZGVwOnRva2lvIiwKQEAgLTY3LDYg
Kzc2LDcgQEAgY2xpZW50ID0gWwogICAgICJoeXBlci11dGlsPy9odHRwMSIsCiAgICAgImh5cGVy
LXV0aWw/L3Rva2lvIiwKICAgICAidG9raW8/L2lvLXV0aWwiLAorICAgICJib2R5IiwKICAgICAi
aHR0cC1oZWxwZXJzIiwKICAgICAicmF0ZS1saW1pdGVkLXN0cmVhbSIsCiBdCmRpZmYgLS1naXQg
YS9wcm94bW94LWh0dHAvc3JjL2JvZHkucnMgYi9wcm94bW94LWh0dHAvc3JjL2JvZHkucnMKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAuLjNlYjE3MzU1Ci0tLSAvZGV2L251bGwK
KysrIGIvcHJveG1veC1odHRwL3NyYy9ib2R5LnJzCkBAIC0wLDAgKzEsMTMzIEBACit1c2Ugc3Rk
Ojp7cGluOjpQaW4sIHRhc2s6OlBvbGx9OworCit1c2UgYW55aG93OjpFcnJvcjsKK3VzZSBieXRl
czo6Qnl0ZXM7CisKK3VzZSBmdXR1cmVzOjpyZWFkeTsKK3VzZSBodHRwX2JvZHlfdXRpbDo6Y29t
YmluYXRvcnM6OkJveEJvZHk7Cit1c2UgaHlwZXI6OmJvZHk6OntCb2R5IGFzIEh5cGVyQm9keSwg
RnJhbWUsIFNpemVIaW50fTsKKworLy8gUGFydGlhbGx5IGNvcGllZCBhbmQgaGVhdmlseSBiYXNl
ZCBvbiByZXF3ZXN0IDAuMTIgQm9keSBpbXBsZW1lbnRhdGlvbiBmcm9tIHNyYy9hc3luY19pbXBs
L2JvZHkucnMKKy8vIENvcHlyaWdodCAoYykgMjAxNi0yMDI1IFNlYW4gTWNBcnRodXIKKworLy8v
IEN1c3RvbSBpbXBsZW1lbnRhdGlvbiBvZiBoeXBlcjo6Ym9keTo6Qm9keSBzdXBwb3J0aW5nIGVp
dGhlciBhICJmdWxsIiBib2R5IHRoYXQgY2FuIHJldHVybiBpdHMKKy8vLyBjb250ZW50cyBhcyBi
eXRlIHNlcXVlbmNlIGluIG9uZSBnbywgb3IgInN0cmVhbWluZyIgYm9keSB0aGF0IGNhbiBiZSBw
b2xsZWQuCitwdWIgc3RydWN0IEJvZHkgeworICAgIGlubmVyOiBJbm5lckJvZHksCit9CisKK2Vu
dW0gSW5uZXJCb2R5IHsKKyAgICBGdWxsKEJ5dGVzKSwKKyAgICBTdHJlYW1pbmcoQm94Qm9keTxC
eXRlcywgRXJyb3I+KSwKK30KKworaW1wbCBCb2R5IHsKKyAgICAvLy8gU2hvcnRjdXQgZm9yIGNy
ZWF0aW5nIGFuIGVtcHR5IGJvZHkgaW5zdGFuY2Ugd2l0aCBubyBkYXRhLgorICAgIHB1YiBmbiBl
bXB0eSgpIC0+IFNlbGYgeworICAgICAgICBCeXRlczo6bmV3KCkuaW50bygpCisgICAgfQorCisg
ICAgLy8vIFJldHVybnMgdGhlIGJvZHkgY29udGVudHMgaWYgaXQgaXMgYSAiZnVsbCIgYm9keSwg
Tm9uZSBvdGhlcndpc2UuCisgICAgcHViIGZuIGFzX2J5dGVzKCZzZWxmKSAtPiBPcHRpb248Jlt1
OF0+IHsKKyAgICAgICAgbWF0Y2ggc2VsZi5pbm5lciB7CisgICAgICAgICAgICBJbm5lckJvZHk6
OkZ1bGwocmVmIGJ5dGVzKSA9PiBTb21lKGJ5dGVzKSwKKyAgICAgICAgICAgIElubmVyQm9keTo6
U3RyZWFtaW5nKF8pID0+IE5vbmUsCisgICAgICAgIH0KKyAgICB9CisKKyAgICBwdWIgZm4gd3Jh
cF9zdHJlYW08Uz4oc3RyZWFtOiBTKSAtPiBCb2R5CisgICAgd2hlcmUKKyAgICAgICAgUzogZnV0
dXJlczo6c3RyZWFtOjpUcnlTdHJlYW0gKyBTZW5kICsgJ3N0YXRpYywKKworICAgICAgICBTOjpF
cnJvcjogSW50bzxFcnJvcj4sCisKKyAgICAgICAgQnl0ZXM6IEZyb208Uzo6T2s+LAorICAgIHsK
KyAgICAgICAgQm9keTo6c3RyZWFtKHN0cmVhbSkKKyAgICB9CisKKyAgICBwdWIoY3JhdGUpIGZu
IHN0cmVhbTxTPihzdHJlYW06IFMpIC0+IEJvZHkKKyAgICB3aGVyZQorICAgICAgICBTOiBmdXR1
cmVzOjpzdHJlYW06OlRyeVN0cmVhbSArIFNlbmQgKyAnc3RhdGljLAorCisgICAgICAgIFM6OkVy
cm9yOiBJbnRvPEVycm9yPiwKKworICAgICAgICBCeXRlczogRnJvbTxTOjpPaz4sCisgICAgewor
ICAgICAgICB1c2UgZnV0dXJlczo6VHJ5U3RyZWFtRXh0OworCisgICAgICAgIHVzZSBodHRwX2Jv
ZHk6OkZyYW1lOworCisgICAgICAgIHVzZSBodHRwX2JvZHlfdXRpbDo6U3RyZWFtQm9keTsKKwor
ICAgICAgICBsZXQgYm9keSA9IGh0dHBfYm9keV91dGlsOjpCb2R5RXh0Ojpib3hlZChTdHJlYW1C
b2R5OjpuZXcoc3luY193cmFwcGVyOjpTeW5jU3RyZWFtOjpuZXcoCisgICAgICAgICAgICBzdHJl
YW0KKyAgICAgICAgICAgICAgICAubWFwX29rKHxkfCBGcmFtZTo6ZGF0YShCeXRlczo6ZnJvbShk
KSkpCisgICAgICAgICAgICAgICAgLm1hcF9lcnIoSW50bzo6aW50byksCisgICAgICAgICkpKTsK
KworICAgICAgICBCb2R5IHsKKyAgICAgICAgICAgIGlubmVyOiBJbm5lckJvZHk6OlN0cmVhbWlu
Zyhib2R5KSwKKyAgICAgICAgfQorICAgIH0KK30KKworaW1wbCBIeXBlckJvZHkgZm9yIEJvZHkg
eworICAgIHR5cGUgRGF0YSA9IEJ5dGVzOworCisgICAgdHlwZSBFcnJvciA9IEVycm9yOworCisg
ICAgZm4gcG9sbF9mcmFtZSgKKyAgICAgICAgbXV0IHNlbGY6IHN0ZDo6cGluOjpQaW48Jm11dCBT
ZWxmPiwKKyAgICAgICAgY3g6ICZtdXQgc3RkOjp0YXNrOjpDb250ZXh0PCdfPiwKKyAgICApIC0+
IHN0ZDo6dGFzazo6UG9sbDxPcHRpb248UmVzdWx0PGh5cGVyOjpib2R5OjpGcmFtZTxTZWxmOjpE
YXRhPiwgU2VsZjo6RXJyb3I+Pj4geworICAgICAgICBtYXRjaCBzZWxmLmlubmVyIHsKKyAgICAg
ICAgICAgIElubmVyQm9keTo6RnVsbChyZWYgbXV0IGJ5dGVzKSA9PiB7CisgICAgICAgICAgICAg
ICAgbGV0IHJlcyA9IGJ5dGVzLnNwbGl0X29mZigwKTsKKyAgICAgICAgICAgICAgICBpZiByZXMu
aXNfZW1wdHkoKSB7CisgICAgICAgICAgICAgICAgICAgIHJldHVybiBQb2xsOjpSZWFkeShOb25l
KTsKKyAgICAgICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgICAgICAgICByZXR1cm4g
UG9sbDo6UmVhZHkoU29tZShPayhGcmFtZTo6ZGF0YShyZXMpKSkpOworICAgICAgICAgICAgICAg
IH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIElubmVyQm9keTo6U3RyZWFtaW5nKHJlZiBt
dXQgYm9keSkgPT4gUG9sbDo6UmVhZHkoCisgICAgICAgICAgICAgICAgcmVhZHkhKFBpbjo6bmV3
KGJvZHkpLnBvbGxfZnJhbWUoY3gpKQorICAgICAgICAgICAgICAgICAgICAubWFwKHxvcHRfY2h1
bmt8IG9wdF9jaHVuay5tYXBfZXJyKEVycm9yOjpmcm9tKSksCisgICAgICAgICAgICApLAorICAg
ICAgICB9CisgICAgfQorCisgICAgZm4gaXNfZW5kX3N0cmVhbSgmc2VsZikgLT4gYm9vbCB7Cisg
ICAgICAgIG1hdGNoIHNlbGYuaW5uZXIgeworICAgICAgICAgICAgSW5uZXJCb2R5OjpGdWxsKHJl
ZiBieXRlcykgPT4gYnl0ZXMuaXNfZW1wdHkoKSwKKyAgICAgICAgICAgIElubmVyQm9keTo6U3Ry
ZWFtaW5nKHJlZiBib3hfYm9keSkgPT4gYm94X2JvZHkuaXNfZW5kX3N0cmVhbSgpLAorICAgICAg
ICB9CisgICAgfQorCisgICAgZm4gc2l6ZV9oaW50KCZzZWxmKSAtPiBoeXBlcjo6Ym9keTo6U2l6
ZUhpbnQgeworICAgICAgICBtYXRjaCBzZWxmLmlubmVyIHsKKyAgICAgICAgICAgIElubmVyQm9k
eTo6RnVsbChyZWYgYnl0ZXMpID0+IFNpemVIaW50Ojp3aXRoX2V4YWN0KGJ5dGVzLmxlbigpIGFz
IHU2NCksCisgICAgICAgICAgICBJbm5lckJvZHk6OlN0cmVhbWluZyhyZWYgYm94X2JvZHkpID0+
IGJveF9ib2R5LnNpemVfaGludCgpLAorICAgICAgICB9CisgICAgfQorfQorCitpbXBsIEZyb208
Qnl0ZXM+IGZvciBCb2R5IHsKKyAgICBmbiBmcm9tKHZhbHVlOiBCeXRlcykgLT4gU2VsZiB7Cisg
ICAgICAgIFNlbGYgeworICAgICAgICAgICAgaW5uZXI6IElubmVyQm9keTo6RnVsbCh2YWx1ZSks
CisgICAgICAgIH0KKyAgICB9Cit9CisKK2ltcGwgRnJvbTxWZWM8dTg+PiBmb3IgQm9keSB7Cisg
ICAgZm4gZnJvbSh2YWx1ZTogVmVjPHU4PikgLT4gU2VsZiB7CisgICAgICAgIEJ5dGVzOjpmcm9t
KHZhbHVlKS5pbnRvKCkKKyAgICB9Cit9CisKK2ltcGwgRnJvbTxTdHJpbmc+IGZvciBCb2R5IHsK
KyAgICBmbiBmcm9tKHZhbHVlOiBTdHJpbmcpIC0+IFNlbGYgeworICAgICAgICBCeXRlczo6Y29w
eV9mcm9tX3NsaWNlKHZhbHVlLmFzX2J5dGVzKCkpLmludG8oKQorICAgIH0KK30KZGlmZiAtLWdp
dCBhL3Byb3htb3gtaHR0cC9zcmMvbGliLnJzIGIvcHJveG1veC1odHRwL3NyYy9saWIucnMKaW5k
ZXggNDc3MGFhZjQuLjhiNjk1M2IwIDEwMDY0NAotLS0gYS9wcm94bW94LWh0dHAvc3JjL2xpYi5y
cworKysgYi9wcm94bW94LWh0dHAvc3JjL2xpYi5ycwpAQCAtMzUsMyArMzUsOCBAQCBwdWIgdXNl
IHJhdGVfbGltaXRlcjo6e1JhdGVMaW1pdCwgUmF0ZUxpbWl0ZXIsIFJhdGVMaW1pdGVyVmVjLCBT
aGFyZWFibGVSYXRlTGltaQogbW9kIHJhdGVfbGltaXRlZF9zdHJlYW07CiAjW2NmZyhmZWF0dXJl
ID0gInJhdGUtbGltaXRlZC1zdHJlYW0iKV0KIHB1YiB1c2UgcmF0ZV9saW1pdGVkX3N0cmVhbTo6
UmF0ZUxpbWl0ZWRTdHJlYW07CisKKyNbY2ZnKGZlYXR1cmUgPSAiYm9keSIpXQorbW9kIGJvZHk7
CisjW2NmZyhmZWF0dXJlID0gImJvZHkiKV0KK3B1YiB1c2UgYm9keTo6Qm9keTsKLS0gCjIuMzku
NQoKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpwYnMt
ZGV2ZWwgbWFpbGluZyBsaXN0CnBicy1kZXZlbEBsaXN0cy5wcm94bW94LmNvbQpodHRwczovL2xp
c3RzLnByb3htb3guY29tL2NnaS1iaW4vbWFpbG1hbi9saXN0aW5mby9wYnMtZGV2ZWwK