From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <pve-devel-bounces@lists.proxmox.com>
Received: from firstgate.proxmox.com (firstgate.proxmox.com [212.224.123.68])
	by lore.proxmox.com (Postfix) with ESMTPS id B7A1C1FF15E
	for <inbox@lore.proxmox.com>; Tue, 22 Apr 2025 18:28:22 +0200 (CEST)
Received: from firstgate.proxmox.com (localhost [127.0.0.1])
	by firstgate.proxmox.com (Proxmox) with ESMTP id 64521D63;
	Tue, 22 Apr 2025 18:27:56 +0200 (CEST)
From: =?UTF-8?q?Michael=20K=C3=B6ppl?= <m.koeppl@proxmox.com>
To: pve-devel@lists.proxmox.com
Date: Tue, 22 Apr 2025 18:27:39 +0200
Message-Id: <20250422162739.255641-7-m.koeppl@proxmox.com>
X-Mailer: git-send-email 2.39.5
In-Reply-To: <20250422162739.255641-1-m.koeppl@proxmox.com>
References: <20250422162739.255641-1-m.koeppl@proxmox.com>
MIME-Version: 1.0
X-SPAM-LEVEL: Spam detection results:  0
 AWL 0.000 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: [pve-devel] [RFC PATCH pve-installer 6/6] closes #5757: common: add
 checks for valid IPv4 address within subnet
X-BeenThere: pve-devel@lists.proxmox.com
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Proxmox VE development discussion <pve-devel.lists.proxmox.com>
List-Unsubscribe: <https://lists.proxmox.com/cgi-bin/mailman/options/pve-devel>, 
 <mailto:pve-devel-request@lists.proxmox.com?subject=unsubscribe>
List-Archive: <http://lists.proxmox.com/pipermail/pve-devel/>
List-Post: <mailto:pve-devel@lists.proxmox.com>
List-Help: <mailto:pve-devel-request@lists.proxmox.com?subject=help>
List-Subscribe: <https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel>, 
 <mailto:pve-devel-request@lists.proxmox.com?subject=subscribe>
Reply-To: Proxmox VE development discussion <pve-devel@lists.proxmox.com>
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: pve-devel-bounces@lists.proxmox.com
Sender: "pve-devel" <pve-devel-bounces@lists.proxmox.com>

