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 916801FF16F
	for <inbox@lore.proxmox.com>; Fri, 15 Nov 2024 13:11:22 +0100 (CET)
Received: from firstgate.proxmox.com (localhost [127.0.0.1])
	by firstgate.proxmox.com (Proxmox) with ESMTP id F1E3312624;
	Fri, 15 Nov 2024 13:11:16 +0100 (CET)
From: Stefan Hanreich <s.hanreich@proxmox.com>
To: pve-devel@lists.proxmox.com
Date: Fri, 15 Nov 2024 13:10:52 +0100
Message-Id: <20241115121109.170200-2-s.hanreich@proxmox.com>
X-Mailer: git-send-email 2.39.5
In-Reply-To: <20241115121109.170200-1-s.hanreich@proxmox.com>
References: <20241115121109.170200-1-s.hanreich@proxmox.com>
MIME-Version: 1.0
X-SPAM-LEVEL: Spam detection results:  0
 AWL -0.236 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_LAZY_DOMAIN_SECURITY 1 Sending domain does not have any anti-forgery
 methods
 RDNS_NONE 0.793 Delivered to internal network by a host with no rDNS
 SPF_HELO_NONE           0.001 SPF: HELO does not publish an SPF Record
 SPF_NONE                0.001 SPF: sender does not publish an SPF Record
Subject: [pve-devel] [PATCH proxmox-ve-rs v4 01/18] firewall: add forward
 direction
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>
Cc: Wolfgang Bumiller <w.bumiller@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>

