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 EC2D51FF15C for ; Fri, 11 Jul 2025 15:29:09 +0200 (CEST) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id 7897610F63; Fri, 11 Jul 2025 15:29:56 +0200 (CEST) Message-ID: Date: Fri, 11 Jul 2025 15:29:51 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Beta To: Thomas Lamprecht , Proxmox Backup Server development discussion References: <20250416070703.493585-1-d.csapak@proxmox.com> <7f4725b8-e044-4af8-aa2b-04c518fa9751@proxmox.com> Content-Language: en-US From: Dominik Csapak In-Reply-To: <7f4725b8-e044-4af8-aa2b-04c518fa9751@proxmox.com> X-SPAM-LEVEL: Spam detection results: 0 AWL 0.021 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 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 URIBL_BLOCKED 0.001 ADMINISTRATOR NOTICE: The query to URIBL was blocked. See http://wiki.apache.org/spamassassin/DnsBlocklists#dnsbl-block for more information. [proxmox.com, mod.rs, encryption.rs] Subject: Re: [pbs-devel] [PATCH proxmox-backup v2] tape: skip setting encryption if we can't and don't want to 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" T24gNy8xMS8yNSAxMzo0NSwgVGhvbWFzIExhbXByZWNodCB3cm90ZToKPiBUaGUgc3ViamVjdCBy ZWFkcyBhIGJpdCBzYXNzeSBeXgo+IAo+IAo+IEFtIDE2LjA0LjI1IHVtIDA5OjA3IHNjaHJpZWIg RG9taW5payBDc2FwYWs6Cj4+IFNvbWUgc2V0dGluZ3Mgb24gY2hhbmdlcnMgcHJldmVudHMgY2hh bmdpbmcgdGhlIGVuY3J5cHRpb24gcGFyYW1ldGVycwo+PiB2aWEgdGhlIGFwcGxpY2F0aW9uLCBl LmcuIHNvbWUgbGlicmFyaWVzIGhhdmUgYSAnZW5jcnlwdGlvbiBkaXNhYmxlZCcgb3IKPj4gJ2Vu Y3J5cHRpb24gaXMgbGlicmFyeSBtYW5hZ2VkJyBvcHRpb24uIFdoaWxlIHRoZSBmb3JtZXIgc2l0 dWF0aW9uIGNhbgo+PiBiZSBmaXhlZCBieSBzZXR0aW5nIHRoZSBsaWJyYXJ5IHRvICdhcHBsaWNh dGlvbiBtYW5hZ2VkJywgdGhlIGxhdHRlciBpcwo+PiBzb21ldGltZXMgbmVjZXNzYXJ5IGZvciBG SVBTIGNvbXBsaWFuY2UgKHRvIGVuc3VyZSB0aGUgdGFwZSBkYXRhIGlzCj4+IGVuY3J5cHRlZCku Cj4+Cj4+IFdoZW4gbGlicmFyaWVzIGFyZSBjb25maWd1cmVkIHRoaXMgd2F5LCB0aGUgY29kZSBj dXJyZW50bHkgZmFpbHMgd2l0aAo+PiAnZHJpdmUgZG9lcyBub3Qgc3VwcG9ydCBBRVMtR0NNIGVu Y3J5cHRpb24nLiBJbnN0ZWFkIG9mIGZhaWxpbmcsIGNoZWNrCj4+IG9uIGZpcnN0IGNhbGwgdG8g c2V0X2VuY3J5cHRpb24gaWYgd2UgY291bGQgc2V0IGl0LCBhbmQgc2F2ZSB0aGF0Cj4+IHJlc3Vs dC4KPiAKPiBDb3VsZCB0aGF0IHJlc3VsdCBpbiBhIHRyYW5zaWVudCB0cmFuc3BvcnQvSFcvLi4u IGVycm9yIGJlY29taW5nCj4gcGVybWFuZW50PyBJIG1lYW4sIHByb2JhYmx5IG5vdCBodWdlbHkg bGlrZWx5LCBidXQgd2l0aCBzdWNoICJhdXRvbWFnaWMiCj4gYmVoYXZpb3IgaXQgbWlnaHQgYmUg d29ydGggYWJvdXQgdGhpbmtpbmcgb2Ygc29tZSBwb3RlbnRpYWwgZXhpdAo+IHN0cmF0ZWd5IGZv ciB0aGUgdXNlciwgb3IgaXMgdGhlIGxpZmV0aW1lIGJvdW5kIHRvIG9ubHkgYSBzaW5nbGUgam9i Cj4gYW55d2F5IOKAkyBJIGNvdWxkIG5hdHVyYWxseSBjaGVjayBteXNlbGYsIGJ1dCBtaWdodCBi ZSBuaWNlIHRvIG1lbnRpb24KPiB0aGF0IGhlcmUuCgpubyB0aGF0IGlzIGp1c3QgcGVyIGpvYi9h Y3Rpb24gc28gZWFjaCB0aW1lIHdlIG9wZW4gdGhlIHRhcGUgZHJpdmUuCmNhbiByZXdvcmQgdGhh dCBwYXJ0IHRvIG1ha2UgaXQgY2xlYXJlcgoKPiAKPj4KPj4gT25seSBmYWlsIHdoZW4gZW5jcnlw dGlvbiBpcyB0byBiZSBlbmFibGVkIGJ1dCBpdCBpcyBub3QgYWxsb3dlZCwgYnV0Cj4+IGlnbm9y ZSB0aGUgZXJyb3Igd2hlbiB0aGUgYmFja3VwIHNob3VsZCBiZSBkb25lIHVuZW5jcnlwdGVkLgo+ Pgo+PiBgYXNzZXJ0X2VuY3J5cHRpb25fbW9kZWAgbXVzdCBhbHNvIGNoZWNrIGlmIGl0J3MgcG9z c2libGUsIGFuZCBza2lwIGFueQo+PiBlcnJvciBpZiBpdCdzIG5vdCBwb3NzaWJsZSBhbmQgd2Ug d2FudGVkIG5vIGVuY3J5cHRpb24uCj4+Cj4+IFdpdGggdGhlc2UgY2hhbmdlcywgaXQgc2hvdWxk IGJlIHBvc3NpYmxlIHRvIHVzZSBzdWNoIGNvbmZpZ3VyZWQgbGlicmFyaWVzCj4+IHdoZW4gdGhl cmUgaXMgbm8gZW5jcnlwdGlvbiBjb25maWd1cmVkIG9uIHRoZSBQQlMgc2lkZS4gKFdlIGN1cnJl bnRseQo+PiBkb24ndCBoYXZlIGEgbGlicmFyeSB3aXRoIHN1Y2ggY2FwYWJpbGl0aWVzIHRvIHRl c3QuKQo+Pgo+PiBOb3RlIHRoYXQgaW4gY29udHJhc3QgdG8gbm9ybWFsIG9wZXJhdGlvbiwgdGhl IHRhcGUgbGFiZWwgd2lsbCBhbHNvIGJlCj4+IGVuY3J5cHRlZCB0aGVuIGFuZCB3aWxsIG5vdCBi ZSByZWFkYWJsZSBpbiBjYXNlIHRoZSBlbmNyeXB0aW9uIGtleSBpcwo+PiBsb3N0IG9yIGNoYW5n ZWQuCj4+Cj4+IEFkZGl0aW9uYWxseSwgcmV0dXJuIGFuIGVycm9yIGZvciAnZHJpdmVfc2V0X2Vu Y3J5cHRpb24nIGluIGNhc2UgdGhlCj4+IGRyaXZlIHJlcG9ydHMgdGhhdCBpdCBkb2VzIG5vdCBz dXBwb3J0IGhhcmR3YXJlIGVuY3J5cHRpb24sIGJlY2F1c2UgdGhpcwo+PiBpcyBub3cgYWxyZWFk eSBjYXVnaHQgb25lIGxldmVsIGFib3ZlIGluICdzZXRfZW5jcnlwdGlvbicuCj4gCj4gbml0OiAi YWxyZWFkeSIgaW1wbGllcyB0byBtZSB0aGF0IGl0J3MgY2hlY2tlZCB1cGZyb250IG9yIGhhbmRs ZWQgYnkgYQo+IG1ldGhvZCBjYWxsZWQsIG5vdCBvbmUgdGhhdCBjYWxscyB1cy4KPiAKPiAiWy4u Ll0gYmVjYXVzZSB0aGlzIGlzIG5vdyBoYW5kbGVkIGEgbGV2ZWwgYWJvdmUiCj4gCj4gaXMgSU1P IGEgYml0IGJldHRlciBmaXR0aW5nCj4gCgpvawoKPj4KPj4gQWxzbywgc2xpZ2h0bHkgY2hhbmdl IHRoZSBlcnJvciBtZXNzYWdlIHRvIG1ha2UgaXQgY2xlYXIgdGhhdCB0aGUgZHJpdmUKPj4gZG9l cyBub3Qgc3VwcG9ydCAqc2V0dGluZyogZW5jcnlwdGlvbiwgbm90IHRoYXQgaXQgZG9lcyBub3Qg c3VwcG9ydAo+PiBpdCBhdCBhbGwuCj4+Cj4+IFRoaXMgd2FzIHJlcG9ydGVkIGluIHRoZSBjb21t dW5pdHkgZm9ydW06Cj4+Cj4+IGh0dHBzOi8vZm9ydW0ucHJveG1veC5jb20vdGhyZWFkcy8xMDcz ODMvCj4+IGh0dHBzOi8vZm9ydW0ucHJveG1veC5jb20vdGhyZWFkcy8xNjQ5NDEvCj4+Cj4+IFNp Z25lZC1vZmYtYnk6IERvbWluaWsgQ3NhcGFrIDxkLmNzYXBha0Bwcm94bW94LmNvbT4KPj4gLS0t Cj4+IGNoYW5nZXMgZnJvbSB2MToKPj4gKiBhZGFwdGVkIGVycm9yIG1lc3NhZ2UgdG8gbWFrZSBp dCBjbGVhciB3aGF0IGlzIG5vdCBzdXBwb3J0ZWQKPj4gKiBhbHNvIGFkYXB0IGBhc3NlcnRfZW5j cnlwdGlvbl9tb2RlYCwgb3RoZXJ3aXNlIGEgYmFja3VwIGlzIG5vdCBwb3NzaWJsZQo+Pgo+PiAg IHBicy10YXBlL3NyYy9zZ190YXBlLnJzICAgICAgICAgICAgfCAzMCArKysrKysrKysrKysrKysr KysrKysrKysrKysrKy0KPj4gICBwYnMtdGFwZS9zcmMvc2dfdGFwZS9lbmNyeXB0aW9uLnJzIHwg MTIgKystLS0tLS0tLS0tCj4+ICAgc3JjL3RhcGUvZHJpdmUvbHRvL21vZC5ycyAgICAgICAgICB8 ICA0ICsrKysKPj4gICAzIGZpbGVzIGNoYW5nZWQsIDM1IGluc2VydGlvbnMoKyksIDExIGRlbGV0 aW9ucygtKQo+Pgo+PiBkaWZmIC0tZ2l0IGEvcGJzLXRhcGUvc3JjL3NnX3RhcGUucnMgYi9wYnMt dGFwZS9zcmMvc2dfdGFwZS5ycwo+PiBpbmRleCAzOWU2YTJmOTQuLjljN2EyNTRkNSAxMDA2NDQK Pj4gLS0tIGEvcGJzLXRhcGUvc3JjL3NnX3RhcGUucnMKPj4gKysrIGIvcGJzLXRhcGUvc3JjL3Nn X3RhcGUucnMKPj4gQEAgLTEzNiw2ICsxMzYsOCBAQCBwdWIgc3RydWN0IFNnVGFwZSB7Cj4+ICAg ICAgIGZpbGU6IEZpbGUsCj4+ICAgICAgIGxvY2F0ZV9vZmZzZXQ6IE9wdGlvbjxpNjQ+LAo+PiAg ICAgICBpbmZvOiBJbnF1aXJ5SW5mbywKPj4gKyAgICAvLyBhdXRvLWRldGVjdCBpZiB3ZSBjYW4g c2V0IHRoZSBlbmNyeXB0aW9uIG1vZGUKPj4gKyAgICBlbmNyeXB0aW9uX3Bvc3NpYmxlOiBPcHRp b248Ym9vbD4sCj4+ICAgfQo+PiAgIAo+PiAgIGltcGwgU2dUYXBlIHsKPj4gQEAgLTE1OCw2ICsx NjAsNyBAQCBpbXBsIFNnVGFwZSB7Cj4+ICAgICAgICAgICAgICAgZmlsZSwKPj4gICAgICAgICAg ICAgICBpbmZvLAo+PiAgICAgICAgICAgICAgIGxvY2F0ZV9vZmZzZXQ6IE5vbmUsCj4+ICsgICAg ICAgICAgICBlbmNyeXB0aW9uX3Bvc3NpYmxlOiBOb25lLAo+PiAgICAgICAgICAgfSkKPj4gICAg ICAgfQo+PiAgIAo+PiBAQCAtNjkwLDYgKzY5MywxNCBAQCBpbXBsIFNnVGFwZSB7Cj4+ICAgICAg IH0KPj4gICAKPj4gICAgICAgcHViIGZuIHNldF9lbmNyeXB0aW9uKCZtdXQgc2VsZiwga2V5X2Rh dGE6IE9wdGlvbjwoW3U4OyAzMl0sIFV1aWQpPikgLT4gUmVzdWx0PCgpLCBFcnJvcj4gewo+PiAr ICAgICAgICBpZiBzZWxmLmVuY3J5cHRpb25fcG9zc2libGUgPT0gU29tZShmYWxzZSkgewo+PiAr ICAgICAgICAgICAgaWYga2V5X2RhdGEuaXNfc29tZSgpIHsKPj4gKyAgICAgICAgICAgICAgICBi YWlsISgiRHJpdmUgZG9lcyBub3Qgc3VwcG9ydCBzZXR0aW5nIGVuY3J5cHRpb24gbW9kZSIpOwo+ PiArICAgICAgICAgICAgfSBlbHNlIHsKPj4gKyAgICAgICAgICAgICAgICAvLyBza2lwIHRyeWlu ZyB0byBzZXQgZW5jcnlwdGlvbiBpZiBub3Qgc3VwcG9ydGVkIGFuZCBkb24ndCB3YW50ZWQKPiAK PiBzL2Rvbid0L25vdC8gYW5kIHMvc2V0L2NsZWFyLyAoc3RpbGwgbm90IGlkZWFsIGJ1dCBzbGln aHRseSBiZXR0ZXIgSU1PKS4KPiAKPiBidHcuIGlmIG9uZSBlbmFibGVkIGVuY3J5cHRpb24gYmVm b3JlIGNoYW5naW5nIHRoZSBsaWJyYXJ5IHRvIEZJUFMgKG9yCj4gd2hhdGV2ZXIgYmxvY2tzIHRo aXMgc2V0dGluZyB0aGVuKSBhbmQgdGhlbiBjbGVhcmVkIGVuY3J5cHRpb24gd2UgbWlnaHQKPiB0 aGVuIHNpZ25hbCB0aGF0IGl0IHdvcmsgdGhlIG5leHQgdGltZSB0aGlzIG1ldGhvZCBpcyBjYWxs ZWQgd2hpbGUgaXQKPiBkaWQgbm90LCBzZWVtcyBhIGJpdCBvZGQuCj4gCj4gQWxiZWl0LCBpZiB0 aGF0IHF1ZXN0aW9uIGV2ZW4gbWFrZXMgc2Vuc2UgZGVwZW5kcyBvbiB0aGUgbGlmZXRpbWUgb2Yg dGhlCj4gZW5jcnlwdGlvbl9wb3NzaWJsZSBzZXR0aW5nLgo+IAoKc2luY2UgaXQncyBqdXN0IGZv ciBvbmUgam9iL2FjdGlvbiBJIGRvbid0IHRoaW5rIHRoYXQncyBhbiBpc3N1ZSwgc2luY2UKbW9k aWZ5aW5nIGRyaXZlL2NoYW5nZXIgc2V0dGluZ3MgZHVyaW5nIHN1Y2ggYW4gb3BlcmF0aW9uIHdv bid0IHdvcmsgbW9zdCBvZgp0aGUgdGltZSBhbnl3YXkgKHNpbmNlIHRob3NlIHRoaW5ncyBsaWtl IHRvIGJsb2NrIGR1cmluZyBvcGVyYXRpb24pCgo+IERpZCB5b3UgZXZhbHVhdGUgaWYgZXhwb3Np bmcgYSBzZXR0aW5nIHRoZSB1c2VyIGhhcyB0byBleHBsaWNpdGx5IGVuYWJsZT8KPiBOb3Qgc2F5 aW5nIHRoYXQgaXMgYmV0dGVyLCBidXQgbWlnaHQgYmUgYSBiaXQgc2ltcGxlciB0byB1bmRlcnN0 YW5kIGFuZAo+IHByb2JhYmx5IGFsc28gc2xpZ2h0bHkgc2FmZXIgdG8gaW1wbGVtZW50IChvciBh dCBsZWFzdCByZXZpZXcgaGVoZSksIEkgdGhpbmsuCj4gT1RPVEguLCBub3QgbXVjaCBpbiB0aGUg dGFwZSBjb2RlIGF0bS4sIHNvIG15IHF1ZXN0aW9ucyBtaWdodCBiZSBib2d1cyBhbmQKPiBteSBy ZXNlcnZhdGlvbiBmb3IgdGhpcyB1bmZvdW5kZWQuCgpUaGUgb3JpZ2luYWwgcGF0Y2ggaXMgYWxy ZWFkeSBhIGZldyBtb250aHMgb2xkLCBzbyBJJ20gbm90IHN1cmUgd2hhdCBleGFjdGx5CmkgZXZh bHVhdGVkLCBidXQgdGhpbmtpbmcgYWJvdXQgaXQgbm93LCBJIGRvbid0IHJlYWxseSB3YW50IHRv IGV4cG9zZQphbiBvcHRpb24gdGhhdCA5OSUgb2YgdXNlcnMgd2lsbCBuZXZlciBuZWVkIGFuZCB0 aGVyZSBpcyBub3QgbXVjaCBjaG9pY2UKaW4gd2hhdCB0byBkbyBhbnl3YXkuIE9uZSBhZHZhbnRh Z2Ugb2YgYSB1c2VyIHNldHRpbmcgbWlnaHQgYmUgdGhhdAppZiB0aGUgJ0ZJUFMnIG1vZGUgKGkn bGwganVzdCBjYWxsIGl0IHRoYXQgZm9yIHRoZSBtb21lbnQpIGlzIGVuYWJsZWQKYnkgYWNjaWRl bnQsIHdlJ2QgZXJyb3Igb3V0IGluc3RlYWQgb2YganVzdCBsb2dnaW5nIGl0LgoKVGhvdWdoIEkg aG9wZSBub3QgdGhhdCBhbnlib2R5IGNvdWxkIGVuYWJsZSB0aGF0IG1vZGUgYnkgYWNjaWRlbnQK KHNpbmNlIG9uZSBtdXN0IG1hbmFnZSBlLmcuIHRoZSBlbmNyeXB0aW9uIGtleXMsIGV0Yy4pCgo+ IAo+PiArICAgICAgICAgICAgICAgIHJldHVybiBPaygoKSk7Cj4+ICsgICAgICAgICAgICB9Cj4+ ICsgICAgICAgIH0KPj4gICAgICAgICAgIGxldCBrZXkgPSBpZiBsZXQgU29tZSgocmVmIGtleSwg cmVmIHV1aWQpKSA9IGtleV9kYXRhIHsKPj4gICAgICAgICAgICAgICAvLyBkZXJpdmUgc3BlY2lh bGl6ZWQga2V5IGZvciBlYWNoIG1lZGlhLXNldAo+PiAgIAo+PiBAQCAtNzEwLDcgKzcyMSwyNCBA QCBpbXBsIFNnVGFwZSB7Cj4+ICAgICAgICAgICAgICAgTm9uZQo+PiAgICAgICAgICAgfTsKPj4g ICAKPj4gLSAgICAgICAgZHJpdmVfc2V0X2VuY3J5cHRpb24oJm11dCBzZWxmLmZpbGUsIGtleSkK Pj4gKyAgICAgICAgbWF0Y2ggZHJpdmVfc2V0X2VuY3J5cHRpb24oJm11dCBzZWxmLmZpbGUsIGtl eSkgewo+PiArICAgICAgICAgICAgT2soKCkpID0+IHNlbGYuZW5jcnlwdGlvbl9wb3NzaWJsZSA9 IFNvbWUodHJ1ZSksCj4+ICsgICAgICAgICAgICBFcnIoZXJyKSA9PiB7Cj4+ICsgICAgICAgICAg ICAgICAgc2VsZi5lbmNyeXB0aW9uX3Bvc3NpYmxlID0gU29tZShmYWxzZSk7Cj4+ICsgICAgICAg ICAgICAgICAgaWYga2V5LmlzX3NvbWUoKSB7Cj4+ICsgICAgICAgICAgICAgICAgICAgIGJhaWwh KCJjb3VsZCBub3Qgc2V0IGVuY3J5cHRpb24gbW9kZSBvbiBkcml2ZToge2Vycn0iKTsKPj4gKyAg ICAgICAgICAgICAgICB9IGVsc2Ugewo+PiArICAgICAgICAgICAgICAgICAgICBsb2c6OmluZm8h KCJjb3VsZCBub3Qgc2V0IGVuY3J5cHRpb24gbW9kZSBvbiBkcml2ZToge2Vycn0sIGlnbm9yaW5n LiIpOwo+IAo+IFdoaWxlIGludGVybmFsbHkgbmFtaW5nIHRoZSBmdW5jdGlvbiAic2V0IiBtaWdo dCBiZSBmaW5lLCBpdCBhbHdheXMgc2V0cyBzb21lCj4gdmFsdWUgYWZ0ZXIgYWxsLCBidXQgSSdk IG5vdCBsZWFrIHRoYXQgb3V0c2lkZSBhbmQgcmF0aGVyIGRvIHMvc2V0L2NsZWFyLyBmb3IKPiBh Ym92ZSBsb2cgbWVzc2FnZSwgYXMgb3RoZXJ3aXNlIHRoZSB1c2VyIHdpbGwgaW50ZXJwcmV0IHRo aXMgYXMgd2UgdHJpZWQgdG8KPiBzZXQgKD0gZW5hYmxlKSBlbmNyeXB0aW9uLCBmYWlsZWQgYW5k IGp1c3QgaWdub3JlIGl0LCB3aGljaCBzZWVtcyByYXRoZXIgdW5zYWZlCj4gZnJvbSB0aGVpciBQ T1YuCgp5ZXMgbWFrZXMgc2Vuc2UKCj4gCj4+ICsgICAgICAgICAgICAgICAgfQo+PiArICAgICAg ICAgICAgfQo+PiArICAgICAgICB9Cj4+ICsgICAgICAgIE9rKCgpKQo+PiArICAgIH0KPj4gKwo+ PiArICAgIC8vLyBSZXR1cm5zIGlmIGVuY3J5cHRpb24gaXMgcG9zc2libGUuIFJldHVybnMgW2BO b25lYF0gaWYgaXQncyB1bmtub3duLCBiZWNhdXNlCj4+ICsgICAgLy8vIG5vIGF0dGVtcHQgd2Fz IG1hZGUgdG8gc2V0IHRoZSBtb2RlIHlldC4KPj4gKyAgICBwdWIgZm4gZW5jcnlwdGlvbl9wb3Nz aWJsZSgmc2VsZikgLT4gT3B0aW9uPGJvb2w+IHsKPj4gKyAgICAgICAgc2VsZi5lbmNyeXB0aW9u X3Bvc3NpYmxlCj4+ICAgICAgIH0KPj4gICAKPj4gICAgICAgLy8gTm90ZTogdXNlIGFsbG9jX3Bh Z2VfYWxpZ25lZF9idWZmZXIgdG8gYWxsb2MgZGF0YSB0cmFuc2ZlciBidWZmZXIKPj4gZGlmZiAt LWdpdCBhL3Bicy10YXBlL3NyYy9zZ190YXBlL2VuY3J5cHRpb24ucnMgYi9wYnMtdGFwZS9zcmMv c2dfdGFwZS9lbmNyeXB0aW9uLnJzCj4+IGluZGV4IDcyNDdkMjU3Zi4uYzI0YTZjNjU4IDEwMDY0 NAo+PiAtLS0gYS9wYnMtdGFwZS9zcmMvc2dfdGFwZS9lbmNyeXB0aW9uLnJzCj4+ICsrKyBiL3Bi cy10YXBlL3NyYy9zZ190YXBlL2VuY3J5cHRpb24ucnMKPj4gQEAgLTEyLDE1ICsxMiw3IEBAIHVz ZSBjcmF0ZTo6c2d1dGlsczI6OnthbGxvY19wYWdlX2FsaWduZWRfYnVmZmVyLCBTZ1Jhd307Cj4+ ICAgLy8vCj4+ICAgLy8vIFdlIGFsd2F5cyB1c2UgbWl4ZWQgbW9kZSwKPj4gICBwdWIgZm4gZHJp dmVfc2V0X2VuY3J5cHRpb248RjogQXNSYXdGZD4oZmlsZTogJm11dCBGLCBrZXk6IE9wdGlvbjxb dTg7IDMyXT4pIC0+IFJlc3VsdDwoKSwgRXJyb3I+IHsKPj4gLSAgICBsZXQgZGF0YSA9IG1hdGNo IHNnX3NwaW5fZGF0YV9lbmNyeXB0aW9uX2NhcHMoZmlsZSkgewo+PiAtICAgICAgICBPayhkYXRh KSA9PiBkYXRhLAo+PiAtICAgICAgICBFcnIoXykgaWYga2V5LmlzX25vbmUoKSA9PiB7Cj4+IC0g ICAgICAgICAgICAvLyBBc3N1bWUgZGV2aWNlIGRvZXMgbm90IHN1cHBvcnQgSFcgZW5jcnlwdGlv bgo+PiAtICAgICAgICAgICAgLy8gV2UgY2FuIHNpbXBseSBpZ25vcmUgdGhlIGNsZWFyIGtleSBy ZXF1ZXN0Cj4+IC0gICAgICAgICAgICByZXR1cm4gT2soKCkpOwo+PiAtICAgICAgICB9Cj4+IC0g ICAgICAgIEVycihlcnIpID0+IHJldHVybiBFcnIoZXJyKSwKPj4gLSAgICB9Owo+PiArICAgIGxl dCBkYXRhID0gc2dfc3Bpbl9kYXRhX2VuY3J5cHRpb25fY2FwcyhmaWxlKT87Cj4+ICAgCj4+ICAg ICAgIGxldCBhbGdvcml0aG1faW5kZXggPSBkZWNvZGVfc3Bpbl9kYXRhX2VuY3J5cHRpb25fY2Fw cygmZGF0YSk/Owo+PiAgIAo+PiBAQCAtMjY2LDcgKzI1OCw3IEBAIGZuIGRlY29kZV9zcGluX2Rh dGFfZW5jcnlwdGlvbl9jYXBzKGRhdGE6ICZbdThdKSAtPiBSZXN1bHQ8dTgsIEVycm9yPiB7Cj4+ ICAgCj4+ICAgICAgICAgICBtYXRjaCBhZXNfZ2NtX2luZGV4IHsKPj4gICAgICAgICAgICAgICBT b21lKGluZGV4KSA9PiBPayhpbmRleCksCj4+IC0gICAgICAgICAgICBOb25lID0+IGJhaWwhKCJk cml2ZSBkb2VzIG5vdCBzdXBwb3J0IEFFUy1HQ00gZW5jcnlwdGlvbiIpLAo+PiArICAgICAgICAg ICAgTm9uZSA9PiBiYWlsISgiZHJpdmUgZG9lcyBub3Qgc3VwcG9ydCBzZXR0aW5nIEFFUy1HQ00g ZW5jcnlwdGlvbiIpLAo+PiAgICAgICAgICAgfQo+PiAgICAgICB9KQo+PiAgICAgICAubWFwX2Vy cih8ZXJyOiBFcnJvcnwgZm9ybWF0X2VyciEoImRlY29kZSBkYXRhIGVuY3J5cHRpb24gY2FwcyBw YWdlIGZhaWxlZCAtIHt9IiwgZXJyKSkKPj4gZGlmZiAtLWdpdCBhL3NyYy90YXBlL2RyaXZlL2x0 by9tb2QucnMgYi9zcmMvdGFwZS9kcml2ZS9sdG8vbW9kLnJzCj4+IGluZGV4IDIzZTA0M2NlNi4u YmQ1ZWM4YWU2IDEwMDY0NAo+PiAtLS0gYS9zcmMvdGFwZS9kcml2ZS9sdG8vbW9kLnJzCj4+ICsr KyBiL3NyYy90YXBlL2RyaXZlL2x0by9tb2QucnMKPj4gQEAgLTI2NCw2ICsyNjQsMTAgQEAgaW1w bCBUYXBlRHJpdmVyIGZvciBMdG9UYXBlSGFuZGxlIHsKPj4gICAgICAgfQo+PiAgIAo+PiAgICAg ICBmbiBhc3NlcnRfZW5jcnlwdGlvbl9tb2RlKCZtdXQgc2VsZiwgZW5jcnlwdGlvbl93YW50ZWQ6 IGJvb2wpIC0+IFJlc3VsdDwoKSwgRXJyb3I+IHsKPj4gKyAgICAgICAgaWYgU29tZShmYWxzZSkg PT0gc2VsZi5zZ190YXBlLmVuY3J5cHRpb25fcG9zc2libGUoKSAmJiAhZW5jcnlwdGlvbl93YW50 ZWQgewo+PiArICAgICAgICAgICAgLy8gaWdub3JlIGFzc2VydGlvbiBmb3IgdW5lbmNyeXB0ZWQg bW9kZSwgYmVjYXVzZSB3ZSBjYW4ndCBzZXQgaXQgYW55d2F5Cj4gCj4gcy9iZWNhdXNlL2lmLyA/ CgpzdXJlLCBzb3VuZHMgYWxzbyBnb29kIHRvIG1lCgpJJ2xsIHNlbmQgYSB2My4gU2luY2UgdGhl IGNoYW5nZXMgYXJlIG9ubHkgcmV3b3JkaW5ncyBvZiB0aGUgbWVzc2FnZSBhbmQKY29tbWVudHMs IEknbGwgaW5jbHVkZSB0aGUgJ3Rlc3RlZC1ieScgdGFnIGZyb20gQW5kcmV3IFN0b25lLCBhbHJp Z2h0PwoKPiAKPj4gKyAgICAgICAgICAgIHJldHVybiBPaygoKSk7Cj4+ICsgICAgICAgIH0KPj4g ICAgICAgICAgIGxldCBlbmNyeXB0aW9uX3NldCA9IGRyaXZlX2dldF9lbmNyeXB0aW9uKHNlbGYu c2dfdGFwZS5maWxlX211dCgpKT87Cj4+ICAgICAgICAgICBpZiBlbmNyeXB0aW9uX3dhbnRlZCAh PSBlbmNyeXB0aW9uX3NldCB7Cj4+ICAgICAgICAgICAgICAgYmFpbCEoIlNldCBlbmNyeXB0aW9u IG1vZGUgbm90IHdoYXQgd2FzIGRlc2lyZWQgKHNldDoge2VuY3J5cHRpb25fc2V0fSwgd2FudGVk OiB7ZW5jcnlwdGlvbl93YW50ZWR9KSIpOwo+IAoKCgpfX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fXwpwYnMtZGV2ZWwgbWFpbGluZyBsaXN0CnBicy1kZXZlbEBs aXN0cy5wcm94bW94LmNvbQpodHRwczovL2xpc3RzLnByb3htb3guY29tL2NnaS1iaW4vbWFpbG1h bi9saXN0aW5mby9wYnMtZGV2ZWwK