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.96) (envelope-from ) id 1wVPRj-001wPi-1w for pgsql-bugs@arkaria.postgresql.org; Fri, 05 Jun 2026 07:58:27 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1wVPRh-00ArTc-1C for pgsql-bugs@arkaria.postgresql.org; Fri, 05 Jun 2026 07:58:25 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1wVPRh-00ArTU-0D for pgsql-bugs@lists.postgresql.org; Fri, 05 Jun 2026 07:58:25 +0000 Received: from mail-ot1-x32d.google.com ([2607:f8b0:4864:20::32d]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.98.2) (envelope-from ) id 1wVPRe-00000001NsZ-2xtX for pgsql-bugs@lists.postgresql.org; Fri, 05 Jun 2026 07:58:24 +0000 Received: by mail-ot1-x32d.google.com with SMTP id 46e09a7af769-7e6e41cf7aeso862450a34.0 for ; Fri, 05 Jun 2026 00:58:22 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1780646300; cv=none; d=google.com; s=arc-20240605; b=lc3lOSQGj/U3v0QgZOUmSgdN2KmAkmFTJprNCYMIKcUurhlBvv8YXy4hV7gV4WiA2H JzIjubziDq74hMyGgb5UG1qVCNTkX4EYW33MHFJc9RKpaYBvwHL3AGlskd5n6PICqj1x 0yaJJjfCfxzl3inNlJx45Xg7P24WK2EghYmaX9nhN9qWTzIvJmqMVIzA8nVHi5j162CH ob4pzozvCu7lwsMHOiwLSJ8po0wPyjCxNX2CBBCX+KjuMt6iY4M/Xk9xaZoW1O0mpA4S OfBlzz/nZuoFF223lBFeAGGQPcLPZtnS1xvQ4NyAHxQbZxk6UFl0/xJPyaKOsfpI/HRZ jlyw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:dkim-signature; bh=5q1kiz9T4lj+C2W+4lkcrtMeh/rIPYH7ydnqSPJ2Ots=; fh=I7DKczNVsdXsApCjXwYB/2AEc7vEeZQduuPjCk5pqlg=; b=cQOQnk8kSyIsNu5AOGP02GX97IQDDXNOCvRZDSIhdlKfDddnPhzwPnc9fBb7dv+KDV 1aAAjV/ScnkfeCwGIGZ3Oj3xclYBFkYZ0CK3U8AYGcFQCrz5wKj3m9jJHqjR6gtjdl+K CPFkEoYY5T02PoOH0R9s1IneN0stEbKw4Hf9jPxGDdJ0WFczesNn/WaYJM7VXIbGXzPl c5u1nKZpPwKfCQUwo0E07g/LezoeKb3Lu10osJBcKRq8qOuadqCVGzX+Tgz9qQIzoMUt I6C/JeNxlV+qKYcMXPTuCkmF9mb8CqeEGNW1f1DXGE6u1HMz4OKnHHybDhwBierOA1cY 3PRw==; darn=lists.postgresql.org ARC-Authentication-Results: i=1; mx.google.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1780646300; x=1781251100; darn=lists.postgresql.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=5q1kiz9T4lj+C2W+4lkcrtMeh/rIPYH7ydnqSPJ2Ots=; b=QRZ0sGn1LTupB59EDqqDsiaCtm9n+vMLmerNaa3aI7VF2SioNFfCu3zWyMSIYiE2XW erhdHZVyDjO/wX+dGBYCUDyHVO2RAvl0UkMO+ZPLT6YG0QN08P1Q0yAwC8TfbHLjQKP1 gn02C5Vt3jr4flOLwjIMvCSljOMv6SWTHAvgEZAqjPm1bVlep/Dp/ntJQhv1cM59M9Du LB7cmWs3+lSUg7S8jEDDgNfiAL0dbYrrlw+ZHmuAcA5E722C+zMNUF3KeBjFDqWAUUhQ nrhnHzxxEcmWmGt+8b5uRFmPglbaDBAdftaNQxh8px1PJa7iaQx8zWDR1YRxYonlTYgW tb4g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1780646300; x=1781251100; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=5q1kiz9T4lj+C2W+4lkcrtMeh/rIPYH7ydnqSPJ2Ots=; b=gqpxhvgKGrAkczv2grdeKIM6SAqri3k6sCjduTmN/jqpDTb0WzPcQM1henjz+fzpak Kxo/UzvxOc/X5K6+PcWfFNrOpMUgNeCacpDLTb/zTJUyGKmpDscR0ru7qGB39Qcazh5l FIJloCx3an6fOj2K49oX4PDshOOjGID5kSuJwb48T0mgEFBBx3F56PhgC5wX5fANKcHa MoUiM3wVnOfEYysntfN2w6wg72UkkXqxMeoSSZxt+Q0CIDmhVbVMk4oDZvWwoHGD1MVJ AM/jHZmH/66oIA0fV6YtPtipqJSRfvur2EyPRSJ0XD7gPahnug3IYvkqWNGefEVOpDJb sqiQ== X-Forwarded-Encrypted: i=1; AFNElJ8AGcLSuXmohuw33UK+pyHxFIfO+4CXh1Dt8Iep1xwJ017m9PQkRwF2nYa9Uo/oGlfuc+z69o6cdtv0@lists.postgresql.org X-Gm-Message-State: AOJu0YwZv9dfNc7RUz2DumXWoSVbh3fsrg4wo3oE6w578+IB+ty+tpST YDzkYFHvkgobxfALxaRpiQfWCvo0Bi+QFRQWQQuRKi+IMbhaEKo4o4BVHvAcoyqjM/2GJSnzI07 KFv5iDwbAxbnweYnMwt4Mz8wQ4DANxaA= X-Gm-Gg: Acq92OGuhAmVs3mys6muPIR0S1y7h/ictsj07UI7UNm2hp5qlVepL18cmEJDH705OCP nSEHtBVSSDIsHI6ogWKTF1XelOP09CDtNEIV66PCfzV5iBp1srl6jaEUjbPhrOwAHyjBx5BGmlC VJAkisn7OyxnEn6zWV/153B+ACl6FgpbCDHaTrNIKP/BeCYsL6rTxQB0fhmKrnxhbSb38CmbCpH oWXtUavEwp8r9+VM7AhoIirOmff4NgZklYHHr43NV0iLzgCB6P+d9mct7xju+/2AL0K3Mt9zl8f 0akBHNUKZLzLuS9UzYJzHSl6DL7jDPNkDV0s03qxwENk/j+4JfkuCiWkkze5PA== X-Received: by 2002:a05:6820:190f:b0:69d:7a88:9cba with SMTP id 006d021491bc7-69e68b1b8ebmr1176315eaf.9.1780646300324; Fri, 05 Jun 2026 00:58:20 -0700 (PDT) MIME-Version: 1.0 References: <19508-e5f188183279219b@postgresql.org> In-Reply-To: From: Fujii Masao Date: Fri, 5 Jun 2026 16:58:07 +0900 X-Gm-Features: AVVi8CdShdmjhO_6HKc6JIFiU8c2lrc3Ict2raUv1tuUPOqxaa_Gy6D341M91s8 Message-ID: Subject: Re: BUG #19508: pg_buffercache_pages() crashes the backend with an incompatible caller-supplied record definition To: Ayush Tiwari Cc: n.kalinin@postgrespro.ru, pgsql-bugs@lists.postgresql.org Content-Type: multipart/mixed; boundary="00000000000033ad0306537d066f" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --00000000000033ad0306537d066f Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Fri, Jun 5, 2026 at 12:42=E2=80=AFPM Ayush Tiwari wrote: > One small nit: build_buffercache_pages_tupledesc() names attribute 8 > "usage_count", while the existing pg_buffercache view and the test use > "usagecount". This probably does not affect the tupledesc_match() check, > but I think it would be better to keep the existing spelling for > consistency. Agreed. I've fixed that and attached an updated version of the patch. Regards, --=20 Fujii Masao --00000000000033ad0306537d066f Content-Type: application/octet-stream; name="v2-0001-pg_buffercache-restore-rowtype-verification-in-pg.patch" Content-Disposition: attachment; filename="v2-0001-pg_buffercache-restore-rowtype-verification-in-pg.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mq0mtibj0 RnJvbSA5ODgxZmMyNDdkYWFiOTY1NDlkN2FhYWY2MDI0MzIyN2IzMjc0MDU5IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiAibWFzYW8uZnVqaWkiIDxtYXNhby5mdWppaUBtYXNhby5mdWpp aeKAmXMtTWFjQm9vay1Qcm8+CkRhdGU6IEZyaSwgNSBKdW4gMjAyNiAxMDozNzoxMiArMDkwMApT dWJqZWN0OiBbUEFUQ0ggdjJdIHBnX2J1ZmZlcmNhY2hlOiByZXN0b3JlIHJvd3R5cGUgdmVyaWZp Y2F0aW9uIGluCiBwZ19idWZmZXJjYWNoZV9wYWdlcygpCgpDb21taXQgMjU3YzgyMzFiZjkgY2hh bmdlZCBwZ19idWZmZXJjYWNoZV9wYWdlcygpIHRvIG1hdGVyaWFsaXplIGl0cyBvdXRwdXQKZGly ZWN0bHkgaW50byBhIHR1cGxlc3RvcmUuIEFzIGEgcmVzdWx0LCB0aGUgZnVuY3Rpb24gZW5kZWQg dXAgdHJ1c3RpbmcKYSBjYWxsZXItc3VwcGxpZWQgUkVDT1JEIGRlc2NyaXB0b3JzLiBUaGF0IGNv dWxkIGxlYWQgdG8gY3Jhc2hlcwppZiB0aGUgc3VwcGxpZWQgcm93IGRlZmluaXRpb24gZGlkIG5v dCBtYXRjaCB0aGUgYWN0dWFsIHJldHVybmVkIHZhbHVlcywKZm9yIGV4YW1wbGUgYnkgcGFzc2lu ZyBib29sIERhdHVtcyB0byB0dXBsZXN0b3JlX3B1dHZhbHVlcygpIHdpdGgKYW4gaW5jb21wYXRp YmxlIGRlc2NyaXB0b3IuCgpGaXggdGhpcyBieSBjb25zdHJ1Y3RpbmcgdGhlIGNvcnJlY3QgdHVw bGUgZGVzY3JpcHRvciBmb3IKcGdfYnVmZmVyY2FjaGVfcGFnZXMoKSBhbmQgYXNzaWduaW5nIGl0 IHRvCnJzaW5mby0+c2V0RGVzYyBhZnRlciBJbml0TWF0ZXJpYWxpemVkU1JGKCkuIFRoaXMgcmVz dG9yZXMgdGhlIGV4ZWN1dG9yJ3MKdHVwbGVkZXNjX21hdGNoKCkgdmVyaWZpY2F0aW9uLCBzbyBp bmNvbXBhdGlibGUgY2FsbGVyLXN1cHBsaWVkCnJvdyBkZWZpbml0aW9ucyBhcmUgcmVqZWN0ZWQg d2l0aCBhbiBlcnJvciwgYXMgYmVmb3JlIGNvbW1pdCAyNTdjODIzMWJmOS4KCkJ1ZzogIzE5NTA4 ClJlcG9ydGVkLWJ5OiBOaWtpdGEgS2FsaW5pbiA8bi5rYWxpbmluQHBvc3RncmVzcHJvLnJ1PgpB dXRob3I6IEZ1amlpIE1hc2FvIDxtYXNhby5mdWppaUBnbWFpbC5jb20+ClJldmlld2VkLWJ5OiBB eXVzaCBUaXdhcmkgPGF5dXNodGl3YXJpLnNsZzAxQGdtYWlsLmNvbT4KRGlzY3Vzc2lvbjogaHR0 cHM6Ly9wb3N0Z3IuZXMvbS8xOTUwOC1lNWYxODgxODMyNzkyMTliQHBvc3RncmVzcWwub3JnCi0t LQogLi4uL2V4cGVjdGVkL3BnX2J1ZmZlcmNhY2hlLm91dCAgICAgICAgICAgICAgIHwgIDggKysr CiBjb250cmliL3BnX2J1ZmZlcmNhY2hlL3BnX2J1ZmZlcmNhY2hlX3BhZ2VzLmMgfCA1MSArKysr KysrKysrKysrKysrKysrCiBjb250cmliL3BnX2J1ZmZlcmNhY2hlL3NxbC9wZ19idWZmZXJjYWNo ZS5zcWwgfCAgNiArKysKIDMgZmlsZXMgY2hhbmdlZCwgNjUgaW5zZXJ0aW9ucygrKQoKZGlmZiAt LWdpdCBhL2NvbnRyaWIvcGdfYnVmZmVyY2FjaGUvZXhwZWN0ZWQvcGdfYnVmZmVyY2FjaGUub3V0 IGIvY29udHJpYi9wZ19idWZmZXJjYWNoZS9leHBlY3RlZC9wZ19idWZmZXJjYWNoZS5vdXQKaW5k ZXggODg2ZGVhNzcwZjYuLmM1MmE4NDkxZmY5IDEwMDY0NAotLS0gYS9jb250cmliL3BnX2J1ZmZl cmNhY2hlL2V4cGVjdGVkL3BnX2J1ZmZlcmNhY2hlLm91dAorKysgYi9jb250cmliL3BnX2J1ZmZl cmNhY2hlL2V4cGVjdGVkL3BnX2J1ZmZlcmNhY2hlLm91dApAQCAtNzMsNiArNzMsMTQgQEAgU0VM RUNUIGNvdW50KCopID4gMCBGUk9NIHBnX2J1ZmZlcmNhY2hlX3VzYWdlX2NvdW50cygpOwogIHQK ICgxIHJvdykKIAorU0VMRUNUICoKK0ZST00gcGdfYnVmZmVyY2FjaGVfcGFnZXMoKSBBUyBwCisJ KGJ1ZmZlcmlkIGludGVnZXIsIHJlbGZpbGVub2RlIG9pZCwgcmVsdGFibGVzcGFjZSBvaWQsIHJl bGRhdGFiYXNlIG9pZCwKKwkgcmVsZm9ya251bWJlciBzbWFsbGludCwgcmVsYmxvY2tudW1iZXIg YmlnaW50LCBpc2RpcnR5IHRleHQsCisJIHVzYWdlY291bnQgc21hbGxpbnQpCitMSU1JVCAxOwor RVJST1I6ICBmdW5jdGlvbiByZXR1cm4gcm93IGFuZCBxdWVyeS1zcGVjaWZpZWQgcmV0dXJuIHJv dyBkbyBub3QgbWF0Y2gKK0RFVEFJTDogIFJldHVybmVkIHR5cGUgYm9vbGVhbiBhdCBvcmRpbmFs IHBvc2l0aW9uIDcsIGJ1dCBxdWVyeSBleHBlY3RzIHRleHQuCiBSRVNFVCByb2xlOwogLS0tLS0t CiAtLS0tIFRlc3QgcGdfYnVmZmVyY2FjaGVfZXZpY3QqIGFuZCBwZ19idWZmZXJjYWNoZV9tYXJr X2RpcnR5KiBmdW5jdGlvbnMKZGlmZiAtLWdpdCBhL2NvbnRyaWIvcGdfYnVmZmVyY2FjaGUvcGdf YnVmZmVyY2FjaGVfcGFnZXMuYyBiL2NvbnRyaWIvcGdfYnVmZmVyY2FjaGUvcGdfYnVmZmVyY2Fj aGVfcGFnZXMuYwppbmRleCBiZjJlNmM5NzIyMC4uNTEwNDU1OTk4YWEgMTAwNjQ0Ci0tLSBhL2Nv bnRyaWIvcGdfYnVmZmVyY2FjaGUvcGdfYnVmZmVyY2FjaGVfcGFnZXMuYworKysgYi9jb250cmli L3BnX2J1ZmZlcmNhY2hlL3BnX2J1ZmZlcmNhY2hlX3BhZ2VzLmMKQEAgLTU5LDYgKzU5LDggQEAg dHlwZWRlZiBzdHJ1Y3QKIAlCdWZmZXJDYWNoZU9zUGFnZXNSZWMgKnJlY29yZDsKIH0gQnVmZmVy Q2FjaGVPc1BhZ2VzQ29udGV4dDsKIAorc3RhdGljIFR1cGxlRGVzYyBidWlsZF9idWZmZXJjYWNo ZV9wYWdlc190dXBsZWRlc2MoaW50IG5hdHRzKTsKKwogCiAvKgogICogRnVuY3Rpb24gcmV0dXJu aW5nIGRhdGEgZnJvbSB0aGUgc2hhcmVkIGJ1ZmZlciBjYWNoZSAtIGJ1ZmZlciBudW1iZXIsCkBA IC04Niw2ICs4OCw4IEBAIHBnX2J1ZmZlcmNhY2hlX3BhZ2VzKFBHX0ZVTkNUSU9OX0FSR1MpCiB7 CiAJUmV0dXJuU2V0SW5mbyAqcnNpbmZvID0gKFJldHVyblNldEluZm8gKikgZmNpbmZvLT5yZXN1 bHRpbmZvOwogCVR1cGxlRGVzYwlleHBlY3RlZF90dXBsZWRlc2M7CisJVHVwbGVEZXNjCWFjdHVh bF90dXBsZWRlc2M7CisJTWVtb3J5Q29udGV4dCBvbGRjb250ZXh0OwogCWludAkJCWk7CiAKIAkv KgpAQCAtMTA1LDYgKzEwOSwyMSBAQCBwZ19idWZmZXJjYWNoZV9wYWdlcyhQR19GVU5DVElPTl9B UkdTKQogCiAJSW5pdE1hdGVyaWFsaXplZFNSRihmY2luZm8sIDApOwogCisJb2xkY29udGV4dCA9 IE1lbW9yeUNvbnRleHRTd2l0Y2hUbyhyc2luZm8tPmVjb250ZXh0LT5lY3h0X3Blcl9xdWVyeV9t ZW1vcnkpOworCWFjdHVhbF90dXBsZWRlc2MgPSBidWlsZF9idWZmZXJjYWNoZV9wYWdlc190dXBs ZWRlc2MoZXhwZWN0ZWRfdHVwbGVkZXNjLT5uYXR0cyk7CisJTWVtb3J5Q29udGV4dFN3aXRjaFRv KG9sZGNvbnRleHQpOworCisJLyoKKwkgKiBPdmVycmlkZSB0aGUgY2FsbGVyLXN1cHBsaWVkIGRl c2NyaXB0b3Igd2l0aCB0aGUgdHVwbGUgZGVzY3JpcHRvciB0aGF0CisJICogbWF0Y2hlcyB0aGUg dmFsdWVzIHdlIGFjdHVhbGx5IHJldHVybiwgc28gZXhlY3V0b3Itc2lkZQorCSAqIHR1cGxlZGVz Y19tYXRjaCgpIGNhbiB2ZXJpZnkgdGhlIGNhbGxlcidzIHJvdyBkZWZpbml0aW9uLgorCSAqCisJ ICogRG8gbm90IGZyZWUgdGhlIHByZXZpb3VzIHJzaW5mby0+c2V0RGVzYyBoZXJlOiBmb3IgUkVD T1JEIHJlc3VsdHMgaXQKKwkgKiBjYW4gYWxpYXMgcnNpbmZvLT5leHBlY3RlZERlc2MsIHdoaWNo IHRoZSBleGVjdXRvciBzdGlsbCBuZWVkcyB0bworCSAqIHJlZmVyZW5jZS4KKwkgKi8KKwlyc2lu Zm8tPnNldERlc2MgPSBhY3R1YWxfdHVwbGVkZXNjOworCiAJLyoKIAkgKiBTY2FuIHRocm91Z2gg YWxsIHRoZSBidWZmZXJzLCBhZGRpbmcgb25lIHJvdyBmb3IgZWFjaCBvZiB0aGUgYnVmZmVycyB0 bwogCSAqIHRoZSB0dXBsZXN0b3JlLgpAQCAtMjA1LDYgKzIyNCwzOCBAQCBwZ19idWZmZXJjYWNo ZV9wYWdlcyhQR19GVU5DVElPTl9BUkdTKQogCXJldHVybiAoRGF0dW0pIDA7CiB9CiAKK3N0YXRp YyBUdXBsZURlc2MKK2J1aWxkX2J1ZmZlcmNhY2hlX3BhZ2VzX3R1cGxlZGVzYyhpbnQgbmF0dHMp Cit7CisJVHVwbGVEZXNjCXR1cGxlZGVzYzsKKworCXR1cGxlZGVzYyA9IENyZWF0ZVRlbXBsYXRl VHVwbGVEZXNjKG5hdHRzKTsKKwlUdXBsZURlc2NJbml0RW50cnkodHVwbGVkZXNjLCAoQXR0ck51 bWJlcikgMSwgImJ1ZmZlcmlkIiwKKwkJCQkJICAgSU5UNE9JRCwgLTEsIDApOworCVR1cGxlRGVz Y0luaXRFbnRyeSh0dXBsZWRlc2MsIChBdHRyTnVtYmVyKSAyLCAicmVsZmlsZW5vZGUiLAorCQkJ CQkgICBPSURPSUQsIC0xLCAwKTsKKwlUdXBsZURlc2NJbml0RW50cnkodHVwbGVkZXNjLCAoQXR0 ck51bWJlcikgMywgInJlbHRhYmxlc3BhY2UiLAorCQkJCQkgICBPSURPSUQsIC0xLCAwKTsKKwlU dXBsZURlc2NJbml0RW50cnkodHVwbGVkZXNjLCAoQXR0ck51bWJlcikgNCwgInJlbGRhdGFiYXNl IiwKKwkJCQkJICAgT0lET0lELCAtMSwgMCk7CisJVHVwbGVEZXNjSW5pdEVudHJ5KHR1cGxlZGVz YywgKEF0dHJOdW1iZXIpIDUsICJyZWxmb3JrbnVtYmVyIiwKKwkJCQkJICAgSU5UMk9JRCwgLTEs IDApOworCVR1cGxlRGVzY0luaXRFbnRyeSh0dXBsZWRlc2MsIChBdHRyTnVtYmVyKSA2LCAicmVs YmxvY2tudW1iZXIiLAorCQkJCQkgICBJTlQ4T0lELCAtMSwgMCk7CisJVHVwbGVEZXNjSW5pdEVu dHJ5KHR1cGxlZGVzYywgKEF0dHJOdW1iZXIpIDcsICJpc2RpcnR5IiwKKwkJCQkJICAgQk9PTE9J RCwgLTEsIDApOworCVR1cGxlRGVzY0luaXRFbnRyeSh0dXBsZWRlc2MsIChBdHRyTnVtYmVyKSA4 LCAidXNhZ2Vjb3VudCIsCisJCQkJCSAgIElOVDJPSUQsIC0xLCAwKTsKKworCWlmIChuYXR0cyA9 PSBOVU1fQlVGRkVSQ0FDSEVfUEFHRVNfRUxFTSkKKwkJVHVwbGVEZXNjSW5pdEVudHJ5KHR1cGxl ZGVzYywgKEF0dHJOdW1iZXIpIDksICJwaW5uaW5nX2JhY2tlbmRzIiwKKwkJCQkJCSAgIElOVDRP SUQsIC0xLCAwKTsKKworCVR1cGxlRGVzY0ZpbmFsaXplKHR1cGxlZGVzYyk7CisKKwlyZXR1cm4g Qmxlc3NUdXBsZURlc2ModHVwbGVkZXNjKTsKK30KKwogLyoKICAqIElucXVpcmUgYWJvdXQgT1Mg cGFnZXMgbWFwcGluZ3MgZm9yIHNoYXJlZCBidWZmZXJzLCB3aXRoIE5VTUEgaW5mb3JtYXRpb24s CiAgKiBvcHRpb25hbGx5LgpkaWZmIC0tZ2l0IGEvY29udHJpYi9wZ19idWZmZXJjYWNoZS9zcWwv cGdfYnVmZmVyY2FjaGUuc3FsIGIvY29udHJpYi9wZ19idWZmZXJjYWNoZS9zcWwvcGdfYnVmZmVy Y2FjaGUuc3FsCmluZGV4IDEyN2Q2MDQ5MDVjLi5iZTg5YjVmNWEzYSAxMDA2NDQKLS0tIGEvY29u dHJpYi9wZ19idWZmZXJjYWNoZS9zcWwvcGdfYnVmZmVyY2FjaGUuc3FsCisrKyBiL2NvbnRyaWIv cGdfYnVmZmVyY2FjaGUvc3FsL3BnX2J1ZmZlcmNhY2hlLnNxbApAQCAtMzQsNiArMzQsMTIgQEAg U0VMRUNUIGNvdW50KCopID4gMCBGUk9NIHBnX2J1ZmZlcmNhY2hlOwogU0VMRUNUIGNvdW50KCop ID4gMCBGUk9NIHBnX2J1ZmZlcmNhY2hlX29zX3BhZ2VzOwogU0VMRUNUIGJ1ZmZlcnNfdXNlZCAr IGJ1ZmZlcnNfdW51c2VkID4gMCBGUk9NIHBnX2J1ZmZlcmNhY2hlX3N1bW1hcnkoKTsKIFNFTEVD VCBjb3VudCgqKSA+IDAgRlJPTSBwZ19idWZmZXJjYWNoZV91c2FnZV9jb3VudHMoKTsKK1NFTEVD VCAqCitGUk9NIHBnX2J1ZmZlcmNhY2hlX3BhZ2VzKCkgQVMgcAorCShidWZmZXJpZCBpbnRlZ2Vy LCByZWxmaWxlbm9kZSBvaWQsIHJlbHRhYmxlc3BhY2Ugb2lkLCByZWxkYXRhYmFzZSBvaWQsCisJ IHJlbGZvcmtudW1iZXIgc21hbGxpbnQsIHJlbGJsb2NrbnVtYmVyIGJpZ2ludCwgaXNkaXJ0eSB0 ZXh0LAorCSB1c2FnZWNvdW50IHNtYWxsaW50KQorTElNSVQgMTsKIFJFU0VUIHJvbGU7CiAKIAot LSAKMi41My4wCgo= --00000000000033ad0306537d066f--