From mboxrd@z Thu Jan 1 00:00:00 1970 From: Paulina Szubarczyk Subject: [PATCH v3 1/2] Interface for grant copy operation in libs. Date: Wed, 22 Jun 2016 10:38:52 +0200 Message-ID: <1466584733-19459-2-git-send-email-paulinaszubarczyk@gmail.com> References: <1466584733-19459-1-git-send-email-paulinaszubarczyk@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta5.messagelabs.com ([195.245.231.135]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bFdka-0005Bn-GD for xen-devel@lists.xenproject.org; Wed, 22 Jun 2016 08:43:08 +0000 Received: by mail-lf0-f67.google.com with SMTP id l188so12563388lfe.0 for ; Wed, 22 Jun 2016 01:43:06 -0700 (PDT) In-Reply-To: <1466584733-19459-1-git-send-email-paulinaszubarczyk@gmail.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: xen-devel@lists.xenproject.org, roger.pau@citrix.com Cc: sstabellini@kernel.org, wei.liu2@citrix.com, Paulina Szubarczyk , ian.jackson@eu.citrix.com, david.vrabel@citrix.com, anthony.perard@citrix.com List-Id: xen-devel@lists.xenproject.org SW4gYSBsaW51eCBwYXJ0IGFuIGlvY3RsKGdudGRldiwgSU9DVExfR05UREVWX0dSQU5UX0NPUFks IC4uKQpzeXN0ZW0gY2FsbCBpcyBpbnZva2VkLiBJbiBtaW5pLW9zIHRoZSBvcGVyYXRpb24gaXMg eWV0IG5vdAppbXBsZW1lbnRlZC4gRm9yIG90aGVyIE9TcyB0aGVyZSBpcyBhIGR1bW15IGltcGxl bWVudGF0aW9uLgoKU2lnbmVkLW9mZi1ieTogUGF1bGluYSBTenViYXJjenlrIDxwYXVsaW5hc3p1 YmFyY3p5a0BnbWFpbC5jb20+Ci0tLQpDaGFuZ2VzIHNpbmNlIHYyOgotIGRyb3BwZWQgdGhlIGNo YW5nZXMgaW4gbGlieGMvaW5jbHVkZS94ZW5jdHJsX2NvbXBhdAotIGNoYW5nZWQgdGhlIE1JTk9S IHZlcnNpb24gaW4gTWFrZWZpbGUKLSByZXBsYWNlZCAncmV0dXJuIC0xJyAtPiAnYWJvcnQoKSdp biBsaWJzL2dudHRhYi9nbnR0YWJfdW5pbXAuYwotIG1vdmVkIHRoZSBzdHJ1Y3QgJ3hlbmdudHRh Yl9jb3B5X2dyYW50X3NlZ21lbnQnIHRvIAogIGxpYnMvZ250dGFiL2luY2x1ZGUveGVuZ250dGFi LmggCi0gYWRkZWQgZXhwbGljaXQgYXNzaW5nbWVudCB0byBpb2N0bF9nbnRkZXZfZ3JhbnRfY29w eV9zZWdtZW50IAogIHRvIHRoZSBsaW51eCBwYXJ0CgogdG9vbHMvaW5jbHVkZS94ZW4tc3lzL0xp bnV4L2dudGRldi5oICB8IDIxICsrKysrKysrKysrKysrKysKIHRvb2xzL2xpYnMvZ250dGFiL01h a2VmaWxlICAgICAgICAgICAgfCAgMiArLQogdG9vbHMvbGlicy9nbnR0YWIvZ250dGFiX2NvcmUu YyAgICAgICB8ICA2ICsrKysrCiB0b29scy9saWJzL2dudHRhYi9nbnR0YWJfdW5pbXAuYyAgICAg IHwgIDYgKysrKysKIHRvb2xzL2xpYnMvZ250dGFiL2luY2x1ZGUveGVuZ250dGFiLmggfCAyOCAr KysrKysrKysrKysrKysrKysrKysrCiB0b29scy9saWJzL2dudHRhYi9saWJ4ZW5nbnR0YWIubWFw ICAgIHwgIDUgKysrKwogdG9vbHMvbGlicy9nbnR0YWIvbGludXguYyAgICAgICAgICAgICB8IDQ1 ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCiB0b29scy9saWJzL2dudHRhYi9t aW5pb3MuYyAgICAgICAgICAgIHwgIDYgKysrKysKIHRvb2xzL2xpYnMvZ250dGFiL3ByaXZhdGUu aCAgICAgICAgICAgfCAgNCArKysrCiA5IGZpbGVzIGNoYW5nZWQsIDEyMiBpbnNlcnRpb25zKCsp LCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvdG9vbHMvaW5jbHVkZS94ZW4tc3lzL0xpbnV4 L2dudGRldi5oIGIvdG9vbHMvaW5jbHVkZS94ZW4tc3lzL0xpbnV4L2dudGRldi5oCmluZGV4IGNh ZjZmYjQuLjBjYTA3YzkgMTAwNjQ0Ci0tLSBhL3Rvb2xzL2luY2x1ZGUveGVuLXN5cy9MaW51eC9n bnRkZXYuaAorKysgYi90b29scy9pbmNsdWRlL3hlbi1zeXMvTGludXgvZ250ZGV2LmgKQEAgLTE0 Nyw0ICsxNDcsMjUgQEAgc3RydWN0IGlvY3RsX2dudGRldl91bm1hcF9ub3RpZnkgewogLyogU2Vu ZCBhbiBpbnRlcnJ1cHQgb24gdGhlIGluZGljYXRlZCBldmVudCBjaGFubmVsICovCiAjZGVmaW5l IFVOTUFQX05PVElGWV9TRU5EX0VWRU5UIDB4MgogCitzdHJ1Y3QgaW9jdGxfZ250ZGV2X2dyYW50 X2NvcHlfc2VnbWVudCB7CisgICAgdW5pb24geworICAgICAgICB2b2lkICp2aXJ0OworICAgICAg ICBzdHJ1Y3QgeworICAgICAgICAgICAgdWludDMyX3QgcmVmOworICAgICAgICAgICAgdWludDE2 X3Qgb2Zmc2V0OworICAgICAgICAgICAgdWludDE2X3QgZG9taWQ7CisgICAgICAgIH0gZm9yZWln bjsKKyAgICB9IHNvdXJjZSwgZGVzdDsKKyAgICB1aW50MTZfdCBsZW47CisgICAgdWludDE2X3Qg ZmxhZ3M7CisgICAgaW50MTZfdCBzdGF0dXM7Cit9OworCisjZGVmaW5lIElPQ1RMX0dOVERFVl9H UkFOVF9DT1BZIFwKK19JT0MoX0lPQ19OT05FLCAnRycsIDgsIHNpemVvZihzdHJ1Y3QgaW9jdGxf Z250ZGV2X2dyYW50X2NvcHkpKQorc3RydWN0IGlvY3RsX2dudGRldl9ncmFudF9jb3B5IHsKKyAg ICB1bnNpZ25lZCBpbnQgY291bnQ7CisgICAgc3RydWN0IGlvY3RsX2dudGRldl9ncmFudF9jb3B5 X3NlZ21lbnQgKnNlZ21lbnRzOworfTsKKwogI2VuZGlmIC8qIF9fTElOVVhfUFVCTElDX0dOVERF Vl9IX18gKi8KZGlmZiAtLWdpdCBhL3Rvb2xzL2xpYnMvZ250dGFiL01ha2VmaWxlIGIvdG9vbHMv bGlicy9nbnR0YWIvTWFrZWZpbGUKaW5kZXggYWY2NDU0Mi4uOTVjMmNkOCAxMDA2NDQKLS0tIGEv dG9vbHMvbGlicy9nbnR0YWIvTWFrZWZpbGUKKysrIGIvdG9vbHMvbGlicy9nbnR0YWIvTWFrZWZp bGUKQEAgLTIsNyArMiw3IEBAIFhFTl9ST09UID0gJChDVVJESVIpLy4uLy4uLy4uCiBpbmNsdWRl ICQoWEVOX1JPT1QpL3Rvb2xzL1J1bGVzLm1rCiAKIE1BSk9SICAgID0gMQotTUlOT1IgICAgPSAw CitNSU5PUiAgICA9IDEKIFNITElCX0xERkxBR1MgKz0gLVdsLC0tdmVyc2lvbi1zY3JpcHQ9bGli eGVuZ250dGFiLm1hcAogCiBDRkxBR1MgICArPSAtV2Vycm9yIC1XbWlzc2luZy1wcm90b3R5cGVz CmRpZmYgLS1naXQgYS90b29scy9saWJzL2dudHRhYi9nbnR0YWJfY29yZS5jIGIvdG9vbHMvbGli cy9nbnR0YWIvZ250dGFiX2NvcmUuYwppbmRleCA1ZDA0NzRkLi45NjhjODMzIDEwMDY0NAotLS0g YS90b29scy9saWJzL2dudHRhYi9nbnR0YWJfY29yZS5jCisrKyBiL3Rvb2xzL2xpYnMvZ250dGFi L2dudHRhYl9jb3JlLmMKQEAgLTExMyw2ICsxMTMsMTIgQEAgaW50IHhlbmdudHRhYl91bm1hcCh4 ZW5nbnR0YWJfaGFuZGxlICp4Z3QsIHZvaWQgKnN0YXJ0X2FkZHJlc3MsIHVpbnQzMl90IGNvdW50 KQogICAgIHJldHVybiBvc2RlcF9nbnR0YWJfdW5tYXAoeGd0LCBzdGFydF9hZGRyZXNzLCBjb3Vu dCk7CiB9CiAKK2ludCB4ZW5nbnR0YWJfZ3JhbnRfY29weSh4ZW5nbnR0YWJfaGFuZGxlICp4Z3Qs CisgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgY291bnQsCisgICAgICAgICAgICAg ICAgICAgICAgICAgeGVuZ250dGFiX2dyYW50X2NvcHlfc2VnbWVudF90ICpzZWdzKQoreworICAg IHJldHVybiBvc2RlcF9nbnR0YWJfZ3JhbnRfY29weSh4Z3QsIGNvdW50LCBzZWdzKTsKK30KIC8q CiAgKiBMb2NhbCB2YXJpYWJsZXM6CiAgKiBtb2RlOiBDCmRpZmYgLS1naXQgYS90b29scy9saWJz L2dudHRhYi9nbnR0YWJfdW5pbXAuYyBiL3Rvb2xzL2xpYnMvZ250dGFiL2dudHRhYl91bmltcC5j CmluZGV4IGIzYTRhMjAuLjgyOWVjZWQgMTAwNjQ0Ci0tLSBhL3Rvb2xzL2xpYnMvZ250dGFiL2du dHRhYl91bmltcC5jCisrKyBiL3Rvb2xzL2xpYnMvZ250dGFiL2dudHRhYl91bmltcC5jCkBAIC03 OCw2ICs3OCwxMiBAQCBpbnQgeGVuZ250dGFiX3VubWFwKHhlbmdudHRhYl9oYW5kbGUgKnhndCwg dm9pZCAqc3RhcnRfYWRkcmVzcywgdWludDMyX3QgY291bnQpCiAgICAgYWJvcnQoKTsKIH0KIAor aW50IHhlbmdudHRhYl9jb3B5X2dyYW50KHhlbmdudHRhYl9oYW5kbGUgKnhndCwKKyAgICAgICAg ICAgICAgICAgICAgICAgICB1aW50MzJfdCBjb3VudCwKKyAgICAgICAgICAgICAgICAgICAgICAg ICB4ZW5nbnR0YWJfY29weV9ncmFudF9zZWdtZW50X3QgKnNlZ3MpCit7CisgICAgYWJvcnQoKTsK K30KIC8qCiAgKiBMb2NhbCB2YXJpYWJsZXM6CiAgKiBtb2RlOiBDCmRpZmYgLS1naXQgYS90b29s cy9saWJzL2dudHRhYi9pbmNsdWRlL3hlbmdudHRhYi5oIGIvdG9vbHMvbGlicy9nbnR0YWIvaW5j bHVkZS94ZW5nbnR0YWIuaAppbmRleCAwNDMxZGNmLi45NDlmZDllIDEwMDY0NAotLS0gYS90b29s cy9saWJzL2dudHRhYi9pbmNsdWRlL3hlbmdudHRhYi5oCisrKyBiL3Rvb2xzL2xpYnMvZ250dGFi L2luY2x1ZGUveGVuZ250dGFiLmgKQEAgLTI1OCw2ICsyNTgsMzQgQEAgaW50IHhlbmdudHRhYl91 bm1hcCh4ZW5nbnR0YWJfaGFuZGxlICp4Z3QsIHZvaWQgKnN0YXJ0X2FkZHJlc3MsIHVpbnQzMl90 IGNvdW50KTsKIGludCB4ZW5nbnR0YWJfc2V0X21heF9ncmFudHMoeGVuZ250dGFiX2hhbmRsZSAq eGd0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBucl9ncmFudHMpOwog CitzdHJ1Y3QgeGVuZ250dGFiX2dyYW50X2NvcHlfc2VnbWVudCB7CisgICAgdW5pb24geGVuZ250 dGFiX2NvcHlfcHRyIHsKKyAgICAgICAgdm9pZCAqdmlydDsKKyAgICAgICAgc3RydWN0IHsKKyAg ICAgICAgICAgIHVpbnQzMl90IHJlZjsKKyAgICAgICAgICAgIHVpbnQxNl90IG9mZnNldDsKKyAg ICAgICAgICAgIHVpbnQxNl90IGRvbWlkOworICAgICAgICB9IGZvcmVpZ247CisgICAgfSBzb3Vy Y2UsIGRlc3Q7CisgICAgdWludDE2X3QgbGVuOworICAgIHVpbnQxNl90IGZsYWdzOworICAgIGlu dDE2X3Qgc3RhdHVzOworfTsKKwordHlwZWRlZiBzdHJ1Y3QgeGVuZ250dGFiX2dyYW50X2NvcHlf c2VnbWVudCB4ZW5nbnR0YWJfZ3JhbnRfY29weV9zZWdtZW50X3Q7CisKKy8qKgorICogQ29weSBt ZW1vcnkgZnJvbSBvciB0byBncmFudCByZWZlcmVuY2VzLiBUaGUgaW5mb3JtYXRpb24gb2YgZWFj aCBvcGVyYXRpb25zCisgKiBhcmUgY29udGFpbmVkIGluICd4ZW5nbnR0YWJfZ3JhbnRfY29weV9z ZWdtZW50X3QnLiBUaGUgQGZsYWcgdmFsdWUgaW5kaWNhdGUKKyAqIHRoZSBkaXJlY3Rpb24gb2Yg YW4gb3BlcmF0aW9uIChHTlRDT1BZX3NvdXJjZV9ncmVmXEdOVENPUFlfZGVzdF9ncmVmKS4KKyAq CisgKiBUaGUgc3VtIG9mIGZpZWxkcyBAb2Zmc2V0W2ldIGFuZCBAbGVuW2ldIG9mICd4ZW5nbnR0 YWJfZ3JhbnRfY29weV9zZWdtZW50X3QnCisgKiBzaG91bGQgbm90IGV4Y2VlZCBYRU5fUEFHRV9T SVpFCisgKi8KK2ludCB4ZW5nbnR0YWJfZ3JhbnRfY29weSh4ZW5nbnR0YWJfaGFuZGxlICp4Z3Qs CisgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgY291bnQsCisgICAgICAgICAgICAg ICAgICAgICAgICAgeGVuZ250dGFiX2dyYW50X2NvcHlfc2VnbWVudF90ICpzZWdzKTsKKwogLyoK ICAqIEdyYW50IFNoYXJpbmcgSW50ZXJmYWNlIChhbGxvY2F0aW5nIGFuZCBncmFudGluZyBwYWdl cyB0byBvdGhlcnMpCiAgKi8KZGlmZiAtLWdpdCBhL3Rvb2xzL2xpYnMvZ250dGFiL2xpYnhlbmdu dHRhYi5tYXAgYi90b29scy9saWJzL2dudHRhYi9saWJ4ZW5nbnR0YWIubWFwCmluZGV4IGRjNzM3 YWMuLmY3OGRhMjIgMTAwNjQ0Ci0tLSBhL3Rvb2xzL2xpYnMvZ250dGFiL2xpYnhlbmdudHRhYi5t YXAKKysrIGIvdG9vbHMvbGlicy9nbnR0YWIvbGlieGVuZ250dGFiLm1hcApAQCAtMjEsMyArMjEs OCBAQCBWRVJTXzEuMCB7CiAJCXhlbmdudHNocl91bnNoYXJlOwogCWxvY2FsOiAqOyAvKiBEbyBu b3QgZXhwb3NlIGFueXRoaW5nIGJ5IGRlZmF1bHQgKi8KIH07CisKK1ZFUlNfMS4xIHsKKyAgICBn bG9iYWw6CisgICAgICAgIHhlbmdudHRhYl9ncmFudF9jb3B5OworfSBWRVJTXzEuMDsKZGlmZiAt LWdpdCBhL3Rvb2xzL2xpYnMvZ250dGFiL2xpbnV4LmMgYi90b29scy9saWJzL2dudHRhYi9saW51 eC5jCmluZGV4IDdiMGZiYTQuLjYyYWQ3YmQgMTAwNjQ0Ci0tLSBhL3Rvb2xzL2xpYnMvZ250dGFi L2xpbnV4LmMKKysrIGIvdG9vbHMvbGlicy9nbnR0YWIvbGludXguYwpAQCAtMjM1LDYgKzIzNSw1 MSBAQCBpbnQgb3NkZXBfZ250dGFiX3VubWFwKHhlbmdudHRhYl9oYW5kbGUgKnhndCwKICAgICBy ZXR1cm4gMDsKIH0KIAoraW50IG9zZGVwX2dudHRhYl9ncmFudF9jb3B5KHhlbmdudHRhYl9oYW5k bGUgKnhndCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBjb3VudCwKKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICB4ZW5nbnR0YWJfZ3JhbnRfY29weV9zZWdtZW50X3Qg KnNlZ3MpCit7CisgICAgaW50IGksIHJjOworICAgIGludCBmZCA9IHhndC0+ZmQ7CisgICAgc3Ry dWN0IGlvY3RsX2dudGRldl9ncmFudF9jb3B5IGNvcHk7CisKKyAgICBjb3B5LnNlZ21lbnRzID0g Y2FsbG9jKGNvdW50LCBzaXplb2Yoc3RydWN0IGlvY3RsX2dudGRldl9ncmFudF9jb3B5X3NlZ21l bnQpKTsKKyAgICBjb3B5LmNvdW50ID0gY291bnQ7CisgICAgZm9yIChpID0gMDsgaSA8IGNvdW50 OyBpKyspCisgICAgeworICAgICAgICBjb3B5LnNlZ21lbnRzW2ldLmZsYWdzID0gc2Vnc1tpXS5m bGFnczsKKyAgICAgICAgY29weS5zZWdtZW50c1tpXS5sZW4gPSBzZWdzW2ldLmxlbjsKKyAgICAg ICAgaWYgKHNlZ3NbaV0uZmxhZ3MgPT0gR05UQ09QWV9kZXN0X2dyZWYpIAorICAgICAgICB7Cisg ICAgICAgICAgICBjb3B5LnNlZ21lbnRzW2ldLmRlc3QuZm9yZWlnbi5yZWYgPSBzZWdzW2ldLmRl c3QuZm9yZWlnbi5yZWY7CisgICAgICAgICAgICBjb3B5LnNlZ21lbnRzW2ldLmRlc3QuZm9yZWln bi5kb21pZCA9IHNlZ3NbaV0uZGVzdC5mb3JlaWduLmRvbWlkOworICAgICAgICAgICAgY29weS5z ZWdtZW50c1tpXS5kZXN0LmZvcmVpZ24ub2Zmc2V0ID0gc2Vnc1tpXS5kZXN0LmZvcmVpZ24ub2Zm c2V0OworICAgICAgICAgICAgY29weS5zZWdtZW50c1tpXS5zb3VyY2UudmlydCA9IHNlZ3NbaV0u c291cmNlLnZpcnQ7CisgICAgICAgIH0gCisgICAgICAgIGVsc2UgCisgICAgICAgIHsKKyAgICAg ICAgICAgIGNvcHkuc2VnbWVudHNbaV0uc291cmNlLmZvcmVpZ24ucmVmID0gc2Vnc1tpXS5zb3Vy Y2UuZm9yZWlnbi5yZWY7CisgICAgICAgICAgICBjb3B5LnNlZ21lbnRzW2ldLnNvdXJjZS5mb3Jl aWduLmRvbWlkID0gc2Vnc1tpXS5zb3VyY2UuZm9yZWlnbi5kb21pZDsKKyAgICAgICAgICAgIGNv cHkuc2VnbWVudHNbaV0uc291cmNlLmZvcmVpZ24ub2Zmc2V0ID0gc2Vnc1tpXS5zb3VyY2UuZm9y ZWlnbi5vZmZzZXQ7CisgICAgICAgICAgICBjb3B5LnNlZ21lbnRzW2ldLmRlc3QudmlydCA9IHNl Z3NbaV0uZGVzdC52aXJ0OworICAgICAgICB9CisgICAgfQorCisgICAgcmMgPSBpb2N0bChmZCwg SU9DVExfR05UREVWX0dSQU5UX0NPUFksICZjb3B5KTsKKyAgICBpZiAocmMpIAorICAgIHsKKyAg ICAgICAgR1RFUlJPUih4Z3QtPmxvZ2dlciwgImlvY3RsIEdSQU5UIENPUFkgZmFpbGVkICVkICIs IGVycm5vKTsKKyAgICB9CisgICAgZWxzZSAKKyAgICB7CisgICAgICAgIGZvciAoaSA9IDA7IGkg PCBjb3VudDsgaSsrKQorICAgICAgICAgICAgc2Vnc1tpXS5zdGF0dXMgPSBjb3B5LnNlZ21lbnRz W2ldLnN0YXR1czsKKyAgICB9CisKKyAgICBmcmVlKGNvcHkuc2VnbWVudHMpOworICAgIHJldHVy biByYzsKK30KKwogaW50IG9zZGVwX2dudHNocl9vcGVuKHhlbmdudHNocl9oYW5kbGUgKnhncykK IHsKICAgICBpbnQgZmQgPSBvcGVuKERFVlhFTiAiZ250YWxsb2MiLCBPX1JEV1IpOwpkaWZmIC0t Z2l0IGEvdG9vbHMvbGlicy9nbnR0YWIvbWluaW9zLmMgYi90b29scy9saWJzL2dudHRhYi9taW5p b3MuYwppbmRleCA3ZTA0MTc0Li4wOTUxYmM5IDEwMDY0NAotLS0gYS90b29scy9saWJzL2dudHRh Yi9taW5pb3MuYworKysgYi90b29scy9saWJzL2dudHRhYi9taW5pb3MuYwpAQCAtMTA2LDYgKzEw NiwxMiBAQCBpbnQgb3NkZXBfZ250dGFiX3NldF9tYXhfZ3JhbnRzKHhlbmdudHRhYl9oYW5kbGUg KnhndCwgdWludDMyX3QgY291bnQpCiAgICAgcmV0dXJuIHJldDsKIH0KIAoraW50IG9zZGVwX2du dHRhYl9ncmFudF9jb3B5KHhlbmdudHRhYl9oYW5kbGUgKnhndCwKKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICB1aW50MzJfdCBjb3VudCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICB4 ZW5nbnR0YWJfZ3JhbnRfY29weV9zZWdtZW50X3QgKnNlZ3MpCit7CisgICAgcmV0dXJuIC0xOwor fQogLyoKICAqIExvY2FsIHZhcmlhYmxlczoKICAqIG1vZGU6IEMKZGlmZiAtLWdpdCBhL3Rvb2xz L2xpYnMvZ250dGFiL3ByaXZhdGUuaCBiL3Rvb2xzL2xpYnMvZ250dGFiL3ByaXZhdGUuaAppbmRl eCBkMjg2Yzg2Li5kNmM1NTk0IDEwMDY0NAotLS0gYS90b29scy9saWJzL2dudHRhYi9wcml2YXRl LmgKKysrIGIvdG9vbHMvbGlicy9nbnR0YWIvcHJpdmF0ZS5oCkBAIC0yMyw2ICsyMywxMCBAQCB2 b2lkICpvc2RlcF9nbnR0YWJfZ3JhbnRfbWFwKHhlbmdudHRhYl9oYW5kbGUgKnhndCwKIGludCBv c2RlcF9nbnR0YWJfdW5tYXAoeGVuZ250dGFiX2hhbmRsZSAqeGd0LAogICAgICAgICAgICAgICAg ICAgICAgICB2b2lkICpzdGFydF9hZGRyZXNzLAogICAgICAgICAgICAgICAgICAgICAgICB1aW50 MzJfdCBjb3VudCk7CitpbnQgb3NkZXBfZ250dGFiX2dyYW50X2NvcHkoeGVuZ250dGFiX2hhbmRs ZSAqeGd0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IGNvdW50LAorICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHhlbmdudHRhYl9ncmFudF9jb3B5X3NlZ21lbnRfdCAq c2Vncyk7CisKIGludCBvc2RlcF9nbnRzaHJfb3Blbih4ZW5nbnRzaHJfaGFuZGxlICp4Z3MpOwog aW50IG9zZGVwX2dudHNocl9jbG9zZSh4ZW5nbnRzaHJfaGFuZGxlICp4Z3MpOwogCi0tIAoxLjku MQoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhlbi1k ZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbi5vcmcKaHR0cDovL2xpc3RzLnhl bi5vcmcveGVuLWRldmVsCg==