SW1wbGVtZW50IGNoZWNrIGlmIHRoZSBhZGRyZXNzIGVudGVyZWQgYnkgdGhlIHVzZXIgaXMgdmFs
aWQgd2l0aGluIHRoZQpnaXZlbiBzdWJuZXQsIGkuZS4gbm90IGEgbmV0d29yayBhZGRyZXNzIG9y
IGJyb2FkY2FzdCBhZGRyZXNzLgoKUGFydGlhbGx5IGNsb3NlcyBbMF0uCgpbMF0gaHR0cHM6Ly9i
dWd6aWxsYS5wcm94bW94LmNvbS9zaG93X2J1Zy5jZ2k/aWQ9NTc1NwoKU2lnbmVkLW9mZi1ieTog
TWljaGFlbCBLw7ZwcGwgPG0ua29lcHBsQHByb3htb3guY29tPgotLS0KU29tZSBpbnB1dCAvIGRp
c2N1c3Npb24gd291bGQgYmUgbXVjaCBhcHByZWNpYXRlZCBoZXJlLCBzaW5jZSB0aGlzIG1pZ2h0
CmFnYWluIGJlIGNvbnNpZGVyZWQgdG9vIHJlc3RyaWN0aXZlLiBNdWx0aXBsZSBxdWVzdGlvbnMg
Y2FtZSB1cCBkdXJpbmcKaW4tcGVyc29uIGRpc2N1c3Npb246CiogSXMgY2hlY2sgZm9yIGJyb2Fk
Y2FzdCBhZGRyZXNzIGRlc2lyZWQgb3IgaXMgaXQgY29uc2lkZXJlZCBhIHZhbGlkCmNvbmZpZ3Vy
YXRpb24gZm9yIFBWRT8KKiBJcyBJUHY2IGNoZWNrIG5lY2Vzc2FyeSBhbmQgaWYgc28sIGlzIGFs
bG93aW5nIHRvIHNldCB0aGUgYWRkcmVzcyB0byBhCmJyb2FkY2FzdCBhZGRyZXNzIGEgdmFsaWQg
c2V0dGluZyBmb3IgSVB2Nj8KCiBwcm94bW94LWluc3RhbGxlci1jb21tb24vc3JjL3V0aWxzLnJz
IHwgNDcgKysrKysrKysrKysrKysrKysrKysrKystLS0tCiAxIGZpbGUgY2hhbmdlZCwgNDEgaW5z
ZXJ0aW9ucygrKSwgNiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9wcm94bW94LWluc3RhbGxl
ci1jb21tb24vc3JjL3V0aWxzLnJzIGIvcHJveG1veC1pbnN0YWxsZXItY29tbW9uL3NyYy91dGls
cy5ycwppbmRleCA0OWYxYzlmLi4zZDc5NzQ5IDEwMDY0NAotLS0gYS9wcm94bW94LWluc3RhbGxl
ci1jb21tb24vc3JjL3V0aWxzLnJzCisrKyBiL3Byb3htb3gtaW5zdGFsbGVyLWNvbW1vbi9zcmMv
dXRpbHMucnMKQEAgLTE2LDYgKzE2LDEwIEBAIHB1YiBlbnVtIENpZHJBZGRyZXNzUGFyc2VFcnJv
ciB7CiAgICAgSW52YWxpZEFkZHIoQWRkclBhcnNlRXJyb3IpLAogICAgIC8vLyBUaGUgbWFzayBj
b3VsZCBub3QgYmUgcGFyc2VkLgogICAgIEludmFsaWRNYXNrKE9wdGlvbjxQYXJzZUludEVycm9y
PiksCisgICAgLy8vIFRoZSBJUCBhZGRyZXNzIGlzIGEgbmV0d29yayBhZGRyZXNzLgorICAgIElz
TmV0d29ya0FkZHIsCisgICAgLy8vIFRoZSBJUCBhZGRyZXNzIGlzIGEgYnJvYWRjYXN0IGFkZHJl
c3MuCisgICAgSXNCcm9hZGNhc3RBZGRyLAogfQogCiBpbXBsIGZtdDo6RGlzcGxheSBmb3IgQ2lk
ckFkZHJlc3NQYXJzZUVycm9yIHsKQEAgLTI2LDYgKzMwLDEwIEBAIGltcGwgZm10OjpEaXNwbGF5
IGZvciBDaWRyQWRkcmVzc1BhcnNlRXJyb3IgewogICAgICAgICAgICAgfQogICAgICAgICAgICAg
Q2lkckFkZHJlc3NQYXJzZUVycm9yOjpJbnZhbGlkQWRkcihhZGRyX3BhcnNlX2Vycm9yKSA9PiBm
b3JtYXQhKCJ7YWRkcl9wYXJzZV9lcnJvcn0iKSwKICAgICAgICAgICAgIENpZHJBZGRyZXNzUGFy
c2VFcnJvcjo6SW52YWxpZE1hc2socGFyc2VfaW50X2Vycm9yKSA9PiBmb3JtYXQhKCJ7Oj99Iiwg
cGFyc2VfaW50X2Vycm9yKSwKKyAgICAgICAgICAgIENpZHJBZGRyZXNzUGFyc2VFcnJvcjo6SXNO
ZXR3b3JrQWRkciA9PiBTdHJpbmc6OmZyb20oIkFkZHJlc3MgaXMgYSBuZXR3b3JrIGFkZHJlc3Mi
KSwKKyAgICAgICAgICAgIENpZHJBZGRyZXNzUGFyc2VFcnJvcjo6SXNCcm9hZGNhc3RBZGRyID0+
IHsKKyAgICAgICAgICAgICAgICBTdHJpbmc6OmZyb20oIkFkZHJlc3MgaXMgYSBicm9hZGNhc3Qg
YWRkcmVzcyIpCisgICAgICAgICAgICB9CiAgICAgICAgIH07CiAKICAgICAgICAgd3JpdGUhKGYs
ICJJbnZhbGlkIENJRFI6IHttc2d9IikKQEAgLTYyLDEwICs3MCwxMiBAQCBpbXBsIENpZHJBZGRy
ZXNzIHsKICAgICAgICAgbGV0IGFkZHIgPSBhZGRyLmludG8oKTsKIAogICAgICAgICBpZiBtYXNr
ID4gbWFza19saW1pdCgmYWRkcikgewotICAgICAgICAgICAgRXJyKENpZHJBZGRyZXNzUGFyc2VF
cnJvcjo6SW52YWxpZE1hc2soTm9uZSkpCi0gICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICBP
ayhTZWxmIHsgYWRkciwgbWFzayB9KQorICAgICAgICAgICAgcmV0dXJuIEVycihDaWRyQWRkcmVz
c1BhcnNlRXJyb3I6OkludmFsaWRNYXNrKE5vbmUpKTsKICAgICAgICAgfQorCisgICAgICAgIGNo
ZWNrX2FkZHJfdmFsaWRfaW5fc3VibmV0KCZhZGRyLCBtYXNrKT87CisKKyAgICAgICAgT2soU2Vs
ZiB7IGFkZHIsIG1hc2sgfSkKICAgICB9CiAKICAgICAvLy8gUmV0dXJucyBvbmx5IHRoZSBJUCBh
ZGRyZXNzIHBhcnQgb2YgdGhlIGFkZHJlc3MuCkBAIC0xMDQsMTAgKzExNCwxMiBAQCBpbXBsIEZy
b21TdHIgZm9yIENpZHJBZGRyZXNzIHsKICAgICAgICAgICAgIC5tYXBfZXJyKHxlcnJ8IENpZHJB
ZGRyZXNzUGFyc2VFcnJvcjo6SW52YWxpZE1hc2soU29tZShlcnIpKSk/OwogCiAgICAgICAgIGlm
IG1hc2sgPiBtYXNrX2xpbWl0KCZhZGRyKSB7Ci0gICAgICAgICAgICBFcnIoQ2lkckFkZHJlc3NQ
YXJzZUVycm9yOjpJbnZhbGlkTWFzayhOb25lKSkKLSAgICAgICAgfSBlbHNlIHsKLSAgICAgICAg
ICAgIE9rKFNlbGYgeyBhZGRyLCBtYXNrIH0pCisgICAgICAgICAgICByZXR1cm4gRXJyKENpZHJB
ZGRyZXNzUGFyc2VFcnJvcjo6SW52YWxpZE1hc2soTm9uZSkpOwogICAgICAgICB9CisKKyAgICAg
ICAgY2hlY2tfYWRkcl92YWxpZF9pbl9zdWJuZXQoJmFkZHIsIG1hc2spPzsKKworICAgICAgICBP
ayhTZWxmIHsgYWRkciwgbWFzayB9KQogICAgIH0KIH0KIApAQCAtMTM0LDYgKzE0NiwyOSBAQCBm
biBtYXNrX2xpbWl0KGFkZHI6ICZJcEFkZHIpIC0+IHVzaXplIHsKICAgICBpZiBhZGRyLmlzX2lw
djQoKSB7IDMyIH0gZWxzZSB7IDEyOCB9CiB9CiAKK2ZuIGNoZWNrX2FkZHJfdmFsaWRfaW5fc3Vi
bmV0KGFkZHI6ICZJcEFkZHIsIG1hc2s6IHVzaXplKSAtPiBSZXN1bHQ8KCksIENpZHJBZGRyZXNz
UGFyc2VFcnJvcj4geworICAgIG1hdGNoICZhZGRyIHsKKyAgICAgICAgSXBBZGRyOjpWNChhZGRy
X3Y0KSA9PiB7CisgICAgICAgICAgICBsZXQgbnVtX2hvc3RfYml0cyA9IDMyIC0gbWFzazsKKyAg
ICAgICAgICAgIGxldCBob3N0X3BhcnRfbWFzayA9ICgxdTMyIDw8IG51bV9ob3N0X2JpdHMpIC0g
MTsKKworICAgICAgICAgICAgbGV0IGlwX2JpdHMgPSB1MzI6OmZyb21fYmVfYnl0ZXMoYWRkcl92
NC5vY3RldHMoKSk7CisKKyAgICAgICAgICAgIGxldCBuZXR3b3JrX2FkZHIgPSBpcF9iaXRzICYg
IWhvc3RfcGFydF9tYXNrOworICAgICAgICAgICAgbGV0IGJyb2FkY2FzdF9hZGRyID0gbmV0d29y
a19hZGRyIHwgaG9zdF9wYXJ0X21hc2s7CisKKyAgICAgICAgICAgIGlmIGlwX2JpdHMgPT0gbmV0
d29ya19hZGRyIHsKKyAgICAgICAgICAgICAgICBFcnIoQ2lkckFkZHJlc3NQYXJzZUVycm9yOjpJ
c05ldHdvcmtBZGRyKQorICAgICAgICAgICAgfSBlbHNlIGlmIGlwX2JpdHMgPT0gYnJvYWRjYXN0
X2FkZHIgeworICAgICAgICAgICAgICAgIEVycihDaWRyQWRkcmVzc1BhcnNlRXJyb3I6OklzQnJv
YWRjYXN0QWRkcikKKyAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgT2soKCkp
CisgICAgICAgICAgICB9CisgICAgICAgIH0KKyAgICAgICAgSXBBZGRyOjpWNihfKSA9PiBPaygo
KSksCisgICAgfQorfQorCiAvLy8gUG9zc2libGUgZXJyb3JzIHRoYXQgbWlnaHQgb2NjdXIgd2hl
biBwYXJzaW5nIEZRRE5zLgogI1tkZXJpdmUoRGVidWcsIEVxLCBQYXJ0aWFsRXEpXQogcHViIGVu
dW0gRnFkblBhcnNlRXJyb3IgewotLSAKMi4zOS41CgoKCl9fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fCnB2ZS1kZXZlbCBtYWlsaW5nIGxpc3QKcHZlLWRldmVs
QGxpc3RzLnByb3htb3guY29tCmh0dHBzOi8vbGlzdHMucHJveG1veC5jb20vY2dpLWJpbi9tYWls
bWFuL2xpc3RpbmZvL3B2ZS1kZXZlbAo=