From mboxrd@z Thu Jan 1 00:00:00 1970 From: Oleksandr Andrushchenko Subject: [PATCH v1 1/2] xen/kbdif: update protocol documentation Date: Thu, 19 Jan 2017 11:24:50 +0200 Message-ID: <1484817891-4883-2-git-send-email-andr2000@gmail.com> References: <1484817891-4883-1-git-send-email-andr2000@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta6.messagelabs.com ([193.109.254.103]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cU8xr-00080p-TB for xen-devel@lists.xenproject.org; Thu, 19 Jan 2017 09:25:04 +0000 Received: by mail-wm0-f65.google.com with SMTP id c85so10536791wmi.1 for ; Thu, 19 Jan 2017 01:25:02 -0800 (PST) In-Reply-To: <1484817891-4883-1-git-send-email-andr2000@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 Cc: sstabellini@kernel.org, konrad.wilk@oracle.com, vlad.babchuk@gmail.com, andrii.anisov@gmail.com, olekstysh@gmail.com, andr2000@gmail.com, al1img@gmail.com, joculator@gmail.com List-Id: xen-devel@lists.xenproject.org RnJvbTogT2xla3NhbmRyIEFuZHJ1c2hjaGVua28gPE9sZWtzYW5kcl9BbmRydXNoY2hlbmtvQGVw YW0uY29tPgoKU2lnbmVkLW9mZi1ieTogT2xla3NhbmRyIEFuZHJ1c2hjaGVua28gPE9sZWtzYW5k cl9BbmRydXNoY2hlbmtvQGVwYW0uY29tPgotLS0KIHhlbi9pbmNsdWRlL3B1YmxpYy9pby9rYmRp Zi5oIHwgMjQ4ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLQogMSBm aWxlIGNoYW5nZWQsIDIyMSBpbnNlcnRpb25zKCspLCAyNyBkZWxldGlvbnMoLSkKCmRpZmYgLS1n aXQgYS94ZW4vaW5jbHVkZS9wdWJsaWMvaW8va2JkaWYuaCBiL3hlbi9pbmNsdWRlL3B1YmxpYy9p by9rYmRpZi5oCmluZGV4IDJkMmFlYmRkM2YyOC4uYzAwZmFhM2FmNWQyIDEwMDY0NAotLS0gYS94 ZW4vaW5jbHVkZS9wdWJsaWMvaW8va2JkaWYuaAorKysgYi94ZW4vaW5jbHVkZS9wdWJsaWMvaW8v a2JkaWYuaApAQCAtMjYsNDYgKzI2LDIyNiBAQAogI2lmbmRlZiBfX1hFTl9QVUJMSUNfSU9fS0JE SUZfSF9fCiAjZGVmaW5lIF9fWEVOX1BVQkxJQ19JT19LQkRJRl9IX18KIAotLyogSW4gZXZlbnRz IChiYWNrZW5kIC0+IGZyb250ZW5kKSAqLworLyoKKyAqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICog ICAgICAgICAgICAgICAgICAgICBGZWF0dXJlIGFuZCBQYXJhbWV0ZXIgTmVnb3RpYXRpb24KKyAq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKgorICoKKyAqIFRoZSB0d28gaGFsdmVzIG9mIGEgcGFyYS12aXJ0 dWFsIGRyaXZlciB1dGlsaXplIG5vZGVzIHdpdGhpbiB0aGUKKyAqIFhlblN0b3JlIHRvIGNvbW11 bmljYXRlIGNhcGFiaWxpdGllcyBhbmQgdG8gbmVnb3RpYXRlIG9wZXJhdGluZyBwYXJhbWV0ZXJz LgorICogVGhpcyBzZWN0aW9uIGVudW1lcmF0ZXMgdGhlc2Ugbm9kZXMgd2hpY2ggcmVzaWRlIGlu IHRoZSByZXNwZWN0aXZlIGZyb250IGFuZAorICogYmFja2VuZCBwb3J0aW9ucyBvZiBYZW5TdG9y ZSwgZm9sbG93aW5nIFhlbkJ1cyBjb252ZW50aW9uLgorICoKKyAqIEFsbCBkYXRhIGluIFhlblN0 b3JlIGlzIHN0b3JlZCBhcyBzdHJpbmdzLiAgTm9kZXMgc3BlY2lmeWluZyBudW1lcmljCisgKiB2 YWx1ZXMgYXJlIGVuY29kZWQgaW4gZGVjaW1hbC4gSW50ZWdlciB2YWx1ZSByYW5nZXMgbGlzdGVk IGJlbG93IGFyZQorICogZXhwcmVzc2VkIGFzIGZpeGVkIHNpemVkIGludGVnZXIgdHlwZXMgY2Fw YWJsZSBvZiBzdG9yaW5nIHRoZSBjb252ZXJzaW9uCisgKiBvZiBhIHByb3Blcmx5IGZvcm1hdGVk IG5vZGUgc3RyaW5nLCB3aXRob3V0IGxvc3Mgb2YgaW5mb3JtYXRpb24uCisgKgorICoqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqCisgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICBCYWNrZW5kIFhlbkJ1 cyBOb2RlcworICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKgorICotLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tIEZlYXR1cmVzIHN1cHBvcnRlZCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t CisgKgorICogQ2FwYWJsZSBiYWNrZW5kIGFkdmVydGlzZXMgc3VwcG9ydGVkIGZlYXR1cmVzIGJ5 IHB1Ymxpc2hpbmcKKyAqIGNvcnJlc3BvbmRpbmcgZW50cmllcyBpbiBYZW5TdG9yZSBhbmQgcHV0 cyAxIGFzIHRoZSB2YWx1ZSBvZiB0aGUgZW50cnkuCisgKiBJZiBhIGZlYXR1cmUgaXMgbm90IHN1 cHBvcnRlZCB0aGVuIDAgbXVzdCBiZSBzZXQgb3IgZmVhdHVyZSBlbnRyeSBvbWl0dGVkLgorICoK KyAqIGZlYXR1cmUtYWJzLXBvaW50ZXIKKyAqICAgICAgVmFsdWVzOiAgICAgICAgIDx1aW50Pgor ICoKKyAqICAgICAgQmFja2VuZHMsIHdoaWNoIHN1cHBvcnQgcmVwb3J0aW5nIG9mIGFic29sdXRl IGNvb3JkaW5hdGVzIGZvciBwb2ludGVyCisgKiAgICAgIGRldmljZSBzaG91bGQgc2V0IHRoaXMg dG8gMS4KKyAqCisgKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gUG9pbnRlciBEZXZpY2UgUGFy YW1ldGVycyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAqCisgKiB3aWR0aAorICogICAgICBW YWx1ZXM6ICAgICAgICAgPHVpbnQ+CisgKgorICogICAgICBNYXhpbXVtIFggY29vcmRpbmF0ZSAo d2lkdGgpIHRvIGJlIHVzZWQgYnkgdGhlIGZyb250ZW5kCisgKiAgICAgIHdoaWxlIHJlcG9ydGlu ZyBpbnB1dCBldmVudHMsIHBpeGVscywgWzA7IFVJTlQzMl9NQVhdLgorICoKKyAqIGhlaWdodAor ICogICAgICBWYWx1ZXM6ICAgICAgICAgPHVpbnQ+CisgKgorICogICAgICBNYXhpbXVtIFkgY29v cmRpbmF0ZSAoaGVpZ2h0KSB0byBiZSB1c2VkIGJ5IHRoZSBmcm9udGVuZAorICogICAgICB3aGls ZSByZXBvcnRpbmcgaW5wdXQgZXZlbnRzLCBwaXhlbHMsIFswOyBVSU5UMzJfTUFYXS4KKyAqCisg KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioKKyAqICAgICAgICAgICAgICAgICAgICAgICAgICAgIEZyb250 ZW5kIFhlbkJ1cyBOb2RlcworICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKgorICotLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0gRmVhdHVyZSByZXF1ZXN0IC0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tCisgKgorICogQ2FwYWJsZSBmcm9udGVuZCByZXF1ZXN0cyBmZWF0dXJlcyBmcm9t IGJhY2tlbmQgdmlhIHNldHRpbmcgY29ycmVzcG9uZGluZworICogZW50cmllcyB0byAxIGluIFhl blN0b3JlLiBSZXF1ZXN0cyBmb3IgZmVhdHVyZXMgbm90IGFkdmVydGlzZWQgYXMgc3VwcG9ydGVk CisgKiBieSB0aGUgYmFja2VuZCBoYXZlIG5vIGVmZmVjdC4KKyAqCisgKiByZXF1ZXN0LWFicy1w b2ludGVyCisgKiAgICAgIFZhbHVlczogICAgICAgICA8dWludD4KKyAqCisgKiAgICAgIFJlcXVl c3QgYmFja2VuZCB0byByZXBvcnQgYWJzb2x1dGUgcG9pbnRlciBjb29yZGluYXRlcworICogICAg ICAoWEVOS0JEX1RZUEVfUE9TKSBpbnN0ZWFkIG9mIHJlbGF0aXZlIG9uZXMgKFhFTktCRF9UWVBF X01PVElPTikuCisgKgorICotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBSZXF1ZXN0IFRyYW5zcG9y dCBQYXJhbWV0ZXJzIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgKgorICogZXZlbnQtY2hhbm5l bAorICogICAgICBWYWx1ZXM6ICAgICAgICAgPHVpbnQ+CisgKgorICogICAgICBUaGUgaWRlbnRp ZmllciBvZiB0aGUgWGVuIGV2ZW50IGNoYW5uZWwgdXNlZCB0byBzaWduYWwgYWN0aXZpdHkKKyAq ICAgICAgaW4gdGhlIHJpbmcgYnVmZmVyLgorICoKKyAqIHBhZ2UtZ3JlZgorICogICAgICBWYWx1 ZXM6ICAgICAgICAgPHVpbnQ+CisgKgorICogICAgICBUaGUgWGVuIGdyYW50IHJlZmVyZW5jZSBn cmFudGluZyBwZXJtaXNzaW9uIGZvciB0aGUgYmFja2VuZCB0byBtYXAKKyAqICAgICAgYSBzb2xl IHBhZ2UgaW4gYSBzaW5nbGUgcGFnZSBzaXplZCBldmVudCByaW5nIGJ1ZmZlci4KKyAqCisgKiBw YWdlLXJlZgorICogICAgICBWYWx1ZXM6ICAgICAgICAgPHVpbnQ+CisgKgorICogICAgICBPQlNP TEVURSwgbm90IHJlY29tbWVuZGVkIGZvciB1c2UuCisgKiAgICAgIFBGTiBvZiB0aGUgc2hhcmVk IHBhZ2UuCisgKi8KIAogLyoKLSAqIEZyb250ZW5kcyBzaG91bGQgaWdub3JlIHVua25vd24gaW4g ZXZlbnRzLgorICogRVZFTlQgQ09ERVMuCiAgKi8KIAotLyogUG9pbnRlciBtb3ZlbWVudCBldmVu dCAqLwotI2RlZmluZSBYRU5LQkRfVFlQRV9NT1RJT04gIDEKLS8qIEV2ZW50IHR5cGUgMiBjdXJy ZW50bHkgbm90IHVzZWQgKi8KLS8qIEtleSBldmVudCAoaW5jbHVkZXMgcG9pbnRlciBidXR0b25z KSAqLwotI2RlZmluZSBYRU5LQkRfVFlQRV9LRVkgICAgIDMKKyNkZWZpbmUgWEVOS0JEX1RZUEVf TU9USU9OICAgICAgICAgICAgIDEKKyNkZWZpbmUgWEVOS0JEX1RZUEVfUkVTRVJWRUQgICAgICAg ICAgIDIKKyNkZWZpbmUgWEVOS0JEX1RZUEVfS0VZICAgICAgICAgICAgICAgIDMKKyNkZWZpbmUg WEVOS0JEX1RZUEVfUE9TICAgICAgICAgICAgICAgIDQKKwogLyoKLSAqIFBvaW50ZXIgcG9zaXRp b24gZXZlbnQKLSAqIENhcGFibGUgYmFja2VuZCBzZXRzIGZlYXR1cmUtYWJzLXBvaW50ZXIgaW4g eGVuc3RvcmUuCi0gKiBGcm9udGVuZCByZXF1ZXN0cyBvdCBpbnN0ZWFkIG9mIFhFTktCRF9UWVBF X01PVElPTiBieSBzZXR0aW5nCi0gKiByZXF1ZXN0LWFicy11cGRhdGUgaW4geGVuc3RvcmUuCisg KiBDT05TVEFOVFMsIFhFTlNUT1JFIEZJRUxEIEFORCBQQVRIIE5BTUUgU1RSSU5HUywgSEVMUEVS Uy4KKyAqLworCisjZGVmaW5lIFhFTktCRF9EUklWRVJfTkFNRSAgICAgICAgICAgICAidmtiZCIK KworI2RlZmluZSBYRU5LQkRfRklFTERfRkVBVF9BQlNfUE9JTlRFUiAgImZlYXR1cmUtYWJzLXBv aW50ZXIiCisjZGVmaW5lIFhFTktCRF9GSUVMRF9SRVFfQUJTX1BPSU5URVIgICAicmVxdWVzdC1h YnMtcG9pbnRlciIKKyNkZWZpbmUgWEVOS0JEX0ZJRUxEX1JJTkdfR1JFRiAgICAgICAgICJwYWdl LWdyZWYiCisjZGVmaW5lIFhFTktCRF9GSUVMRF9FVlRfQ0hBTk5FTCAgICAgICAiZXZlbnQtY2hh bm5lbCIKKyNkZWZpbmUgWEVOS0JEX0ZJRUxEX1dJRFRIICAgICAgICAgICAgICJ3aWR0aCIKKyNk ZWZpbmUgWEVOS0JEX0ZJRUxEX0hFSUdIVCAgICAgICAgICAgICJoZWlnaHQiCisKKy8qIE9CU09M RVRFLCBub3QgcmVjb21tZW5kZWQgZm9yIHVzZSAqLworI2RlZmluZSBYRU5LQkRfRklFTERfUklO R19SRUYgICAgICAgICAgInBhZ2UtcmVmIgorCisvKgorICoqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisg KiBEZXNjcmlwdGlvbiBvZiB0aGUgcHJvdG9jb2wgYmV0d2VlbiBmcm9udGVuZCBhbmQgYmFja2Vu ZCBkcml2ZXIuCisgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqCisgKiBUaGUgdHdvIGhhbHZlcyBv ZiBhIFBhcmEtdmlydHVhbCBkcml2ZXIgY29tbXVuaWNhdGUgd2l0aAorICogZWFjaCBvdGhlciB1 c2luZyBhIHNoYXJlZCBwYWdlIGFuZCBhbiBldmVudCBjaGFubmVsLgorICogU2hhcmVkIHBhZ2Ug Y29udGFpbnMgYSByaW5nIHdpdGggZXZlbnQgc3RydWN0dXJlcy4KKyAqCisgKiBBbGwgcmVzZXJ2 ZWQgZmllbGRzIGluIHRoZSBzdHJ1Y3R1cmVzIGJlbG93IG11c3QgYmUgMC4KKyAqCisgKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioKKyAqICAgICAgICAgICAgICAgICAgICAgICAgICAgQmFja2VuZCB0byBm cm9udGVuZCBldmVudHMKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICoKKyAqIEZyb250ZW5kcyBz aG91bGQgaWdub3JlIHVua25vd24gaW4gZXZlbnRzLgorICogQWxsIGV2ZW50IHBhY2tldHMgaGF2 ZSB0aGUgc2FtZSBsZW5ndGggKDQwIG9jdGV0cykKKyAqIEFsbCBldmVudCBwYWNrZXRzIGhhdmUg Y29tbW9uIGhlYWRlcjoKKyAqCisgKiAgICAgICAgICAwICAgICAgICAgb2N0ZXQKKyAqICstLS0t LS0tLS0tLS0tLS0tLSsKKyAqIHwgICAgICAgdHlwZSAgICAgIHwKKyAqICstLS0tLS0tLS0tLS0t LS0tLSsKKyAqIHR5cGUgLSB1aW50OF90LCBldmVudCBjb2RlLCBYRU5LQkRfVFlQRV8/Pz8KKyAq CisgKgorICogUG9pbnRlciByZWxhdGl2ZSBtb3ZlbWVudCBldmVudAorICogICAgICAgICAwICAg ICAgICAgICAgICAgIDEgICAgICAgICAgICAgICAgIDIgICAgICAgICAgICAgICAzICAgICAgICBv Y3RldAorICogKy0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0t LS0tKy0tLS0tLS0tLS0tLS0tLS0rCisgKiB8ICBfVFlQRV9NT1RJT04gIHwgICAgICAgICAgICAg ICAgICAgICByZXNlcnZlZCAgICAgICAgICAgICAgICAgICAgIHwgNAorICogKy0tLS0tLS0tLS0t LS0tLS0rLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0r CisgKiB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlbF94ICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHwgOAorICogKy0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0t LSstLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0rCisgKiB8ICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHJlbF95ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgMTIK KyAqICstLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSst LS0tLS0tLS0tLS0tLS0tKworICogfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWxf eiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IDE2CisgKiArLS0tLS0tLS0tLS0tLS0t LSstLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSsKKyAq IHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc2VydmVkICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgfCAyMAorICogKy0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSst LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0rCisgKiB8L1wvXC9cL1wvXC9cL1wvXC9c L1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL3wKKyAqICst LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0t LS0tLS0tLS0tKworICogfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzZXJ2ZWQgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICB8IDQwCisgKiArLS0tLS0tLS0tLS0tLS0tLSstLS0t LS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSsKKyAqCisgKiBy ZWxfeCAtIGludDMyX3QsIHJlbGF0aXZlIFggbW90aW9uCisgKiByZWxfeSAtIGludDMyX3QsIHJl bGF0aXZlIFkgbW90aW9uCisgKiByZWxfeiAtIGludDMyX3QsIHJlbGF0aXZlIFogbW90aW9uICh3 aGVlbCkKICAqLwotI2RlZmluZSBYRU5LQkRfVFlQRV9QT1MgICAgIDQKIAogc3RydWN0IHhlbmti ZF9tb3Rpb24KIHsKLSAgICB1aW50OF90IHR5cGU7ICAgICAgICAvKiBYRU5LQkRfVFlQRV9NT1RJ T04gKi8KLSAgICBpbnQzMl90IHJlbF94OyAgICAgICAvKiByZWxhdGl2ZSBYIG1vdGlvbiAqLwot ICAgIGludDMyX3QgcmVsX3k7ICAgICAgIC8qIHJlbGF0aXZlIFkgbW90aW9uICovCi0gICAgaW50 MzJfdCByZWxfejsgICAgICAgLyogcmVsYXRpdmUgWiBtb3Rpb24gKHdoZWVsKSAqLworICAgIHVp bnQ4X3QgdHlwZTsKKyAgICBpbnQzMl90IHJlbF94OworICAgIGludDMyX3QgcmVsX3k7CisgICAg aW50MzJfdCByZWxfejsKIH07CiAKKy8qCisgKiBLZXkgZXZlbnQgKGluY2x1ZGVzIHBvaW50ZXIg YnV0dG9ucykKKyAqICAgICAgICAgMCAgICAgICAgICAgICAgICAxICAgICAgICAgICAgICAgICAy ICAgICAgICAgICAgICAgMyAgICAgICAgb2N0ZXQKKyAqICstLS0tLS0tLS0tLS0tLS0tKy0tLS0t LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tKworICogfCAgX1RZ UEVfS0VZICAgICB8ICAgICBwcmVzc2VkICAgIHwgICAgICAgICAgICByZXNlcnZlZCAgICAgICAg ICAgICB8IDQKKyAqICstLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0t LS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tKworICogfCAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIGtleWNvZGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IDgKKyAqICstLS0tLS0t LS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0t LS0tKworICogfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzZXJ2ZWQgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICB8IDEyCisgKiArLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0t LS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwvXC9cL1wvXC9c L1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wv fAorICogKy0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0t Ky0tLS0tLS0tLS0tLS0tLS0rCisgKiB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNl cnZlZCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgNDAKKyAqICstLS0tLS0tLS0tLS0t LS0tKy0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tKwor ICoKKyAqIHByZXNzZWQgLSB1aW50OF90LCAxIGlmIHByZXNzZWQ7IDAgb3RoZXJ3aXNlCisgKiBr ZXljb2RlIC0gdWludDMyX3QsIEtFWV8qIGZyb20gbGludXgvaW5wdXQuaAorICovCisKIHN0cnVj dCB4ZW5rYmRfa2V5CiB7Ci0gICAgdWludDhfdCB0eXBlOyAgICAgICAgIC8qIFhFTktCRF9UWVBF X0tFWSAqLwotICAgIHVpbnQ4X3QgcHJlc3NlZDsgICAgICAvKiAxIGlmIHByZXNzZWQ7IDAgb3Ro ZXJ3aXNlICovCi0gICAgdWludDMyX3Qga2V5Y29kZTsgICAgIC8qIEtFWV8qIGZyb20gbGludXgv aW5wdXQuaCAqLworICAgIHVpbnQ4X3QgdHlwZTsKKyAgICB1aW50OF90IHByZXNzZWQ7CisgICAg dWludDMyX3Qga2V5Y29kZTsKIH07CiAKKy8qCisgKiBQb2ludGVyIGFic29sdXRlIHBvc2l0aW9u IGV2ZW50CisgKiAgICAgICAgIDAgICAgICAgICAgICAgICAgMSAgICAgICAgICAgICAgICAgMiAg ICAgICAgICAgICAgIDMgICAgICAgIG9jdGV0CisgKiArLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0t LS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwgIF9UWVBF X1BPUyAgICAgfCAgICAgICAgICAgICAgICAgICAgIHJlc2VydmVkICAgICAgICAgICAgICAgICAg ICAgfCA0CisgKiArLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t LS0tLS0rLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgYWJzX3ggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCA4CisgKiArLS0tLS0tLS0t LS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0t LSsKKyAqIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWJzX3kgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgfCAxMgorICogKy0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0t LS0tLSstLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0rCisgKiB8ICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHJlbF96ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwg MTYKKyAqICstLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0t LSstLS0tLS0tLS0tLS0tLS0tKworICogfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVz ZXJ2ZWQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IDIwCisgKiArLS0tLS0tLS0tLS0t LS0tLSstLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSsK KyAqIHwvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9c L1wvXC9cL1wvXC9cL1wvfAorICogKy0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSst LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0rCisgKiB8ICAgICAgICAgICAgICAgICAg ICAgICAgICAgICByZXNlcnZlZCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgNDAKKyAq ICstLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSstLS0t LS0tLS0tLS0tLS0tKworICoKKyAqIGFic194IC0gaW50MzJfdCwgYWJzb2x1dGUgWCBwb3NpdGlv biAoaW4gRkIgcGl4ZWxzKQorICogYWJzX3kgLSBpbnQzMl90LCBhYnNvbHV0ZSBZIHBvc2l0aW9u IChpbiBGQiBwaXhlbHMpCisgKiByZWxfeiAtIGludDMyX3QsIHJlbGF0aXZlIFogbW90aW9uICh3 aGVlbCkKKyAqLworCiBzdHJ1Y3QgeGVua2JkX3Bvc2l0aW9uCiB7Ci0gICAgdWludDhfdCB0eXBl OyAgICAgICAgLyogWEVOS0JEX1RZUEVfUE9TICovCi0gICAgaW50MzJfdCBhYnNfeDsgICAgICAg LyogYWJzb2x1dGUgWCBwb3NpdGlvbiAoaW4gRkIgcGl4ZWxzKSAqLwotICAgIGludDMyX3QgYWJz X3k7ICAgICAgIC8qIGFic29sdXRlIFkgcG9zaXRpb24gKGluIEZCIHBpeGVscykgKi8KLSAgICBp bnQzMl90IHJlbF96OyAgICAgICAvKiByZWxhdGl2ZSBaIG1vdGlvbiAod2hlZWwpICovCisgICAg dWludDhfdCB0eXBlOworICAgIGludDMyX3QgYWJzX3g7CisgICAgaW50MzJfdCBhYnNfeTsKKyAg ICBpbnQzMl90IHJlbF96OwogfTsKIAogI2RlZmluZSBYRU5LQkRfSU5fRVZFTlRfU0laRSA0MApA QCAtNzksMTIgKzI1OSwyMiBAQCB1bmlvbiB4ZW5rYmRfaW5fZXZlbnQKICAgICBjaGFyIHBhZFtY RU5LQkRfSU5fRVZFTlRfU0laRV07CiB9OwogCi0vKiBPdXQgZXZlbnRzIChmcm9udGVuZCAtPiBi YWNrZW5kKSAqLwotCiAvKgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKiAgICAgICAgICAgICAg ICAgICAgICAgICAgICBGcm9udGVuZCB0byBiYWNrZW5kIGV2ZW50cworICoqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqCisgKgogICogT3V0IGV2ZW50cyBtYXkgYmUgc2VudCBvbmx5IHdoZW4gcmVxdWVzdGVk IGJ5IGJhY2tlbmQsIGFuZCByZWNlaXB0CiAgKiBvZiBhbiB1bmtub3duIG91dCBldmVudCBpcyBh biBlcnJvci4KICAqIE5vIG91dCBldmVudHMgY3VycmVudGx5IGRlZmluZWQuCisKKyAqIEFsbCBl dmVudCBwYWNrZXRzIGhhdmUgdGhlIHNhbWUgbGVuZ3RoICg0MCBvY3RldHMpCisgKiBBbGwgZXZl bnQgcGFja2V0cyBoYXZlIGNvbW1vbiBoZWFkZXI6CisgKiAgICAgICAgICAwICAgICAgICAgb2N0 ZXQKKyAqICstLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwgICAgICAgdHlwZSAgICAgIHwKKyAqICst LS0tLS0tLS0tLS0tLS0tLSsKKyAqIHR5cGUgLSB1aW50OF90LCBldmVudCBjb2RlCiAgKi8KIAog I2RlZmluZSBYRU5LQkRfT1VUX0VWRU5UX1NJWkUgNDAKQEAgLTk1LDcgKzI4NSwxMSBAQCB1bmlv biB4ZW5rYmRfb3V0X2V2ZW50CiAgICAgY2hhciBwYWRbWEVOS0JEX09VVF9FVkVOVF9TSVpFXTsK IH07CiAKLS8qIHNoYXJlZCBwYWdlICovCisvKgorICoqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKiAg ICAgICAgICAgICAgICAgICAgICAgICAgICBTaGFyZWQgcGFnZQorICoqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqCisgKi8KIAogI2RlZmluZSBYRU5LQkRfSU5fUklOR19TSVpFIDIwNDgKICNkZWZpbmUgWEVO S0JEX0lOX1JJTkdfTEVOIChYRU5LQkRfSU5fUklOR19TSVpFIC8gWEVOS0JEX0lOX0VWRU5UX1NJ WkUpCkBAIC0xMTksNyArMzEzLDcgQEAgc3RydWN0IHhlbmtiZF9wYWdlCiAgICAgdWludDMyX3Qg b3V0X2NvbnMsIG91dF9wcm9kOwogfTsKIAotI2VuZGlmCisjZW5kaWYgLyogX19YRU5fUFVCTElD X0lPX0tCRElGX0hfXyAqLwogCiAvKgogICogTG9jYWwgdmFyaWFibGVzOgotLSAKMi43LjQKCgpf X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwg bWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW4ub3JnCmh0dHBzOi8vbGlzdHMueGVuLm9y Zy94ZW4tZGV2ZWwK