From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 6327FC021A4 for ; Wed, 26 Feb 2025 04:34:21 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tn97a-00032O-Fe; Tue, 25 Feb 2025 23:34:10 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tn97Y-00031z-Eh for grub-devel@gnu.org; Tue, 25 Feb 2025 23:34:08 -0500 Received: from mx0a-001b2d01.pphosted.com ([148.163.156.1]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tn97W-0005Wr-Bo for grub-devel@gnu.org; Tue, 25 Feb 2025 23:34:08 -0500 Received: from pps.filterd (m0353729.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 51Q1krVu012262; Wed, 26 Feb 2025 04:34:02 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=cc :content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=pp1; bh=OE1K9Z 8p1PbAmNL67C1MCvemTsSuOGSmc0+nk7ZKkhc=; b=VTCUm4eU6RPANGZowkrd67 VMUxc0kBOn8frW39uTXlQ7//fAbCpJ4R1Q2ZJM+eUIJWCmLqiR+TKEMtu/mhegN0 pv3FrkJlbDTqjG78u+vJ+GwOoajqUNGfK6weK6N916WCFPXbA+MBUSdGpMZdl9MD Olu1Jw1cAhF2N17IOeR2eYtsqAGULtGoPB/uIwKvUKSnvJOSUK2rndlN6MCqVs+y Le9L9uXM+D7YcK4gTUokG6ke29mvZPW5FLrSlOMf0/0m2PrRSEf2UbOReG4wTn7b QrvhecLIZM2g0dQJYuR/jaVdKmnotfuSnYK0uC3gvj9pem5JKYnPUQgic/kgf8eA == Received: from ppma13.dal12v.mail.ibm.com (dd.9e.1632.ip4.static.sl-reverse.com [50.22.158.221]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 451q5ms3m2-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 26 Feb 2025 04:34:02 +0000 (GMT) Received: from pps.filterd (ppma13.dal12v.mail.ibm.com [127.0.0.1]) by ppma13.dal12v.mail.ibm.com (8.18.1.2/8.18.1.2) with ESMTP id 51Q1ibr6002595; Wed, 26 Feb 2025 04:34:01 GMT Received: from smtprelay05.wdc07v.mail.ibm.com ([172.16.1.72]) by ppma13.dal12v.mail.ibm.com (PPS) with ESMTPS id 44yu4jretw-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 26 Feb 2025 04:34:01 +0000 Received: from smtpav05.dal12v.mail.ibm.com (smtpav05.dal12v.mail.ibm.com [10.241.53.104]) by smtprelay05.wdc07v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 51Q4Xxag61145546 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 26 Feb 2025 04:33:59 GMT Received: from smtpav05.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 8320C58067; Wed, 26 Feb 2025 04:33:59 +0000 (GMT) Received: from smtpav05.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 2633258068; Wed, 26 Feb 2025 04:33:59 +0000 (GMT) Received: from ltc.linux.ibm.com (unknown [9.5.196.140]) by smtpav05.dal12v.mail.ibm.com (Postfix) with ESMTP; Wed, 26 Feb 2025 04:33:59 +0000 (GMT) MIME-Version: 1.0 Date: Wed, 26 Feb 2025 10:03:58 +0530 From: sudhakar To: Stefan Berger Cc: The development of GNU GRUB , dja@axtens.net, jan.setjeeilers@oracle.com, julian.klode@canonical.com, mate.kukri@canonical.com, pjones@redhat.com, avnish@linux.ibm.com, nayna@linux.ibm.com, ssrish@linux.ibm.com Subject: Re: [PATCH v1 14/21] ieee1275: Platform Keystore (PKS) Support In-Reply-To: References: <20241218145647.1390837-1-sudhakar@linux.ibm.com> <20241218145647.1390837-15-sudhakar@linux.ibm.com> Message-ID: <2cd871a97f6251f1a5804de8d50a350e@linux.ibm.com> X-Sender: sudhakar@linux.ibm.com X-TM-AS-GCONF: 00 X-Proofpoint-ORIG-GUID: tjytdeJ1CxIdy4H5hkpIZQycBUPQVpB4 X-Proofpoint-GUID: tjytdeJ1CxIdy4H5hkpIZQycBUPQVpB4 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1057,Hydra:6.0.680,FMLib:17.12.68.34 definitions=2025-02-25_08,2025-02-25_03,2024-11-22_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 impostorscore=0 priorityscore=1501 spamscore=0 clxscore=1015 suspectscore=0 mlxscore=0 lowpriorityscore=0 malwarescore=0 phishscore=0 bulkscore=0 mlxlogscore=999 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.19.0-2502100000 definitions=main-2502260033 Received-SPF: pass client-ip=148.163.156.1; envelope-from=sudhakar@linux.ibm.com; helo=mx0a-001b2d01.pphosted.com X-Spam_score_int: -26 X-Spam_score: -2.7 X-Spam_bar: -- X-Spam_report: (-2.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=0.001, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: grub-devel@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: The development of GNU GRUB List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: The development of GNU GRUB Content-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Errors-To: grub-devel-bounces+grub-devel=archiver.kernel.org@gnu.org Sender: grub-devel-bounces+grub-devel=archiver.kernel.org@gnu.org T24gMjAyNC0xMi0zMSAwMzo0NCwgU3RlZmFuIEJlcmdlciB3cm90ZToKPiBPbiAxMi8xOC8yNCA5 OjU2IEFNLCBTdWRoYWthciBLdXBwdXNhbXkgd3JvdGU6Cj4+IGVuaGFuY2luZyB0aGUgaW5mcmFz dHJ1Y3R1cmUgdG8gZW5hYmxlIHRoZSBQbGF0Zm9ybSBLZXlzdG9yZSAoUEtTKSAKPj4gZmVhdHVy ZSwKPj4gd2hpY2ggcHJvdmlkZXMgYWNjZXNzIHRvIHRoZSBTQiBWRVJTSU9OLCBEQiwgYW5kIERC WCBzZWN1cmUgYm9vdCAKPj4gdmFyaWFibGVzCj4+IGZyb20gUEtTLgo+PiAKPj4gU2lnbmVkLW9m Zi1ieTogU3VkaGFrYXIgS3VwcHVzYW15IDxzdWRoYWthckBsaW51eC5pYm0uY29tPgo+PiAtLS0K Pj4gICBncnViLWNvcmUva2Vybi9pZWVlMTI3NS9pZWVlMTI3NS5jIHwgMTE3IAo+PiArKysrKysr KysrKysrKysrKysrKysrKysrKysrKwo+IAo+IFNpbmNlIHRoaXMgaXMgcFNlcmllcy1zcGVjaWZp YyBzdHVmZiBJIHdvbmRlciB3aGV0aGVyIHRoaXMgc2hvdWxkIG5vdAo+IHJhdGhlciBnbyBpbnRv IGluY2x1ZGUvZ3J1Yi9wb3dlcnBjL2llZWUxMjc1L2llZWUxMjc1LmggYW5kCj4gZ3J1Yi1jb3Jl L2tlcm4vcG93ZXJwYy9pZWVlMTI3NS9pZWVlMTI3NS5jID8KClRoYW5rIHlvdSBTdGVmYW4uCnll cy4gVGhpcyBzaG91bGQgZ28gaW50byBwU2VyaWVzLXNwZWNpZmljLiBtb3ZlZCBpdCB0byBwU2Vy aWVzLXNwZWNpZmljLgoKCj4gCj4+ICAgaW5jbHVkZS9ncnViL2llZWUxMjc1L2llZWUxMjc1Lmgg ICB8ICAxNCArKysrCj4+ICAgMiBmaWxlcyBjaGFuZ2VkLCAxMzEgaW5zZXJ0aW9ucygrKQo+PiAK Pj4gZGlmZiAtLWdpdCBhL2dydWItY29yZS9rZXJuL2llZWUxMjc1L2llZWUxMjc1LmMgCj4+IGIv Z3J1Yi1jb3JlL2tlcm4vaWVlZTEyNzUvaWVlZTEyNzUuYwo+PiBpbmRleCAzNmNhMmRiZmMuLjhk MDA0ODg0NCAxMDA2NDQKPj4gLS0tIGEvZ3J1Yi1jb3JlL2tlcm4vaWVlZTEyNzUvaWVlZTEyNzUu Ywo+PiArKysgYi9ncnViLWNvcmUva2Vybi9pZWVlMTI3NS9pZWVlMTI3NS5jCj4+IEBAIC04MDcs MyArODA3LDEyMCBAQCBncnViX2llZWUxMjc1X2dldF9ibG9ja19zaXplIAo+PiAoZ3J1Yl9pZWVl MTI3NV9paGFuZGxlX3QgaWhhbmRsZSkKPj4gICAgICAgcmV0dXJuIGFyZ3Muc2l6ZTsKPj4gICB9 Cj4+ICsKPj4gK2ludAo+PiArZ3J1Yl9pZWVlMTI3NV90ZXN0IChjb25zdCBjaGFyICpuYW1lLCBn cnViX2llZWUxMjc1X2NlbGxfdCAqbWlzc2luZykKPj4gK3sKPj4gKyAgc3RydWN0IHRlc3RfYXJn cwo+PiArICB7Cj4+ICsgICAgc3RydWN0IGdydWJfaWVlZTEyNzVfY29tbW9uX2hkciBjb21tb247 Cj4+ICsgICAgZ3J1Yl9pZWVlMTI3NV9jZWxsX3QgbmFtZTsKPj4gKyAgICBncnViX2llZWUxMjc1 X2NlbGxfdCBtaXNzaW5nOwo+PiArICB9IGFyZ3M7Cj4+ICsKPj4gKyAgSU5JVF9JRUVFMTI3NV9D T01NT04gKCZhcmdzLmNvbW1vbiwgInRlc3QiLCAxLCAxKTsKPj4gKyAgYXJncy5uYW1lID0gKGdy dWJfaWVlZTEyNzVfY2VsbF90KSBuYW1lOwo+PiArCj4+ICsgIGlmIChJRUVFMTI3NV9DQUxMX0VO VFJZX0ZOICgmYXJncykgPT0gLTEpCj4+ICsgICAgcmV0dXJuIC0xOwo+PiArCj4+ICsgIGlmIChh cmdzLm1pc3NpbmcgPT0gSUVFRTEyNzVfQ0VMTF9JTlZBTElEKQo+PiArICAgIHJldHVybiAtMTsK Pj4gKwo+PiArICAqbWlzc2luZyA9IGFyZ3MubWlzc2luZzsKPj4gKwo+PiArICByZXR1cm4gMDsK Pj4gK30KPj4gKwo+PiAraW50Cj4+ICtncnViX2llZWUxMjc1X3Brc19tYXhfb2JqZWN0X3NpemUg KGdydWJfc2l6ZV90ICpyZXN1bHQpCj4+ICt7Cj4+ICsgIHN0cnVjdCBtb3NfYXJncwo+PiArICB7 Cj4+ICsgICAgc3RydWN0IGdydWJfaWVlZTEyNzVfY29tbW9uX2hkciBjb21tb247Cj4+ICsgICAg Z3J1Yl9pZWVlMTI3NV9jZWxsX3Qgc2l6ZTsKPj4gKyAgfSBhcmdzOwo+PiArCj4+ICsgIElOSVRf SUVFRTEyNzVfQ09NTU9OICgmYXJncy5jb21tb24sICJwa3MtbWF4LW9iamVjdC1zaXplIiwgMCwg MSk7Cj4+ICsKPj4gKyAgaWYgKElFRUUxMjc1X0NBTExfRU5UUllfRk4gKCZhcmdzKSA9PSAtMSkK Pj4gKyAgICByZXR1cm4gLTE7Cj4+ICsKPj4gKyAgaWYgKGFyZ3Muc2l6ZSA9PSBJRUVFMTI3NV9D RUxMX0lOVkFMSUQpCj4+ICsgICAgcmV0dXJuIC0xOwo+PiArCj4+ICsgICpyZXN1bHQgPSBhcmdz LnNpemU7Cj4+ICsKPj4gKyAgcmV0dXJuIDA7Cj4+ICt9Cj4+ICsKPj4gK2ludAo+PiArZ3J1Yl9p ZWVlMTI3NV9wa3NfcmVhZF9vYmplY3QgKGdydWJfdWludDhfdCBjb25zdW1lciwgZ3J1Yl91aW50 OF90IAo+PiAqbGFiZWwsCj4+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ3J1Yl9z aXplX3QgbGFiZWxfbGVuLCBncnViX3VpbnQ4X3QgCj4+ICpidWZmZXIsCj4+ICsgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgZ3J1Yl9zaXplX3QgYnVmZmVyX2xlbiwgZ3J1Yl9zaXplX3Qg Cj4+ICpkYXRhX2xlbiwKPj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBncnViX3Vp bnQzMl90ICpwb2xpY2llcykKPj4gK3sKPj4gKyAgc3RydWN0IHBrc19yZWFkX2FyZ3MKPj4gKyAg ewo+PiArICAgIHN0cnVjdCBncnViX2llZWUxMjc1X2NvbW1vbl9oZHIgY29tbW9uOwo+PiArICAg IGdydWJfaWVlZTEyNzVfY2VsbF90IGNvbnN1bWVyOwo+PiArICAgIGdydWJfaWVlZTEyNzVfY2Vs bF90IGxhYmVsOwo+PiArICAgIGdydWJfaWVlZTEyNzVfY2VsbF90IGxhYmVsX2xlbjsKPj4gKyAg ICBncnViX2llZWUxMjc1X2NlbGxfdCBidWZmZXI7Cj4+ICsgICAgZ3J1Yl9pZWVlMTI3NV9jZWxs X3QgYnVmZmVyX2xlbjsKPj4gKyAgICBncnViX2llZWUxMjc1X2NlbGxfdCBkYXRhX2xlbjsKPj4g KyAgICBncnViX2llZWUxMjc1X2NlbGxfdCBwb2xpY2llczsKPj4gKyAgICBncnViX2llZWUxMjc1 X2NlbGxfdCByYzsKPj4gKyAgfSBhcmdzOwo+PiArCj4+ICsgIElOSVRfSUVFRTEyNzVfQ09NTU9O ICgmYXJncy5jb21tb24sICJwa3MtcmVhZC1vYmplY3QiLCA1LCAzKTsKPj4gKyAgYXJncy5jb25z dW1lciA9IChncnViX2llZWUxMjc1X2NlbGxfdCkgY29uc3VtZXI7Cj4+ICsgIGFyZ3MubGFiZWwg PSAoZ3J1Yl9pZWVlMTI3NV9jZWxsX3QpIGxhYmVsOwo+PiArICBhcmdzLmxhYmVsX2xlbiA9IChn cnViX2llZWUxMjc1X2NlbGxfdCkgbGFiZWxfbGVuOwo+PiArICBhcmdzLmJ1ZmZlciA9IChncnVi X2llZWUxMjc1X2NlbGxfdCkgYnVmZmVyOwo+PiArICBhcmdzLmJ1ZmZlcl9sZW4gPSAoZ3J1Yl9p ZWVlMTI3NV9jZWxsX3QpIGJ1ZmZlcl9sZW47Cj4+ICsKPj4gKyAgaWYgKElFRUUxMjc1X0NBTExf RU5UUllfRk4gKCZhcmdzKSA9PSAtMSkKPj4gKyAgICByZXR1cm4gLTE7Cj4+ICsKPj4gKyAgaWYg KGFyZ3MuZGF0YV9sZW4gPT0gSUVFRTEyNzVfQ0VMTF9JTlZBTElEKQo+PiArICAgIHJldHVybiAt MTsKPj4gKwo+PiArICAqZGF0YV9sZW4gPSBhcmdzLmRhdGFfbGVuOwo+PiArICAqcG9saWNpZXMg PSBhcmdzLnBvbGljaWVzOwo+PiArCj4+ICsgIHJldHVybiAoaW50KSBhcmdzLnJjOwo+PiArfQo+ PiArCj4+ICtpbnQKPj4gK2dydWJfaWVlZTEyNzVfcGtzX3JlYWRfc2J2YXIgKGdydWJfdWludDhf dCBzYnZhcmZsYWdzLCBncnViX3VpbnQ4X3QgCj4+IHNidmFydHlwZSwKPj4gKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGdydWJfdWludDhfdCAqYnVmZmVyLCBncnViX3NpemVfdCAKPj4g YnVmZmVyX2xlbiwKPj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdydWJfc2l6ZV90 ICpkYXRhX2xlbikKPj4gK3sKPj4gKyAgc3RydWN0IHBrc19yZWFkX3NidmFyX2FyZ3MKPj4gKyAg ewo+PiArICAgIHN0cnVjdCBncnViX2llZWUxMjc1X2NvbW1vbl9oZHIgY29tbW9uOwo+PiArICAg IGdydWJfaWVlZTEyNzVfY2VsbF90IHNidmFyZmxhZ3M7Cj4+ICsgICAgZ3J1Yl9pZWVlMTI3NV9j ZWxsX3Qgc2J2YXJ0eXBlOwo+PiArICAgIGdydWJfaWVlZTEyNzVfY2VsbF90IGJ1ZmZlcjsKPj4g KyAgICBncnViX2llZWUxMjc1X2NlbGxfdCBidWZmZXJfbGVuOwo+PiArICAgIGdydWJfaWVlZTEy NzVfY2VsbF90IGRhdGFfbGVuOwo+PiArICAgIGdydWJfaWVlZTEyNzVfY2VsbF90IHJjOwo+PiAr ICB9IGFyZ3M7Cj4+ICsKPj4gKyAgSU5JVF9JRUVFMTI3NV9DT01NT04gKCZhcmdzLmNvbW1vbiwg InBrcy1yZWFkLXNidmFyIiwgNCwgMik7Cj4+ICsgIGFyZ3Muc2J2YXJmbGFncyA9IChncnViX2ll ZWUxMjc1X2NlbGxfdCkgc2J2YXJmbGFnczsKPj4gKyAgYXJncy5zYnZhcnR5cGUgPSAoZ3J1Yl9p ZWVlMTI3NV9jZWxsX3QpIHNidmFydHlwZTsKPj4gKyAgYXJncy5idWZmZXIgPSAoZ3J1Yl9pZWVl MTI3NV9jZWxsX3QpIGJ1ZmZlcjsKPj4gKyAgYXJncy5idWZmZXJfbGVuID0gKGdydWJfaWVlZTEy NzVfY2VsbF90KSBidWZmZXJfbGVuOwo+PiArCj4+ICsgIGlmIChJRUVFMTI3NV9DQUxMX0VOVFJZ X0ZOICgmYXJncykgPT0gLTEpCj4+ICsgICAgcmV0dXJuIC0xOwo+PiArCj4+ICsgIGlmIChhcmdz LmRhdGFfbGVuID09IElFRUUxMjc1X0NFTExfSU5WQUxJRCkKPj4gKyAgICByZXR1cm4gLTE7Cj4+ ICsKPj4gKyAgKmRhdGFfbGVuID0gYXJncy5kYXRhX2xlbjsKPj4gKwo+PiArICByZXR1cm4gKGlu dCkgYXJncy5yYzsKPj4gK30KPj4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvZ3J1Yi9pZWVlMTI3NS9p ZWVlMTI3NS5oIAo+PiBiL2luY2x1ZGUvZ3J1Yi9pZWVlMTI3NS9pZWVlMTI3NS5oCj4+IGluZGV4 IGM0NDVkMDQ5OS4uZWRkOGNkMGViIDEwMDY0NAo+PiAtLS0gYS9pbmNsdWRlL2dydWIvaWVlZTEy NzUvaWVlZTEyNzUuaAo+PiArKysgYi9pbmNsdWRlL2dydWIvaWVlZTEyNzUvaWVlZTEyNzUuaAo+ PiBAQCAtMjMwLDYgKzIzMCwyMCBAQCBjaGFyICpFWFBPUlRfRlVOQyhncnViX2llZWUxMjc1X2Vu Y29kZV91aW50NCkgCj4+IChncnViX2llZWUxMjc1X2loYW5kbGVfdCBpaGFuZGxlLAo+PiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdydWJfc2l6ZV90ICpz aXplKTsKPj4gICBpbnQgRVhQT1JUX0ZVTkMoZ3J1Yl9pZWVlMTI3NV9nZXRfYmxvY2tfc2l6ZSkg Cj4+IChncnViX2llZWUxMjc1X2loYW5kbGVfdCBpaGFuZGxlKTsKPj4gICAraW50IEVYUE9SVF9G VU5DIChncnViX2llZWUxMjc1X3Rlc3QpIChjb25zdCBjaGFyICpuYW1lLAo+PiArICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBncnViX2llZWUxMjc1X2NlbGxfdCAqbWlzc2lu Zyk7Cj4+ICsKPj4gK2ludCBncnViX2llZWUxMjc1X3Brc19tYXhfb2JqZWN0X3NpemUgKGdydWJf c2l6ZV90ICpyZXN1bHQpOwo+PiArCj4+ICtpbnQgZ3J1Yl9pZWVlMTI3NV9wa3NfcmVhZF9vYmpl Y3QgKGdydWJfdWludDhfdCBjb25zdW1lciwgCj4+IGdydWJfdWludDhfdCAqbGFiZWwsCj4+ICsg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdydWJfc2l6ZV90IGxhYmVsX2xlbiwg Cj4+IGdydWJfdWludDhfdCAqYnVmZmVyLAo+PiArICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBncnViX3NpemVfdCBidWZmZXJfbGVuLCAKPj4gZ3J1Yl9zaXplX3QgKmRhdGFfbGVu LAo+PiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBncnViX3VpbnQzMl90ICpw b2xpY2llcyk7Cj4+ICsKPj4gK2ludCBncnViX2llZWUxMjc1X3Brc19yZWFkX3NidmFyIChncnVi X3VpbnQ4X3Qgc2J2YXJmbGFncywgCj4+IGdydWJfdWludDhfdCBzYnZhcnR5cGUsCj4+ICsgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ3J1Yl91aW50OF90ICpidWZmZXIsIGdydWJf c2l6ZV90IAo+PiBidWZmZXJfbGVuLAo+PiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIGdydWJfc2l6ZV90ICpkYXRhX2xlbik7Cj4+ICsKPj4gICBncnViX2Vycl90IEVYUE9SVF9G VU5DKGdydWJfY2xhaW1tYXApIChncnViX2FkZHJfdCBhZGRyLCBncnViX3NpemVfdCAKPj4gc2l6 ZSk7Cj4+ICAgICBpbnQKCgpUaGFua3MsClN1ZGhha2FyIEt1cHB1c2FteQoKX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KR3J1Yi1kZXZlbCBtYWlsaW5nIGxp c3QKR3J1Yi1kZXZlbEBnbnUub3JnCmh0dHBzOi8vbGlzdHMuZ251Lm9yZy9tYWlsbWFuL2xpc3Rp bmZvL2dydWItZGV2ZWwK