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 CC6AA1FF168 for ; Tue, 18 Mar 2025 10:41:56 +0100 (CET) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id B6BED19EE9; Tue, 18 Mar 2025 10:41:46 +0100 (CET) Message-ID: <648bdcf5-3742-4e0f-898e-da11023c08c6@proxmox.com> Date: Tue, 18 Mar 2025 10:41:11 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Content-Language: en-US To: Philipp Giersfeld , pve-devel@lists.proxmox.com References: <20250311150456.4071232-1-philipp.giersfeld@canarybit.eu> <20250311150456.4071232-4-philipp.giersfeld@canarybit.eu> From: Markus Frank In-Reply-To: <20250311150456.4071232-4-philipp.giersfeld@canarybit.eu> X-SPAM-LEVEL: Spam detection results: 0 AWL -0.007 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 KAM_SHORT 0.001 Use of a URL Shortener for very short URL SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_PASS -0.001 SPF: sender matches SPF record Subject: Re: [pve-devel] [PATCH qemu-server v4 3/4] config: add AMD SEV-SNP support. X-BeenThere: pve-devel@lists.proxmox.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Proxmox VE development discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: Proxmox VE development discussion Content-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Errors-To: pve-devel-bounces@lists.proxmox.com Sender: "pve-devel" Ck9uICAyMDI1LTAzLTExIDE2OjA0LCBQaGlsaXBwIEdpZXJzZmVsZCB3cm90ZToKPiBUaGlzIHBh dGNoIGlzIGZvciBlbmFibGluZyBBTUQgU0VWLVNOUCBzdXBwb3J0Lgo+IAo+IFdoZXJlIGFwcGxp Y2FibGUsIGl0IGV4dGVuZHMgc3VwcG9ydCBmb3IgZXhpc3RpbmcgU0VWKC1FUykgdmFyaWFibGVz Cj4gdG8gU0VWLVNOUC4gVGhpcyBtZWFucyB0aGF0IGl0IHJldGFpbnMgbm8tZGVidWcgYW5kIGtl cm5lbC1oYXNoZXMKPiBvcHRpb25zLCBidXQgdGhlIG5vLWtleS1zaGFyaW5nIG9wdGlvbiBpcyBy ZW1vdmVkLgo+IAo+IFRoZSBkZWZhdWx0IHBvbGljeSB2YWx1ZSBpcyBpZGVudGljYWwgdG8gUUVN VeKAmXMsIGFuZCB0aGUgdGhlcmVmb3JlCj4gcmVxdWlyZWQgb3B0aW9uIGhhcyBiZWVuIGFkZGVk IHRvIGNvbmZpZ3VyZSBTTVQgc3VwcG9ydC4KPiAKPiBUaGUgY29kZSB3YXMgdGVzdGVkIGJ5IHJ1 bm5pbmcgYSBWTSB3aXRob3V0IFNFViwgd2l0aCBTRVYsIFNFVi1FUywKPiBTRVYtU05QLiBFYWNo IGNvbmZpZ3VyYXRpb24gd2FzIHRlc3RlZCB3aXRoIGFuZCB3aXRob3V0IGFuIEVGSSBkaXNrCj4g YXR0YWNoZWQuIEZvciBTRVYtZW5hYmxlZCBjb25maWd1cmF0aW9ucyBpdCB3YXMgYWxzbyB2ZXJp ZmllZCB0aGF0IHRoZQo+IGtlcm5lbCBhY3R1YWxseSB1c2VkIHRoZSByZXNwZWN0aXZlIGZlYXR1 cmUuCj4gCj4gU2lnbmVkLW9mZi1ieTogUGhpbGlwcCBHaWVyc2ZlbGQgPHBoaWxpcHAuZ2llcnNm ZWxkQGNhbmFyeWJpdC5ldT4KPiBSZXZpZXdlZC1ieTogRGFuaWVsIEtyYWwgPGQua3JhbEBwcm94 bW94LmNvbT4KPiBUZXN0ZWQtYnk6IE1hcmt1cyBGcmFuayA8bS5mcmFua0Bwcm94bW94LmNvbT4K SSBoYXZlIG5vdCB0ZXN0ZWQgdGhpcyB2ZXJzaW9uIGJlZm9yZSAodGhlcmUgaGF2ZSBiZWVuIHNv bWUgY2hhbmdlcyBzaW5jZSB2My92MikuCkJ1dCBub3cgSSBoYXZlLiBTbyB0aGUgIlRlc3RlZC1i eSIgY2FuIHN0YXkgdGhlcmUuCj4gLS0tCj4gCj4gICBjaGFuZ2VzIHNpbmNlIHYzOiBodHRwczov L2xpc3RzLnByb3htb3guY29tL3BpcGVybWFpbC9wdmUtZGV2ZWwvMjAyNS1GZWJydWFyeS8wNjg1 NzguaHRtbAo+ICAgKiBBZGQgYW5kIGNsYXJpZnkgbG9nZ2luZyBzdGF0ZW1lbnRzIGFuZCBkZXNj cmlwdGlvbnMKPiAgICogQWRkIGFkZGl0aW9uYWwgc2FmZWd1YXJkcwo+IAo+ICAgUFZFL0FQSTIv UWVtdS5wbSAgICAgICAgICAgIHwgIDcgKysrLQo+ICAgUFZFL1FlbXVTZXJ2ZXIucG0gICAgICAg ICAgIHwgNTIgKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0KPiAgIFBWRS9RZW11U2VydmVy L0NQVUNvbmZpZy5wbSB8IDY2ICsrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0K PiAgIDMgZmlsZXMgY2hhbmdlZCwgOTUgaW5zZXJ0aW9ucygrKSwgMzAgZGVsZXRpb25zKC0pCj4g Cj4gZGlmZiAtLWdpdCBhL1BWRS9BUEkyL1FlbXUucG0gYi9QVkUvQVBJMi9RZW11LnBtCj4gaW5k ZXggMjk1MjYwZTcuLmVmM2FhOGQ2IDEwMDY0NAo+IC0tLSBhL1BWRS9BUEkyL1FlbXUucG0KPiAr KysgYi9QVkUvQVBJMi9RZW11LnBtCj4gQEAgLTU0OCw4ICs1NDgsMTMgQEAgbXkgc3ViIGNyZWF0 ZV9kaXNrcyA6IHByb3RvdHlwZSgkJCQkJCQkJCQkJCkgewo+ICAgCQlteSAkdm9saWQ7Cj4gICAJ CWlmICgkZHMgZXEgJ2VmaWRpc2swJykgewo+ICAgCQkgICAgbXkgJHNtbSA9IFBWRTo6UWVtdVNl cnZlcjo6TWFjaGluZTo6bWFjaGluZV90eXBlX2lzX3EzNSgkY29uZik7Cj4gKwo+ICsJCSAgICBt eSAkYW1kX3Nldl90eXBlID0gUFZFOjpRZW11U2VydmVyOjpDUFVDb25maWc6OmdldF9hbWRfc2V2 X3R5cGUoJGNvbmYpOwo+ICsJCSAgICBkaWUgIlNFVi1TTlAgdXNlcyBjb25zb2xpZGF0ZWQgcmVh ZC1vbmx5IGZpcm13YXJlIGFuZCBkb2VzIG5vdCByZXF1aXJlIGFuIEVGSSBkaXNrXG4iCj4gKwkJ CWlmICRhbWRfc2V2X3R5cGUgJiYgJGFtZF9zZXZfdHlwZSBlcSAnc25wJzsKPiArCj4gICAJCSAg ICAoJHZvbGlkLCAkc2l6ZSkgPSBQVkU6OlFlbXVTZXJ2ZXI6OmNyZWF0ZV9lZmlkaXNrKAo+IC0J CQkkc3RvcmVjZmcsICRzdG9yZWlkLCAkdm1pZCwgJGZtdCwgJGFyY2gsICRkaXNrLCAkc21tKTsK PiArCQkJJHN0b3JlY2ZnLCAkc3RvcmVpZCwgJHZtaWQsICRmbXQsICRhcmNoLCAkZGlzaywgJHNt bSwgJGFtZF9zZXZfdHlwZSk7Cj4gICAJCX0gZWxzaWYgKCRkcyBlcSAndHBtc3RhdGUwJykgewo+ ICAgCQkgICAgIyBzd3RwbSBjYW4gb25seSB1c2UgcmF3IHZvbHVtZXMsIGFuZCB1c2VzIGEgZml4 ZWQgc2l6ZQo+ICAgCQkgICAgJHNpemUgPSBQVkU6OlRvb2xzOjpjb252ZXJ0X3NpemUoUFZFOjpR ZW11U2VydmVyOjpEcml2ZTo6VFBNU1RBVEVfRElTS19TSVpFLCAnYicgPT4gJ2tiJyk7Cj4gZGlm ZiAtLWdpdCBhL1BWRS9RZW11U2VydmVyLnBtIGIvUFZFL1FlbXVTZXJ2ZXIucG0KPiBpbmRleCA4 MDhjMGUxYy4uNzI3YWFkNmMgMTAwNjQ0Cj4gLS0tIGEvUFZFL1FlbXVTZXJ2ZXIucG0KPiArKysg Yi9QVkUvUWVtdVNlcnZlci5wbQo+IEBAIC01Miw3ICs1Miw3IEBAIHVzZSBQVkU6OlFlbXVDb25m aWc7Cj4gICB1c2UgUFZFOjpRZW11U2VydmVyOjpIZWxwZXJzIHF3KGNvbmZpZ19hd2FyZV90aW1l b3V0IG1pbl92ZXJzaW9uIGt2bV91c2VyX3ZlcnNpb24gd2luZG93c192ZXJzaW9uKTsKPiAgIHVz ZSBQVkU6OlFlbXVTZXJ2ZXI6OkNsb3VkaW5pdDsKPiAgIHVzZSBQVkU6OlFlbXVTZXJ2ZXI6OkNH cm91cDsKPiAtdXNlIFBWRTo6UWVtdVNlcnZlcjo6Q1BVQ29uZmlnIHF3KHByaW50X2NwdV9kZXZp Y2UgZ2V0X2NwdV9vcHRpb25zIGdldF9jcHVfYml0bmVzcyBpc19uYXRpdmVfYXJjaCBnZXRfYW1k X3Nldl9vYmplY3QpOwo+ICt1c2UgUFZFOjpRZW11U2VydmVyOjpDUFVDb25maWcgcXcocHJpbnRf Y3B1X2RldmljZSBnZXRfY3B1X29wdGlvbnMgZ2V0X2NwdV9iaXRuZXNzIGlzX25hdGl2ZV9hcmNo IGdldF9hbWRfc2V2X29iamVjdCBnZXRfYW1kX3Nldl90eXBlKTsKPiAgIHVzZSBQVkU6OlFlbXVT ZXJ2ZXI6OkRyaXZlIHF3KGlzX3ZhbGlkX2RyaXZlbmFtZSBjaGVja2VkX3ZvbHVtZV9mb3JtYXQg ZHJpdmVfaXNfY2xvdWRpbml0IGRyaXZlX2lzX2Nkcm9tIGRyaXZlX2lzX3JlYWRfb25seSBwYXJz ZV9kcml2ZSBwcmludF9kcml2ZSk7Cj4gICB1c2UgUFZFOjpRZW11U2VydmVyOjpNYWNoaW5lOwo+ ICAgdXNlIFBWRTo6UWVtdVNlcnZlcjo6TWVtb3J5IHF3KGdldF9jdXJyZW50X21lbW9yeSk7Cj4g QEAgLTg4LDYgKzg4LDEzIEBAIG15ICRPVk1GID0gewo+ICAgCSAgICAiJEVESzJfRldfQkFTRS9P Vk1GX0NPREVfNE0uc2VjYm9vdC5mZCIsCj4gICAJICAgICIkRURLMl9GV19CQVNFL09WTUZfVkFS U180TS5tcy5mZCIsCj4gICAJXSwKPiArCSc0bS1zZXYnID0+IFsKPiArCSAgICAiJEVESzJfRldf QkFTRS9PVk1GX0NWTV9DT0RFXzRNLmZkIiwKPiArCSAgICAiJEVESzJfRldfQkFTRS9PVk1GX0NW TV9WQVJTXzRNLmZkIiwKPiArCV0sCj4gKwknNG0tc25wJyA9PiBbCj4gKwkgICAgIiRFREsyX0ZX X0JBU0UvT1ZNRl9DVk1fNE0uZmQiLAo+ICsJXSwKPiAgIAkjIEZJWE1FOiBUaGVzZSBhcmUgbGVn YWN5IDJNQi1zaXplZCBpbWFnZXMgdGhhdCBtb2Rlcm4gT1ZNRiBkb2Vzbid0IHN1cHBvcnRzIHRv IGJ1aWxkCj4gICAJIyBhbnltb3JlLiBob3cgY2FuIHdlIGRlcGVyYWNhdGUgdGhpcyBzYW5lbHkg d2l0aG91dCBicmVha2luZyBleGlzdGluZyBpbnN0YW5jZXMsIG9yIHVzaW5nCj4gICAJIyBvbGRl ciBiYWNrdXBzIGFuZCBzbmFwc2hvdD8KPiBAQCAtMzE3MiwxNSArMzE3OSwyMiBAQCBzdWIgdmdh X2NvbmZfaGFzX3NwaWNlIHsKPiAgICAgICByZXR1cm4gJDEgfHwgMTsKPiAgIH0KPiAgIAo+IC1z dWIgZ2V0X292bWZfZmlsZXMoJCQkKSB7Cj4gLSAgICBteSAoJGFyY2gsICRlZmlkaXNrLCAkc21t KSA9IEBfOwo+ICtzdWIgZ2V0X292bWZfZmlsZXMoJCQkJCkgewo+ICsgICAgbXkgKCRhcmNoLCAk ZWZpZGlzaywgJHNtbSwgJGFtZF9zZXZfdHlwZSkgPSBAXzsKPiAgIAo+ICAgICAgIG15ICR0eXBl cyA9ICRPVk1GLT57JGFyY2h9Cj4gICAJb3IgZGllICJubyBPVk1GIGltYWdlcyBrbm93biBmb3Ig YXJjaGl0ZWN0dXJlICckYXJjaCdcbiI7Cj4gICAKPiAgICAgICBteSAkdHlwZSA9ICdkZWZhdWx0 JzsKPiAgICAgICBpZiAoJGFyY2ggZXEgJ3g4Nl82NCcpIHsKPiAtCWlmIChkZWZpbmVkKCRlZmlk aXNrLT57ZWZpdHlwZX0pICYmICRlZmlkaXNrLT57ZWZpdHlwZX0gZXEgJzRtJykgewo+ICsJaWYg KCRhbWRfc2V2X3R5cGUgJiYgJGFtZF9zZXZfdHlwZSBlcSAnc25wJykgewo+ICsJICAgICR0eXBl ID0gIjRtLXNucCI7Cj4gKwkgICAgbXkgKCRvdm1mKSA9ICR0eXBlcy0+eyR0eXBlfS0+QCo7Cj4g KwkgICAgZGllICJFRkkgYmFzZSBpbWFnZSAnJG92bWYnIG5vdCBmb3VuZFxuIiBpZiAhIC1mICRv dm1mOwo+ICsJICAgIHJldHVybiAoJG92bWYpOwo+ICsJfSBlbHNpZiAoJGFtZF9zZXZfdHlwZSkg ewo+ICsJICAgICR0eXBlID0gIjRtLXNldiI7Cj4gKwl9IGVsc2lmIChkZWZpbmVkKCRlZmlkaXNr LT57ZWZpdHlwZX0pICYmICRlZmlkaXNrLT57ZWZpdHlwZX0gZXEgJzRtJykgewo+ICAgCSAgICAk dHlwZSA9ICRzbW0gPyAiNG0iIDogIjRtLW5vLXNtbSI7Cj4gICAJICAgICR0eXBlIC49ICctbXMn IGlmICRlZmlkaXNrLT57J3ByZS1lbnJvbGxlZC1rZXlzJ307Cj4gICAJfSBlbHNlIHsKPiBAQCAt MzMyOSw3ICszMzQzLDEwIEBAIG15IHN1YiBwcmludF9vdm1mX2RyaXZlX2NvbW1hbmRsaW5lcyB7 Cj4gICAKPiAgICAgICBteSAkZCA9ICRjb25mLT57ZWZpZGlzazB9ID8gcGFyc2VfZHJpdmUoJ2Vm aWRpc2swJywgJGNvbmYtPntlZmlkaXNrMH0pIDogdW5kZWY7Cj4gICAKPiAtICAgIG15ICgkb3Zt Zl9jb2RlLCAkb3ZtZl92YXJzKSA9IGdldF9vdm1mX2ZpbGVzKCRhcmNoLCAkZCwgJHEzNSk7Cj4g KyAgICBteSAkYW1kX3Nldl90eXBlID0gZ2V0X2FtZF9zZXZfdHlwZSgkY29uZik7Cj4gKyAgICBk aWUgIkF0dGVtcHRpbmcgdG8gY29uZmlndXJlIFNFVi1TTlAgd2l0aCBmbGFzaCBkZXZpY2VzIGlu c3RlYWQgb2YgdXNpbmcgYC1iaW9zYFxuIgo+ICsJaWYgJGFtZF9zZXZfdHlwZSAmJiAkYW1kX3Nl dl90eXBlIGVxICdzbnAnOwo+ICsgICAgbXkgKCRvdm1mX2NvZGUsICRvdm1mX3ZhcnMpID0gZ2V0 X292bWZfZmlsZXMoJGFyY2gsICRkLCAkcTM1LCAkYW1kX3Nldl90eXBlKTsKPiAgIAo+ICAgICAg IG15ICR2YXJfZHJpdmVfc3RyID0gImlmPXBmbGFzaCx1bml0PTEsaWQ9ZHJpdmUtZWZpZGlzazAi Owo+ICAgICAgIGlmICgkZCkgewo+IEBAIC0zNTI2LDEwICszNTQzLDE4IEBAIHN1YiBjb25maWdf dG9fY29tbWFuZCB7Cj4gICAJZGllICJPVk1GIChVRUZJKSBCSU9TIGlzIG5vdCBzdXBwb3J0ZWQg b24gMzItYml0IENQVSB0eXBlc1xuIgo+ICAgCSAgICBpZiAhJGZvcmNlY3B1ICYmIGdldF9jcHVf Yml0bmVzcygkY29uZi0+e2NwdX0sICRhcmNoKSA9PSAzMjsKPiAgIAo+IC0JbXkgKCRjb2RlX2Ry aXZlX3N0ciwgJHZhcl9kcml2ZV9zdHIpID0KPiAtCSAgICBwcmludF9vdm1mX2RyaXZlX2NvbW1h bmRsaW5lcygkY29uZiwgJHN0b3JlY2ZnLCAkdm1pZCwgJGFyY2gsICRxMzUsICR2ZXJzaW9uX2d1 YXJkKTsKPiAtCXB1c2ggJGNtZC0+QCosICctZHJpdmUnLCAkY29kZV9kcml2ZV9zdHI7Cj4gLQlw dXNoICRjbWQtPkAqLCAnLWRyaXZlJywgJHZhcl9kcml2ZV9zdHI7Cj4gKwlteSAkYW1kX3Nldl90 eXBlID0gZ2V0X2FtZF9zZXZfdHlwZSgkY29uZik7Cj4gKwlpZiAoJGFtZF9zZXZfdHlwZSAmJiAk YW1kX3Nldl90eXBlIGVxICdzbnAnKSB7Cj4gKwkgICBteSAkYXJjaCA9IFBWRTo6UWVtdVNlcnZl cjo6SGVscGVyczo6Z2V0X3ZtX2FyY2goJGNvbmYpOwo+ICsJICAgcHJpbnQgIkV4aXN0aW5nIEVG SSBkaXNrIHdpbGwgYmUgaWdub3JlZCBmb3IgU0VWLVNOUFxuIgo+ICsJCWlmIHBhcnNlX2RyaXZl KCdlZmlkaXNrMCcsICRjb25mLT57ZWZpZGlzazB9KTsKPiArCSAgIHB1c2ggJGNtZC0+QCosICct YmlvcycsIGdldF9vdm1mX2ZpbGVzKCRhcmNoLCB1bmRlZiwgdW5kZWYsICRhbWRfc2V2X3R5cGUp Owo+ICsJfSBlbHNlIHsKPiArCSAgICBteSAoJGNvZGVfZHJpdmVfc3RyLCAkdmFyX2RyaXZlX3N0 cikgPSBwcmludF9vdm1mX2RyaXZlX2NvbW1hbmRsaW5lcygKPiArCQkkY29uZiwgJHN0b3JlY2Zn LCAkdm1pZCwgJGFyY2gsICRxMzUsICR2ZXJzaW9uX2d1YXJkKTsKPiArCSAgICBwdXNoICRjbWQt PkAqLCAnLWRyaXZlJywgJGNvZGVfZHJpdmVfc3RyOwo+ICsJICAgIHB1c2ggJGNtZC0+QCosICct ZHJpdmUnLCAkdmFyX2RyaXZlX3N0cjsKPiArCX0KPiAgICAgICB9Cj4gICAKPiAgICAgICBpZiAo JHEzNSkgeyAjIHRlbGwgUUVNVSB0byBsb2FkIHEzNSBjb25maWcgZWFybHkKPiBAQCAtODMzNyw3 ICs4MzYyLDggQEAgc3ViIGdldF9lZml2YXJzX3NpemUgewo+ICAgICAgIG15ICRhcmNoID0gUFZF OjpRZW11U2VydmVyOjpIZWxwZXJzOjpnZXRfdm1fYXJjaCgkY29uZik7Cj4gICAgICAgJGVmaWRp c2sgLy89ICRjb25mLT57ZWZpZGlzazB9ID8gcGFyc2VfZHJpdmUoJ2VmaWRpc2swJywgJGNvbmYt PntlZmlkaXNrMH0pIDogdW5kZWY7Cj4gICAgICAgbXkgJHNtbSA9IFBWRTo6UWVtdVNlcnZlcjo6 TWFjaGluZTo6bWFjaGluZV90eXBlX2lzX3EzNSgkY29uZik7Cj4gLSAgICBteSAodW5kZWYsICRv dm1mX3ZhcnMpID0gZ2V0X292bWZfZmlsZXMoJGFyY2gsICRlZmlkaXNrLCAkc21tKTsKPiArICAg IG15ICRhbWRfc2V2X3R5cGUgPSBnZXRfYW1kX3Nldl90eXBlKCRjb25mKTsKPiArICAgIG15ICh1 bmRlZiwgJG92bWZfdmFycykgPSBnZXRfb3ZtZl9maWxlcygkYXJjaCwgJGVmaWRpc2ssICRzbW0s ICRhbWRfc2V2X3R5cGUpOwo+ICAgICAgIHJldHVybiAtcyAkb3ZtZl92YXJzOwo+ICAgfQo+ICAg Cj4gQEAgLTgzNjEsMTAgKzgzODcsMTAgQEAgc3ViIHVwZGF0ZV90cG1zdGF0ZV9zaXplIHsKPiAg ICAgICAkY29uZi0+e3RwbXN0YXRlMH0gPSBwcmludF9kcml2ZSgkZGlzayk7Cj4gICB9Cj4gICAK PiAtc3ViIGNyZWF0ZV9lZmlkaXNrKCQkJCQkJCQpIHsKPiAtICAgIG15ICgkc3RvcmVjZmcsICRz dG9yZWlkLCAkdm1pZCwgJGZtdCwgJGFyY2gsICRlZmlkaXNrLCAkc21tKSA9IEBfOwo+ICtzdWIg Y3JlYXRlX2VmaWRpc2soJCQkJCQkJCQpIHsKPiArICAgIG15ICgkc3RvcmVjZmcsICRzdG9yZWlk LCAkdm1pZCwgJGZtdCwgJGFyY2gsICRlZmlkaXNrLCAkc21tLCAkYW1kX3Nldl90eXBlKSA9IEBf Owo+ICAgCj4gLSAgICBteSAodW5kZWYsICRvdm1mX3ZhcnMpID0gZ2V0X292bWZfZmlsZXMoJGFy Y2gsICRlZmlkaXNrLCAkc21tKTsKPiArICAgIG15ICh1bmRlZiwgJG92bWZfdmFycykgPSBnZXRf b3ZtZl9maWxlcygkYXJjaCwgJGVmaWRpc2ssICRzbW0sICRhbWRfc2V2X3R5cGUpOwo+ICAgCj4g ICAgICAgbXkgJHZhcnNfc2l6ZV9iID0gLXMgJG92bWZfdmFyczsKPiAgICAgICBteSAkdmFyc19z aXplID0gUFZFOjpUb29sczo6Y29udmVydF9zaXplKCR2YXJzX3NpemVfYiwgJ2InID0+ICdrYicp Owo+IGRpZmYgLS1naXQgYS9QVkUvUWVtdVNlcnZlci9DUFVDb25maWcucG0gYi9QVkUvUWVtdVNl cnZlci9DUFVDb25maWcucG0KPiBpbmRleCBhZDBiZTE2ZS4uOWFlMTk5NmIgMTAwNjQ0Cj4gLS0t IGEvUFZFL1FlbXVTZXJ2ZXIvQ1BVQ29uZmlnLnBtCj4gKysrIGIvUFZFL1FlbXVTZXJ2ZXIvQ1BV Q29uZmlnLnBtCj4gQEAgLTE4LDYgKzE4LDcgQEAgZ2V0X2NwdV9vcHRpb25zCj4gICBnZXRfY3B1 X2JpdG5lc3MKPiAgIGlzX25hdGl2ZV9hcmNoCj4gICBnZXRfYW1kX3Nldl9vYmplY3QKPiArZ2V0 X2FtZF9zZXZfdHlwZQo+ICAgKTsKPiAgIAo+ICAgIyB1bmRlciBjZXJ0YWluIHJhY2UtY29uZGl0 aW9ucywgdGhpcyBtb2R1bGUgbWlnaHQgYmUgbG9hZGVkIGJlZm9yZSBwdmUtY2x1c3Rlcgo+IEBA IC0yMzEsMjUgKzIzMiwzMiBAQCBteSAkY3B1X2ZtdCA9IHsKPiAgIG15ICRzZXZfZm10ID0gewo+ ICAgICAgIHR5cGUgPT4gewo+ICAgCWRlc2NyaXB0aW9uID0+ICJFbmFibGUgc3RhbmRhcmQgU0VW IHdpdGggdHlwZT0nc3RkJyBvciBlbmFibGUiCj4gLQkgICAgLiIgZXhwZXJpbWVudGFsIFNFVi1F UyB3aXRoIHRoZSAnZXMnIG9wdGlvbi4iLAo+ICsJICAgIC4iIGV4cGVyaW1lbnRhbCBTRVYtRVMg d2l0aCB0aGUgJ2VzJyBvcHRpb24gb3IgZW5hYmxlIgo+ICsJICAgIC4iIGV4cGVyaW1lbnRhbCBT RVYtU05QIHdpdGggdGhlICdzbnAnIG9wdGlvbi4iLAo+ICAgCXR5cGUgPT4gJ3N0cmluZycsCj4g ICAJZGVmYXVsdF9rZXkgPT4gMSwKPiAgIAlmb3JtYXRfZGVzY3JpcHRpb24gPT4gInNldi10eXBl IiwKPiAtCWVudW0gPT4gWydzdGQnLCAnZXMnXSwKPiArCWVudW0gPT4gWydzdGQnLCAnZXMnLCAn c25wJ10sCj4gICAJbWF4TGVuZ3RoID0+IDMsCj4gICAgICAgfSwKPiAgICAgICAnbm8tZGVidWcn ID0+IHsKPiAtCWRlc2NyaXB0aW9uID0+ICJTZXRzIHBvbGljeSBiaXQgMCB0byAxIHRvIGRpc2Fs bG93IGRlYnVnZ2luZyBvZiBndWVzdCIsCj4gKwlkZXNjcmlwdGlvbiA9PiAiU2V0cyBwb2xpY3kg Yml0IHRvIGRpc2FsbG93IGRlYnVnZ2luZyBvZiBndWVzdCIsCj4gICAJdHlwZSA9PiAnYm9vbGVh bicsCj4gICAJZGVmYXVsdCA9PiAwLAo+ICAgCW9wdGlvbmFsID0+IDEsCj4gICAgICAgfSwKPiAg ICAgICAnbm8ta2V5LXNoYXJpbmcnID0+IHsKPiAtCWRlc2NyaXB0aW9uID0+ICJTZXRzIHBvbGlj eSBiaXQgMSB0byAxIHRvIGRpc2FsbG93IGtleSBzaGFyaW5nIHdpdGggb3RoZXIgZ3Vlc3RzIiwK PiArCWRlc2NyaXB0aW9uID0+ICJTZXRzIHBvbGljeSBiaXQgdG8gZGlzYWxsb3cga2V5IHNoYXJp bmcgd2l0aCBvdGhlciBndWVzdHMgKElnbm9yZWQgZm9yIFNFVi1TTlApIiwKPiAgIAl0eXBlID0+ ICdib29sZWFuJywKPiAgIAlkZWZhdWx0ID0+IDAsCj4gICAJb3B0aW9uYWwgPT4gMSwKPiAgICAg ICB9LAo+ICsgICAgJ2FsbG93LXNtdCcgPT4gewo+ICsJZGVzY3JpcHRpb24gPT4gIlNldHMgcG9s aWN5IGJpdCB0byBhbGxvdyBTaW11bHRhbmVvdXMgTXVsdGkgVGhyZWFkaW5nIChTTVQpIChJZ25v cmVkIHVubGVzcyBmb3IgU0VWLVNOUCkiLAo+ICsJdHlwZSA9PiAnYm9vbGVhbicsCj4gKwlkZWZh dWx0ID0+IDEsCj4gKwlvcHRpb25hbCA9PiAxLAo+ICsgICAgfSwKPiAgICAgICAia2VybmVsLWhh c2hlcyIgPT4gewo+ICAgCWRlc2NyaXB0aW9uID0+ICJBZGQga2VybmVsIGhhc2hlcyB0byBndWVz dCBmaXJtd2FyZSBmb3IgbWVhc3VyZWQgbGludXgga2VybmVsIGxhdW5jaCIsCj4gICAJdHlwZSA9 PiAnYm9vbGVhbicsCj4gQEAgLTgyMyw2ICs4MzEsMTMgQEAgc3ViIGdldF9od19jYXBhYmlsaXRp ZXMgewo+ICAgICAgIH0KPiAgICAgICByZXR1cm4gJGh3X2NhcGFiaWxpdGllczsKPiAgIH0KPiAr c3ViIGdldF9hbWRfc2V2X3R5cGUgewo+ICsgICAgbXkgKCRjb25mKSA9IEBfOwo+ICsKPiArICAg IHJldHVybiB1bmRlZiBpZiAhJGNvbmYtPnsnYW1kLXNldid9Owo+ICsKPiArICAgIHJldHVybiBQ VkU6OkpTT05TY2hlbWE6OnBhcnNlX3Byb3BlcnR5X3N0cmluZygkc2V2X2ZtdCwgJGNvbmYtPnsn YW1kLXNldid9KS0+e3R5cGV9Owo+ICt9Cj4gICAKPiAgIHN1YiBnZXRfYW1kX3Nldl9vYmplY3Qg ewo+ICAgICAgIG15ICgkYW1kX3NldiwgJGJpb3MpID0gQF87Cj4gQEAgLTgzNiwyMiArODUxLDQx IEBAIHN1YiBnZXRfYW1kX3Nldl9vYmplY3Qgewo+ICAgICAgIGlmICgkYW1kX3Nldl9jb25mLT57 dHlwZX0gZXEgJ2VzJyAmJiAhJHNldl9od19jYXBzLT57J3Nldi1zdXBwb3J0LWVzJ30pIHsKPiAg IAlkaWUgIllvdXIgQ1BVIGRvZXMgbm90IHN1cHBvcnQgQU1EIFNFVi1FUy5cbiI7Cj4gICAgICAg fQo+ICsgICAgaWYgKCRhbWRfc2V2X2NvbmYtPnt0eXBlfSBlcSAnc25wJyAmJiAhJHNldl9od19j YXBzLT57J3Nldi1zdXBwb3J0LXNucCd9KSB7Cj4gKwlkaWUgIllvdXIgQ1BVIGRvZXMgbm90IHN1 cHBvcnQgQU1EIFNFVi1TTlAuXG4iOwo+ICsgICAgfQo+ICAgICAgIGlmICghJGJpb3MgfHwgJGJp b3MgbmUgJ292bWYnKSB7Cj4gICAJZGllICJUbyB1c2UgQU1EIFNFViwgeW91IG5lZWQgdG8gY2hh bmdlIHRoZSBCSU9TIHRvIE9WTUYuXG4iOwo+ICAgICAgIH0KPiAgIAo+IC0gICAgbXkgJHNldl9t ZW1fb2JqZWN0ID0gJ3Nldi1ndWVzdCxpZD1zZXYwJzsKPiAtICAgICRzZXZfbWVtX29iamVjdCAu PSAnLGNiaXRwb3M9Jy4kc2V2X2h3X2NhcHMtPntjYml0cG9zfTsKPiAtICAgICRzZXZfbWVtX29i amVjdCAuPSAnLHJlZHVjZWQtcGh5cy1iaXRzPScuJHNldl9od19jYXBzLT57J3JlZHVjZWQtcGh5 cy1iaXRzJ307Cj4gLQo+IC0gICAgIyBndWVzdCBwb2xpY3kgYml0IGNhbGN1bGF0aW9uIGFzIGRl c2NyaWJlZCBoZXJlOgo+IC0gICAgIyBodHRwczovL2RvY3VtZW50YXRpb24uc3VzZS5jb20vc2xl cy8xNS1TUDUvaHRtbC9TTEVTLWFtZC1zZXYvYXJ0aWNsZS1hbWQtc2V2Lmh0bWwjdGFibGUtZ3Vl c3Rwb2xpY3kKPiAtICAgIG15ICRwb2xpY3kgPSAwOwo+IC0gICAgJHBvbGljeSB8PSAxIDw8IDAg aWYgJGFtZF9zZXZfY29uZi0+eyduby1kZWJ1Zyd9Owo+IC0gICAgJHBvbGljeSB8PSAxIDw8IDEg aWYgJGFtZF9zZXZfY29uZi0+eyduby1rZXktc2hhcmluZyd9Owo+IC0gICAgJHBvbGljeSB8PSAx IDw8IDIgaWYgJGFtZF9zZXZfY29uZi0+e3R5cGV9IGVxICdlcyc7Cj4gLSAgICAjIGRpc2FibGUg bWlncmF0aW9uIHdpdGggYml0IDMgbm9zZW5kIHRvIHByZXZlbnQgYW1kLXNldi1taWdyYXRpb24t YXR0YWNrCj4gLSAgICAkcG9saWN5IHw9IDEgPDwgMzsKPiArICAgIG15ICRzZXZfbWVtX29iamVj dCA9ICcnOwo+ICsgICAgbXkgJHBvbGljeTsKPiArICAgIGlmICgkYW1kX3Nldl9jb25mLT57dHlw ZX0gZXEgJ2VzJyB8fCAkYW1kX3Nldl9jb25mLT57dHlwZX0gZXEgJ3N0ZCcpIHsKPiArCSRzZXZf bWVtX29iamVjdCAuPSAnc2V2LWd1ZXN0LGlkPXNldjAnOwo+ICsJJHNldl9tZW1fb2JqZWN0IC49 ICcsY2JpdHBvcz0nLiRzZXZfaHdfY2Fwcy0+e2NiaXRwb3N9Owo+ICsJJHNldl9tZW1fb2JqZWN0 IC49ICcscmVkdWNlZC1waHlzLWJpdHM9Jy4kc2V2X2h3X2NhcHMtPnsncmVkdWNlZC1waHlzLWJp dHMnfTsKPiArCj4gKwkjIGd1ZXN0IHBvbGljeSBiaXQgY2FsY3VsYXRpb24gYXMgZGVzY3JpYmVk IGhlcmU6Cj4gKwkjIGh0dHBzOi8vZG9jdW1lbnRhdGlvbi5zdXNlLmNvbS9zbGVzLzE1LVNQNS9o dG1sL1NMRVMtYW1kLXNldi9hcnRpY2xlLWFtZC1zZXYuaHRtbCN0YWJsZS1ndWVzdHBvbGljeQo+ ICsJJHBvbGljeSA9IDA7Cj4gKwkkcG9saWN5IHw9IDEgPDwgMCBpZiAkYW1kX3Nldl9jb25mLT57 J25vLWRlYnVnJ307Cj4gKwkkcG9saWN5IHw9IDEgPDwgMSBpZiAkYW1kX3Nldl9jb25mLT57J25v LWtleS1zaGFyaW5nJ307Cj4gKwkkcG9saWN5IHw9IDEgPDwgMiBpZiAkYW1kX3Nldl9jb25mLT57 dHlwZX0gZXEgJ2VzJzsKPiArCSMgZGlzYWJsZSBtaWdyYXRpb24gd2l0aCBiaXQgMyBub3NlbmQg dG8gcHJldmVudCBhbWQtc2V2LW1pZ3JhdGlvbi1hdHRhY2sKPiArCSRwb2xpY3kgfD0gMSA8PCAz Owo+ICsgICAgfSBlbHNpZiAoJGFtZF9zZXZfY29uZi0+e3R5cGV9IGVxICdzbnAnKSB7Cj4gKwkk c2V2X21lbV9vYmplY3QgLj0gJ3Nldi1zbnAtZ3Vlc3QsaWQ9c2V2MCc7Cj4gKwkkc2V2X21lbV9v YmplY3QgLj0gJyxjYml0cG9zPScuJHNldl9od19jYXBzLT57Y2JpdHBvc307Cj4gKwkkc2V2X21l bV9vYmplY3QgLj0gJyxyZWR1Y2VkLXBoeXMtYml0cz0nLiRzZXZfaHdfY2Fwcy0+eydyZWR1Y2Vk LXBoeXMtYml0cyd9Owo+ICsKPiArCSMgZ3Vlc3QgcG9saWN5IGJpdCBjYWxjdWxhdGlvbiBhcyBk ZXNjcmliZWQgaW4gY2hhcHRlciA0LjM6Cj4gKwkjIGh0dHBzOi8vd3d3LmFtZC5jb20vc3lzdGVt L2ZpbGVzL1RlY2hEb2NzLzU2ODYwLnBkZgo+ICsJIyBSZXNlcnZlZCBiaXQgbXVzdCBiZSBvbmUK PiArCSRwb2xpY3kgPSAxIDw8IDE3Owo+ICsJJHBvbGljeSB8PSAxIDw8IDE2IGlmICFkZWZpbmVk KCRhbWRfc2V2X2NvbmYtPnsnYWxsb3ctc210J30pIHx8ICRhbWRfc2V2X2NvbmYtPnsnYWxsb3ct c210J307Cj4gKwkkcG9saWN5IHw9IDEgPDwgMTkgaWYgISRhbWRfc2V2X2NvbmYtPnsnbm8tZGVi dWcnfTsKPiArICAgIH0KPiArCj4gICAKPiAgICAgICAkc2V2X21lbV9vYmplY3QgLj0gJyxwb2xp Y3k9Jy5zcHJpbnRmKCIlI3giLCAkcG9saWN5KTsKPiAgICAgICAkc2V2X21lbV9vYmplY3QgLj0g JyxrZXJuZWwtaGFzaGVzPW9uJyBpZiAoJGFtZF9zZXZfY29uZi0+eydrZXJuZWwtaGFzaGVzJ30p OwoKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpwdmUt ZGV2ZWwgbWFpbGluZyBsaXN0CnB2ZS1kZXZlbEBsaXN0cy5wcm94bW94LmNvbQpodHRwczovL2xp c3RzLnByb3htb3guY29tL2NnaS1iaW4vbWFpbG1hbi9saXN0aW5mby9wdmUtZGV2ZWwK