Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1uM1uV-000uRr-J0 for pgsql-hackers@arkaria.postgresql.org; Mon, 02 Jun 2025 09:56:51 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.94.2) (envelope-from ) id 1uM1uT-008zxm-5i for pgsql-hackers@arkaria.postgresql.org; Mon, 02 Jun 2025 09:56:49 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1uM1uS-008zxe-Jw for pgsql-hackers@lists.postgresql.org; Mon, 02 Jun 2025 09:56:48 +0000 Received: from mail-vs1-xe2a.google.com ([2607:f8b0:4864:20::e2a]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.96) (envelope-from ) id 1uM1uQ-0000rE-0N for pgsql-hackers@postgresql.org; Mon, 02 Jun 2025 09:56:47 +0000 Received: by mail-vs1-xe2a.google.com with SMTP id ada2fe7eead31-4e2b5ffb932so1499091137.0 for ; Mon, 02 Jun 2025 02:56:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1748858206; x=1749463006; darn=postgresql.org; h=to:subject:message-id:date:from:in-reply-to:references:mime-version :from:to:cc:subject:date:message-id:reply-to; bh=qCpggkI/gYGeLTr6C28S4EdgLGTsNN4j/C6486F7OPY=; b=accadvmuLGayakep6lRnjTmQk5/BWiU0BhgrAjlVRo4JkJE36tpNQnZbo6r46BjNVm BWqzY5wBZKw8Y9h5eZKPtcQvyLYnEKRqGUhCJFvNpxqYou658X3RcEziMq5oEON67SLj knz3rsHmW0PtX/xa4SasAzzRsKviF/D22GSLV9dhW3sYJAfMh81eG9AT571pPuqxcRQz 9mMsl20mqhdzqxdgl9t65qVDwpRdkMuToaHk2+gc2c5NCBlRN6h2RLyE9XnLuUq5EQYK hYzP0z/UgJba06h2zfFcX2RNh2HOfNXShMJ3HkG/2o8ZPSTgcqDJMhoa2wV2+shCnFwK IIIw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1748858206; x=1749463006; h=to:subject:message-id:date:from:in-reply-to:references:mime-version :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=qCpggkI/gYGeLTr6C28S4EdgLGTsNN4j/C6486F7OPY=; b=LW1BzksDrd7x6rtMM7IXSsN3OtawyvqZtmEvZi4c8unRmYv/vmVJ5y2nHlvqgRK0eV xbq94k7oS+y8ncZF/VJQVk7ODDWOzyk5Y/fQjMCen0DYmAEl+g2MS5ZKR8GrG2ygt1UE 1pEKk/kLnHRHmyRmGvN82udkDUDoeWEhx6p4VwLSCaBRjmDGP7A6WWKk3++q5tjE9ROZ rGiv21/6FM1ZcsuA7kX3az3HUHeUEeLeTaSCS39H0c0FPiRMDesFWYeIsoXBfvbr6Mv5 Dg+z6LLxN13KlkhP4OPadIPdKVsra60lxZuNpRPYMYBD0VxB6AOkWot8Irgps0klwxdv TcSQ== X-Gm-Message-State: AOJu0YxQToraHrU6mdWZXd0Yy0/GsyHizR3+zmEvNk9CaKNtvG/m4CJ1 UfQFdPx3/zOuU5RxNUNjQGAaOLIeZl1ifavO/3VsLDWd4f3QDXdOSJfQYlxMVS2XYtIfrJvfrEo RXAEZlbEkIs8/sPYL6qP8Vtu5p9WYUL2thqHUKrc= X-Gm-Gg: ASbGncuFoORcHUCuXiKI4YpA+c45eUNtZm0JLIQlGmqSCJUgOHaCHSp2WFc57yEpX9A O8R9J9L/VDPdQX2uJ/RZY/4qZWMzufK6NXztvvNY0tlqWp9qPAjjkunwkN/jWQN17aa7vT+yl5Z A/xlEvaeBSgoyft4/F0TIrsqZaFaqjBX8++xFUSCO7c5q8ywd39+ZLasa0tf6NTKMzcgaWrGE= X-Google-Smtp-Source: AGHT+IGIbll9Sm0KgIRIWPqAjlSR970skYvV1A4YKdkhDTPQInZ4PwB89+6ygL8y8OLwQWGWKUHMqI8Q5sjaxhhNxow= X-Received: by 2002:a05:6102:38c9:b0:4e5:ac94:a00d with SMTP id ada2fe7eead31-4e6e41a94d4mr9634765137.17.1748858205556; Mon, 02 Jun 2025 02:56:45 -0700 (PDT) MIME-Version: 1.0 References: <229413.1741144420@sss.pgh.pa.us> In-Reply-To: From: jian he Date: Mon, 2 Jun 2025 17:56:00 +0800 X-Gm-Features: AX0GCFu2C8ymkRJ9TOkOo-abtWi7Zzm6DxprOsl8posIifeVHwaSlpOUgJvy1zo Message-ID: Subject: Re: support fast default for domain with constraints To: PostgreSQL-development Content-Type: multipart/mixed; boundary="0000000000001aea4e063693c844" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --0000000000001aea4e063693c844 Content-Type: text/plain; charset="UTF-8" hi. attached is to fix the regress test failure[0] in V5. I also did some test simplification. [0] https://api.cirrus-ci.com/v1/artifact/task/6014753866252288/log/src/test/regress/regression.diffs --0000000000001aea4e063693c844 Content-Type: application/x-patch; name="v6-0001-soft-error-variant-of-ExecPrepareExpr-ExecInitExpr.patch" Content-Disposition: attachment; filename="v6-0001-soft-error-variant-of-ExecPrepareExpr-ExecInitExpr.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mbeurllp2 RnJvbSAxZGY5ZmM2ZThlNjQ1NDYzZTg2NGY0NDQ5MmQ1MzJkZWY3NGM4NDM3IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBqaWFuIGhlIDxqaWFuLnVuaXZlcnNhbGl0eUBnbWFpbC5jb20+ CkRhdGU6IE1vbiwgMjQgTWFyIDIwMjUgMTY6MDc6NDYgKzA4MDAKU3ViamVjdDogW1BBVENIIHY2 IDEvM10gc29mdCBlcnJvciB2YXJpYW50IG9mIEV4ZWNQcmVwYXJlRXhwciwgRXhlY0luaXRFeHBy CgpFeGVjSW5pdEV4cHJTYWZlOiBzb2Z0IGVycm9yIG9mIEV4ZWNJbml0RXhwci4KRXhlY1ByZXBh cmVFeHByU2FmZTogc29mdCBlcnJvciBvZiBFeGVjUHJlcGFyZUV4cHIuCkV4ZWNQcmVwYXJlRXhw clNhZmUgaW5pdGlhbGl6ZSBmb3IgZXhwcmVzc2lvbiBleGVjdXRpb24gd2l0aCBzb2Z0IGVycm9y IHN1cHBvcnQuCm5vdCBhbGwgZXhwcmVzc2lvbiBub2RlIHN1cHBvcnQgaXQuIExpa2Ugbm9kZSBD b2VyY2VUb0RvbWFpbiBzdXBwb3J0IGl0LgoKWFhYIG1vcmUgY29tbWVudHMuCgpkaXNjdXNzaW9u OiBodHRwczovL3Bvc3Rnci5lcy9tL0NBQ0p1ZnhFXytpWkJSMWk0OWtfQUhpZ3BwUHdMVEppNmtt OE5Pc0M3Rld2S2RFbW1YZ0BtYWlsLmdtYWlsLmNvbQotLS0KIHNyYy9iYWNrZW5kL2V4ZWN1dG9y L2V4ZWNFeHByLmMgfCA2MyArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKIHNyYy9p bmNsdWRlL2V4ZWN1dG9yL2V4ZWN1dG9yLmggfCAgMiArKwogMiBmaWxlcyBjaGFuZ2VkLCA2NSBp bnNlcnRpb25zKCspCgpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvZXhlY3V0b3IvZXhlY0V4cHIu YyBiL3NyYy9iYWNrZW5kL2V4ZWN1dG9yL2V4ZWNFeHByLmMKaW5kZXggZjE1Njk4NzliNTIuLjkx ODJiYTQ0NmEwIDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9leGVjdXRvci9leGVjRXhwci5jCisr KyBiL3NyYy9iYWNrZW5kL2V4ZWN1dG9yL2V4ZWNFeHByLmMKQEAgLTE3MCw2ICsxNzAsNDcgQEAg RXhlY0luaXRFeHByKEV4cHIgKm5vZGUsIFBsYW5TdGF0ZSAqcGFyZW50KQogCXJldHVybiBzdGF0 ZTsKIH0KIAorLyoKKyAqIEV4ZWNJbml0RXhwclNhZmU6IHNvZnQgZXJyb3IgdmFyaWFudCBvZiBF eGVjSW5pdEV4cHIuCisgKgorICogdXNlIGl0IG9ubHkgZm9yIGV4cHJlc3Npb24gbm9kZXMgc3Vw cG9ydCBzb2Z0IGVycm9ycywgbm90IGFsbCBleHByZXNzaW9uCisgKiBub2RlcyBzdXBwb3J0IGl0 LgorKi8KK0V4cHJTdGF0ZSAqCitFeGVjSW5pdEV4cHJTYWZlKEV4cHIgKm5vZGUsIFBsYW5TdGF0 ZSAqcGFyZW50KQoreworCUV4cHJTdGF0ZSAgKnN0YXRlOworCUV4cHJFdmFsU3RlcCBzY3JhdGNo ID0gezB9OworCisJLyogU3BlY2lhbCBjYXNlOiBOVUxMIGV4cHJlc3Npb24gcHJvZHVjZXMgYSBO VUxMIEV4cHJTdGF0ZSBwb2ludGVyICovCisJaWYgKG5vZGUgPT0gTlVMTCkKKwkJcmV0dXJuIE5V TEw7CisKKwkvKiBJbml0aWFsaXplIEV4cHJTdGF0ZSB3aXRoIGVtcHR5IHN0ZXAgbGlzdCAqLwor CXN0YXRlID0gbWFrZU5vZGUoRXhwclN0YXRlKTsKKwlzdGF0ZS0+ZXhwciA9IG5vZGU7CisJc3Rh dGUtPnBhcmVudCA9IHBhcmVudDsKKwlzdGF0ZS0+ZXh0X3BhcmFtcyA9IE5VTEw7CisJc3RhdGUt PmVzY29udGV4dCA9IG1ha2VOb2RlKEVycm9yU2F2ZUNvbnRleHQpOworCXN0YXRlLT5lc2NvbnRl eHQtPnR5cGUgPSBUX0Vycm9yU2F2ZUNvbnRleHQ7CisJc3RhdGUtPmVzY29udGV4dC0+ZXJyb3Jf b2NjdXJyZWQgPSBmYWxzZTsKKwlzdGF0ZS0+ZXNjb250ZXh0LT5kZXRhaWxzX3dhbnRlZCA9IHRy dWU7CisKKwkvKiBJbnNlcnQgc2V0dXAgc3RlcHMgYXMgbmVlZGVkICovCisJRXhlY0NyZWF0ZUV4 cHJTZXR1cFN0ZXBzKHN0YXRlLCAoTm9kZSAqKSBub2RlKTsKKworCS8qIENvbXBpbGUgdGhlIGV4 cHJlc3Npb24gcHJvcGVyICovCisJRXhlY0luaXRFeHByUmVjKG5vZGUsIHN0YXRlLCAmc3RhdGUt PnJlc3ZhbHVlLCAmc3RhdGUtPnJlc251bGwpOworCisJLyogRmluYWxseSwgYXBwZW5kIGEgRE9O RSBzdGVwICovCisJc2NyYXRjaC5vcGNvZGUgPSBFRU9QX0RPTkVfUkVUVVJOOworCUV4cHJFdmFs UHVzaFN0ZXAoc3RhdGUsICZzY3JhdGNoKTsKKworCUV4ZWNSZWFkeUV4cHIoc3RhdGUpOworCisJ cmV0dXJuIHN0YXRlOworfQorCiAvKgogICogRXhlY0luaXRFeHByV2l0aFBhcmFtczogcHJlcGFy ZSBhIHN0YW5kYWxvbmUgZXhwcmVzc2lvbiB0cmVlIGZvciBleGVjdXRpb24KICAqCkBAIC03Nzgs NiArODE5LDI4IEBAIEV4ZWNQcmVwYXJlRXhwcihFeHByICpub2RlLCBFU3RhdGUgKmVzdGF0ZSkK IAlyZXR1cm4gcmVzdWx0OwogfQogCisvKgorICogRXhlY1ByZXBhcmVFeHByU2FmZTogc29mdCBl cnJvciB2YXJpYW50IG9mIEV4ZWNQcmVwYXJlRXhwci4KKyAqCisgKiB1c2UgaXQgd2hlbiBleHBy ZXNzaW9uIG5vZGUgKnN1cHBvcnQqIHNvZnQgZXJyb3IgZXhwcmVzc2lvbiBleGVjdXRpb24uCisg Ki8KK0V4cHJTdGF0ZSAqCitFeGVjUHJlcGFyZUV4cHJTYWZlKEV4cHIgKm5vZGUsIEVTdGF0ZSAq ZXN0YXRlKQoreworCUV4cHJTdGF0ZSAgKnJlc3VsdDsKKwlNZW1vcnlDb250ZXh0IG9sZGNvbnRl eHQ7CisKKwlvbGRjb250ZXh0ID0gTWVtb3J5Q29udGV4dFN3aXRjaFRvKGVzdGF0ZS0+ZXNfcXVl cnlfY3h0KTsKKworCW5vZGUgPSBleHByZXNzaW9uX3BsYW5uZXIobm9kZSk7CisKKwlyZXN1bHQg PSBFeGVjSW5pdEV4cHJTYWZlKG5vZGUsIE5VTEwpOworCisJTWVtb3J5Q29udGV4dFN3aXRjaFRv KG9sZGNvbnRleHQpOworCisJcmV0dXJuIHJlc3VsdDsKK30KKwogLyoKICAqIEV4ZWNQcmVwYXJl UXVhbCAtLS0gaW5pdGlhbGl6ZSBmb3IgcXVhbCBleGVjdXRpb24gb3V0c2lkZSBhIG5vcm1hbAog ICogUGxhbiB0cmVlIGNvbnRleHQuCmRpZmYgLS1naXQgYS9zcmMvaW5jbHVkZS9leGVjdXRvci9l eGVjdXRvci5oIGIvc3JjL2luY2x1ZGUvZXhlY3V0b3IvZXhlY3V0b3IuaAppbmRleCAxMDRiMDU5 NTQ0ZC4uMWM0ZTRhOGVlYmIgMTAwNjQ0Ci0tLSBhL3NyYy9pbmNsdWRlL2V4ZWN1dG9yL2V4ZWN1 dG9yLmgKKysrIGIvc3JjL2luY2x1ZGUvZXhlY3V0b3IvZXhlY3V0b3IuaApAQCAtMzE4LDYgKzMx OCw3IEBAIEV4ZWNQcm9jTm9kZShQbGFuU3RhdGUgKm5vZGUpCiAgKiBwcm90b3R5cGVzIGZyb20g ZnVuY3Rpb25zIGluIGV4ZWNFeHByLmMKICAqLwogZXh0ZXJuIEV4cHJTdGF0ZSAqRXhlY0luaXRF eHByKEV4cHIgKm5vZGUsIFBsYW5TdGF0ZSAqcGFyZW50KTsKK2V4dGVybiBFeHByU3RhdGUgKkV4 ZWNJbml0RXhwclNhZmUoRXhwciAqbm9kZSwgUGxhblN0YXRlICpwYXJlbnQpOwogZXh0ZXJuIEV4 cHJTdGF0ZSAqRXhlY0luaXRFeHByV2l0aFBhcmFtcyhFeHByICpub2RlLCBQYXJhbUxpc3RJbmZv IGV4dF9wYXJhbXMpOwogZXh0ZXJuIEV4cHJTdGF0ZSAqRXhlY0luaXRRdWFsKExpc3QgKnF1YWws IFBsYW5TdGF0ZSAqcGFyZW50KTsKIGV4dGVybiBFeHByU3RhdGUgKkV4ZWNJbml0Q2hlY2soTGlz dCAqcXVhbCwgUGxhblN0YXRlICpwYXJlbnQpOwpAQCAtMzY2LDYgKzM2Nyw3IEBAIGV4dGVybiBQ cm9qZWN0aW9uSW5mbyAqRXhlY0J1aWxkVXBkYXRlUHJvamVjdGlvbihMaXN0ICp0YXJnZXRMaXN0 LAogCQkJCQkJCQkJCQkJIFR1cGxlVGFibGVTbG90ICpzbG90LAogCQkJCQkJCQkJCQkJIFBsYW5T dGF0ZSAqcGFyZW50KTsKIGV4dGVybiBFeHByU3RhdGUgKkV4ZWNQcmVwYXJlRXhwcihFeHByICpu b2RlLCBFU3RhdGUgKmVzdGF0ZSk7CitleHRlcm4gRXhwclN0YXRlICpFeGVjUHJlcGFyZUV4cHJT YWZlKEV4cHIgKm5vZGUsIEVTdGF0ZSAqZXN0YXRlKTsKIGV4dGVybiBFeHByU3RhdGUgKkV4ZWNQ cmVwYXJlUXVhbChMaXN0ICpxdWFsLCBFU3RhdGUgKmVzdGF0ZSk7CiBleHRlcm4gRXhwclN0YXRl ICpFeGVjUHJlcGFyZUNoZWNrKExpc3QgKnF1YWwsIEVTdGF0ZSAqZXN0YXRlKTsKIGV4dGVybiBM aXN0ICpFeGVjUHJlcGFyZUV4cHJMaXN0KExpc3QgKm5vZGVzLCBFU3RhdGUgKmVzdGF0ZSk7Ci0t IAoyLjM0LjEKCg== --0000000000001aea4e063693c844 Content-Type: application/x-patch; name="v6-0003-fast-default-for-domain-with-constraints.patch" Content-Disposition: attachment; filename="v6-0003-fast-default-for-domain-with-constraints.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mbeurllj0 RnJvbSA3ZDk2MTllMjQwNDhkMTIzOGMyY2Y0OWYyMzZlNzQ2YmM4ODEwMTQ0IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBqaWFuIGhlIDxqaWFuLnVuaXZlcnNhbGl0eUBnbWFpbC5jb20+ CkRhdGU6IE1vbiwgMiBKdW4gMjAyNSAxNjo1MDozNCArMDgwMApTdWJqZWN0OiBbUEFUQ0ggdjYg My8zXSBmYXN0IGRlZmF1bHQgZm9yIGRvbWFpbiB3aXRoIGNvbnN0cmFpbnRzCgpUaGlzIGlzIHBy aW1hcmlseSBkb25lIGJ5IGV2YWx1YXRpbmcgQ29lcmNlVG9Eb21haW4gd2l0aCBzb2Z0IGVycm9y IHN1cHBvcnQuCgpJZiBDb2VyY2VUb0RvbWFpbiBpcyBldmFsdWF0ZWQgYXMgZmFsc2UgaW4gQVRF eGVjQWRkQ29sdW1uLCB0aGUgZGVmdmFsIG5vZGUncwp2YWx1ZSBjYW5ub3QgYmUgY2FzdCB0byB0 aGUgZG9tYWluIHR5cGUuIEhvd2V2ZXIsIGluIHNvbWUgY2FzZXMgbGlrZSB3aGVuIHRoZQp0YWJs ZSBpcyBlbXB0eSwgd2UgY2Fubm90IGV4cGxpY2l0bHkgZXJyb3Igb3V0IGluIEFURXhlY0FkZENv bHVtbiAoUGhhc2UgMikuCkZvciBleGFtcGxlLCBpbWFnaW5lIGFkZCBhIG5ldyBkb21haW4gY29s dW1uIHRvIGVtcHR5IHgsIGFuZCB0aGUgY29sdW1uIGRvbWFpbgpzcGVjaWZpY2F0aW9uIGlzIGBg Q0hFQ0sodmFsdWUgPiAxMCkgREVGQVVMVCA4YGAuICBJbiBzdWNoIHNpdHVhdGlvbnMsIHRoZSBB TFRFUgpUQUJMRSBBREQgQ09MVU1OIHNob3VsZCBiZSBzdWNjZXNzLgoKVGhhbmtzIHRvIGNvbW1p dCBhYWFmOTQ0OWVjNmJlNjJjYjBkMzBlZDM1ODhkYzM4NGY1NjI3NGJmWzFdLApFeHByU3RhdGUu ZXNjb250ZXh0IChFcnJvclNhdmVDb250ZXh0KSB3YXMgYWRkZWQsIGFuZCBFeGVjRXZhbENvbnN0 cmFpbnROb3ROdWxsLApFeGVjRXZhbENvbnN0cmFpbnRDaGVjayB3ZXJlIGNoYW5nZWQgdG8gdXNl IGVycnNhdmUgaW5zdGVhZCBvZiBoYXJkIGVycm9yLiAgTm93CndlIGNhbiBldmFsdWF0ZSBDb2Vy Y2VUb0RvbWFpbiBpbiBhIHNvZnQgZXJyb3Igd2F5LgoKSG93ZXZlciB3ZSBkbyB0YWJsZSByZXdy aXRlIGZvciBkb21haW4gd2l0aCB2b2xhdGlsZSBjaGVjayBjb25zdHJhaW50cy4KCmRpc2N1c3Np b246IGh0dHBzOi8vcG9zdGdyLmVzL20vQ0FDSnVmeEVfK2laQlIxaTQ5a19BSGlncHBQd0xUSmk2 a204Tk9zQzdGV3ZLZEVtbVhnQG1haWwuZ21haWwuY29tClsxXTogaHR0cHM6Ly9naXQucG9zdGdy ZXNxbC5vcmcvY2dpdC9wb3N0Z3Jlc3FsLmdpdC9jb21taXQvP2lkPWFhYWY5NDQ5ZWM2YmU2MmNi MGQzMGVkMzU4OGRjMzg0ZjU2Mjc0YmYKLS0tCiBzcmMvYmFja2VuZC9jb21tYW5kcy90YWJsZWNt ZHMuYyAgICAgICAgICAgfCA0NiArKysrKysrKysrKysrKy0tLS0tLS0tCiBzcmMvdGVzdC9yZWdy ZXNzL2V4cGVjdGVkL2Zhc3RfZGVmYXVsdC5vdXQgfCA0NCArKysrKysrKysrKysrKysrKysrKysK IHNyYy90ZXN0L3JlZ3Jlc3Mvc3FsL2Zhc3RfZGVmYXVsdC5zcWwgICAgICB8IDM3ICsrKysrKysr KysrKysrKysrCiAzIGZpbGVzIGNoYW5nZWQsIDExMSBpbnNlcnRpb25zKCspLCAxNiBkZWxldGlv bnMoLSkKCmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9jb21tYW5kcy90YWJsZWNtZHMuYyBiL3Ny Yy9iYWNrZW5kL2NvbW1hbmRzL3RhYmxlY21kcy5jCmluZGV4IGFjZjExZTgzYzA0Li4wODE5MzBk ZWVkNSAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvY29tbWFuZHMvdGFibGVjbWRzLmMKKysrIGIv c3JjL2JhY2tlbmQvY29tbWFuZHMvdGFibGVjbWRzLmMKQEAgLTc0MjksMTUgKzc0MjksNiBAQCBB VEV4ZWNBZGRDb2x1bW4oTGlzdCAqKndxdWV1ZSwgQWx0ZXJlZFRhYmxlSW5mbyAqdGFiLCBSZWxh dGlvbiByZWwsCiAJICogTlVMTCBpZiBzbywgc28gd2l0aG91dCBhbnkgbW9kaWZpY2F0aW9uIG9m IHRoZSB0dXBsZSBkYXRhIHdlIHdpbGwgZ2V0CiAJICogdGhlIGVmZmVjdCBvZiBOVUxMIHZhbHVl cyBpbiB0aGUgbmV3IGNvbHVtbi4KIAkgKgotCSAqIEFuIGV4Y2VwdGlvbiBvY2N1cnMgd2hlbiB0 aGUgbmV3IGNvbHVtbiBpcyBvZiBhIGRvbWFpbiB0eXBlOiB0aGUgZG9tYWluCi0JICogbWlnaHQg aGF2ZSBhIG5vdC1udWxsIGNvbnN0cmFpbnQsIG9yIGEgY2hlY2sgY29uc3RyYWludCB0aGF0IGlu ZGlyZWN0bHkKLQkgKiByZWplY3RzIG51bGxzLiAgSWYgdGhlcmUgYXJlIGFueSBkb21haW4gY29u c3RyYWludHMgdGhlbiB3ZSBjb25zdHJ1Y3QKLQkgKiBhbiBleHBsaWNpdCBOVUxMIGRlZmF1bHQg dmFsdWUgdGhhdCB3aWxsIGJlIHBhc3NlZCB0aHJvdWdoCi0JICogQ29lcmNlVG9Eb21haW4gcHJv Y2Vzc2luZy4gIChUaGlzIGlzIGEgdGFkIGluZWZmaWNpZW50LCBzaW5jZSBpdCBjYXVzZXMKLQkg KiByZXdyaXRpbmcgdGhlIHRhYmxlIHdoaWNoIHdlIHJlYWxseSB3b3VsZG4ndCBoYXZlIHRvIGRv OyBidXQgd2UgZG8gaXQKLQkgKiB0byBwcmVzZXJ2ZSB0aGUgaGlzdG9yaWNhbCBiZWhhdmlvciB0 aGF0IHN1Y2ggYSBmYWlsdXJlIHdpbGwgYmUgcmFpc2VkCi0JICogb25seSBpZiB0aGUgdGFibGUg Y3VycmVudGx5IGNvbnRhaW5zIHNvbWUgcm93cy4pCi0JICoKIAkgKiBOb3RlOiB3ZSB1c2UgYnVp bGRfY29sdW1uX2RlZmF1bHQsIGFuZCBub3QganVzdCB0aGUgY29va2VkIGRlZmF1bHQKIAkgKiBy ZXR1cm5lZCBieSBBZGRSZWxhdGlvbk5ld0NvbnN0cmFpbnRzLCBzbyB0aGF0IHRoZSByaWdodCB0 aGluZyBoYXBwZW5zCiAJICogd2hlbiBhIGRhdGF0eXBlJ3MgZGVmYXVsdCBhcHBsaWVzLgpAQCAt NzQ1Niw2ICs3NDQ3LDcgQEAgQVRFeGVjQWRkQ29sdW1uKExpc3QgKip3cXVldWUsIEFsdGVyZWRU YWJsZUluZm8gKnRhYiwgUmVsYXRpb24gcmVsLAogCXsKIAkJYm9vbAkJaGFzX2RvbWFpbl9jb25z dHJhaW50czsKIAkJYm9vbAkJaGFzX21pc3NpbmcgPSBmYWxzZTsKKwkJYm9vbAkJaGFzX3ZvbGF0 aWxlID0gZmFsc2U7CiAKIAkJLyoKIAkJICogRm9yIGFuIGlkZW50aXR5IGNvbHVtbiwgd2UgY2Fu J3QgdXNlIGJ1aWxkX2NvbHVtbl9kZWZhdWx0KCksCkBAIC03NDczLDggKzc0NjUsMTggQEAgQVRF eGVjQWRkQ29sdW1uKExpc3QgKip3cXVldWUsIEFsdGVyZWRUYWJsZUluZm8gKnRhYiwgUmVsYXRp b24gcmVsLAogCQllbHNlCiAJCQlkZWZ2YWwgPSAoRXhwciAqKSBidWlsZF9jb2x1bW5fZGVmYXVs dChyZWwsIGF0dHJpYnV0ZS0+YXR0bnVtKTsKIAorCQloYXNfZG9tYWluX2NvbnN0cmFpbnRzID0g RG9tYWluSGF2ZVZvbGF0aWxlQ29uc3RyYWludHMoYXR0cmlidXRlLT5hdHR0eXBpZCwgJmhhc192 b2xhdGlsZSk7CisKKwkJLyoKKwkJICogQWRkaW5nIGNvbHVtbiB3aXRoIHZvbGF0aWxlIGRvbWFp biBjb25zdHJhaW50IHJlcXVpcmVzIHRhYmxlIHJld3JpdGUKKwkJICovCisJCWlmIChoYXNfdm9s YXRpbGUpCisJCXsKKwkJCUFzc2VydChoYXNfZG9tYWluX2NvbnN0cmFpbnRzKTsKKwkJCXRhYi0+ cmV3cml0ZSB8PSBBVF9SRVdSSVRFX0RFRkFVTFRfVkFMOworCQl9CisKIAkJLyogQnVpbGQgQ29l cmNlVG9Eb21haW4oTlVMTCkgZXhwcmVzc2lvbiBpZiBuZWVkZWQgKi8KLQkJaGFzX2RvbWFpbl9j b25zdHJhaW50cyA9IERvbWFpbkhhc0NvbnN0cmFpbnRzKGF0dHJpYnV0ZS0+YXR0dHlwaWQpOwog CQlpZiAoIWRlZnZhbCAmJiBoYXNfZG9tYWluX2NvbnN0cmFpbnRzKQogCQl7CiAJCQlPaWQJCQli YXNlVHlwZUlkOwpAQCAtNzUxNiwxNCArNzUxOCwxOCBAQCBBVEV4ZWNBZGRDb2x1bW4oTGlzdCAq KndxdWV1ZSwgQWx0ZXJlZFRhYmxlSW5mbyAqdGFiLCBSZWxhdGlvbiByZWwsCiAJCQkgKiBBdHRl bXB0IHRvIHNraXAgYSBjb21wbGV0ZSB0YWJsZSByZXdyaXRlIGJ5IHN0b3JpbmcgdGhlCiAJCQkg KiBzcGVjaWZpZWQgREVGQVVMVCB2YWx1ZSBvdXRzaWRlIG9mIHRoZSBoZWFwLiAgVGhpcyBpcyBv bmx5CiAJCQkgKiBhbGxvd2VkIGZvciBwbGFpbiByZWxhdGlvbnMgYW5kIG5vbi1nZW5lcmF0ZWQg Y29sdW1ucywgYW5kIHRoZQotCQkJICogZGVmYXVsdCBleHByZXNzaW9uIGNhbid0IGJlIHZvbGF0 aWxlIChzdGFibGUgaXMgT0spLiAgTm90ZSB0aGF0Ci0JCQkgKiBjb250YWluX3ZvbGF0aWxlX2Z1 bmN0aW9ucyBkZWVtcyBDb2VyY2VUb0RvbWFpbiBpbW11dGFibGUsIGJ1dAotCQkJICogaGVyZSB3 ZSBjb25zaWRlciB0aGF0IGNvZXJjaW9uIHRvIGEgZG9tYWluIHdpdGggY29uc3RyYWludHMgaXMK LQkJCSAqIHZvbGF0aWxlOyBlbHNlIGl0IG1pZ2h0IGZhaWwgZXZlbiB3aGVuIHRoZSB0YWJsZSBp cyBlbXB0eS4KKwkJCSAqIGRlZmF1bHQgZXhwcmVzc2lvbiBjYW4ndCBiZSB2b2xhdGlsZSAoc3Rh YmxlIGlzIE9LKSwgYW5kIHRoZQorCQkJICogZG9tYWluIGNvbnN0cmFpbnQgZXhwcmVzc2lvbiBj YW4ndCBiZSB2b2xhdGlsZSAoc3RhYmxlIGlzIE9LKS4KKwkJCSAqCisJCQkgKiBOb3RlIHRoYXQg Y29udGFpbl92b2xhdGlsZV9mdW5jdGlvbnMgZGVlbXMgQ29lcmNlVG9Eb21haW4KKwkJCSAqIGlt bXV0YWJsZS4gIEhvd2V2ZXIgd2UgaGF2ZSBjb21wdXRlZCBDb2VyY2VUb0RvbWFpbiBpcyB2b2xh dGlsZQorCQkJICogb3Igbm90IHZpYSBEb21haW5IYXZlVm9sYXRpbGVDb25zdHJhaW50cy4gV2Ug dXNlIHNvZnQgZXJyb3IKKwkJCSAqIGV2YWx1YXRpb24gb2YgQ29lcmNlVG9Eb21haW4sIGlmIGV2 YWx1YXRpb24gZmFpbGVkLCB0aGVuIHNldAorCQkJICogdGFibGUgcmV3cml0ZSB0byB0cnVlLgog CQkJICovCiAJCQlpZiAocmVsLT5yZF9yZWwtPnJlbGtpbmQgPT0gUkVMS0lORF9SRUxBVElPTiAm JgogCQkJCSFjb2xEZWYtPmdlbmVyYXRlZCAmJgotCQkJCSFoYXNfZG9tYWluX2NvbnN0cmFpbnRz ICYmCisJCQkJIWhhc192b2xhdGlsZSAmJgogCQkJCSFjb250YWluX3ZvbGF0aWxlX2Z1bmN0aW9u cygoTm9kZSAqKSBkZWZ2YWwpKQogCQkJewogCQkJCUVTdGF0ZQkgICAqZXN0YXRlOwpAQCAtNzUz MywxMCArNzUzOSwxOCBAQCBBVEV4ZWNBZGRDb2x1bW4oTGlzdCAqKndxdWV1ZSwgQWx0ZXJlZFRh YmxlSW5mbyAqdGFiLCBSZWxhdGlvbiByZWwsCiAKIAkJCQkvKiBFdmFsdWF0ZSB0aGUgZGVmYXVs dCBleHByZXNzaW9uICovCiAJCQkJZXN0YXRlID0gQ3JlYXRlRXhlY3V0b3JTdGF0ZSgpOwotCQkJ CWV4cHJTdGF0ZSA9IEV4ZWNQcmVwYXJlRXhwcihkZWZ2YWwsIGVzdGF0ZSk7CisJCQkJZXhwclN0 YXRlID0gRXhlY1ByZXBhcmVFeHByU2FmZShkZWZ2YWwsIGVzdGF0ZSk7CisKIAkJCQltaXNzaW5n dmFsID0gRXhlY0V2YWxFeHByKGV4cHJTdGF0ZSwKIAkJCQkJCQkJCQkgIEdldFBlclR1cGxlRXhw ckNvbnRleHQoZXN0YXRlKSwKIAkJCQkJCQkJCQkgICZtaXNzaW5nSXNOdWxsKTsKKworCQkJCWlm IChTT0ZUX0VSUk9SX09DQ1VSUkVEKGV4cHJTdGF0ZS0+ZXNjb250ZXh0KSkKKwkJCQl7CisJCQkJ CW1pc3NpbmdJc051bGwgPSB0cnVlOworCQkJCQl0YWItPnJld3JpdGUgfD0gQVRfUkVXUklURV9E RUZBVUxUX1ZBTDsKKwkJCQl9CisKIAkJCQkvKiBJZiBpdCB0dXJucyBvdXQgTlVMTCwgbm90aGlu ZyB0byBkbzsgZWxzZSBzdG9yZSBpdCAqLwogCQkJCWlmICghbWlzc2luZ0lzTnVsbCkKIAkJCQl7 CmRpZmYgLS1naXQgYS9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL2Zhc3RfZGVmYXVsdC5vdXQg Yi9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL2Zhc3RfZGVmYXVsdC5vdXQKaW5kZXggY2NiY2Rm ODQwM2YuLmFhNTIyY2Y4YmZhIDEwMDY0NAotLS0gYS9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVk L2Zhc3RfZGVmYXVsdC5vdXQKKysrIGIvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9mYXN0X2Rl ZmF1bHQub3V0CkBAIC0zMTcsMTEgKzMxNyw1NSBAQCBTRUxFQ1QgYSwgYiwgbGVuZ3RoKGMpID0g MyBhcyBjX29rLCBkLCBlID49IDEwIGFzIGVfb2sgRlJPTSB0MjsKICAyIHwgMyB8IHQgICAgfCB7 VGhpcyxpcyxhYmNkLHRoZSxyZWFsLHdvcmxkfSB8IHQKICgyIHJvd3MpCiAKKy0tLXRlc3QgZmFz dCBkZWZhdWx0IG92ZXIgZG9tYWlucyB3aXRoIGNvbnN0cmFpbnRzCitDUkVBVEUgRE9NQUlOIGRv bWFpbjUgQVMgaW50IGNoZWNrKHZhbHVlID4gMTApIGRlZmF1bHQgODsKK0NSRUFURSBET01BSU4g ZG9tYWluNiBhcyBpbnQgbm90IG51bGw7CitDUkVBVEUgRE9NQUlOIGRvbWFpbjcgYXMgaW50IGNo ZWNrKHZhbHVlID4gMTApIERFRkFVTFQgcmFuZG9tKG1pbj0+MTEsIG1heD0+MTAwKTsKK0NSRUFU RSBET01BSU4gZG9tYWluOCBhcyBpbnQgY2hlY2soKHZhbHVlICsgcmFuZG9tKG1pbj0+MTE6Omlu dCwgbWF4PT4xMSkpID4gMTIpOworLS10ZXN0cyB3aXRoIG5vbi1lbXB0eSB0YWJsZS4KK0NSRUFU RSBUQUJMRSB0MyhhIGludCk7CitJTlNFUlQgSU5UTyB0MyBWQUxVRVMoMSksKDIpOworQUxURVIg VEFCTEUgdDMgQUREIENPTFVNTiBiIGRvbWFpbjU7IC0tdGFibGUgcmV3cml0ZSwgdGhlbiBmYWls CitOT1RJQ0U6ICByZXdyaXRpbmcgdGFibGUgdDMgZm9yIHJlYXNvbiAyCitFUlJPUjogIHZhbHVl IGZvciBkb21haW4gZG9tYWluNSB2aW9sYXRlcyBjaGVjayBjb25zdHJhaW50ICJkb21haW41X2No ZWNrIgorQUxURVIgVEFCTEUgdDMgQUREIENPTFVNTiBiIGRvbWFpbjY7IC0tdGFibGUgcmV3cml0 ZSwgdGhlbiBmYWlsCitOT1RJQ0U6ICByZXdyaXRpbmcgdGFibGUgdDMgZm9yIHJlYXNvbiAyCitF UlJPUjogIGRvbWFpbiBkb21haW42IGRvZXMgbm90IGFsbG93IG51bGwgdmFsdWVzCitBTFRFUiBU QUJMRSB0MyBBREQgQ09MVU1OIGIgZG9tYWluNSBkZWZhdWx0IDEyOyAtLW5vIHRhYmxlIHJld3Jp dGUKK0FMVEVSIFRBQkxFIHQzIEFERCBDT0xVTU4gYyBkb21haW42IGRlZmF1bHQgMTM7IC0tbm8g dGFibGUgcmV3cml0ZQorLS1leHBsaWNpdCBjb2x1bW4gZGVmYXVsdCBleHByZXNzaW9uIG92ZXJy aWRlIGRvbWFpbidzIGRlZmF1bHQKKy0tZXhwcmVzc2lvbiwgc28gbm8gbmVlZCB0YWJsZSByZXdy aXRlLgorQUxURVIgVEFCTEUgdDMgQUREIENPTFVNTiBkIGRvbWFpbjcgZGVmYXVsdCAxNDsKK1NF TEVDVCBhdHRudW0sIGF0dG5hbWUsIGF0dGhhc21pc3NpbmcsIGF0dGhhc2RlZiwgYXR0bWlzc2lu Z3ZhbAorRlJPTSAgcGdfYXR0cmlidXRlCitXSEVSRSBhdHRudW0gPiAwIEFORCBhdHRyZWxpZCA9 ICd0Myc6OnJlZ2NsYXNzIEFORCBhdHRpc2Ryb3BwZWQgaXMgZmFsc2UKK0FORCAgIGF0dGhhc21p c3NpbmcKK09SREVSIEJZIGF0dG51bTsKKyBhdHRudW0gfCBhdHRuYW1lIHwgYXR0aGFzbWlzc2lu ZyB8IGF0dGhhc2RlZiB8IGF0dG1pc3Npbmd2YWwgCistLS0tLS0tLSstLS0tLS0tLS0rLS0tLS0t LS0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLQorICAgICAgMiB8IGIgICAgICAg fCB0ICAgICAgICAgICAgIHwgdCAgICAgICAgIHwgezEyfQorICAgICAgMyB8IGMgICAgICAgfCB0 ICAgICAgICAgICAgIHwgdCAgICAgICAgIHwgezEzfQorICAgICAgNCB8IGQgICAgICAgfCB0ICAg ICAgICAgICAgIHwgdCAgICAgICAgIHwgezE0fQorKDMgcm93cykKKworLS1uZWVkIHRhYmxlIHJl d3JpdGUgd2hlbiB3ZSBhcmUgYXBwbHlpbmcgZG9tYWluIHZvbGF0aWxlIGRlZmF1bHQgZXhwcmVz aW9uCitBTFRFUiBUQUJMRSB0MyBBREQgQ09MVU1OIGUgZG9tYWluNzsKK05PVElDRTogIHJld3Jp dGluZyB0YWJsZSB0MyBmb3IgcmVhc29uIDIKKy0tIG5lZWQgdGFibGUgcmV3cml0ZSB3aGVuIG5l dyBjb2x1bW4gaXMgZG9tYWluIHdpdGggdm9sYXRpbGUgY29uc3RyYWludHMuCitBTFRFUiBUQUJM RSB0MyBBREQgQ09MVU1OIGYgZG9tYWluOCBkZWZhdWx0IDE0OworTk9USUNFOiAgcmV3cml0aW5n IHRhYmxlIHQzIGZvciByZWFzb24gMgorQUxURVIgVEFCTEUgdDMgQUREIENPTFVNTiBmMSBkb21h aW44OworTk9USUNFOiAgcmV3cml0aW5nIHRhYmxlIHQzIGZvciByZWFzb24gMgogRFJPUCBUQUJM RSB0MjsKK0RST1AgVEFCTEUgdDM7CiBEUk9QIERPTUFJTiBkb21haW4xOwogRFJPUCBET01BSU4g ZG9tYWluMjsKIERST1AgRE9NQUlOIGRvbWFpbjM7CiBEUk9QIERPTUFJTiBkb21haW40OworRFJP UCBET01BSU4gZG9tYWluNTsKK0RST1AgRE9NQUlOIGRvbWFpbjY7CitEUk9QIERPTUFJTiBkb21h aW43OworRFJPUCBET01BSU4gZG9tYWluODsKIERST1AgRlVOQ1RJT04gZm9vKElOVCk7CiAtLSBG YWxsIGJhY2sgdG8gZnVsbCByZXdyaXRlIGZvciB2b2xhdGlsZSBleHByZXNzaW9ucwogQ1JFQVRF IFRBQkxFIFQocGsgSU5UIE5PVCBOVUxMIFBSSU1BUlkgS0VZKTsKZGlmZiAtLWdpdCBhL3NyYy90 ZXN0L3JlZ3Jlc3Mvc3FsL2Zhc3RfZGVmYXVsdC5zcWwgYi9zcmMvdGVzdC9yZWdyZXNzL3NxbC9m YXN0X2RlZmF1bHQuc3FsCmluZGV4IDA2OGRkMGJjOGFhLi4yNjlhMzllZGY3NyAxMDA2NDQKLS0t IGEvc3JjL3Rlc3QvcmVncmVzcy9zcWwvZmFzdF9kZWZhdWx0LnNxbAorKysgYi9zcmMvdGVzdC9y ZWdyZXNzL3NxbC9mYXN0X2RlZmF1bHQuc3FsCkBAIC0yODcsMTEgKzI4Nyw0OCBAQCBPUkRFUiBC WSBhdHRudW07CiAKIFNFTEVDVCBhLCBiLCBsZW5ndGgoYykgPSAzIGFzIGNfb2ssIGQsIGUgPj0g MTAgYXMgZV9vayBGUk9NIHQyOwogCistLS10ZXN0IGZhc3QgZGVmYXVsdCBvdmVyIGRvbWFpbnMg d2l0aCBjb25zdHJhaW50cworQ1JFQVRFIERPTUFJTiBkb21haW41IEFTIGludCBjaGVjayh2YWx1 ZSA+IDEwKSBkZWZhdWx0IDg7CitDUkVBVEUgRE9NQUlOIGRvbWFpbjYgYXMgaW50IG5vdCBudWxs OworQ1JFQVRFIERPTUFJTiBkb21haW43IGFzIGludCBjaGVjayh2YWx1ZSA+IDEwKSBERUZBVUxU IHJhbmRvbShtaW49PjExLCBtYXg9PjEwMCk7CitDUkVBVEUgRE9NQUlOIGRvbWFpbjggYXMgaW50 IGNoZWNrKCh2YWx1ZSArIHJhbmRvbShtaW49PjExOjppbnQsIG1heD0+MTEpKSA+IDEyKTsKKwor LS10ZXN0cyB3aXRoIG5vbi1lbXB0eSB0YWJsZS4KK0NSRUFURSBUQUJMRSB0MyhhIGludCk7CitJ TlNFUlQgSU5UTyB0MyBWQUxVRVMoMSksKDIpOworCitBTFRFUiBUQUJMRSB0MyBBREQgQ09MVU1O IGIgZG9tYWluNTsgLS10YWJsZSByZXdyaXRlLCB0aGVuIGZhaWwKK0FMVEVSIFRBQkxFIHQzIEFE RCBDT0xVTU4gYiBkb21haW42OyAtLXRhYmxlIHJld3JpdGUsIHRoZW4gZmFpbAorQUxURVIgVEFC TEUgdDMgQUREIENPTFVNTiBiIGRvbWFpbjUgZGVmYXVsdCAxMjsgLS1ubyB0YWJsZSByZXdyaXRl CitBTFRFUiBUQUJMRSB0MyBBREQgQ09MVU1OIGMgZG9tYWluNiBkZWZhdWx0IDEzOyAtLW5vIHRh YmxlIHJld3JpdGUKKworLS1leHBsaWNpdCBjb2x1bW4gZGVmYXVsdCBleHByZXNzaW9uIG92ZXJy aWRlIGRvbWFpbidzIGRlZmF1bHQKKy0tZXhwcmVzc2lvbiwgc28gbm8gbmVlZCB0YWJsZSByZXdy aXRlLgorQUxURVIgVEFCTEUgdDMgQUREIENPTFVNTiBkIGRvbWFpbjcgZGVmYXVsdCAxNDsKKwor U0VMRUNUIGF0dG51bSwgYXR0bmFtZSwgYXR0aGFzbWlzc2luZywgYXR0aGFzZGVmLCBhdHRtaXNz aW5ndmFsCitGUk9NICBwZ19hdHRyaWJ1dGUKK1dIRVJFIGF0dG51bSA+IDAgQU5EIGF0dHJlbGlk ID0gJ3QzJzo6cmVnY2xhc3MgQU5EIGF0dGlzZHJvcHBlZCBpcyBmYWxzZQorQU5EICAgYXR0aGFz bWlzc2luZworT1JERVIgQlkgYXR0bnVtOworCistLW5lZWQgdGFibGUgcmV3cml0ZSB3aGVuIHdl IGFyZSBhcHBseWluZyBkb21haW4gdm9sYXRpbGUgZGVmYXVsdCBleHByZXNpb24KK0FMVEVSIFRB QkxFIHQzIEFERCBDT0xVTU4gZSBkb21haW43OworCistLSBuZWVkIHRhYmxlIHJld3JpdGUgd2hl biBuZXcgY29sdW1uIGlzIGRvbWFpbiB3aXRoIHZvbGF0aWxlIGNvbnN0cmFpbnRzLgorQUxURVIg VEFCTEUgdDMgQUREIENPTFVNTiBmIGRvbWFpbjggZGVmYXVsdCAxNDsKK0FMVEVSIFRBQkxFIHQz IEFERCBDT0xVTU4gZjEgZG9tYWluODsKKwogRFJPUCBUQUJMRSB0MjsKK0RST1AgVEFCTEUgdDM7 CiBEUk9QIERPTUFJTiBkb21haW4xOwogRFJPUCBET01BSU4gZG9tYWluMjsKIERST1AgRE9NQUlO IGRvbWFpbjM7CiBEUk9QIERPTUFJTiBkb21haW40OworRFJPUCBET01BSU4gZG9tYWluNTsKK0RS T1AgRE9NQUlOIGRvbWFpbjY7CitEUk9QIERPTUFJTiBkb21haW43OworRFJPUCBET01BSU4gZG9t YWluODsKIERST1AgRlVOQ1RJT04gZm9vKElOVCk7CiAKIC0tIEZhbGwgYmFjayB0byBmdWxsIHJl d3JpdGUgZm9yIHZvbGF0aWxlIGV4cHJlc3Npb25zCi0tIAoyLjM0LjEKCg== --0000000000001aea4e063693c844 Content-Type: application/x-patch; name="v6-0002-add-function-DomainHaveVolatileConstraints.patch" Content-Disposition: attachment; filename="v6-0002-add-function-DomainHaveVolatileConstraints.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mbeurllp1 RnJvbSBkNDc2Zjg0Y2E0OGRhMzk2NTI2Y2QxNTM0OWI1ZDhlYTkzMDc4Y2RmIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBqaWFuIGhlIDxqaWFuLnVuaXZlcnNhbGl0eUBnbWFpbC5jb20+ CkRhdGU6IE1vbiwgMTkgTWF5IDIwMjUgMTE6MTE6MDEgKzA4MDAKU3ViamVjdDogW1BBVENIIHY2 IDIvM10gYWRkIGZ1bmN0aW9uIERvbWFpbkhhdmVWb2xhdGlsZUNvbnN0cmFpbnRzCgp0aGUgc2ln bmF0dXJlIGlzOgpleHRlcm4gYm9vbCBEb21haW5IYXZlVm9sYXRpbGVDb25zdHJhaW50cyhPaWQg dHlwZV9pZCwgYm9vbCAqaGF2ZV92b2xhdGlsZSk7CgpSZXR1cm5zIHRydWUgaWYgdGhlIERvbWFp biBoYXMgYW55IGNvbnN0cmFpbnRzLiAgSWYgeW91IHdhbnQgY2hlY2sgdGhpcyBkb21haW4KaGF2 ZSBhbnkgdm9sYXRpbGUgY2hlY2sgY29uc3RyYWludHMsIG1ha2Ugc3VyZSBoYXZlX3ZvbGF0aWxl IGlzIG5vdCBOVUxMLgoKZGlzY3Vzc2lvbjogaHR0cHM6Ly9wb3N0Z3IuZXMvbS9DQUNKdWZ4RV8r aVpCUjFpNDlrX0FIaWdwcFB3TFRKaTZrbThOT3NDN0ZXdktkRW1tWGdAbWFpbC5nbWFpbC5jb20K LS0tCiBzcmMvYmFja2VuZC91dGlscy9jYWNoZS90eXBjYWNoZS5jIHwgNDAgKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrCiBzcmMvaW5jbHVkZS91dGlscy90eXBjYWNoZS5oICAgICAgIHwg IDEgKwogMiBmaWxlcyBjaGFuZ2VkLCA0MSBpbnNlcnRpb25zKCspCgpkaWZmIC0tZ2l0IGEvc3Jj L2JhY2tlbmQvdXRpbHMvY2FjaGUvdHlwY2FjaGUuYyBiL3NyYy9iYWNrZW5kL3V0aWxzL2NhY2hl L3R5cGNhY2hlLmMKaW5kZXggZjlhZWMzOGExMWYuLjgzZjE5NWQwOWQ5IDEwMDY0NAotLS0gYS9z cmMvYmFja2VuZC91dGlscy9jYWNoZS90eXBjYWNoZS5jCisrKyBiL3NyYy9iYWNrZW5kL3V0aWxz L2NhY2hlL3R5cGNhY2hlLmMKQEAgLTE1MDAsNiArMTUwMCw0NiBAQCBEb21haW5IYXNDb25zdHJh aW50cyhPaWQgdHlwZV9pZCkKIH0KIAogCisvKgorICogQ2hlY2sgd2hldGhlciBhIGRvbWFpbiBo YXMgYW55IGNvbnN0cmFpbnRzLCBhbmQgZGV0ZXJtaW5lIGlmIGFueSBvZiB0aG9zZQorICogY29u c3RyYWludHMgY29udGFpbiB2b2xhdGlsZSBleHByZXNzaW9ucy4KKyAqCisgKiBUbyBkZXRlY3Qg dm9sYXRpbGUgZXhwcmVzc2lvbnMgd2l0aGluIGRvbWFpbiBjaGVjayBjb25zdHJhaW50cywgZW5z dXJlIHRoYXQKKyAqIGhhdmVfdm9sYXRpbGUgaXMgbm90IE5VTEwuIElmIGhhdmVfdm9sYXRpbGUg aXMgTlVMTCwgdGhlIGJlaGF2aW9yIGlzCisgKiBlcXVpdmFsZW50IHRvIHRoYXQgb2YgRG9tYWlu SGFzQ29uc3RyYWludHMuCisgKi8KK2Jvb2wKK0RvbWFpbkhhdmVWb2xhdGlsZUNvbnN0cmFpbnRz KE9pZCB0eXBlX2lkLCBib29sICpoYXZlX3ZvbGF0aWxlKQoreworCVR5cGVDYWNoZUVudHJ5ICp0 eXBlbnRyeTsKKworCS8qCisJICogTm90ZTogYSBzaWRlIGVmZmVjdCBpcyB0byBjYXVzZSB0aGUg dHlwY2FjaGUncyBkb21haW4gZGF0YSB0byBiZWNvbWUKKwkgKiB2YWxpZC4gIFRoaXMgaXMgZmlu ZSBzaW5jZSB3ZSdsbCBsaWtlbHkgbmVlZCBpdCBzb29uIGlmIHRoZXJlIGlzIGFueS4KKwkgKi8K Kwl0eXBlbnRyeSA9IGxvb2t1cF90eXBlX2NhY2hlKHR5cGVfaWQsIFRZUEVDQUNIRV9ET01BSU5f Q09OU1RSX0lORk8pOworCisJaWYgKHR5cGVudHJ5LT5kb21haW5EYXRhICE9IE5VTEwpCisJewor CQlMaXN0Q2VsbCAgICpsYzsKKworCQlmb3JlYWNoKGxjLCB0eXBlbnRyeS0+ZG9tYWluRGF0YS0+ Y29uc3RyYWludHMpCisJCXsKKwkJCURvbWFpbkNvbnN0cmFpbnRTdGF0ZSAqciA9IChEb21haW5D b25zdHJhaW50U3RhdGUgKikgbGZpcnN0KGxjKTsKKworCQkJaWYgKHItPmNvbnN0cmFpbnR0eXBl ID09IERPTV9DT05TVFJBSU5UX0NIRUNLICYmCisJCQkJY29udGFpbl92b2xhdGlsZV9mdW5jdGlv bnMoKE5vZGUgKikgci0+Y2hlY2tfZXhwcikpCisJCQl7CisJCQkJaWYgKGhhdmVfdm9sYXRpbGUp CisJCQkJCSpoYXZlX3ZvbGF0aWxlID0gdHJ1ZTsKKwkJCQlicmVhazsKKwkJCX0KKwkJfQorCQly ZXR1cm4gdHJ1ZTsKKwl9CisJcmV0dXJuIGZhbHNlOworfQorCiAvKgogICogYXJyYXlfZWxlbWVu dF9oYXNfZXF1YWxpdHkgYW5kIGZyaWVuZHMgYXJlIGhlbHBlciByb3V0aW5lcyB0byBjaGVjawog ICogd2hldGhlciB3ZSBzaG91bGQgYmVsaWV2ZSB0aGF0IGFycmF5X2VxIGFuZCByZWxhdGVkIGZ1 bmN0aW9ucyB3aWxsIHdvcmsKZGlmZiAtLWdpdCBhL3NyYy9pbmNsdWRlL3V0aWxzL3R5cGNhY2hl LmggYi9zcmMvaW5jbHVkZS91dGlscy90eXBjYWNoZS5oCmluZGV4IDFjYjMwZjE4MThjLi5hYTFj ODZlMzVjMyAxMDA2NDQKLS0tIGEvc3JjL2luY2x1ZGUvdXRpbHMvdHlwY2FjaGUuaAorKysgYi9z cmMvaW5jbHVkZS91dGlscy90eXBjYWNoZS5oCkBAIC0xODQsNiArMTg0LDcgQEAgZXh0ZXJuIHZv aWQgSW5pdERvbWFpbkNvbnN0cmFpbnRSZWYoT2lkIHR5cGVfaWQsIERvbWFpbkNvbnN0cmFpbnRS ZWYgKnJlZiwKIGV4dGVybiB2b2lkIFVwZGF0ZURvbWFpbkNvbnN0cmFpbnRSZWYoRG9tYWluQ29u c3RyYWludFJlZiAqcmVmKTsKIAogZXh0ZXJuIGJvb2wgRG9tYWluSGFzQ29uc3RyYWludHMoT2lk IHR5cGVfaWQpOworZXh0ZXJuIGJvb2wgRG9tYWluSGF2ZVZvbGF0aWxlQ29uc3RyYWludHMoT2lk IHR5cGVfaWQsIGJvb2wgKmhhdmVfdm9sYXRpbGUpOwogCiBleHRlcm4gVHVwbGVEZXNjIGxvb2t1 cF9yb3d0eXBlX3R1cGRlc2MoT2lkIHR5cGVfaWQsIGludDMyIHR5cG1vZCk7CiAKLS0gCjIuMzQu MQoK --0000000000001aea4e063693c844--