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 [IPv6:2a01:7e0:0:424::9]) by lore.proxmox.com (Postfix) with ESMTPS id 9D91B1FF164 for <inbox@lore.proxmox.com>; Fri, 14 Feb 2025 14:40:21 +0100 (CET) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id 573941AC33; Fri, 14 Feb 2025 14:40:02 +0100 (CET) From: Gabriel Goller <g.goller@proxmox.com> To: pve-devel@lists.proxmox.com Date: Fri, 14 Feb 2025 14:39:46 +0100 Message-Id: <20250214133951.344500-7-g.goller@proxmox.com> X-Mailer: git-send-email 2.39.5 In-Reply-To: <20250214133951.344500-1-g.goller@proxmox.com> References: <20250214133951.344500-1-g.goller@proxmox.com> MIME-Version: 1.0 X-SPAM-LEVEL: Spam detection results: 0 AWL -0.031 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] [PATCH pve-network 06/11] add config file and common read/write methods 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> QWRkIHRoZSBjb25maWcgZmlsZSBmb3Igb3NwZiBhbmQgb3BlbmZhYnJpYyBhbmQgYWRkIGNvbW1v biByZWFkL3dyaXRlCmZ1bmN0aW9ucy4gV2UgYWxzbyBhZGQgdGhlIG9zcGYvb3BlbmZhYnJpYyBj b25maWcgdG8gdGhlCmAucnVubmluZy1jb25maWdgIOKAkyBldmVuIHRob3VnaCB3ZSBkb24ndCBy ZWFkeSBmcm9tIGl0IGxhdGVyLgoKU2lnbmVkLW9mZi1ieTogR2FicmllbCBHb2xsZXIgPGcuZ29s bGVyQHByb3htb3guY29tPgotLS0KIHNyYy9QVkUvTmV0d29yay9TRE4ucG0gICAgICAgICB8ICA4 ICsrKy0KIHNyYy9QVkUvTmV0d29yay9TRE4vRmFicmljcy5wbSB8IDg2ICsrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysKIHNyYy9QVkUvTmV0d29yay9TRE4vTWFrZWZpbGUgICB8ICAy ICstCiAzIGZpbGVzIGNoYW5nZWQsIDk0IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCiBj cmVhdGUgbW9kZSAxMDA2NDQgc3JjL1BWRS9OZXR3b3JrL1NETi9GYWJyaWNzLnBtCgpkaWZmIC0t Z2l0IGEvc3JjL1BWRS9OZXR3b3JrL1NETi5wbSBiL3NyYy9QVkUvTmV0d29yay9TRE4ucG0KaW5k ZXggYzdkY2NmYTg5ZmNmLi4zOTk0MzViMDdjZDIgMTAwNjQ0Ci0tLSBhL3NyYy9QVkUvTmV0d29y ay9TRE4ucG0KKysrIGIvc3JjL1BWRS9OZXR3b3JrL1NETi5wbQpAQCAtMTUwLDEzICsxNTAsMTkg QEAgc3ViIGNvbW1pdF9jb25maWcgewogICAgIG15ICR6b25lc19jZmcgPSBQVkU6Ok5ldHdvcms6 OlNETjo6Wm9uZXM6OmNvbmZpZygpOwogICAgIG15ICRjb250cm9sbGVyc19jZmcgPSBQVkU6Ok5l dHdvcms6OlNETjo6Q29udHJvbGxlcnM6OmNvbmZpZygpOwogICAgIG15ICRzdWJuZXRzX2NmZyA9 IFBWRTo6TmV0d29yazo6U0ROOjpTdWJuZXRzOjpjb25maWcoKTsKKyAgICBteSAkb3BlbmZhYnJp Y3NfY2ZnX3J1c3QgPSBQVkU6Ok5ldHdvcms6OlNETjo6RmFicmljczo6Z2V0X2NvbmZpZygib3Bl bmZhYnJpYyIpOworICAgIG15ICRvcGVuZmFicmljc19jZmcgPSAkb3BlbmZhYnJpY3NfY2ZnX3J1 c3QtPmdldF9pbm5lcigpOworICAgIG15ICRvc3BmX2NvbmZpZ19ydXN0ID0gUFZFOjpOZXR3b3Jr OjpTRE46OkZhYnJpY3M6OmdldF9jb25maWcoIm9zcGYiKTsKKyAgICBteSAkb3NwZl9jZmcgPSAk b3NwZl9jb25maWdfcnVzdC0+Z2V0X2lubmVyKCk7CiAKICAgICBteSAkdm5ldHMgPSB7IGlkcyA9 PiAkdm5ldHNfY2ZnLT57aWRzfSB9OwogICAgIG15ICR6b25lcyA9IHsgaWRzID0+ICR6b25lc19j ZmctPntpZHN9IH07CiAgICAgbXkgJGNvbnRyb2xsZXJzID0geyBpZHMgPT4gJGNvbnRyb2xsZXJz X2NmZy0+e2lkc30gfTsKICAgICBteSAkc3VibmV0cyA9IHsgaWRzID0+ICRzdWJuZXRzX2NmZy0+ e2lkc30gfTsKKyAgICBteSAkb3BlbmZhYnJpYyA9IHsgaWRzID0+ICRvcGVuZmFicmljc19jZmcg fTsKKyAgICBteSAkb3NwZiA9IHsgaWRzID0+ICRvc3BmX2NmZyB9OwogCi0gICAgJGNmZyA9IHsg dmVyc2lvbiA9PiAkdmVyc2lvbiwgdm5ldHMgPT4gJHZuZXRzLCB6b25lcyA9PiAkem9uZXMsIGNv bnRyb2xsZXJzID0+ICRjb250cm9sbGVycywgc3VibmV0cyA9PiAkc3VibmV0cyB9OworICAgICRj ZmcgPSB7IHZlcnNpb24gPT4gJHZlcnNpb24sIHZuZXRzID0+ICR2bmV0cywgem9uZXMgPT4gJHpv bmVzLCBjb250cm9sbGVycyA9PiAkY29udHJvbGxlcnMsIHN1Ym5ldHMgPT4gJHN1Ym5ldHMsIG9w ZW5mYWJyaWMgPT4gJG9wZW5mYWJyaWMsIG9zcGYgPT4gJG9zcGYgfTsKIAogICAgIGNmc193cml0 ZV9maWxlKCRydW5uaW5nX2NmZywgJGNmZyk7CiB9CmRpZmYgLS1naXQgYS9zcmMvUFZFL05ldHdv cmsvU0ROL0ZhYnJpY3MucG0gYi9zcmMvUFZFL05ldHdvcmsvU0ROL0ZhYnJpY3MucG0KbmV3IGZp bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwLi5iYmQwN2NmMzA2MjQKLS0tIC9kZXYv bnVsbAorKysgYi9zcmMvUFZFL05ldHdvcmsvU0ROL0ZhYnJpY3MucG0KQEAgLTAsMCArMSw4NiBA QAorcGFja2FnZSBQVkU6Ok5ldHdvcms6OlNETjo6RmFicmljczsKKwordXNlIHN0cmljdDsKK3Vz ZSB3YXJuaW5nczsKKwordXNlIFBWRTo6Q2x1c3RlciBxdyhjZnNfcmVnaXN0ZXJfZmlsZSBjZnNf cmVhZF9maWxlIGNmc19sb2NrX2ZpbGUgY2ZzX3dyaXRlX2ZpbGUpOwordXNlIFBWRTo6UlM6OlNE Tjo6RmFicmljczsKK3VzZSBQVkU6OlJTOjpTRE46OkZhYnJpY3M6Ok9zcGY7Cit1c2UgUFZFOjpS Uzo6U0ROOjpGYWJyaWNzOjpPcGVuRmFicmljOworCitjZnNfcmVnaXN0ZXJfZmlsZSgKKyAgICAn c2RuL2ZhYnJpY3Mvb3BlbmZhYnJpYy5jZmcnLAorICAgIFwmcGFyc2VfZmFicmljc19jb25maWcs CisgICAgXCZ3cml0ZV9mYWJyaWNzX2NvbmZpZywKKyk7CisKK2Nmc19yZWdpc3Rlcl9maWxlKAor ICAgICdzZG4vZmFicmljcy9vc3BmLmNmZycsCisgICAgXCZwYXJzZV9mYWJyaWNzX2NvbmZpZywK KyAgICBcJndyaXRlX2ZhYnJpY3NfY29uZmlnLAorKTsKKworc3ViIHBhcnNlX2ZhYnJpY3NfY29u ZmlnIHsKKyAgICBteSAoJGZpbGVuYW1lLCAkcmF3KSA9IEBfOworCisgICAgJHJhdyA9ICcnIGlm ICFkZWZpbmVkKCRyYXcpOworICAgIHJldHVybiAkcmF3OworfQorCitzdWIgd3JpdGVfZmFicmlj c19jb25maWcgeworICAgIG15ICgkZmlsZW5hbWUsICRjb25maWcpID0gQF87CisgICAgcmV0dXJu ICRjb25maWc7Cit9CisKK3N1YiBsb2NrX2NvbmZpZyB7CisgICAgbXkgKCRwcm90b2NvbCwgJGNv ZGUsICR0aW1lb3V0KSA9IEBfOworCisgICAgaWYgKCRwcm90b2NvbCBlcSAib3BlbmZhYnJpYyIp IHsKKwljZnNfbG9ja19maWxlKCdzZG4vZmFicmljcy9vcGVuZmFicmljLmNmZycsICR0aW1lb3V0 LCAkY29kZSk7CisJZGllICRAIGlmICRAOworICAgIH0gZWxzaWYgKCRwcm90b2NvbCBlcSAib3Nw ZiIpIHsKKwljZnNfbG9ja19maWxlKCdzZG4vZmFicmljcy9vcGVuZmFicmljLmNmZycsICR0aW1l b3V0LCAkY29kZSk7CisJZGllICRAIGlmICRAOworICAgIH0gZWxzZSB7CisJZGllICJjYW5ub3Qg bG9jayBmYWJyaWMgY29uZmlnIFwiJHByb3RvY29sXCI6IG5vdCBpbXBsZW1lbnRlZCI7CisgICAg fQorfQorCitzdWIgZ2V0X2FsbF9jb25maWdzIHsKKyAgICBteSAkb3BlbmZhYnJpYyA9IGNmc19y ZWFkX2ZpbGUoJ3Nkbi9mYWJyaWNzL29wZW5mYWJyaWMuY2ZnJyk7CisgICAgbXkgJG9zcGYgPSBj ZnNfcmVhZF9maWxlKCdzZG4vZmFicmljcy9vc3BmLmNmZycpOworCisgICAgcmV0dXJuIFBWRTo6 UlM6OlNETjo6RmFicmljczo6Y29uZmlnKCRvcGVuZmFicmljLCAkb3NwZik7Cit9CisKK3N1YiBn ZXRfY29uZmlnIHsKKyAgICBteSAoJHByb3RvY29sKSA9IEBfOworCisgICAgbXkgJGNvbmZpZzsK KyAgICBteSAkZmFicmljX2NvbmZpZzsKKworICAgIGlmICgkcHJvdG9jb2wgZXEgIm9wZW5mYWJy aWMiKSB7CisJJGNvbmZpZyA9IGNmc19yZWFkX2ZpbGUoJ3Nkbi9mYWJyaWNzL29wZW5mYWJyaWMu Y2ZnJyk7CisJJGZhYnJpY19jb25maWcgPSBQVkU6OlJTOjpTRE46OkZhYnJpY3M6Ok9wZW5GYWJy aWMtPmNvbmZpZygkY29uZmlnKTsKKyAgICB9IGVsc2lmICgkcHJvdG9jb2wgZXEgIm9zcGYiKSB7 CisJJGNvbmZpZyA9IGNmc19yZWFkX2ZpbGUoJ3Nkbi9mYWJyaWNzL29zcGYuY2ZnJyk7CisJJGZh YnJpY19jb25maWcgPSBQVkU6OlJTOjpTRE46OkZhYnJpY3M6Ok9zcGYtPmNvbmZpZygkY29uZmln KTsKKyAgICB9IGVsc2UgeworCWRpZSAiY2Fubm90IGdldCBmYWJyaWMgY29uZmlnIFwiJHByb3Rv Y29sXCI6IG5vdCBpbXBsZW1lbnRlZCI7CisgICAgfQorCisgICAgcmV0dXJuICRmYWJyaWNfY29u ZmlnOworfQorCitzdWIgd3JpdGVfY29uZmlnIHsKKyAgICBteSAoJGNvbmZpZykgPSBAXzsKKwor ICAgIG15ICgkbmV3X2NvbmZpZywgJHByb3RvY29sKSA9ICRjb25maWctPndyaXRlKCk7CisKKyAg ICAjIEl0IGlzIHNhZmUgdG8gdXNlIHRoZSBwcm90b2NvbCBpbiB0aGUgcGF0aCBoZXJlIGFzIGl0 IGNvbWVzIGZyb20gcnVzdC4gVGhlcmUKKyAgICAjIHRoZSBwcm90b2NvbCBpcyBzdG9yZWQgaW4g YW4gZW51bSBzbyB3ZSBrbm93IGl0IGlzIGNvcnJlY3QuCisgICAgY2ZzX3dyaXRlX2ZpbGUoInNk bi9mYWJyaWNzLyRwcm90b2NvbC5jZmciLCAkbmV3X2NvbmZpZywgMSk7Cit9CisKKzE7CisKZGlm ZiAtLWdpdCBhL3NyYy9QVkUvTmV0d29yay9TRE4vTWFrZWZpbGUgYi9zcmMvUFZFL05ldHdvcmsv U0ROL01ha2VmaWxlCmluZGV4IDNlNmU1ZmI0YzZmMi4uYTI1NjY0MmUzMDQ0IDEwMDY0NAotLS0g YS9zcmMvUFZFL05ldHdvcmsvU0ROL01ha2VmaWxlCisrKyBiL3NyYy9QVkUvTmV0d29yay9TRE4v TWFrZWZpbGUKQEAgLTEsNCArMSw0IEBACi1TT1VSQ0VTPVZuZXRzLnBtIFZuZXRQbHVnaW4ucG0g Wm9uZXMucG0gQ29udHJvbGxlcnMucG0gU3VibmV0cy5wbSBTdWJuZXRQbHVnaW4ucG0gSXBhbXMu cG0gRG5zLnBtIERoY3AucG0KK1NPVVJDRVM9Vm5ldHMucG0gVm5ldFBsdWdpbi5wbSBab25lcy5w bSBDb250cm9sbGVycy5wbSBTdWJuZXRzLnBtIFN1Ym5ldFBsdWdpbi5wbSBJcGFtcy5wbSBEbnMu cG0gRGhjcC5wbSBGYWJyaWNzLnBtCiAKIAogUEVSTDVESVI9JHtERVNURElSfS91c3Ivc2hhcmUv cGVybDUKLS0gCjIuMzkuNQoKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fXwpwdmUtZGV2ZWwgbWFpbGluZyBsaXN0CnB2ZS1kZXZlbEBsaXN0cy5wcm94bW94 LmNvbQpodHRwczovL2xpc3RzLnByb3htb3guY29tL2NnaS1iaW4vbWFpbG1hbi9saXN0aW5mby9w dmUtZGV2ZWwK