VGhpcyBkaXJlY3Rpb24gd2lsbCBiZSB1c2VkIGZvciBzcGVjaWZ5aW5nIHJ1bGVzIG9uIGJyaWRn
ZS1sZXZlbApmaXJld2FsbHMgYXMgd2VsbCBhcyBydWxlcyBvbiB0aGUgY2x1c3RlciAvIGhvc3Qg
bGV2ZWwgdGhhdCBhcmUgZm9yCmZvcndhcmRlZCBuZXR3b3JrIHBhY2tldHMuCgpTaW5jZSB3aXRo
IHRoZSBpbnRyb2R1Y3Rpb24gb2YgdGhpcyBkaXJlY3Rpb24gbm90IGV2ZXJ5IHR5cGUgb2YKZmly
ZXdhbGwgY29uZmlndXJhdGlvbiBjYW4gY29udGFpbiBhbGwgdHlwZXMgb2YgZGlyZWN0aW9ucywg
d2UKYWRkaXRpb25hbGx5IGFkZCB2YWxpZGF0aW9uIGxvZ2ljIHRvIHRoZSBwYXJzZXIsIHNvIHJ1
bGVzIHdpdGggYW4KaW52YWxpZCBkaXJlY3Rpb24gZ2V0IHJlamVjdGVkIGJ5IHRoZSBwYXJzZXIu
CgpTaWduZWQtb2ZmLWJ5OiBTdGVmYW4gSGFucmVpY2ggPHMuaGFucmVpY2hAcHJveG1veC5jb20+
ClJldmlld2VkLWJ5OiBXb2xmZ2FuZyBCdW1pbGxlciA8dy5idW1pbGxlckBwcm94bW94LmNvbT4K
VGVzdGVkLWJ5OiBIYW5uZXMgRMO8cnIgPGguZHVlcnJAcHJveG1veC5jb20+Ci0tLQogcHJveG1v
eC12ZS1jb25maWcvc3JjL2ZpcmV3YWxsL2NsdXN0ZXIucnMgICAgfCAxMSArKysrKysrKysrKwog
cHJveG1veC12ZS1jb25maWcvc3JjL2ZpcmV3YWxsL2NvbW1vbi5ycyAgICAgfCAxMSArKysrKysr
KysrKwogcHJveG1veC12ZS1jb25maWcvc3JjL2ZpcmV3YWxsL2d1ZXN0LnJzICAgICAgfCAxMyAr
KysrKysrKysrKysrCiBwcm94bW94LXZlLWNvbmZpZy9zcmMvZmlyZXdhbGwvaG9zdC5ycyAgICAg
ICB8IDEyICsrKysrKysrKysrLQogcHJveG1veC12ZS1jb25maWcvc3JjL2ZpcmV3YWxsL21vZC5y
cyAgICAgICAgfCAgMSArCiBwcm94bW94LXZlLWNvbmZpZy9zcmMvZmlyZXdhbGwvdHlwZXMvcnVs
ZS5ycyB8IDEwICsrKysrKysrLS0KIDYgZmlsZXMgY2hhbmdlZCwgNTUgaW5zZXJ0aW9ucygrKSwg
MyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9wcm94bW94LXZlLWNvbmZpZy9zcmMvZmlyZXdh
bGwvY2x1c3Rlci5ycyBiL3Byb3htb3gtdmUtY29uZmlnL3NyYy9maXJld2FsbC9jbHVzdGVyLnJz
CmluZGV4IDIyMzEyNGIuLmNlM2RkNTMgMTAwNjQ0Ci0tLSBhL3Byb3htb3gtdmUtY29uZmlnL3Ny
Yy9maXJld2FsbC9jbHVzdGVyLnJzCisrKyBiL3Byb3htb3gtdmUtY29uZmlnL3NyYy9maXJld2Fs
bC9jbHVzdGVyLnJzCkBAIC0yNSwxMiArMjUsMTUgQEAgcHViIGNvbnN0IENMVVNURVJfRUJUQUJM
RVNfREVGQVVMVDogYm9vbCA9IGZhbHNlOwogcHViIGNvbnN0IENMVVNURVJfUE9MSUNZX0lOX0RF
RkFVTFQ6IFZlcmRpY3QgPSBWZXJkaWN0OjpEcm9wOwogLy8vIGRlZmF1bHQgc2V0dGluZyBmb3Ig
W2BDb25maWc6OmRlZmF1bHRfcG9saWN5KClgXQogcHViIGNvbnN0IENMVVNURVJfUE9MSUNZX09V
VF9ERUZBVUxUOiBWZXJkaWN0ID0gVmVyZGljdDo6QWNjZXB0OworLy8vIGRlZmF1bHQgc2V0dGlu
ZyBmb3IgW2BDb25maWc6OmRlZmF1bHRfcG9saWN5KClgXQorcHViIGNvbnN0IENMVVNURVJfUE9M
SUNZX0ZPUldBUkRfREVGQVVMVDogVmVyZGljdCA9IFZlcmRpY3Q6OkFjY2VwdDsKIAogaW1wbCBD
b25maWcgewogICAgIHB1YiBmbiBwYXJzZTxSOiBpbzo6QnVmUmVhZD4oaW5wdXQ6IFIpIC0+IFJl
c3VsdDxTZWxmLCBFcnJvcj4gewogICAgICAgICBsZXQgcGFyc2VyX2NvbmZpZyA9IFBhcnNlckNv
bmZpZyB7CiAgICAgICAgICAgICBndWVzdF9pZmFjZV9uYW1lczogZmFsc2UsCiAgICAgICAgICAg
ICBpcHNldF9zY29wZTogU29tZShJcHNldFNjb3BlOjpEYXRhY2VudGVyKSwKKyAgICAgICAgICAg
IGFsbG93ZWRfZGlyZWN0aW9uczogdmVjIVtEaXJlY3Rpb246OkluLCBEaXJlY3Rpb246Ok91dCwg
RGlyZWN0aW9uOjpGb3J3YXJkXSwKICAgICAgICAgfTsKIAogICAgICAgICBPayhTZWxmIHsKQEAg
LTg2LDYgKzg5LDExIEBAIGltcGwgQ29uZmlnIHsKICAgICAgICAgICAgICAgICAub3B0aW9ucwog
ICAgICAgICAgICAgICAgIC5wb2xpY3lfb3V0CiAgICAgICAgICAgICAgICAgLnVud3JhcF9vcihD
TFVTVEVSX1BPTElDWV9PVVRfREVGQVVMVCksCisgICAgICAgICAgICBEaXJlY3Rpb246OkZvcndh
cmQgPT4gc2VsZgorICAgICAgICAgICAgICAgIC5jb25maWcKKyAgICAgICAgICAgICAgICAub3B0
aW9ucworICAgICAgICAgICAgICAgIC5wb2xpY3lfZm9yd2FyZAorICAgICAgICAgICAgICAgIC51
bndyYXBfb3IoQ0xVU1RFUl9QT0xJQ1lfRk9SV0FSRF9ERUZBVUxUKSwKICAgICAgICAgfQogICAg
IH0KIApAQCAtMTIxLDYgKzEyOSw3IEBAIHB1YiBzdHJ1Y3QgT3B0aW9ucyB7CiAKICAgICBwb2xp
Y3lfaW46IE9wdGlvbjxWZXJkaWN0PiwKICAgICBwb2xpY3lfb3V0OiBPcHRpb248VmVyZGljdD4s
CisgICAgcG9saWN5X2ZvcndhcmQ6IE9wdGlvbjxWZXJkaWN0PiwKIH0KIAogI1tjZmcodGVzdCld
CkBAIC0xNDgsNiArMTU3LDcgQEAgbG9nX3JhdGVsaW1pdDogMSxyYXRlPTEwL3NlY29uZCxidXJz
dD0yMAogZWJ0YWJsZXM6IDAKIHBvbGljeV9pbjogUkVKRUNUCiBwb2xpY3lfb3V0OiBSRUpFQ1QK
K3BvbGljeV9mb3J3YXJkOiBEUk9QCiAKIFtBTElBU0VTXQogCkBAIC0xOTEsNiArMjAxLDcgQEAg
SU4gQkdQKFJFSkVDVCkgLWxvZyBjcml0IC1zb3VyY2UgMS4yLjMuNAogICAgICAgICAgICAgICAg
ICkpLAogICAgICAgICAgICAgICAgIHBvbGljeV9pbjogU29tZShWZXJkaWN0OjpSZWplY3QpLAog
ICAgICAgICAgICAgICAgIHBvbGljeV9vdXQ6IFNvbWUoVmVyZGljdDo6UmVqZWN0KSwKKyAgICAg
ICAgICAgICAgICBwb2xpY3lfZm9yd2FyZDogU29tZShWZXJkaWN0OjpEcm9wKSwKICAgICAgICAg
ICAgIH0KICAgICAgICAgKTsKIApkaWZmIC0tZ2l0IGEvcHJveG1veC12ZS1jb25maWcvc3JjL2Zp
cmV3YWxsL2NvbW1vbi5ycyBiL3Byb3htb3gtdmUtY29uZmlnL3NyYy9maXJld2FsbC9jb21tb24u
cnMKaW5kZXggYTA4ZjE5Yy4uMzk5OTE2OCAxMDA2NDQKLS0tIGEvcHJveG1veC12ZS1jb25maWcv
c3JjL2ZpcmV3YWxsL2NvbW1vbi5ycworKysgYi9wcm94bW94LXZlLWNvbmZpZy9zcmMvZmlyZXdh
bGwvY29tbW9uLnJzCkBAIC02LDYgKzYsNyBAQCB1c2Ugc2VyZGU6OmRlOjpJbnRvRGVzZXJpYWxp
emVyOwogCiB1c2UgY3JhdGU6OmZpcmV3YWxsOjpwYXJzZTo6e3BhcnNlX25hbWVkX3NlY3Rpb25f
dGFpbCwgc3BsaXRfa2V5X3ZhbHVlLCBTb21lU3RyaW5nfTsKIHVzZSBjcmF0ZTo6ZmlyZXdhbGw6
OnR5cGVzOjppcHNldDo6e0lwc2V0TmFtZSwgSXBzZXRTY29wZX07Cit1c2UgY3JhdGU6OmZpcmV3
YWxsOjp0eXBlczo6cnVsZTo6e0RpcmVjdGlvbiwgS2luZH07CiB1c2UgY3JhdGU6OmZpcmV3YWxs
Ojp0eXBlczo6e0FsaWFzLCBHcm91cCwgSXBzZXQsIFJ1bGV9OwogCiAjW2Rlcml2ZShEZWJ1Zywg
RGVmYXVsdCldCkBAIC0zNCw2ICszNSw3IEBAIHB1YiBzdHJ1Y3QgUGFyc2VyQ29uZmlnIHsKICAg
ICAvLy8gTmV0d29yayBpbnRlcmZhY2VzIG11c3QgYmUgb2YgdGhlIGZvcm0gYG5ldFhgLgogICAg
IHB1YiBndWVzdF9pZmFjZV9uYW1lczogYm9vbCwKICAgICBwdWIgaXBzZXRfc2NvcGU6IE9wdGlv
bjxJcHNldFNjb3BlPiwKKyAgICBwdWIgYWxsb3dlZF9kaXJlY3Rpb25zOiBWZWM8RGlyZWN0aW9u
PiwKIH0KIAogaW1wbDxPPiBDb25maWc8Tz4KQEAgLTE1MCw2ICsxNTIsMTUgQEAgd2hlcmUKICAg
ICAgICAgICAgIH0KICAgICAgICAgfQogCisgICAgICAgIGlmIGxldCBLaW5kOjpNYXRjaChydWxl
KSA9IHJ1bGUua2luZCgpIHsKKyAgICAgICAgICAgIGlmICFwYXJzZXJfY2ZnLmFsbG93ZWRfZGly
ZWN0aW9ucy5jb250YWlucygmcnVsZS5kaXIpIHsKKyAgICAgICAgICAgICAgICBiYWlsISgKKyAg
ICAgICAgICAgICAgICAgICAgImZvdW5kIG5vdCBhbGxvd2VkIGRpcmVjdGlvbiBpbiBmaXJld2Fs
bCBjb25maWc6IHswfSIsCisgICAgICAgICAgICAgICAgICAgIHJ1bGUuZGlyCisgICAgICAgICAg
ICAgICAgKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorCiAgICAgICAgIHNlbGYucnVsZXMu
cHVzaChydWxlKTsKICAgICAgICAgT2soKCkpCiAgICAgfQpkaWZmIC0tZ2l0IGEvcHJveG1veC12
ZS1jb25maWcvc3JjL2ZpcmV3YWxsL2d1ZXN0LnJzIGIvcHJveG1veC12ZS1jb25maWcvc3JjL2Zp
cmV3YWxsL2d1ZXN0LnJzCmluZGV4IGM3ZTI4MmYuLjFlNzBhNjcgMTAwNjQ0Ci0tLSBhL3Byb3ht
b3gtdmUtY29uZmlnL3NyYy9maXJld2FsbC9ndWVzdC5ycworKysgYi9wcm94bW94LXZlLWNvbmZp
Zy9zcmMvZmlyZXdhbGwvZ3Vlc3QucnMKQEAgLTMxLDYgKzMxLDggQEAgcHViIGNvbnN0IEdVRVNU
X0lQRklMVEVSX0RFRkFVTFQ6IGJvb2wgPSBmYWxzZTsKIHB1YiBjb25zdCBHVUVTVF9QT0xJQ1lf
SU5fREVGQVVMVDogVmVyZGljdCA9IFZlcmRpY3Q6OkRyb3A7CiAvLy8gZGVmYXVsdCByZXR1cm4g
dmFsdWUgZm9yIFtgQ29uZmlnOjpkZWZhdWx0X3BvbGljeSgpYF0KIHB1YiBjb25zdCBHVUVTVF9Q
T0xJQ1lfT1VUX0RFRkFVTFQ6IFZlcmRpY3QgPSBWZXJkaWN0OjpBY2NlcHQ7CisvLy8gZGVmYXVs
dCByZXR1cm4gdmFsdWUgZm9yIFtgQ29uZmlnOjpkZWZhdWx0X3BvbGljeSgpYF0KK3B1YiBjb25z
dCBHVUVTVF9QT0xJQ1lfRk9SV0FSRF9ERUZBVUxUOiBWZXJkaWN0ID0gVmVyZGljdDo6QWNjZXB0
OwogCiAjW2Rlcml2ZShEZWJ1ZywgRGVmYXVsdCwgRGVzZXJpYWxpemUpXQogI1tjZmdfYXR0cih0
ZXN0LCBkZXJpdmUoRXEsIFBhcnRpYWxFcSkpXQpAQCAtNjEsNiArNjMsOCBAQCBwdWIgc3RydWN0
IE9wdGlvbnMgewogCiAgICAgI1tzZXJkZShyZW5hbWUgPSAicG9saWN5X291dCIpXQogICAgIHBv
bGljeV9vdXQ6IE9wdGlvbjxWZXJkaWN0PiwKKworICAgIHBvbGljeV9mb3J3YXJkOiBPcHRpb248
VmVyZGljdD4sCiB9CiAKICNbZGVyaXZlKERlYnVnKV0KQEAgLTg0LDYgKzg4LDcgQEAgaW1wbCBD
b25maWcgewogICAgICAgICBsZXQgcGFyc2VyX2NmZyA9IHN1cGVyOjpjb21tb246OlBhcnNlckNv
bmZpZyB7CiAgICAgICAgICAgICBndWVzdF9pZmFjZV9uYW1lczogdHJ1ZSwKICAgICAgICAgICAg
IGlwc2V0X3Njb3BlOiBTb21lKElwc2V0U2NvcGU6Okd1ZXN0KSwKKyAgICAgICAgICAgIGFsbG93
ZWRfZGlyZWN0aW9uczogdmVjIVtEaXJlY3Rpb246OkluLCBEaXJlY3Rpb246Ok91dF0sCiAgICAg
ICAgIH07CiAKICAgICAgICAgbGV0IGNvbmZpZyA9IHN1cGVyOjpjb21tb246OkNvbmZpZzo6cGFy
c2UoZmlyZXdhbGxfaW5wdXQsICZwYXJzZXJfY2ZnKT87CkBAIC0xMzEsNiArMTM2LDcgQEAgaW1w
bCBDb25maWcgewogICAgICAgICBtYXRjaCBkaXIgewogICAgICAgICAgICAgRGlyZWN0aW9uOjpJ
biA9PiBzZWxmLmNvbmZpZy5vcHRpb25zLmxvZ19sZXZlbF9pbi51bndyYXBfb3JfZGVmYXVsdCgp
LAogICAgICAgICAgICAgRGlyZWN0aW9uOjpPdXQgPT4gc2VsZi5jb25maWcub3B0aW9ucy5sb2df
bGV2ZWxfb3V0LnVud3JhcF9vcl9kZWZhdWx0KCksCisgICAgICAgICAgICBfID0+IExvZ0xldmVs
OjpOb2xvZywKICAgICAgICAgfQogICAgIH0KIApAQCAtMTc5LDYgKzE4NSwxMSBAQCBpbXBsIENv
bmZpZyB7CiAgICAgICAgICAgICAgICAgLm9wdGlvbnMKICAgICAgICAgICAgICAgICAucG9saWN5
X291dAogICAgICAgICAgICAgICAgIC51bndyYXBfb3IoR1VFU1RfUE9MSUNZX09VVF9ERUZBVUxU
KSwKKyAgICAgICAgICAgIERpcmVjdGlvbjo6Rm9yd2FyZCA9PiBzZWxmCisgICAgICAgICAgICAg
ICAgLmNvbmZpZworICAgICAgICAgICAgICAgIC5vcHRpb25zCisgICAgICAgICAgICAgICAgLnBv
bGljeV9mb3J3YXJkCisgICAgICAgICAgICAgICAgLnVud3JhcF9vcihHVUVTVF9QT0xJQ1lfRk9S
V0FSRF9ERUZBVUxUKSwKICAgICAgICAgfQogICAgIH0KIApAQCAtMjExLDYgKzIyMiw3IEBAIG5k
cDoxCiByYWR2OjEKIHBvbGljeV9pbjogUkVKRUNUCiBwb2xpY3lfb3V0OiBSRUpFQ1QKK3BvbGlj
eV9mb3J3YXJkOiBEUk9QCiAiIzsKIAogICAgICAgICBsZXQgY29uZmlnID0gQ09ORklHLmFzX2J5
dGVzKCk7CkBAIC0yMzEsNiArMjQzLDcgQEAgcG9saWN5X291dDogUkVKRUNUCiAgICAgICAgICAg
ICAgICAgbWFjZmlsdGVyOiBTb21lKGZhbHNlKSwKICAgICAgICAgICAgICAgICBwb2xpY3lfaW46
IFNvbWUoVmVyZGljdDo6UmVqZWN0KSwKICAgICAgICAgICAgICAgICBwb2xpY3lfb3V0OiBTb21l
KFZlcmRpY3Q6OlJlamVjdCksCisgICAgICAgICAgICAgICAgcG9saWN5X2ZvcndhcmQ6IFNvbWUo
VmVyZGljdDo6RHJvcCksCiAgICAgICAgICAgICB9CiAgICAgICAgICk7CiAgICAgfQpkaWZmIC0t
Z2l0IGEvcHJveG1veC12ZS1jb25maWcvc3JjL2ZpcmV3YWxsL2hvc3QucnMgYi9wcm94bW94LXZl
LWNvbmZpZy9zcmMvZmlyZXdhbGwvaG9zdC5ycwppbmRleCAzZGU2ZmFkLi4zOTQ4OTZjIDEwMDY0
NAotLS0gYS9wcm94bW94LXZlLWNvbmZpZy9zcmMvZmlyZXdhbGwvaG9zdC5ycworKysgYi9wcm94
bW94LXZlLWNvbmZpZy9zcmMvZmlyZXdhbGwvaG9zdC5ycwpAQCAtNDQsNiArNDQsNyBAQCBwdWIg
c3RydWN0IE9wdGlvbnMgewogCiAgICAgbG9nX2xldmVsX2luOiBPcHRpb248TG9nTGV2ZWw+LAog
ICAgIGxvZ19sZXZlbF9vdXQ6IE9wdGlvbjxMb2dMZXZlbD4sCisgICAgbG9nX2xldmVsX2Zvcndh
cmQ6IE9wdGlvbjxMb2dMZXZlbD4sCiAKICAgICAjW3NlcmRlKGRlZmF1bHQsIHdpdGggPSAicGFy
c2U6OnNlcmRlX29wdGlvbl9ib29sIildCiAgICAgbG9nX25mX2Nvbm50cmFjazogT3B0aW9uPGJv
b2w+LApAQCAtOTQsNyArOTUsMTMgQEAgaW1wbCBDb25maWcgewogICAgIH0KIAogICAgIHB1YiBm
biBwYXJzZTxSOiBpbzo6QnVmUmVhZD4oaW5wdXQ6IFIpIC0+IFJlc3VsdDxTZWxmLCBFcnJvcj4g
ewotICAgICAgICBsZXQgY29uZmlnID0gc3VwZXI6OmNvbW1vbjo6Q29uZmlnOjpwYXJzZShpbnB1
dCwgJkRlZmF1bHQ6OmRlZmF1bHQoKSk/OworICAgICAgICBsZXQgcGFyc2VyX2NmZyA9IHN1cGVy
Ojpjb21tb246OlBhcnNlckNvbmZpZyB7CisgICAgICAgICAgICBndWVzdF9pZmFjZV9uYW1lczog
ZmFsc2UsCisgICAgICAgICAgICBpcHNldF9zY29wZTogTm9uZSwKKyAgICAgICAgICAgIGFsbG93
ZWRfZGlyZWN0aW9uczogdmVjIVtEaXJlY3Rpb246OkluLCBEaXJlY3Rpb246Ok91dCwgRGlyZWN0
aW9uOjpGb3J3YXJkXSwKKyAgICAgICAgfTsKKworICAgICAgICBsZXQgY29uZmlnID0gc3VwZXI6
OmNvbW1vbjo6Q29uZmlnOjpwYXJzZShpbnB1dCwgJnBhcnNlcl9jZmcpPzsKIAogICAgICAgICBp
ZiAhY29uZmlnLmdyb3Vwcy5pc19lbXB0eSgpIHsKICAgICAgICAgICAgIGJhaWwhKCJob3N0IGZp
cmV3YWxsIGNvbmZpZyBjYW5ub3QgZGVjbGFyZSBncm91cHMiKTsKQEAgLTI2Miw2ICsyNjksNyBA
QCBpbXBsIENvbmZpZyB7CiAgICAgICAgIG1hdGNoIGRpciB7CiAgICAgICAgICAgICBEaXJlY3Rp
b246OkluID0+IHNlbGYuY29uZmlnLm9wdGlvbnMubG9nX2xldmVsX2luLnVud3JhcF9vcl9kZWZh
dWx0KCksCiAgICAgICAgICAgICBEaXJlY3Rpb246Ok91dCA9PiBzZWxmLmNvbmZpZy5vcHRpb25z
LmxvZ19sZXZlbF9vdXQudW53cmFwX29yX2RlZmF1bHQoKSwKKyAgICAgICAgICAgIERpcmVjdGlv
bjo6Rm9yd2FyZCA9PiBzZWxmLmNvbmZpZy5vcHRpb25zLmxvZ19sZXZlbF9mb3J3YXJkLnVud3Jh
cF9vcl9kZWZhdWx0KCksCiAgICAgICAgIH0KICAgICB9CiB9CkBAIC0yODQsNiArMjkyLDcgQEAg
ZW5hYmxlOiAxCiBuZnRhYmxlczogMQogbG9nX2xldmVsX2luOiBkZWJ1ZwogbG9nX2xldmVsX291
dDogZW1lcmcKK2xvZ19sZXZlbF9mb3J3YXJkOiB3YXJuCiBsb2dfbmZfY29ubnRyYWNrOiAwCiBu
ZHA6IDEKIG5mX2Nvbm50cmFja19hbGxvd19pbnZhbGlkOiB5ZXMKQEAgLTMxNiw2ICszMjUsNyBA
QCBJTiBBQ0NFUFQgLXAgdWRwIC1kcG9ydCAzMyAtc3BvcnQgMjIgLWxvZyB3YXJuaW5nCiAgICAg
ICAgICAgICAgICAgbmZ0YWJsZXM6IFNvbWUodHJ1ZSksCiAgICAgICAgICAgICAgICAgbG9nX2xl
dmVsX2luOiBTb21lKExvZ0xldmVsOjpEZWJ1ZyksCiAgICAgICAgICAgICAgICAgbG9nX2xldmVs
X291dDogU29tZShMb2dMZXZlbDo6RW1lcmdlbmN5KSwKKyAgICAgICAgICAgICAgICBsb2dfbGV2
ZWxfZm9yd2FyZDogU29tZShMb2dMZXZlbDo6V2FybmluZyksCiAgICAgICAgICAgICAgICAgbG9n
X25mX2Nvbm50cmFjazogU29tZShmYWxzZSksCiAgICAgICAgICAgICAgICAgbmRwOiBTb21lKHRy
dWUpLAogICAgICAgICAgICAgICAgIG5mX2Nvbm50cmFja19hbGxvd19pbnZhbGlkOiBTb21lKHRy
dWUpLApkaWZmIC0tZ2l0IGEvcHJveG1veC12ZS1jb25maWcvc3JjL2ZpcmV3YWxsL21vZC5ycyBi
L3Byb3htb3gtdmUtY29uZmlnL3NyYy9maXJld2FsbC9tb2QucnMKaW5kZXggMmNmNTdlMi4uNmVl
M2MzMSAxMDA2NDQKLS0tIGEvcHJveG1veC12ZS1jb25maWcvc3JjL2ZpcmV3YWxsL21vZC5ycwor
KysgYi9wcm94bW94LXZlLWNvbmZpZy9zcmMvZmlyZXdhbGwvbW9kLnJzCkBAIC0xLDMgKzEsNCBA
QAorcHViIG1vZCBicmlkZ2U7CiBwdWIgbW9kIGNsdXN0ZXI7CiBwdWIgbW9kIGNvbW1vbjsKIHB1
YiBtb2QgY3RfaGVscGVyOwpkaWZmIC0tZ2l0IGEvcHJveG1veC12ZS1jb25maWcvc3JjL2ZpcmV3
YWxsL3R5cGVzL3J1bGUucnMgYi9wcm94bW94LXZlLWNvbmZpZy9zcmMvZmlyZXdhbGwvdHlwZXMv
cnVsZS5ycwppbmRleCA1Mzc0YmIwLi4yYzhmNDljIDEwMDY0NAotLS0gYS9wcm94bW94LXZlLWNv
bmZpZy9zcmMvZmlyZXdhbGwvdHlwZXMvcnVsZS5ycworKysgYi9wcm94bW94LXZlLWNvbmZpZy9z
cmMvZmlyZXdhbGwvdHlwZXMvcnVsZS5ycwpAQCAtMTMsMTkgKzEzLDI0IEBAIHB1YiBlbnVtIERp
cmVjdGlvbiB7CiAgICAgI1tkZWZhdWx0XQogICAgIEluLAogICAgIE91dCwKKyAgICBGb3J3YXJk
LAogfQogCiBpbXBsIHN0ZDo6c3RyOjpGcm9tU3RyIGZvciBEaXJlY3Rpb24gewogICAgIHR5cGUg
RXJyID0gRXJyb3I7CiAKICAgICBmbiBmcm9tX3N0cihzOiAmc3RyKSAtPiBSZXN1bHQ8U2VsZiwg
RXJyb3I+IHsKLSAgICAgICAgZm9yIChuYW1lLCBkaXIpIGluIFsoIklOIiwgRGlyZWN0aW9uOjpJ
biksICgiT1VUIiwgRGlyZWN0aW9uOjpPdXQpXSB7CisgICAgICAgIGZvciAobmFtZSwgZGlyKSBp
biBbCisgICAgICAgICAgICAoIklOIiwgRGlyZWN0aW9uOjpJbiksCisgICAgICAgICAgICAoIk9V
VCIsIERpcmVjdGlvbjo6T3V0KSwKKyAgICAgICAgICAgICgiRk9SV0FSRCIsIERpcmVjdGlvbjo6
Rm9yd2FyZCksCisgICAgICAgIF0gewogICAgICAgICAgICAgaWYgcy5lcV9pZ25vcmVfYXNjaWlf
Y2FzZShuYW1lKSB7CiAgICAgICAgICAgICAgICAgcmV0dXJuIE9rKGRpcik7CiAgICAgICAgICAg
ICB9CiAgICAgICAgIH0KIAotICAgICAgICBiYWlsISgiaW52YWxpZCBkaXJlY3Rpb246IHtzOj99
LCBleHBlY3QgJ0lOJyBvciAnT1VUJyIpOworICAgICAgICBiYWlsISgiaW52YWxpZCBkaXJlY3Rp
b246IHtzOj99LCBleHBlY3QgJ0lOJywgJ09VVCcgb3IgJ0ZPUldBUkQnIik7CiAgICAgfQogfQog
CkBAIC0zNiw2ICs0MSw3IEBAIGltcGwgZm10OjpEaXNwbGF5IGZvciBEaXJlY3Rpb24gewogICAg
ICAgICBtYXRjaCBzZWxmIHsKICAgICAgICAgICAgIERpcmVjdGlvbjo6SW4gPT4gZi53cml0ZV9z
dHIoImluIiksCiAgICAgICAgICAgICBEaXJlY3Rpb246Ok91dCA9PiBmLndyaXRlX3N0cigib3V0
IiksCisgICAgICAgICAgICBEaXJlY3Rpb246OkZvcndhcmQgPT4gZi53cml0ZV9zdHIoImZvcndh
cmQiKSwKICAgICAgICAgfQogICAgIH0KIH0KLS0gCjIuMzkuNQoKCl9fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCnB2ZS1kZXZlbCBtYWlsaW5nIGxpc3QKcHZl
LWRldmVsQGxpc3RzLnByb3htb3guY29tCmh0dHBzOi8vbGlzdHMucHJveG1veC5jb20vY2dpLWJp
bi9tYWlsbWFuL2xpc3RpbmZvL3B2ZS1kZXZlbAo=