From mboxrd@z Thu Jan 1 00:00:00 1970 From: Oleksandr Andrushchenko Subject: [PATCH 1/2] xen/kbdif: update protocol documentation Date: Fri, 6 Jan 2017 11:32:52 +0200 Message-ID: <1483695173-7600-2-git-send-email-andr2000@gmail.com> References: <1483695173-7600-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.bemta3.messagelabs.com ([195.245.230.39]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cPQtW-0007bK-UR for xen-devel@lists.xenproject.org; Fri, 06 Jan 2017 09:33:07 +0000 Received: by mail-wm0-f66.google.com with SMTP id u144so3585674wmu.0 for ; Fri, 06 Jan 2017 01:33:04 -0800 (PST) In-Reply-To: <1483695173-7600-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: lars.kurth@citrix.com, sstabellini@kernel.org, vlad.babchuk@gmail.com, dario.faggioli@citrix.com, julien.grall@arm.com, andrii.anisov@gmail.com, olekstysh@gmail.com, andr2000@gmail.com, al1img@gmail.com, JBeulich@suse.com, joculator@gmail.com List-Id: xen-devel@lists.xenproject.org RnJvbTogT2xla3NhbmRyIEFuZHJ1c2hjaGVua28gPE9sZWtzYW5kcl9BbmRydXNoY2hlbmtvQGVw YW0uY29tPgoKU2lnbmVkLW9mZi1ieTogT2xla3NhbmRyIEFuZHJ1c2hjaGVua28gPE9sZWtzYW5k cl9BbmRydXNoY2hlbmtvQGVwYW0uY29tPgotLS0KIHhlbi9pbmNsdWRlL3B1YmxpYy9pby9rYmRp Zi5oIHwgMjQ5ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLQogMSBm aWxlIGNoYW5nZWQsIDIyMiBpbnNlcnRpb25zKCspLCAyNyBkZWxldGlvbnMoLSkKCmRpZmYgLS1n aXQgYS94ZW4vaW5jbHVkZS9wdWJsaWMvaW8va2JkaWYuaCBiL3hlbi9pbmNsdWRlL3B1YmxpYy9p by9rYmRpZi5oCmluZGV4IDJkMmFlYmQuLjBlMTlhNDAgMTAwNjQ0Ci0tLSBhL3hlbi9pbmNsdWRl L3B1YmxpYy9pby9rYmRpZi5oCisrKyBiL3hlbi9pbmNsdWRlL3B1YmxpYy9pby9rYmRpZi5oCkBA IC0yNiw0NiArMjYsMjI3IEBACiAjaWZuZGVmIF9fWEVOX1BVQkxJQ19JT19LQkRJRl9IX18KICNk ZWZpbmUgX19YRU5fUFVCTElDX0lPX0tCRElGX0hfXwogCi0vKiBJbiBldmVudHMgKGJhY2tlbmQg LT4gZnJvbnRlbmQpICovCisvKgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKiAgICAgICAgICAg ICAgICAgICAgIEZlYXR1cmUgYW5kIFBhcmFtZXRlciBOZWdvdGlhdGlvbgorICoqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqCisgKgorICogVGhlIHR3byBoYWx2ZXMgb2YgYSBwYXJhLXZpcnR1YWwgZHJpdmVy IHV0aWxpemUgbm9kZXMgd2l0aGluIHRoZQorICogWGVuU3RvcmUgdG8gY29tbXVuaWNhdGUgY2Fw YWJpbGl0aWVzIGFuZCB0byBuZWdvdGlhdGUgb3BlcmF0aW5nIHBhcmFtZXRlcnMuCisgKiBUaGlz IHNlY3Rpb24gZW51bWVyYXRlcyB0aGVzZSBub2RlcyB3aGljaCByZXNpZGUgaW4gdGhlIHJlc3Bl Y3RpdmUgZnJvbnQgYW5kCisgKiBiYWNrZW5kIHBvcnRpb25zIG9mIHRoZSBYZW5TdG9yZSwgZm9s bG93aW5nIHRoZSBYZW5CdXMgY29udmVudGlvbi4KKyAqCisgKiBBbGwgZGF0YSBpbiB0aGUgWGVu U3RvcmUgaXMgc3RvcmVkIGFzIHN0cmluZ3MuICBOb2RlcyBzcGVjaWZ5aW5nIG51bWVyaWMKKyAq IHZhbHVlcyBhcmUgZW5jb2RlZCBpbiBkZWNpbWFsLiBJbnRlZ2VyIHZhbHVlIHJhbmdlcyBsaXN0 ZWQgYmVsb3cgYXJlCisgKiBleHByZXNzZWQgYXMgZml4ZWQgc2l6ZWQgaW50ZWdlciB0eXBlcyBj YXBhYmxlIG9mIHN0b3JpbmcgdGhlIGNvbnZlcnNpb24KKyAqIG9mIGEgcHJvcGVybHkgZm9ybWF0 ZWQgbm9kZSBzdHJpbmcsIHdpdGhvdXQgbG9zcyBvZiBpbmZvcm1hdGlvbi4KKyAqCisgKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioKKyAqICAgICAgICAgICAgICAgICAgICAgICAgICAgIEJhY2tlbmQgWGVu QnVzIE5vZGVzCisgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqCisgKi0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0gRmVhdHVyZXMgc3VwcG9ydGVkIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0KKyAqCisgKiBDYXBhYmxlIGJhY2tlbmQgYWR2ZXJ0aXNlcyBzdXBwb3J0ZWQgZmVhdHVyZXMg YnkgcHVibGlzaGluZworICogY29ycmVzcG9uZGluZyBlbnRyaWVzIGluIFhlblN0b3JlIGFuZCBw dXRzIDEgYXMgdGhlIHZhbHVlIG9mIHRoZSBlbnRyeS4KKyAqIElmIGZlYXR1cmUgaXMgbm90IHN1 cHBvcnRlZCB0aGVuIDAgbXVzdCBiZSBzZXQgb3IgZmVhdHVyZSBlbnRyeSBvbWl0dGVkLgorICoK KyAqIGZlYXR1cmUtYWJzLXBvaW50ZXIKKyAqICAgICAgVmFsdWVzOiAgICAgICAgIDx1aW50Pgor ICoKKyAqICAgICAgQmFja2VuZHMsIHdoaWNoIHN1cHBvcnQgcmVwb3J0aW5nIG9mIGFic29sdXRl IGNvb3JkaW5hdGVzIGZvciBwb2ludGVyCisgKiAgICAgIGRldmljZSBzaG91bGQgc2V0IHRoaXMg dG8gMS4KKyAqCisgKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gUG9pbnRlciBEZXZpY2UgUGFy YW1ldGVycyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAqCisgKiB3aWR0aAorICogICAgICBW YWx1ZXM6ICAgICAgICAgPHVpbnQ+CisgKgorICogICAgICBNYXhpbXVtIFggY29vcmRpbmF0ZSAo d2lkdGgpIHRvIGJlIHVzZWQgYnkgdGhlIGZyb250ZW5kCisgKiAgICAgIHdoaWxlIHJlcG9ydGlu ZyBpbnB1dCBldmVudHMsIHBpeGVscywgWzA7IFVJTlQzMl9NQVhdLgorICoKKyAqIGhlaWdodAor ICogICAgICBWYWx1ZXM6ICAgICAgICAgPHVpbnQ+CisgKgorICogICAgICBNYXhpbXVtIFkgY29v cmRpbmF0ZSAoaGVpZ2h0KSB0byBiZSB1c2VkIGJ5IHRoZSBmcm9udGVuZAorICogICAgICB3aGls ZSByZXBvcnRpbmcgaW5wdXQgZXZlbnRzLCBwaXhlbHMsIFswOyBVSU5UMzJfTUFYXS4KKyAqCisg KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioKKyAqICAgICAgICAgICAgICAgICAgICAgICAgICAgIEZyb250 ZW5kIFhlbkJ1cyBOb2RlcworICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKgorICotLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0gRmVhdHVyZSByZXF1ZXN0IC0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tCisgKgorICogQ2FwYWJsZSBmcm9udGVuZCByZXF1ZXN0cyBmZWF0dXJlcyBmcm9t IGJhY2tlbmQgdmlhIHNldHRpbmcgY29ycmVzcG9uZGluZworICogZW50cmllcyB0byAxIGluIFhl blN0b3JlLiBSZXF1ZXN0cyBmb3IgZmVhdHVyZXMgbm90IGFkdmVydGlzZWQgYXMgc3VwcG9ydGVk CisgKiBieSB0aGUgYmFja2VuZCBoYXZlIG5vIGVmZmVjdC4KKyAqCisgKiByZXF1ZXN0LWFicy1w b2ludGVyCisgKiAgICAgIFZhbHVlczogICAgICAgICA8dWludD4KKyAqCisgKiAgICAgIFJlcXVl c3QgZnJvbSBiYWNrZW5kIHRvIHJlcG9ydCBhYnNvbHV0ZSBwb2ludGVyIGNvb3JkaW5hdGVzCisg KiAgICAgIChYRU5LQkRfVFlQRV9QT1MpIGluc3RlYWQgb2YgcmVsYXRpdmUgb25lcyAoWEVOS0JE X1RZUEVfTU9USU9OKS4KKyAqCisgKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIFJlcXVlc3QgVHJh bnNwb3J0IFBhcmFtZXRlcnMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAqCisgKiBldmVudC1j aGFubmVsCisgKiAgICAgIFZhbHVlczogICAgICAgICA8dWludD4KKyAqCisgKiAgICAgIFRoZSBp ZGVudGlmaWVyIG9mIHRoZSBYZW4gZXZlbnQgY2hhbm5lbCB1c2VkIHRvIHNpZ25hbCBhY3Rpdml0 eQorICogICAgICBpbiB0aGUgcmluZyBidWZmZXIuCisgKgorICogcGFnZS1ncmVmCisgKiAgICAg IFZhbHVlczogICAgICAgICA8dWludD4KKyAqCisgKiAgICAgIFRoZSBYZW4gZ3JhbnQgcmVmZXJl bmNlIGdyYW50aW5nIHBlcm1pc3Npb24gZm9yIHRoZSBiYWNrZW5kIHRvIG1hcAorICogICAgICBh IHNvbGUgcGFnZSBpbiBhIHNpbmdsZSBwYWdlIHNpemVkIGV2ZW50IHJpbmcgYnVmZmVyLgorICoK KyAqIHBhZ2UtcmVmCisgKiAgICAgIFZhbHVlczogICAgICAgICA8dWludD4KKyAqCisgKiAgICAg IE9CU09MRVRFLCBub3QgcmVjb21tZW5kZWQgZm9yIHVzZS4KKyAqICAgICAgQSB1bmlxdWUgKHdp dGhpbiB0aGUgZ3Vlc3QgZG9tYWluIGdpdmVuKSB2YWx1ZSBpZGVudGlmeWluZyBldmVudAorICog ICAgICBjaGFubmVsIGFuZCBwYWdlIHJlZmVyZW5jZSBwYWlyLgorICovCiAKIC8qCi0gKiBGcm9u dGVuZHMgc2hvdWxkIGlnbm9yZSB1bmtub3duIGluIGV2ZW50cy4KKyAqIEVWRU5UIENPREVTLgog ICovCiAKLS8qIFBvaW50ZXIgbW92ZW1lbnQgZXZlbnQgKi8KLSNkZWZpbmUgWEVOS0JEX1RZUEVf TU9USU9OICAxCi0vKiBFdmVudCB0eXBlIDIgY3VycmVudGx5IG5vdCB1c2VkICovCi0vKiBLZXkg ZXZlbnQgKGluY2x1ZGVzIHBvaW50ZXIgYnV0dG9ucykgKi8KLSNkZWZpbmUgWEVOS0JEX1RZUEVf S0VZICAgICAzCisjZGVmaW5lIFhFTktCRF9UWVBFX01PVElPTiAgICAgICAgICAgICAxCisjZGVm aW5lIFhFTktCRF9UWVBFX1JFU0VSVkVEICAgICAgICAgICAyCisjZGVmaW5lIFhFTktCRF9UWVBF X0tFWSAgICAgICAgICAgICAgICAzCisjZGVmaW5lIFhFTktCRF9UWVBFX1BPUyAgICAgICAgICAg ICAgICA0CisKIC8qCi0gKiBQb2ludGVyIHBvc2l0aW9uIGV2ZW50Ci0gKiBDYXBhYmxlIGJhY2tl bmQgc2V0cyBmZWF0dXJlLWFicy1wb2ludGVyIGluIHhlbnN0b3JlLgotICogRnJvbnRlbmQgcmVx dWVzdHMgb3QgaW5zdGVhZCBvZiBYRU5LQkRfVFlQRV9NT1RJT04gYnkgc2V0dGluZwotICogcmVx dWVzdC1hYnMtdXBkYXRlIGluIHhlbnN0b3JlLgorICogQ09OU1RBTlRTLCBYRU5TVE9SRSBGSUVM RCBBTkQgUEFUSCBOQU1FIFNUUklOR1MsIEhFTFBFUlMuCisgKi8KKworI2RlZmluZSBYRU5LQkRf RFJJVkVSX05BTUUgICAgICAgICAgICAgInZrYmQiCisKKyNkZWZpbmUgWEVOS0JEX0ZJRUxEX0ZF QVRfQUJTX1BPSU5URVIgICJmZWF0dXJlLWFicy1wb2ludGVyIgorI2RlZmluZSBYRU5LQkRfRklF TERfUkVRX0FCU19QT0lOVEVSICAgInJlcXVlc3QtYWJzLXBvaW50ZXIiCisjZGVmaW5lIFhFTktC RF9GSUVMRF9SSU5HX0dSRUYgICAgICAgICAicGFnZS1ncmVmIgorI2RlZmluZSBYRU5LQkRfRklF TERfRVZUX0NIQU5ORUwgICAgICAgImV2ZW50LWNoYW5uZWwiCisjZGVmaW5lIFhFTktCRF9GSUVM RF9XSURUSCAgICAgICAgICAgICAid2lkdGgiCisjZGVmaW5lIFhFTktCRF9GSUVMRF9IRUlHSFQg ICAgICAgICAgICAiaGVpZ2h0IgorCisvKiBPQlNPTEVURSwgbm90IHJlY29tbWVuZGVkIGZvciB1 c2UgKi8KKyNkZWZpbmUgWEVOS0JEX0ZJRUxEX1JJTkdfUkVGICAgICAgICAgICJwYWdlLXJlZiIK KworLyoKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICogRGVzY3JpcHRpb24gb2YgdGhlIHByb3Rv Y29sIGJldHdlZW4gZnJvbnRlbmQgYW5kIGJhY2tlbmQgZHJpdmVyLgorICoqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqCisgKgorICogVGhlIHR3byBoYWx2ZXMgb2YgYSBQYXJhLXZpcnR1YWwgZHJpdmVyIGNv bW11bmljYXRlIHdpdGgKKyAqIGVhY2ggb3RoZXIgdXNpbmcgYSBzaGFyZWQgcGFnZSBhbmQgYW4g ZXZlbnQgY2hhbm5lbC4KKyAqIFNoYXJlZCBwYWdlIGNvbnRhaW5zIGEgcmluZyB3aXRoIGV2ZW50 IHBhY2tldHMuCisgKgorICogQWxsIHJlc2VydmVkIGZpZWxkcyBpbiB0aGUgc3RydWN0dXJlcyBi ZWxvdyBtdXN0IGJlIDAuCisgKgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKiAgICAgICAgICAg ICAgICAgICAgICAgICAgIEJhY2tlbmQgdG8gZnJvbnRlbmQgZXZlbnRzCisgKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioKKyAqCisgKiBGcm9udGVuZHMgc2hvdWxkIGlnbm9yZSB1bmtub3duIGluIGV2ZW50 cy4KKyAqIEFsbCBldmVudCBwYWNrZXRzIGhhdmUgdGhlIHNhbWUgbGVuZ3RoICg0MCBvY3RldHMp CisgKiBBbGwgZXZlbnQgcGFja2V0cyBoYXZlIGNvbW1vbiBoZWFkZXI6CisgKgorICogICAgICAg ICAgMCAgICAgICAgIG9jdGV0CisgKiArLS0tLS0tLS0tLS0tLS0tLS0rCisgKiB8ICAgICAgIHR5 cGUgICAgICB8CisgKiArLS0tLS0tLS0tLS0tLS0tLS0rCisgKiB0eXBlIC0gdWludDhfdCwgZXZl bnQgY29kZSwgWEVOS0JEX1RZUEVfPz8/CisgKgorICoKKyAqIFBvaW50ZXIgcmVsYXRpdmUgbW92 ZW1lbnQgZXZlbnQKKyAqICAgICAgICAgIDAgICAgICAgICAgICAgICAgIDEgICAgICAgICAgICAg ICAgICAyICAgICAgICAgICAgICAgIDMgICAgICAgIG9jdGV0CisgKiArLS0tLS0tLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0r CisgKiB8ICAgX1RZUEVfTU9USU9OICB8ICAgICAgICAgICAgICAgICAgICAgICByZXNlcnZlZCAg ICAgICAgICAgICAgICAgICAgICB8CisgKiArLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0t LS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rCisgKiB8ICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgcmVsX3ggICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICB8CisgKiArLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rCisgKiB8ICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgcmVsX3kgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgKiArLS0t LS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0t LS0tLS0tLS0tLS0rCisgKiB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVsX3og ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgKiArLS0tLS0tLS0tLS0tLS0tLS0r LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rCisg KiB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc2VydmVkICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICB8CisgKiArLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rCisgKiB8L1wvXC9cL1wvXC9c L1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wv XC98CisgKiArLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0t LS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rCisgKiB8ICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHJlc2VydmVkICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgKiArLS0tLS0t LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0t LS0tLS0tLS0rCisgKgorICogcmVsX3ggLSBpbnQzMl90LCByZWxhdGl2ZSBYIG1vdGlvbgorICog cmVsX3kgLSBpbnQzMl90LCByZWxhdGl2ZSBZIG1vdGlvbgorICogcmVsX3ogLSBpbnQzMl90LCBy ZWxhdGl2ZSBaIG1vdGlvbiAod2hlZWwpCiAgKi8KLSNkZWZpbmUgWEVOS0JEX1RZUEVfUE9TICAg ICA0CiAKIHN0cnVjdCB4ZW5rYmRfbW90aW9uCiB7Ci0gICAgdWludDhfdCB0eXBlOyAgICAgICAg LyogWEVOS0JEX1RZUEVfTU9USU9OICovCi0gICAgaW50MzJfdCByZWxfeDsgICAgICAgLyogcmVs YXRpdmUgWCBtb3Rpb24gKi8KLSAgICBpbnQzMl90IHJlbF95OyAgICAgICAvKiByZWxhdGl2ZSBZ IG1vdGlvbiAqLwotICAgIGludDMyX3QgcmVsX3o7ICAgICAgIC8qIHJlbGF0aXZlIFogbW90aW9u ICh3aGVlbCkgKi8KKyAgICB1aW50OF90IHR5cGU7CisgICAgaW50MzJfdCByZWxfeDsKKyAgICBp bnQzMl90IHJlbF95OworICAgIGludDMyX3QgcmVsX3o7CiB9OwogCisvKgorICogS2V5IGV2ZW50 IChpbmNsdWRlcyBwb2ludGVyIGJ1dHRvbnMpCisgKiAgICAgICAgICAwICAgICAgICAgICAgICAg ICAxICAgICAgICAgICAgICAgICAgMiAgICAgICAgICAgICAgICAzICAgICAgICBvY3RldAorICog Ky0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0t LS0tLS0tLS0tLS0tLS0tKworICogfCAgIF9UWVBFX0tFWSAgICAgfCAgICAgIHByZXNzZWQgICAg fCAgICAgICAgICAgICAgcmVzZXJ2ZWQgICAgICAgICAgICAgfAorICogKy0tLS0tLS0tLS0tLS0t LS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0t KworICogfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga2V5Y29kZSAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t LS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICogfCAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICByZXNlcnZlZCAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0t LS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICogfC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wv XC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvfAorICogKy0t LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t LS0tLS0tLS0tLS0tKworICogfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNlcnZl ZCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0t Ky0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKwor ICoKKyAqIHByZXNzZWQgLSB1aW50OF90LCAxIGlmIHByZXNzZWQ7IDAgb3RoZXJ3aXNlCisgKiBr ZXljb2RlIC0gdWludDMyX3QsIEtFWV8qIGZyb20gbGludXgvaW5wdXQuaAorICovCisKIHN0cnVj dCB4ZW5rYmRfa2V5CiB7Ci0gICAgdWludDhfdCB0eXBlOyAgICAgICAgIC8qIFhFTktCRF9UWVBF X0tFWSAqLwotICAgIHVpbnQ4X3QgcHJlc3NlZDsgICAgICAvKiAxIGlmIHByZXNzZWQ7IDAgb3Ro ZXJ3aXNlICovCi0gICAgdWludDMyX3Qga2V5Y29kZTsgICAgIC8qIEtFWV8qIGZyb20gbGludXgv aW5wdXQuaCAqLworICAgIHVpbnQ4X3QgdHlwZTsKKyAgICB1aW50OF90IHByZXNzZWQ7CisgICAg dWludDMyX3Qga2V5Y29kZTsKIH07CiAKKy8qCisgKiBQb2ludGVyIGFic29sdXRlIHBvc2l0aW9u IGV2ZW50CisgKiAgICAgICAgICAwICAgICAgICAgICAgICAgICAxICAgICAgICAgICAgICAgICAg MiAgICAgICAgICAgICAgICAzICAgICAgICBvY3RldAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0t LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICog fCAgIF9UWVBFX1BPUyAgICAgfCAgICAgICAgICAgICAgICAgICAgICByZXNlcnZlZCAgICAgICAg ICAgICAgICAgICAgICAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0t Ky0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICogfCAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGFic194ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg fAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0t LS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICogfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIGFic195ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICogKy0tLS0tLS0t LS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t LS0tLS0tKworICogfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlbF96ICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t LS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICogfCAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNlcnZlZCAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0t LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICogfC9cL1wvXC9cL1wvXC9cL1wv XC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvfAor ICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0t Ky0tLS0tLS0tLS0tLS0tLS0tKworICogfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBy ZXNlcnZlZCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICogKy0tLS0tLS0tLS0t LS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0t LS0tKworICoKKyAqIGFic194IC0gaW50MzJfdCwgYWJzb2x1dGUgWCBwb3NpdGlvbiAoaW4gRkIg cGl4ZWxzKQorICogYWJzX3kgLSBpbnQzMl90LCBhYnNvbHV0ZSBZIHBvc2l0aW9uIChpbiBGQiBw aXhlbHMpCisgKiByZWxfeiAtIGludDMyX3QsIHJlbGF0aXZlIFogbW90aW9uICh3aGVlbCkKKyAq LworCiBzdHJ1Y3QgeGVua2JkX3Bvc2l0aW9uCiB7Ci0gICAgdWludDhfdCB0eXBlOyAgICAgICAg LyogWEVOS0JEX1RZUEVfUE9TICovCi0gICAgaW50MzJfdCBhYnNfeDsgICAgICAgLyogYWJzb2x1 dGUgWCBwb3NpdGlvbiAoaW4gRkIgcGl4ZWxzKSAqLwotICAgIGludDMyX3QgYWJzX3k7ICAgICAg IC8qIGFic29sdXRlIFkgcG9zaXRpb24gKGluIEZCIHBpeGVscykgKi8KLSAgICBpbnQzMl90IHJl bF96OyAgICAgICAvKiByZWxhdGl2ZSBaIG1vdGlvbiAod2hlZWwpICovCisgICAgdWludDhfdCB0 eXBlOworICAgIGludDMyX3QgYWJzX3g7CisgICAgaW50MzJfdCBhYnNfeTsKKyAgICBpbnQzMl90 IHJlbF96OwogfTsKIAogI2RlZmluZSBYRU5LQkRfSU5fRVZFTlRfU0laRSA0MApAQCAtNzksMTIg KzI2MCwyMiBAQCB1bmlvbiB4ZW5rYmRfaW5fZXZlbnQKICAgICBjaGFyIHBhZFtYRU5LQkRfSU5f RVZFTlRfU0laRV07CiB9OwogCi0vKiBPdXQgZXZlbnRzIChmcm9udGVuZCAtPiBiYWNrZW5kKSAq LwotCiAvKgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKiAgICAgICAgICAgICAgICAgICAgICAg ICAgICBGcm9udGVuZCB0byBiYWNrZW5kIGV2ZW50cworICoqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisg KgogICogT3V0IGV2ZW50cyBtYXkgYmUgc2VudCBvbmx5IHdoZW4gcmVxdWVzdGVkIGJ5IGJhY2tl bmQsIGFuZCByZWNlaXB0CiAgKiBvZiBhbiB1bmtub3duIG91dCBldmVudCBpcyBhbiBlcnJvci4K ICAqIE5vIG91dCBldmVudHMgY3VycmVudGx5IGRlZmluZWQuCisKKyAqIEFsbCBldmVudCBwYWNr ZXRzIGhhdmUgdGhlIHNhbWUgbGVuZ3RoICg0MCBvY3RldHMpCisgKiBBbGwgZXZlbnQgcGFja2V0 cyBoYXZlIGNvbW1vbiBoZWFkZXI6CisgKiAgICAgICAgICAwICAgICAgICAgb2N0ZXQKKyAqICst LS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwgICAgICAgdHlwZSAgICAgIHwKKyAqICstLS0tLS0tLS0t LS0tLS0tLSsKKyAqIHR5cGUgLSB1aW50OF90LCBldmVudCBjb2RlCiAgKi8KIAogI2RlZmluZSBY RU5LQkRfT1VUX0VWRU5UX1NJWkUgNDAKQEAgLTk1LDcgKzI4NiwxMSBAQCB1bmlvbiB4ZW5rYmRf b3V0X2V2ZW50CiAgICAgY2hhciBwYWRbWEVOS0JEX09VVF9FVkVOVF9TSVpFXTsKIH07CiAKLS8q IHNoYXJlZCBwYWdlICovCisvKgorICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKiAgICAgICAgICAg ICAgICAgICAgICAgICAgICBTaGFyZWQgcGFnZQorICoqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKi8K IAogI2RlZmluZSBYRU5LQkRfSU5fUklOR19TSVpFIDIwNDgKICNkZWZpbmUgWEVOS0JEX0lOX1JJ TkdfTEVOIChYRU5LQkRfSU5fUklOR19TSVpFIC8gWEVOS0JEX0lOX0VWRU5UX1NJWkUpCkBAIC0x MTksNyArMzE0LDcgQEAgc3RydWN0IHhlbmtiZF9wYWdlCiAgICAgdWludDMyX3Qgb3V0X2NvbnMs IG91dF9wcm9kOwogfTsKIAotI2VuZGlmCisjZW5kaWYgLyogX19YRU5fUFVCTElDX0lPX0tCRElG X0hfXyAqLwogCiAvKgogICogTG9jYWwgdmFyaWFibGVzOgotLSAKMi43LjQKCgpfX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBs aXN0Clhlbi1kZXZlbEBsaXN0cy54ZW4ub3JnCmh0dHBzOi8vbGlzdHMueGVuLm9yZy94ZW4tZGV2 ZWwK