Security issues in printf() and family
Martin Řehák via Gimp-print-devel <[email protected]> Fri, 20 Feb 2026 06:39:01 +0100
| Newsgroups | gmane.linux.printing.gimp-print.devel |
|---|---|
| Message-ID | <[email protected]> |
This is a multi-part message in MIME format. --------------GsnDFH5V0q000YRaQryMgtEZ Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hello, while building gutenprint-5.3.6-2026-02-16T02-19 I am getting security related build warnings and errors. Output and patch to resolve the issues attached. Please consider merging. Thank you, Martin Rehak --------------GsnDFH5V0q000YRaQryMgtEZ Content-Type: text/plain; charset=UTF-8; name="error.txt" Content-Disposition: attachment; filename="error.txt" Content-Transfer-Encoding: base64 KGNkIC9idWlsZHMvbXJlaGFrL2d1dGVucHJpbnQvY29tcG9uZW50cy9ndXRlbnByaW50L2J1 aWxkL2FtZDY0IDsgL3Vzci9iaW4vZW52IExEX09QVElPTlM9Ii1NIC91c3IvbGliL2xkL21h cC5ub2V4ZGF0YSAtTSAvdXNyL2xpYi9sZC9tYXAucGFnZWFsaWduIC1CZGlyZWN0IC16aWdu b3JlIC16c3RyaXAtY2xhc3M9Y29tbWVudCIgTERfRVhFQ19PUFRJT05TPSItenR5cGU9cGll IC16c3g9YXNscj1lbmFibGUgLXpzeD1ueHN0YWNrPWVuYWJsZSAtenN4PW54aGVhcD1lbmFi bGUgIC16Y3RmPWNvbXByZXNzLGlnbm9yZS1ub24tYyxyZXF1aXJlICIgTERfUElFX09QVElP TlM9Ii16c3g9YXNscj1lbmFibGUgLXpzeD1ueHN0YWNrPWVuYWJsZSAtenN4PW54aGVhcD1l bmFibGUgIC16Y3RmPWNvbXByZXNzLGlnbm9yZS1ub24tYyxyZXF1aXJlICIgTERfU0hBUkVE X09QVElPTlM9Ii16dGV4dCAgLXpjdGY9Y29tcHJlc3MsaWdub3JlLW5vbi1jLHJlcXVpcmUg IiAgUEtHX0NPTkZJR19QQVRIPSIvdXNyL2xpYi9hbWQ2NC9wa2djb25maWciICJhY19jdl9m dW5jX3JlYWxsb2NfMF9ub25udWxsPXllcyIgSU5UTFRPT0xfUEVSTD0iL3Vzci9wZXJsNS81 LjQyL2Jpbi9wZXJsIiBodHRwX3Byb3h5PSBodHRwc19wcm94eT0gZnRwX3Byb3h5PSBHSV9T Q0FOTkVSX0RJU0FCTEVfQ0FDSEU9IiIgXAoJL3Vzci9nbnUvYmluL21ha2UgLWogMjAgLWwg NDAgIGFsbCkKbWFrZVsxXTogRW50ZXJpbmcgZGlyZWN0b3J5ICcvYnVpbGRzL21yZWhhay9n dXRlbnByaW50L2NvbXBvbmVudHMvZ3V0ZW5wcmludC9idWlsZC9hbWQ2NCcKL3Vzci9nbnUv YmluL21ha2UgIGFsbC1yZWN1cnNpdmUKbWFrZVsyXTogRW50ZXJpbmcgZGlyZWN0b3J5ICcv YnVpbGRzL21yZWhhay9ndXRlbnByaW50L2NvbXBvbmVudHMvZ3V0ZW5wcmludC9idWlsZC9h bWQ2NCcKTWFraW5nIGFsbCBpbiBpbmNsdWRlCm1ha2VbM106IEVudGVyaW5nIGRpcmVjdG9y eSAnL2J1aWxkcy9tcmVoYWsvZ3V0ZW5wcmludC9jb21wb25lbnRzL2d1dGVucHJpbnQvYnVp bGQvYW1kNjQvaW5jbHVkZScKTWFraW5nIGFsbCBpbiBndXRlbnByaW50Cm1ha2VbNF06IEVu dGVyaW5nIGRpcmVjdG9yeSAnL2J1aWxkcy9tcmVoYWsvZ3V0ZW5wcmludC9jb21wb25lbnRz L2d1dGVucHJpbnQvYnVpbGQvYW1kNjQvaW5jbHVkZS9ndXRlbnByaW50JwptYWtlWzRdOiBO b3RoaW5nIHRvIGJlIGRvbmUgZm9yICdhbGwnLgptYWtlWzRdOiBMZWF2aW5nIGRpcmVjdG9y eSAnL2J1aWxkcy9tcmVoYWsvZ3V0ZW5wcmludC9jb21wb25lbnRzL2d1dGVucHJpbnQvYnVp bGQvYW1kNjQvaW5jbHVkZS9ndXRlbnByaW50JwpNYWtpbmcgYWxsIGluIGd1dGVucHJpbnR1 aTIKbWFrZVs0XTogRW50ZXJpbmcgZGlyZWN0b3J5ICcvYnVpbGRzL21yZWhhay9ndXRlbnBy aW50L2NvbXBvbmVudHMvZ3V0ZW5wcmludC9idWlsZC9hbWQ2NC9pbmNsdWRlL2d1dGVucHJp bnR1aTInCm1ha2VbNF06IE5vdGhpbmcgdG8gYmUgZG9uZSBmb3IgJ2FsbCcuCm1ha2VbNF06 IExlYXZpbmcgZGlyZWN0b3J5ICcvYnVpbGRzL21yZWhhay9ndXRlbnByaW50L2NvbXBvbmVu dHMvZ3V0ZW5wcmludC9idWlsZC9hbWQ2NC9pbmNsdWRlL2d1dGVucHJpbnR1aTInCm1ha2Vb NF06IEVudGVyaW5nIGRpcmVjdG9yeSAnL2J1aWxkcy9tcmVoYWsvZ3V0ZW5wcmludC9jb21w b25lbnRzL2d1dGVucHJpbnQvYnVpbGQvYW1kNjQvaW5jbHVkZScKbWFrZVs0XTogTm90aGlu ZyB0byBiZSBkb25lIGZvciAnYWxsLWFtJy4KbWFrZVs0XTogTGVhdmluZyBkaXJlY3Rvcnkg Jy9idWlsZHMvbXJlaGFrL2d1dGVucHJpbnQvY29tcG9uZW50cy9ndXRlbnByaW50L2J1aWxk L2FtZDY0L2luY2x1ZGUnCm1ha2VbM106IExlYXZpbmcgZGlyZWN0b3J5ICcvYnVpbGRzL21y ZWhhay9ndXRlbnByaW50L2NvbXBvbmVudHMvZ3V0ZW5wcmludC9idWlsZC9hbWQ2NC9pbmNs dWRlJwpNYWtpbmcgYWxsIGluIHNyYwptYWtlWzNdOiBFbnRlcmluZyBkaXJlY3RvcnkgJy9i dWlsZHMvbXJlaGFrL2d1dGVucHJpbnQvY29tcG9uZW50cy9ndXRlbnByaW50L2J1aWxkL2Ft ZDY0L3NyYycKTWFraW5nIGFsbCBpbiBtYWluCm1ha2VbNF06IEVudGVyaW5nIGRpcmVjdG9y eSAnL2J1aWxkcy9tcmVoYWsvZ3V0ZW5wcmludC9jb21wb25lbnRzL2d1dGVucHJpbnQvYnVp bGQvYW1kNjQvc3JjL21haW4nCiAgQ0MgICAgICAgcHJpbnRlcnMubG8KICBDQyAgICAgICBw cmludC1lc2NwMi5sbwogIENDICAgICAgIHByaW50LWR5ZXN1Yi5sbwogIENDICAgICAgIHBy aW50LXJhdy5sbwovYnVpbGRzL21yZWhhay9ndXRlbnByaW50L2NvbXBvbmVudHMvZ3V0ZW5w cmludC9ndXRlbnByaW50LTUuMy42LTIwMjYtMDItMTZUMDItMTktYTAxOWJmOWMvc3JjL21h aW4vcHJpbnQtcmF3LmM6IEluIGZ1bmN0aW9uICdyYXdfcHJpbnQnOgovYnVpbGRzL21yZWhh ay9ndXRlbnByaW50L2NvbXBvbmVudHMvZ3V0ZW5wcmludC9ndXRlbnByaW50LTUuMy42LTIw MjYtMDItMTZUMDItMTktYTAxOWJmOWMvc3JjL21haW4vcHJpbnQtcmF3LmM6MjQ3Ojc6IGVy cm9yOiBmb3JtYXQgbm90IGEgc3RyaW5nIGxpdGVyYWwgYW5kIG5vIGZvcm1hdCBhcmd1bWVu dHMgWy1XZXJyb3I9Zm9ybWF0LXNlY3VyaXR5XQogIDI0NyB8ICAgICAgIHN0cF9lcHJpbnRm KG52LCBfKCJQcmludCBvcHRpb25zIG5vdCB2ZXJpZmllZDsgY2Fubm90IHByaW50LlxuIikp OwogICAgICB8ICAgICAgIF5+fn5+fn5+fn5+Ci9idWlsZHMvbXJlaGFrL2d1dGVucHJpbnQv Y29tcG9uZW50cy9ndXRlbnByaW50L2d1dGVucHJpbnQtNS4zLjYtMjAyNi0wMi0xNlQwMi0x OS1hMDE5YmY5Yy9zcmMvbWFpbi9wcmludC1yYXcuYzoyNTQ6NzogZXJyb3I6IGZvcm1hdCBu b3QgYSBzdHJpbmcgbGl0ZXJhbCBhbmQgbm8gZm9ybWF0IGFyZ3VtZW50cyBbLVdlcnJvcj1m b3JtYXQtc2VjdXJpdHldCiAgMjU0IHwgICAgICAgc3RwX2VwcmludGYobnYsIF8oIkltYWdl IGRpbWVuc2lvbnMgbXVzdCBtYXRjaCBwYXBlciBkaW1lbnNpb25zIikpOwogICAgICB8ICAg ICAgIF5+fn5+fn5+fn5+Ci9idWlsZHMvbXJlaGFrL2d1dGVucHJpbnQvY29tcG9uZW50cy9n dXRlbnByaW50L2d1dGVucHJpbnQtNS4zLjYtMjAyNi0wMi0xNlQwMi0xOS1hMDE5YmY5Yy9z cmMvbWFpbi9wcmludGVycy5jOiBJbiBmdW5jdGlvbiAndmVyaWZ5X3N0cmluZ19wYXJhbSc6 Ci9idWlsZHMvbXJlaGFrL2d1dGVucHJpbnQvY29tcG9uZW50cy9ndXRlbnByaW50L2d1dGVu cHJpbnQtNS4zLjYtMjAyNi0wMi0xNlQwMi0xOS1hMDE5YmY5Yy9zcmMvbWFpbi9wcmludGVy cy5jOjU5OToxNzogd2FybmluZzogZm9ybWF0IG5vdCBhIHN0cmluZyBsaXRlcmFsLCBhcmd1 bWVudCB0eXBlcyBub3QgY2hlY2tlZCBbLVdmb3JtYXQtbm9ubGl0ZXJhbF0KICA1OTkgfCAg ICAgICAgICAgICAgICAgc3RwX2VwcmludGYodiwgXygiVmFsdWUgbXVzdCBiZSBzZXQgZm9y ICVzXG4iKSwgcGFyYW1ldGVyKTsKICAgICAgfCAgICAgICAgICAgICAgICAgXn5+fn5+fn5+ fn4KL2J1aWxkcy9tcmVoYWsvZ3V0ZW5wcmludC9jb21wb25lbnRzL2d1dGVucHJpbnQvZ3V0 ZW5wcmludC01LjMuNi0yMDI2LTAyLTE2VDAyLTE5LWEwMTliZjljL3NyYy9tYWluL3ByaW50 ZXJzLmM6NjA4OjEzOiB3YXJuaW5nOiBmb3JtYXQgbm90IGEgc3RyaW5nIGxpdGVyYWwsIGFy Z3VtZW50IHR5cGVzIG5vdCBjaGVja2VkIFstV2Zvcm1hdC1ub25saXRlcmFsXQogIDYwOCB8 ICAgICAgICAgICAgIHN0cF9lcHJpbnRmKHYsIF8oImAlcycgaXMgbm90IGEgdmFsaWQgJXNc biIpLCBjaGVja3ZhbCwgcGFyYW1ldGVyKTsKICAgICAgfCAgICAgICAgICAgICBefn5+fn5+ fn5+fgovYnVpbGRzL21yZWhhay9ndXRlbnByaW50L2NvbXBvbmVudHMvZ3V0ZW5wcmludC9n dXRlbnByaW50LTUuMy42LTIwMjYtMDItMTZUMDItMTktYTAxOWJmOWMvc3JjL21haW4vcHJp bnRlcnMuYzo2MTM6OTogd2FybmluZzogZm9ybWF0IG5vdCBhIHN0cmluZyBsaXRlcmFsLCBh cmd1bWVudCB0eXBlcyBub3QgY2hlY2tlZCBbLVdmb3JtYXQtbm9ubGl0ZXJhbF0KICA2MTMg fCAgICAgICAgIHN0cF9lcHJpbnRmKHYsIF8oImAlcycgaXMgbm90IGEgdmFsaWQgJXNcbiIp LCBjaGVja3ZhbCwgcGFyYW1ldGVyKTsKICAgICAgfCAgICAgICAgIF5+fn5+fn5+fn5+Ci9i dWlsZHMvbXJlaGFrL2d1dGVucHJpbnQvY29tcG9uZW50cy9ndXRlbnByaW50L2d1dGVucHJp bnQtNS4zLjYtMjAyNi0wMi0xNlQwMi0xOS1hMDE5YmY5Yy9zcmMvbWFpbi9wcmludGVycy5j OiBJbiBmdW5jdGlvbiAndmVyaWZ5X2RvdWJsZV9wYXJhbSc6Ci9idWlsZHMvbXJlaGFrL2d1 dGVucHJpbnQvY29tcG9uZW50cy9ndXRlbnByaW50L2d1dGVucHJpbnQtNS4zLjYtMjAyNi0w Mi0xNlQwMi0xOS1hMDE5YmY5Yy9zcmMvbWFpbi9wcmludGVycy5jOjYzNDoyNTogd2Fybmlu ZzogZm9ybWF0IG5vdCBhIHN0cmluZyBsaXRlcmFsLCBhcmd1bWVudCB0eXBlcyBub3QgY2hl Y2tlZCBbLVdmb3JtYXQtbm9ubGl0ZXJhbF0KICA2MzQgfCAgICAgICAgICAgICAgICAgICAg ICAgICBkZXNjLT5ib3VuZHMuZGJsLnVwcGVyLCBjaGVja3ZhbCk7CiAgICAgIHwgICAgICAg ICAgICAgICAgICAgICAgICAgXn5+fgovYnVpbGRzL21yZWhhay9ndXRlbnByaW50L2NvbXBv bmVudHMvZ3V0ZW5wcmludC9ndXRlbnByaW50LTUuMy42LTIwMjYtMDItMTZUMDItMTktYTAx OWJmOWMvc3JjL21haW4vcHJpbnRlcnMuYzogSW4gZnVuY3Rpb24gJ3ZlcmlmeV9pbnRfcGFy YW0nOgovYnVpbGRzL21yZWhhay9ndXRlbnByaW50L2NvbXBvbmVudHMvZ3V0ZW5wcmludC9n dXRlbnByaW50LTUuMy42LTIwMjYtMDItMTZUMDItMTktYTAxOWJmOWMvc3JjL21haW4vcHJp bnRlcnMuYzo2NTY6MjU6IHdhcm5pbmc6IGZvcm1hdCBub3QgYSBzdHJpbmcgbGl0ZXJhbCwg YXJndW1lbnQgdHlwZXMgbm90IGNoZWNrZWQgWy1XZm9ybWF0LW5vbmxpdGVyYWxdCiAgNjU2 IHwgICAgICAgICAgICAgICAgICAgICAgICAgZGVzYy0+Ym91bmRzLmludGVnZXIudXBwZXIs IGNoZWNrdmFsKTsKICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICBefn5+Ci9idWls ZHMvbXJlaGFrL2d1dGVucHJpbnQvY29tcG9uZW50cy9ndXRlbnByaW50L2d1dGVucHJpbnQt NS4zLjYtMjAyNi0wMi0xNlQwMi0xOS1hMDE5YmY5Yy9zcmMvbWFpbi9wcmludGVycy5jOiBJ biBmdW5jdGlvbiAndmVyaWZ5X2RpbWVuc2lvbl9wYXJhbSc6Ci9idWlsZHMvbXJlaGFrL2d1 dGVucHJpbnQvY29tcG9uZW50cy9ndXRlbnByaW50L2d1dGVucHJpbnQtNS4zLjYtMjAyNi0w Mi0xNlQwMi0xOS1hMDE5YmY5Yy9zcmMvbWFpbi9wcmludGVycy5jOjY4MDoyNTogd2Fybmlu ZzogZm9ybWF0IG5vdCBhIHN0cmluZyBsaXRlcmFsLCBhcmd1bWVudCB0eXBlcyBub3QgY2hl Y2tlZCBbLVdmb3JtYXQtbm9ubGl0ZXJhbF0KICA2ODAgfCAgICAgICAgICAgICAgICAgICAg ICAgICBkZXNjLT5ib3VuZHMuZGltZW5zaW9uLnVwcGVyLCBjaGVja3ZhbCk7CiAgICAgIHwg ICAgICAgICAgICAgICAgICAgICAgICAgXn5+fgovYnVpbGRzL21yZWhhay9ndXRlbnByaW50 L2NvbXBvbmVudHMvZ3V0ZW5wcmludC9ndXRlbnByaW50LTUuMy42LTIwMjYtMDItMTZUMDIt MTktYTAxOWJmOWMvc3JjL21haW4vcHJpbnRlcnMuYzogSW4gZnVuY3Rpb24gJ3ZlcmlmeV9j dXJ2ZV9wYXJhbSc6Ci9idWlsZHMvbXJlaGFrL2d1dGVucHJpbnQvY29tcG9uZW50cy9ndXRl bnByaW50L2d1dGVucHJpbnQtNS4zLjYtMjAyNi0wMi0xNlQwMi0xOS1hMDE5YmY5Yy9zcmMv bWFpbi9wcmludGVycy5jOjcxMDoyOTogd2FybmluZzogZm9ybWF0IG5vdCBhIHN0cmluZyBs aXRlcmFsLCBhcmd1bWVudCB0eXBlcyBub3QgY2hlY2tlZCBbLVdmb3JtYXQtbm9ubGl0ZXJh bF0KICA3MTAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFyYW1ldGVyLCBsMSwg dTEpOwogICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBefn5+fn5+fn4KL2J1 aWxkcy9tcmVoYWsvZ3V0ZW5wcmludC9jb21wb25lbnRzL2d1dGVucHJpbnQvZ3V0ZW5wcmlu dC01LjMuNi0yMDI2LTAyLTE2VDAyLTE5LWEwMTliZjljL3NyYy9tYWluL3ByaW50ZXJzLmM6 NzIxOjI5OiB3YXJuaW5nOiBmb3JtYXQgbm90IGEgc3RyaW5nIGxpdGVyYWwsIGFyZ3VtZW50 IHR5cGVzIG5vdCBjaGVja2VkIFstV2Zvcm1hdC1ub25saXRlcmFsXQogIDcyMSB8ICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBfKCJubyB3cmFwIikgOiBfKCJ3cmFwIGFyb3VuZCIp KTsKICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgovYnVpbGRzL21yZWhh ay9ndXRlbnByaW50L2NvbXBvbmVudHMvZ3V0ZW5wcmludC9ndXRlbnByaW50LTUuMy42LTIw MjYtMDItMTZUMDItMTktYTAxOWJmOWMvc3JjL21haW4vcHJpbnRlcnMuYzogSW4gZnVuY3Rp b24gJ3N0cF92ZXJpZnlfcGFyYW1ldGVyJzoKL2J1aWxkcy9tcmVoYWsvZ3V0ZW5wcmludC9j b21wb25lbnRzL2d1dGVucHJpbnQvZ3V0ZW5wcmludC01LjMuNi0yMDI2LTAyLTE2VDAyLTE5 LWEwMTliZjljL3NyYy9tYWluL3ByaW50ZXJzLmM6NzY2OjIxOiB3YXJuaW5nOiBmb3JtYXQg bm90IGEgc3RyaW5nIGxpdGVyYWwsIGFyZ3VtZW50IHR5cGVzIG5vdCBjaGVja2VkIFstV2Zv cm1hdC1ub25saXRlcmFsXQogIDc2NiB8ICAgICAgICAgICAgICAgICAgICAgcGFyYW1ldGVy LCBkZXNjLnBfdHlwZSk7CiAgICAgIHwgICAgICAgICAgICAgICAgICAgICBefn5+fn5+fn4K L2J1aWxkcy9tcmVoYWsvZ3V0ZW5wcmludC9jb21wb25lbnRzL2d1dGVucHJpbnQvZ3V0ZW5w cmludC01LjMuNi0yMDI2LTAyLTE2VDAyLTE5LWEwMTliZjljL3NyYy9tYWluL3ByaW50ZXJz LmM6IEluIGZ1bmN0aW9uICdzdHBfdmVyaWZ5X3ByaW50ZXJfcGFyYW1zJzoKL2J1aWxkcy9t cmVoYWsvZ3V0ZW5wcmludC9jb21wb25lbnRzL2d1dGVucHJpbnQvZ3V0ZW5wcmludC01LjMu Ni0yMDI2LTAyLTE2VDAyLTE5LWEwMTliZjljL3NyYy9tYWluL3ByaW50ZXJzLmM6ODQ5OjEx OiBlcnJvcjogZm9ybWF0IG5vdCBhIHN0cmluZyBsaXRlcmFsIGFuZCBubyBmb3JtYXQgYXJn dW1lbnRzIFstV2Vycm9yPWZvcm1hdC1zZWN1cml0eV0KICA4NDkgfCAgICAgICAgICAgc3Rw X2VwcmludGYodiwgXygiUGFnZSBzaXplIGlzIG5vdCB2YWxpZFxuIikpOwogICAgICB8ICAg ICAgICAgICBefn5+fn5+fn5+fgovYnVpbGRzL21yZWhhay9ndXRlbnByaW50L2NvbXBvbmVu dHMvZ3V0ZW5wcmludC9ndXRlbnByaW50LTUuMy42LTIwMjYtMDItMTZUMDItMTktYTAxOWJm OWMvc3JjL21haW4vcHJpbnRlcnMuYzo4NzI6Nzogd2FybmluZzogZm9ybWF0IG5vdCBhIHN0 cmluZyBsaXRlcmFsLCBhcmd1bWVudCB0eXBlcyBub3QgY2hlY2tlZCBbLVdmb3JtYXQtbm9u bGl0ZXJhbF0KICA4NzIgfCAgICAgICBzdHBfZXByaW50Zih2LCBfKCJUb3AgbWFyZ2luIG11 c3Qgbm90IGJlIGxlc3MgdGhhbiAlZlxuIiksIHRvcCk7CiAgICAgIHwgICAgICAgXn5+fn5+ fn5+fn4KL2J1aWxkcy9tcmVoYWsvZ3V0ZW5wcmludC9jb21wb25lbnRzL2d1dGVucHJpbnQv Z3V0ZW5wcmludC01LjMuNi0yMDI2LTAyLTE2VDAyLTE5LWEwMTliZjljL3NyYy9tYWluL3By aW50ZXJzLmM6ODc4Ojc6IHdhcm5pbmc6IGZvcm1hdCBub3QgYSBzdHJpbmcgbGl0ZXJhbCwg YXJndW1lbnQgdHlwZXMgbm90IGNoZWNrZWQgWy1XZm9ybWF0LW5vbmxpdGVyYWxdCiAgODc4 IHwgICAgICAgc3RwX2VwcmludGYodiwgXygiTGVmdCBtYXJnaW4gbXVzdCBub3QgYmUgbGVz cyB0aGFuICVmXG4iKSwgbGVmdCk7CiAgICAgIHwgICAgICAgXn5+fn5+fn5+fn4KL2J1aWxk cy9tcmVoYWsvZ3V0ZW5wcmludC9jb21wb25lbnRzL2d1dGVucHJpbnQvZ3V0ZW5wcmludC01 LjMuNi0yMDI2LTAyLTE2VDAyLTE5LWEwMTliZjljL3NyYy9tYWluL3ByaW50ZXJzLmM6ODg0 Ojc6IGVycm9yOiBmb3JtYXQgbm90IGEgc3RyaW5nIGxpdGVyYWwgYW5kIG5vIGZvcm1hdCBh cmd1bWVudHMgWy1XZXJyb3I9Zm9ybWF0LXNlY3VyaXR5XQogIDg4NCB8ICAgICAgIHN0cF9l cHJpbnRmKHYsIF8oIkhlaWdodCBtdXN0IGJlIGdyZWF0ZXIgdGhhbiB6ZXJvXG4iKSk7CiAg ICAgIHwgICAgICAgXn5+fn5+fn5+fn4KL2J1aWxkcy9tcmVoYWsvZ3V0ZW5wcmludC9jb21w b25lbnRzL2d1dGVucHJpbnQvZ3V0ZW5wcmludC01LjMuNi0yMDI2LTAyLTE2VDAyLTE5LWEw MTliZjljL3NyYy9tYWluL3ByaW50ZXJzLmM6ODkwOjc6IGVycm9yOiBmb3JtYXQgbm90IGEg c3RyaW5nIGxpdGVyYWwgYW5kIG5vIGZvcm1hdCBhcmd1bWVudHMgWy1XZXJyb3I9Zm9ybWF0 LXNlY3VyaXR5XQogIDg5MCB8ICAgICAgIHN0cF9lcHJpbnRmKHYsIF8oIldpZHRoIG11c3Qg YmUgZ3JlYXRlciB0aGFuIHplcm9cbiIpKTsKICAgICAgfCAgICAgICBefn5+fn5+fn5+fgov YnVpbGRzL21yZWhhay9ndXRlbnByaW50L2NvbXBvbmVudHMvZ3V0ZW5wcmludC9ndXRlbnBy aW50LTUuMy42LTIwMjYtMDItMTZUMDItMTktYTAxOWJmOWMvc3JjL21haW4vcHJpbnRlcnMu Yzo4OTc6MTk6IHdhcm5pbmc6IGZvcm1hdCBub3QgYSBzdHJpbmcgbGl0ZXJhbCwgYXJndW1l bnQgdHlwZXMgbm90IGNoZWNrZWQgWy1XZm9ybWF0LW5vbmxpdGVyYWxdCiAgODk3IHwgICAg ICAgICAgICAgICAgICAgc3RwX2dldF9sZWZ0KHYpLCBzdHBfZ2V0X3dpZHRoKHYpLCByaWdo dCk7CiAgICAgIHwgICAgICAgICAgICAgICAgICAgXn5+fn5+fn5+fn5+Ci9idWlsZHMvbXJl aGFrL2d1dGVucHJpbnQvY29tcG9uZW50cy9ndXRlbnByaW50L2d1dGVucHJpbnQtNS4zLjYt MjAyNi0wMi0xNlQwMi0xOS1hMDE5YmY5Yy9zcmMvbWFpbi9wcmludGVycy5jOjkwNDoxOTog d2FybmluZzogZm9ybWF0IG5vdCBhIHN0cmluZyBsaXRlcmFsLCBhcmd1bWVudCB0eXBlcyBu b3QgY2hlY2tlZCBbLVdmb3JtYXQtbm9ubGl0ZXJhbF0KICA5MDQgfCAgICAgICAgICAgICAg ICAgICBzdHBfZ2V0X3RvcCh2KSwgc3RwX2dldF9oZWlnaHQodiksIGJvdHRvbSk7CiAgICAg IHwgICAgICAgICAgICAgICAgICAgXn5+fn5+fn5+fn4KL2J1aWxkcy9tcmVoYWsvZ3V0ZW5w cmludC9jb21wb25lbnRzL2d1dGVucHJpbnQvZ3V0ZW5wcmludC01LjMuNi0yMDI2LTAyLTE2 VDAyLTE5LWEwMTliZjljL3NyYy9tYWluL3ByaW50LWVzY3AyLmM6IEluIGZ1bmN0aW9uICdz ZXRfcmF3X2lua190eXBlJzoKL2J1aWxkcy9tcmVoYWsvZ3V0ZW5wcmludC9jb21wb25lbnRz L2d1dGVucHJpbnQvZ3V0ZW5wcmludC01LjMuNi0yMDI2LTAyLTE2VDAyLTE5LWEwMTliZjlj L3NyYy9tYWluL3ByaW50LWVzY3AyLmM6MzI1Nzo2OiB3YXJuaW5nOiBmb3JtYXQgbm90IGEg c3RyaW5nIGxpdGVyYWwsIGFyZ3VtZW50IHR5cGVzIG5vdCBjaGVja2VkIFstV2Zvcm1hdC1u b25saXRlcmFsXQogMzI1NyB8ICAgICAgY291bnQtPmNvdW50KTsKICAgICAgfCAgICAgIF5+ fn5+Ci9idWlsZHMvbXJlaGFrL2d1dGVucHJpbnQvY29tcG9uZW50cy9ndXRlbnByaW50L2d1 dGVucHJpbnQtNS4zLjYtMjAyNi0wMi0xNlQwMi0xOS1hMDE5YmY5Yy9zcmMvbWFpbi9wcmlu dC1keWVzdWIuYzogSW4gZnVuY3Rpb24gJ2tvZGFrXzg4MTBfcGFyc2VfcGFyYW10ZXJzJzoK L2J1aWxkcy9tcmVoYWsvZ3V0ZW5wcmludC9jb21wb25lbnRzL2d1dGVucHJpbnQvZ3V0ZW5w cmludC01LjMuNi0yMDI2LTAyLTE2VDAyLTE5LWEwMTliZjljL3NyYy9tYWluL3ByaW50LWR5 ZXN1Yi5jOjM4NTY6NzogZXJyb3I6IGZvcm1hdCBub3QgYSBzdHJpbmcgbGl0ZXJhbCBhbmQg bm8gZm9ybWF0IGFyZ3VtZW50cyBbLVdlcnJvcj1mb3JtYXQtc2VjdXJpdHldCiAzODU2IHwg ICAgICAgc3RwX2VwcmludGYodiwgXygiTXVzdCB1c2UgZ2xvc3N5IG92ZXJjb2F0IHdpdGgg cGFub3JhbWEgcHJpbnQgc2l6ZXMhXG4iKSk7CiAgICAgIHwgICAgICAgXn5+fn5+fn5+fn4K L2J1aWxkcy9tcmVoYWsvZ3V0ZW5wcmludC9jb21wb25lbnRzL2d1dGVucHJpbnQvZ3V0ZW5w cmludC01LjMuNi0yMDI2LTAyLTE2VDAyLTE5LWEwMTliZjljL3NyYy9tYWluL3ByaW50LWVz Y3AyLmM6IEluIGZ1bmN0aW9uICdlc2NwMl9kb19wcmludCc6Ci9idWlsZHMvbXJlaGFrL2d1 dGVucHJpbnQvY29tcG9uZW50cy9ndXRlbnByaW50L2d1dGVucHJpbnQtNS4zLjYtMjAyNi0w Mi0xNlQwMi0xOS1hMDE5YmY5Yy9zcmMvbWFpbi9wcmludC1lc2NwMi5jOjQ1NDM6NzogZXJy b3I6IGZvcm1hdCBub3QgYSBzdHJpbmcgbGl0ZXJhbCBhbmQgbm8gZm9ybWF0IGFyZ3VtZW50 cyBbLVdlcnJvcj1mb3JtYXQtc2VjdXJpdHldCiA0NTQzIHwgICAgICAgc3RwX2VwcmludGYo diwgXygiUHJpbnQgb3B0aW9ucyBub3QgdmVyaWZpZWQ7IGNhbm5vdCBwcmludC5cbiIpKTsK ICAgICAgfCAgICAgICBefn5+fn5+fn5+fgovYnVpbGRzL21yZWhhay9ndXRlbnByaW50L2Nv bXBvbmVudHMvZ3V0ZW5wcmludC9ndXRlbnByaW50LTUuMy42LTIwMjYtMDItMTZUMDItMTkt YTAxOWJmOWMvc3JjL21haW4vcHJpbnQtZHllc3ViLmM6IEluIGZ1bmN0aW9uICdtaXRzdV9w OTVkX3BhcnNlX3BhcmFtZXRlcnMnOgovYnVpbGRzL21yZWhhay9ndXRlbnByaW50L2NvbXBv bmVudHMvZ3V0ZW5wcmludC9ndXRlbnByaW50LTUuMy42LTIwMjYtMDItMTZUMDItMTktYTAx OWJmOWMvc3JjL21haW4vcHJpbnQtZHllc3ViLmM6NDUyNDo3OiBlcnJvcjogZm9ybWF0IG5v dCBhIHN0cmluZyBsaXRlcmFsIGFuZCBubyBmb3JtYXQgYXJndW1lbnRzIFstV2Vycm9yPWZv cm1hdC1zZWN1cml0eV0KIDQ1MjQgfCAgICAgICBzdHBfZXByaW50Zih2LCBfKCJTdHBVc2Vy Q29tbWVudCBtdXN0IGJlIGJldHdlZW4gMCBhbmQgMzQgYnl0ZXMhXG4iKSk7CiAgICAgIHwg ICAgICAgXn5+fn5+fn5+fn4KL2J1aWxkcy9tcmVoYWsvZ3V0ZW5wcmludC9jb21wb25lbnRz L2d1dGVucHJpbnQvZ3V0ZW5wcmludC01LjMuNi0yMDI2LTAyLTE2VDAyLTE5LWEwMTliZjlj L3NyYy9tYWluL3ByaW50LWR5ZXN1Yi5jOjQ1MzI6NzogZXJyb3I6IGZvcm1hdCBub3QgYSBz dHJpbmcgbGl0ZXJhbCBhbmQgbm8gZm9ybWF0IGFyZ3VtZW50cyBbLVdlcnJvcj1mb3JtYXQt c2VjdXJpdHldCiA0NTMyIHwgICAgICAgc3RwX2VwcmludGYodiwgXygiU3RwVXNlckxVVCBt dXN0IGJlIGV4YWN0bHkgMzQgYnl0ZXMhXG4iKSk7CiAgICAgIHwgICAgICAgXn5+fn5+fn5+ fn4KL2J1aWxkcy9tcmVoYWsvZ3V0ZW5wcmludC9jb21wb25lbnRzL2d1dGVucHJpbnQvZ3V0 ZW5wcmludC01LjMuNi0yMDI2LTAyLTE2VDAyLTE5LWEwMTliZjljL3NyYy9tYWluL3ByaW50 LWR5ZXN1Yi5jOiBJbiBmdW5jdGlvbiAnbWl0c3VfcDkzZF9wYXJzZV9wYXJhbWV0ZXJzJzoK L2J1aWxkcy9tcmVoYWsvZ3V0ZW5wcmludC9jb21wb25lbnRzL2d1dGVucHJpbnQvZ3V0ZW5w cmludC01LjMuNi0yMDI2LTAyLTE2VDAyLTE5LWEwMTliZjljL3NyYy9tYWluL3ByaW50LWR5 ZXN1Yi5jOjQ5Mzc6NzogZXJyb3I6IGZvcm1hdCBub3QgYSBzdHJpbmcgbGl0ZXJhbCBhbmQg bm8gZm9ybWF0IGFyZ3VtZW50cyBbLVdlcnJvcj1mb3JtYXQtc2VjdXJpdHldCiA0OTM3IHwg ICAgICAgc3RwX2VwcmludGYodiwgXygiU3RwVXNlckNvbW1lbnQgbXVzdCBiZSBiZXR3ZWVu IDAgYW5kIDQwIGJ5dGVzIVxuIikpOwogICAgICB8ICAgICAgIF5+fn5+fn5+fn5+Ci9idWls ZHMvbXJlaGFrL2d1dGVucHJpbnQvY29tcG9uZW50cy9ndXRlbnByaW50L2d1dGVucHJpbnQt NS4zLjYtMjAyNi0wMi0xNlQwMi0xOS1hMDE5YmY5Yy9zcmMvbWFpbi9wcmludC1keWVzdWIu YzogSW4gZnVuY3Rpb24gJ21pdHN1X2NwbTFfcGFyc2VfcGFyYW1ldGVycyc6Ci9idWlsZHMv bXJlaGFrL2d1dGVucHJpbnQvY29tcG9uZW50cy9ndXRlbnByaW50L2d1dGVucHJpbnQtNS4z LjYtMjAyNi0wMi0xNlQwMi0xOS1hMDE5YmY5Yy9zcmMvbWFpbi9wcmludC1keWVzdWIuYzo3 MzI5OjExOiBlcnJvcjogZm9ybWF0IG5vdCBhIHN0cmluZyBsaXRlcmFsIGFuZCBubyBmb3Jt YXQgYXJndW1lbnRzIFstV2Vycm9yPWZvcm1hdC1zZWN1cml0eV0KIDczMjkgfCAgICAgICAg ICAgc3RwX2VwcmludGYodiwgXygiQ2Fubm90IHVzZSBJbnRlcm5hbCBDb3JyZWN0aW9uIGFu ZCBDb2xvciBNYXRjaGluZyB0b2dldGhlciFcbiIpKTsKICAgICAgfCAgICAgICAgICAgXn5+ fn5+fn5+fn4KL2J1aWxkcy9tcmVoYWsvZ3V0ZW5wcmludC9jb21wb25lbnRzL2d1dGVucHJp bnQvZ3V0ZW5wcmludC01LjMuNi0yMDI2LTAyLTE2VDAyLTE5LWEwMTliZjljL3NyYy9tYWlu L3ByaW50LWR5ZXN1Yi5jOiBJbiBmdW5jdGlvbiAnZG5wZHM4MF9wYXJzZV9wYXJhbWV0ZXJz JzoKL2J1aWxkcy9tcmVoYWsvZ3V0ZW5wcmludC9jb21wb25lbnRzL2d1dGVucHJpbnQvZ3V0 ZW5wcmludC01LjMuNi0yMDI2LTAyLTE2VDAyLTE5LWEwMTliZjljL3NyYy9tYWluL3ByaW50 LWR5ZXN1Yi5jOjg4NTc6NTogZXJyb3I6IGZvcm1hdCBub3QgYSBzdHJpbmcgbGl0ZXJhbCBh bmQgbm8gZm9ybWF0IGFyZ3VtZW50cyBbLVdlcnJvcj1mb3JtYXQtc2VjdXJpdHldCiA4ODU3 IHwgICAgIHN0cF9lcHJpbnRmKHYsIF8oIklsbGVnYWwgcHJpbnQgc2l6ZSBzZWxlY3RlZCBm b3Igcm9sbCBtZWRpYSFcbiIpKTsKICAgICAgfCAgICAgXn5+fn5+fn5+fn4KL2J1aWxkcy9t cmVoYWsvZ3V0ZW5wcmludC9jb21wb25lbnRzL2d1dGVucHJpbnQvZ3V0ZW5wcmludC01LjMu Ni0yMDI2LTAyLTE2VDAyLTE5LWEwMTliZjljL3NyYy9tYWluL3ByaW50LWR5ZXN1Yi5jOiBJ biBmdW5jdGlvbiAnZG5wZHM4MGR4X3BhcnNlX3BhcmFtZXRlcnMnOgovYnVpbGRzL21yZWhh ay9ndXRlbnByaW50L2NvbXBvbmVudHMvZ3V0ZW5wcmludC9ndXRlbnByaW50LTUuMy42LTIw MjYtMDItMTZUMDItMTktYTAxOWJmOWMvc3JjL21haW4vcHJpbnQtZHllc3ViLmM6ODkxMTo3 OiBlcnJvcjogZm9ybWF0IG5vdCBhIHN0cmluZyBsaXRlcmFsIGFuZCBubyBmb3JtYXQgYXJn dW1lbnRzIFstV2Vycm9yPWZvcm1hdC1zZWN1cml0eV0KIDg5MTEgfCAgICAgICBzdHBfZXBy aW50Zih2LCBfKCJEdXBsZXggbm90IHN1cHBvcnRlZCBvbiByb2xsIG1lZGlhLCBzd2l0Y2hp bmcgdG8gc2hlZXQgbWVkaWEhXG4iKSk7CiAgICAgIHwgICAgICAgXn5+fn5+fn5+fn4KL2J1 aWxkcy9tcmVoYWsvZ3V0ZW5wcmludC9jb21wb25lbnRzL2d1dGVucHJpbnQvZ3V0ZW5wcmlu dC01LjMuNi0yMDI2LTAyLTE2VDAyLTE5LWEwMTliZjljL3NyYy9tYWluL3ByaW50LWR5ZXN1 Yi5jOjg5NDU6NTogZXJyb3I6IGZvcm1hdCBub3QgYSBzdHJpbmcgbGl0ZXJhbCBhbmQgbm8g Zm9ybWF0IGFyZ3VtZW50cyBbLVdlcnJvcj1mb3JtYXQtc2VjdXJpdHldCiA4OTQ1IHwgICAg IHN0cF9lcHJpbnRmKHYsIF8oIklsbGVnYWwgcHJpbnQgc2l6ZSBzZWxlY3RlZCBmb3Igc2hl ZXQgbWVkaWEhXG4iKSk7CiAgICAgIHwgICAgIF5+fn5+fn5+fn5+Ci9idWlsZHMvbXJlaGFr L2d1dGVucHJpbnQvY29tcG9uZW50cy9ndXRlbnByaW50L2d1dGVucHJpbnQtNS4zLjYtMjAy Ni0wMi0xNlQwMi0xOS1hMDE5YmY5Yy9zcmMvbWFpbi9wcmludC1keWVzdWIuYzogSW4gZnVu Y3Rpb24gJ21hZ2ljYXJkX3BhcnNlX3BhcmFtZXRlcnMnOgovYnVpbGRzL21yZWhhay9ndXRl bnByaW50L2NvbXBvbmVudHMvZ3V0ZW5wcmludC9ndXRlbnByaW50LTUuMy42LTIwMjYtMDIt MTZUMDItMTktYTAxOWJmOWMvc3JjL21haW4vcHJpbnQtZHllc3ViLmM6MTA5NTc6NzogZXJy b3I6IGZvcm1hdCBub3QgYSBzdHJpbmcgbGl0ZXJhbCBhbmQgbm8gZm9ybWF0IGFyZ3VtZW50 cyBbLVdlcnJvcj1mb3JtYXQtc2VjdXJpdHldCjEwOTU3IHwgICAgICAgc3RwX2VwcmludGYo diwgXygiSG9sb2tvdGUsIEhvbG9wYXRjaCwgYW5kIE92ZXJjb2F0IGhvbGUgZmVhdHVyZXMg cmVxdWlyZSBPdmVyY29hdCB0byBiZSBlbmFibGVkIVxuIikpOwogICAgICB8ICAgICAgIF5+ fn5+fn5+fn5+Ci9idWlsZHMvbXJlaGFrL2d1dGVucHJpbnQvY29tcG9uZW50cy9ndXRlbnBy aW50L2d1dGVucHJpbnQtNS4zLjYtMjAyNi0wMi0xNlQwMi0xOS1hMDE5YmY5Yy9zcmMvbWFp bi9wcmludC1keWVzdWIuYzoxMDk2Njo3OiBlcnJvcjogZm9ybWF0IG5vdCBhIHN0cmluZyBs aXRlcmFsIGFuZCBubyBmb3JtYXQgYXJndW1lbnRzIFstV2Vycm9yPWZvcm1hdC1zZWN1cml0 eV0KMTA5NjYgfCAgICAgICBzdHBfZXByaW50Zih2LCBfKCJTdHBNYWdTdHJpcGUxIG11c3Qg YmUgYmV0d2VlbiAwIGFuZCA3OCBieXRlcyFcbiIpKTsKICAgICAgfCAgICAgICBefn5+fn5+ fn5+fgovYnVpbGRzL21yZWhhay9ndXRlbnByaW50L2NvbXBvbmVudHMvZ3V0ZW5wcmludC9n dXRlbnByaW50LTUuMy42LTIwMjYtMDItMTZUMDItMTktYTAxOWJmOWMvc3JjL21haW4vcHJp bnQtZHllc3ViLmM6MTA5NzM6NzogZXJyb3I6IGZvcm1hdCBub3QgYSBzdHJpbmcgbGl0ZXJh bCBhbmQgbm8gZm9ybWF0IGFyZ3VtZW50cyBbLVdlcnJvcj1mb3JtYXQtc2VjdXJpdHldCjEw OTczIHwgICAgICAgc3RwX2VwcmludGYodiwgXygiU3RwTWFnU3RyaXBlMiBtdXN0IGJlIGJl dHdlZW4gMCBhbmQgMzkgYnl0ZXMhXG4iKSk7CiAgICAgIHwgICAgICAgXn5+fn5+fn5+fn4K L2J1aWxkcy9tcmVoYWsvZ3V0ZW5wcmludC9jb21wb25lbnRzL2d1dGVucHJpbnQvZ3V0ZW5w cmludC01LjMuNi0yMDI2LTAyLTE2VDAyLTE5LWEwMTliZjljL3NyYy9tYWluL3ByaW50LWR5 ZXN1Yi5jOjEwOTgwOjc6IGVycm9yOiBmb3JtYXQgbm90IGEgc3RyaW5nIGxpdGVyYWwgYW5k IG5vIGZvcm1hdCBhcmd1bWVudHMgWy1XZXJyb3I9Zm9ybWF0LXNlY3VyaXR5XQoxMDk4MCB8 ICAgICAgIHN0cF9lcHJpbnRmKHYsIF8oIlN0cE1hZ1N0cmlwZTMgbXVzdCBiZSBiZXR3ZWVu IDAgYW5kIDEwNiBieXRlcyFcbiIpKTsKICAgICAgfCAgICAgICBefn5+fn5+fn5+fgovYnVp bGRzL21yZWhhay9ndXRlbnByaW50L2NvbXBvbmVudHMvZ3V0ZW5wcmludC9ndXRlbnByaW50 LTUuMy42LTIwMjYtMDItMTZUMDItMTktYTAxOWJmOWMvc3JjL21haW4vcHJpbnQtZHllc3Vi LmM6MTEwMjc6OTogZXJyb3I6IGZvcm1hdCBub3QgYSBzdHJpbmcgbGl0ZXJhbCBhbmQgbm8g Zm9ybWF0IGFyZ3VtZW50cyBbLVdlcnJvcj1mb3JtYXQtc2VjdXJpdHldCjExMDI3IHwgICAg ICAgICBzdHBfZXByaW50Zih2LCBfKCJJbGxlZ2FsIEFscGhhbnVtZXJpYyBpbiBNYWdzdHJp cGUsIDB4MjAtPjB4NUYgQVNDSUkgb25seVxuIikpOwogICAgICB8ICAgICAgICAgXn5+fn5+ fn5+fn4KL2J1aWxkcy9tcmVoYWsvZ3V0ZW5wcmludC9jb21wb25lbnRzL2d1dGVucHJpbnQv Z3V0ZW5wcmludC01LjMuNi0yMDI2LTAyLTE2VDAyLTE5LWEwMTliZjljL3NyYy9tYWluL3By aW50LWR5ZXN1Yi5jOjExMDMyOjc6IGVycm9yOiBmb3JtYXQgbm90IGEgc3RyaW5nIGxpdGVy YWwgYW5kIG5vIGZvcm1hdCBhcmd1bWVudHMgWy1XZXJyb3I9Zm9ybWF0LXNlY3VyaXR5XQox MTAzMiB8ICAgICAgIHN0cF9lcHJpbnRmKHYsIF8oIk1hZ3N0cmlwZSBhbHBoYW51bWVyaWMg ZGF0YSBtdXN0IHN0YXJ0IHdpdGggJyUlJ1xuIikpOwogICAgICB8ICAgICAgIF5+fn5+fn5+ fn5+Ci9idWlsZHMvbXJlaGFrL2d1dGVucHJpbnQvY29tcG9uZW50cy9ndXRlbnByaW50L2d1 dGVucHJpbnQtNS4zLjYtMjAyNi0wMi0xNlQwMi0xOS1hMDE5YmY5Yy9zcmMvbWFpbi9wcmlu dC1keWVzdWIuYzoxMTAzNjo3OiBlcnJvcjogZm9ybWF0IG5vdCBhIHN0cmluZyBsaXRlcmFs IGFuZCBubyBmb3JtYXQgYXJndW1lbnRzIFstV2Vycm9yPWZvcm1hdC1zZWN1cml0eV0KMTEw MzYgfCAgICAgICBzdHBfZXByaW50Zih2LCBfKCJNYWdzdHJpcGUgc3RyaW5nIG11c3QgZW5k IHdpdGggJz8nXG4iKSk7CiAgICAgIHwgICAgICAgXn5+fn5+fn5+fn4KL2J1aWxkcy9tcmVo YWsvZ3V0ZW5wcmludC9jb21wb25lbnRzL2d1dGVucHJpbnQvZ3V0ZW5wcmludC01LjMuNi0y MDI2LTAyLTE2VDAyLTE5LWEwMTliZjljL3NyYy9tYWluL3ByaW50LWR5ZXN1Yi5jOjExMDQ3 Ojk6IGVycm9yOiBmb3JtYXQgbm90IGEgc3RyaW5nIGxpdGVyYWwgYW5kIG5vIGZvcm1hdCBh cmd1bWVudHMgWy1XZXJyb3I9Zm9ybWF0LXNlY3VyaXR5XQoxMTA0NyB8ICAgICAgICAgc3Rw X2VwcmludGYodiwgXygiSWxsZWdhbCBOdW1lcmljIGluIE1hZ3N0cmlwZSwgMHgzMC0+MHgz RiBBU0NJSSBvbmx5XG4iKSk7CiAgICAgIHwgICAgICAgICBefn5+fn5+fn5+fgovYnVpbGRz L21yZWhhay9ndXRlbnByaW50L2NvbXBvbmVudHMvZ3V0ZW5wcmludC9ndXRlbnByaW50LTUu My42LTIwMjYtMDItMTZUMDItMTktYTAxOWJmOWMvc3JjL21haW4vcHJpbnQtZHllc3ViLmM6 MTEwNTI6NzogZXJyb3I6IGZvcm1hdCBub3QgYSBzdHJpbmcgbGl0ZXJhbCBhbmQgbm8gZm9y bWF0IGFyZ3VtZW50cyBbLVdlcnJvcj1mb3JtYXQtc2VjdXJpdHldCjExMDUyIHwgICAgICAg c3RwX2VwcmludGYodiwgXygiTWFnc3RyaXBlIG51bWVyaWMgZGF0YSBtdXN0IHN0YXJ0IHdp dGggJzsnXG4iKSk7CiAgICAgIHwgICAgICAgXn5+fn5+fn5+fn4KL2J1aWxkcy9tcmVoYWsv Z3V0ZW5wcmludC9jb21wb25lbnRzL2d1dGVucHJpbnQvZ3V0ZW5wcmludC01LjMuNi0yMDI2 LTAyLTE2VDAyLTE5LWEwMTliZjljL3NyYy9tYWluL3ByaW50LWR5ZXN1Yi5jOjExMDU2Ojc6 IGVycm9yOiBmb3JtYXQgbm90IGEgc3RyaW5nIGxpdGVyYWwgYW5kIG5vIGZvcm1hdCBhcmd1 bWVudHMgWy1XZXJyb3I9Zm9ybWF0LXNlY3VyaXR5XQoxMTA1NiB8ICAgICAgIHN0cF9lcHJp bnRmKHYsIF8oIk1hZ3N0cmlwZSBkYXRhIG11c3QgZW5kIHdpdGggJz8nXG4iKSk7CiAgICAg IHwgICAgICAgXn5+fn5+fn5+fn4KL2J1aWxkcy9tcmVoYWsvZ3V0ZW5wcmludC9jb21wb25l bnRzL2d1dGVucHJpbnQvZ3V0ZW5wcmludC01LjMuNi0yMDI2LTAyLTE2VDAyLTE5LWEwMTli ZjljL3NyYy9tYWluL3ByaW50LWR5ZXN1Yi5jOjExMDY3Ojk6IGVycm9yOiBmb3JtYXQgbm90 IGEgc3RyaW5nIGxpdGVyYWwgYW5kIG5vIGZvcm1hdCBhcmd1bWVudHMgWy1XZXJyb3I9Zm9y bWF0LXNlY3VyaXR5XQoxMTA2NyB8ICAgICAgICAgc3RwX2VwcmludGYodiwgXygiSWxsZWdh bCBOdW1lcmljIGluIE1hZ3N0cmlwZSwgMHgzMC0+MHgzRiBBU0NJSSBvbmx5XG4iKSk7CiAg ICAgIHwgICAgICAgICBefn5+fn5+fn5+fgovYnVpbGRzL21yZWhhay9ndXRlbnByaW50L2Nv bXBvbmVudHMvZ3V0ZW5wcmludC9ndXRlbnByaW50LTUuMy42LTIwMjYtMDItMTZUMDItMTkt YTAxOWJmOWMvc3JjL21haW4vcHJpbnQtZHllc3ViLmM6MTEwNzI6NzogZXJyb3I6IGZvcm1h dCBub3QgYSBzdHJpbmcgbGl0ZXJhbCBhbmQgbm8gZm9ybWF0IGFyZ3VtZW50cyBbLVdlcnJv cj1mb3JtYXQtc2VjdXJpdHldCjExMDcyIHwgICAgICAgc3RwX2VwcmludGYodiwgXygiTWFn c3RyaXBlIG51bWVyaWMgZGF0YSBtdXN0IHN0YXJ0IHdpdGggJzsnXG4iKSk7CiAgICAgIHwg ICAgICAgXn5+fn5+fn5+fn4KL2J1aWxkcy9tcmVoYWsvZ3V0ZW5wcmludC9jb21wb25lbnRz L2d1dGVucHJpbnQvZ3V0ZW5wcmludC01LjMuNi0yMDI2LTAyLTE2VDAyLTE5LWEwMTliZjlj L3NyYy9tYWluL3ByaW50LWR5ZXN1Yi5jOjExMDc2Ojc6IGVycm9yOiBmb3JtYXQgbm90IGEg c3RyaW5nIGxpdGVyYWwgYW5kIG5vIGZvcm1hdCBhcmd1bWVudHMgWy1XZXJyb3I9Zm9ybWF0 LXNlY3VyaXR5XQoxMTA3NiB8ICAgICAgIHN0cF9lcHJpbnRmKHYsIF8oIk1hZ3N0cmlwZSBk YXRhIG11c3QgZW5kIHdpdGggJz8nXG4iKSk7CiAgICAgIHwgICAgICAgXn5+fn5+fn5+fn4K L2J1aWxkcy9tcmVoYWsvZ3V0ZW5wcmludC9jb21wb25lbnRzL2d1dGVucHJpbnQvZ3V0ZW5w cmludC01LjMuNi0yMDI2LTAyLTE2VDAyLTE5LWEwMTliZjljL3NyYy9tYWluL3ByaW50LWR5 ZXN1Yi5jOiBJbiBmdW5jdGlvbiAnZHllc3ViX2RvX3ByaW50JzoKL2J1aWxkcy9tcmVoYWsv Z3V0ZW5wcmludC9jb21wb25lbnRzL2d1dGVucHJpbnQvZ3V0ZW5wcmludC01LjMuNi0yMDI2 LTAyLTE2VDAyLTE5LWEwMTliZjljL3NyYy9tYWluL3ByaW50LWR5ZXN1Yi5jOjEzNzE1Ojc6 IGVycm9yOiBmb3JtYXQgbm90IGEgc3RyaW5nIGxpdGVyYWwgYW5kIG5vIGZvcm1hdCBhcmd1 bWVudHMgWy1XZXJyb3I9Zm9ybWF0LXNlY3VyaXR5XQoxMzcxNSB8ICAgICAgIHN0cF9lcHJp bnRmKHYsIF8oIlByaW50IG9wdGlvbnMgbm90IHZlcmlmaWVkOyBjYW5ub3QgcHJpbnQuXG4i KSk7CiAgICAgIHwgICAgICAgXn5+fn5+fn5+fn4KY2MxOiBzb21lIHdhcm5pbmdzIGJlaW5n IHRyZWF0ZWQgYXMgZXJyb3JzCm1ha2VbNF06ICoqKiBbTWFrZWZpbGU6OTUwOiBwcmludC1y YXcubG9dIEVycm9yIDEKbWFrZVs0XTogKioqIFdhaXRpbmcgZm9yIHVuZmluaXNoZWQgam9i cy4uLi4KY2MxOiBzb21lIHdhcm5pbmdzIGJlaW5nIHRyZWF0ZWQgYXMgZXJyb3JzCm1ha2Vb NF06ICoqKiBbTWFrZWZpbGU6OTUwOiBwcmludGVycy5sb10gRXJyb3IgMQpjYzE6IHNvbWUg d2FybmluZ3MgYmVpbmcgdHJlYXRlZCBhcyBlcnJvcnMKbWFrZVs0XTogKioqIFtNYWtlZmls ZTo5NTA6IHByaW50LWVzY3AyLmxvXSBFcnJvciAxCmNjMTogc29tZSB3YXJuaW5ncyBiZWlu ZyB0cmVhdGVkIGFzIGVycm9ycwptYWtlWzRdOiAqKiogW01ha2VmaWxlOjk1MDogcHJpbnQt ZHllc3ViLmxvXSBFcnJvciAxCm1ha2VbNF06IExlYXZpbmcgZGlyZWN0b3J5ICcvYnVpbGRz L21yZWhhay9ndXRlbnByaW50L2NvbXBvbmVudHMvZ3V0ZW5wcmludC9idWlsZC9hbWQ2NC9z cmMvbWFpbicKbWFrZVszXTogKioqIFtNYWtlZmlsZTo0OTM6IGFsbC1yZWN1cnNpdmVdIEVy cm9yIDEKbWFrZVszXTogTGVhdmluZyBkaXJlY3RvcnkgJy9idWlsZHMvbXJlaGFrL2d1dGVu cHJpbnQvY29tcG9uZW50cy9ndXRlbnByaW50L2J1aWxkL2FtZDY0L3NyYycKbWFrZVsyXTog KioqIFtNYWtlZmlsZTo2MTI6IGFsbC1yZWN1cnNpdmVdIEVycm9yIDEKbWFrZVsyXTogTGVh dmluZyBkaXJlY3RvcnkgJy9idWlsZHMvbXJlaGFrL2d1dGVucHJpbnQvY29tcG9uZW50cy9n dXRlbnByaW50L2J1aWxkL2FtZDY0JwptYWtlWzFdOiAqKiogW01ha2VmaWxlOjU0MzogYWxs XSBFcnJvciAyCm1ha2VbMV06IExlYXZpbmcgZGlyZWN0b3J5ICcvYnVpbGRzL21yZWhhay9n dXRlbnByaW50L2NvbXBvbmVudHMvZ3V0ZW5wcmludC9idWlsZC9hbWQ2NCcKZ21ha2U6ICoq KiBbL2J1aWxkcy9tcmVoYWsvZ3V0ZW5wcmludC9tYWtlLXJ1bGVzL2NvbmZpZ3VyZS5tazox ODQ6IC9idWlsZHMvbXJlaGFrL2d1dGVucHJpbnQvY29tcG9uZW50cy9ndXRlbnByaW50L2J1 aWxkL2FtZDY0Ly5idWlsdF0gRXJyb3IgMgo= --------------GsnDFH5V0q000YRaQryMgtEZ Content-Type: text/x-patch; charset=UTF-8; name="security_format.patch" Content-Disposition: attachment; filename="security_format.patch" Content-Transfer-Encoding: base64 Rml4IHByaW50ZiBhbmQgc3RwX2VwcmludGYsIHRvIGF2b2lkIGZvcm1hdCBzdHJpbmcgdnVs bmVyYWJpbGl0eS4gClVwc3RyZWFtIGNhbmRpZGF0ZS4KCi0tLSBhL3NyYy9lc2NwdXRpbC9l c2NwdXRpbC5jCisrKyBiL3NyYy9lc2NwdXRpbC9lc2NwdXRpbC5jCkBAIC0zNDcsNyArMzQ3 LDcgQEAgYnJlYWs7CiAJY2FzZSAnUCc6CiAJICBpZiAodGhlX3ByaW50ZXIgfHwgcmF3X2Rl dmljZSkKIAkgICAgewotCSAgICAgIHByaW50ZihfKCJZb3UgbWF5IG9ubHkgc3BlY2lmeSBv bmUgcHJpbnRlciBvciByYXcgZGV2aWNlLiIpKTsKKwkgICAgICBwcmludGYoIiVzIiwgXygi WW91IG1heSBvbmx5IHNwZWNpZnkgb25lIHByaW50ZXIgb3IgcmF3IGRldmljZS4iKSk7CiAJ ICAgICAgZG9faGVscCgxKTsKIAkgICAgfQogCSAgdGhlX3ByaW50ZXIgPSBjX3N0cmR1cChv cHRhcmcpOwpAQCAtMzU1LDcgKzM1NSw3IEBAIGJyZWFrOwogCWNhc2UgJ3InOgogCSAgaWYg KHRoZV9wcmludGVyIHx8IHJhd19kZXZpY2UpCiAJICAgIHsKLQkgICAgICBwcmludGYoXygi WW91IG1heSBvbmx5IHNwZWNpZnkgb25lIHByaW50ZXIgb3IgcmF3IGRldmljZS4iKSk7CisJ ICAgICAgcHJpbnRmKCIlcyIsIF8oIllvdSBtYXkgb25seSBzcGVjaWZ5IG9uZSBwcmludGVy IG9yIHJhdyBkZXZpY2UuIikpOwogCSAgICAgIGRvX2hlbHAoMSk7CiAJICAgIH0KIAkgIHJh d19kZXZpY2UgPSBjX3N0cmR1cChvcHRhcmcpOwpAQCAtMzYzLDcgKzM2Myw3IEBAIGJyZWFr OwogCWNhc2UgJ20nOgogCSAgaWYgKHByaW50ZXJfbW9kZWwpCiAJICAgIHsKLQkgICAgICBw cmludGYoXygiWW91IG1heSBvbmx5IHNwZWNpZnkgb25lIHByaW50ZXIgbW9kZWwuIikpOwor CSAgICAgIHByaW50ZigiJXMiLCBfKCJZb3UgbWF5IG9ubHkgc3BlY2lmeSBvbmUgcHJpbnRl ciBtb2RlbC4iKSk7CiAJICAgICAgZG9faGVscCgxKTsKIAkgICAgfQogCSAgcHJpbnRlcl9t b2RlbCA9IGNfc3RyZHVwKG9wdGFyZyk7CkBAIC0zODcsNyArMzg3LDcgQEAgY2FzZSAnQyc6 CiAJICBhbGlnbm1lbnRfY2hvaWNlcyA9IGF0b2kob3B0YXJnKTsKIAkgIGlmIChhbGlnbm1l bnRfY2hvaWNlcyA8IDEpCiAJICAgIHsKLQkgICAgICBwcmludGYoXygiQWxpZ25tZW50IGNo b2ljZXMgbXVzdCBiZSBhdCBsZWFzdCAxLiIpKTsKKwkgICAgICBwcmludGYoIiVzIiwgXygi QWxpZ25tZW50IGNob2ljZXMgbXVzdCBiZSBhdCBsZWFzdCAxLiIpKTsKIAkgICAgICBkb19o ZWxwKDEpOwogCSAgICB9CiAJICBicmVhazsKQEAgLTM5NSw3ICszOTUsNyBAQCBjYXNlICdw JzoKIAkgIGFsaWdubWVudF9wYXNzZXMgPSBhdG9pKG9wdGFyZyk7CiAJICBpZiAoYWxpZ25t ZW50X3Bhc3NlcyA8IDEpCiAJICAgIHsKLQkgICAgICBwcmludGYoXygiQWxpZ25tZW50IHBh c3NlcyBtdXN0IGJlIGF0IGxlYXN0IDEuIikpOworCSAgICAgIHByaW50ZigiJXMiLCBfKCJB bGlnbm1lbnQgcGFzc2VzIG11c3QgYmUgYXQgbGVhc3QgMS4iKSk7CiAJICAgICAgZG9faGVs cCgxKTsKIAkgICAgfQogCSAgYnJlYWs7CkBAIC01MjEsNyArNTIxLDcgQEAgewogCSAgcmV0 cmllcysrOwogCSAgaWYgKHJldHJpZXMgPiAyKQogCSAgICB7Ci0JICAgICAgZnByaW50Zihz dGRlcnIsIF8oIlVuYWJsZSB0byBzZW5kIGNvbW1hbmQgdG8gcHJpbnRlclxuIikpOworCSAg ICAgIGZwcmludGYoc3RkZXJyLCAiJXMiLCBfKCJVbmFibGUgdG8gc2VuZCBjb21tYW5kIHRv IHByaW50ZXJcbiIpKTsKIAkgICAgICBpZiAocmF3X2RldmljZSkKIAkJZmNsb3NlKHBmaWxl KTsKIAkgICAgICBlbHNlCkBAIC01MzEsNyArNTMxLDcgQEAgfQogCX0KICAgICAgIGVsc2Ug aWYgKHN0YXR1cyA9PSAtMSkKIAl7Ci0JICBmcHJpbnRmKHN0ZGVyciwgXygiVW5hYmxlIHRv IHNlbmQgY29tbWFuZCB0byBwcmludGVyXG4iKSk7CisJICBmcHJpbnRmKHN0ZGVyciwgIiVz IiwgXygiVW5hYmxlIHRvIHNlbmQgY29tbWFuZCB0byBwcmludGVyXG4iKSk7CiAJICBpZiAo cmF3X2RldmljZSkKIAkgICAgZmNsb3NlKHBmaWxlKTsKIAkgIGVsc2UKQEAgLTU5Miw3ICs1 OTIsNyBAQCB9CiAgIGVsc2UgaWYgKHN0YXR1cyA9PSAwICYmIHJldHJ5ID09IDApCiAgICAg ewogICAgICAgaWYgKCFxdWlldCkKLQlmcHJpbnRmKHN0ZGVyciwgXygiUmVhZCBmcm9tIHBy aW50ZXIgdGltZWQgb3V0XG4iKSk7CisJZnByaW50ZihzdGRlcnIsICIlcyIsIF8oIlJlYWQg ZnJvbSBwcmludGVyIHRpbWVkIG91dFxuIikpOwogICAgIH0KICAgZWxzZSBpZiAoc3RhdHVz IDwgMCkKICAgICB7CkBAIC03NzgsNyArNzc4LDcgQEAgaW50IGZkOwogCiAgIGlmICghcmF3 X2RldmljZSkKICAgIHsKLSAgICAgIGZwcmludGYoc3RkZXJyLCBfKCJQbGVhc2Ugc3BlY2lm eSBhIHJhdyBkZXZpY2VcbiIpKTsKKyAgICAgIGZwcmludGYoc3RkZXJyLCAiJXMiLCBfKCJQ bGVhc2Ugc3BlY2lmeSBhIHJhdyBkZXZpY2VcbiIpKTsKICAgICAgIGV4aXQoMSk7CiAgICAg fQogCkBAIC05ODgsNyArOTg4LDcgQEAgaWYgKCFwb3MpCiAJICAgIHsKIAkgICAgICBpZiAo IXF1aWV0ICYmIGZhaWxfaWZfbm90X2ZvdW5kKQogCQl7Ci0JCSAgZnByaW50ZihzdGRlcnIs IF8oIlxuQ2Fubm90IGRldGVjdCBwcmludGVyIHR5cGUuXG4iCisJCSAgZnByaW50ZihzdGRl cnIsICIlcyIsIF8oIlxuQ2Fubm90IGRldGVjdCBwcmludGVyIHR5cGUuXG4iCiAJCQkJICAg ICJQbGVhc2UgdXNlIC1tIHRvIHNwZWNpZnkgeW91ciBwcmludGVyIG1vZGVsLlxuIikpOwog CQkgIGRvX2hlbHAoMSk7CiAJCX0KQEAgLTExMTAsNDMgKzExMTAsNDMgQEAgewogICBzd2l0 Y2ggKHBhcmFtKQogICAgIHsKICAgICBjYXNlIDA6Ci0gICAgICBwcmludGYoXygiU3RhdHVz OiBFcnJvclxuIikpOworICAgICAgcHJpbnRmKCIlcyIsIF8oIlN0YXR1czogRXJyb3JcbiIp KTsKICAgICAgIGJyZWFrOwogICAgIGNhc2UgMToKLSAgICAgIHByaW50ZihfKCJTdGF0dXM6 IFNlbGYtUHJpbnRpbmdcbiIpKTsKKyAgICAgIHByaW50ZigiJXMiLCBfKCJTdGF0dXM6IFNl bGYtUHJpbnRpbmdcbiIpKTsKICAgICAgIGJyZWFrOwogICAgIGNhc2UgMjoKLSAgICAgIHBy aW50ZihfKCJTdGF0dXM6IEJ1c3lcbiIpKTsKKyAgICAgIHByaW50ZigiJXMiLCBfKCJTdGF0 dXM6IEJ1c3lcbiIpKTsKICAgICAgIGJyZWFrOwogICAgIGNhc2UgMzoKLSAgICAgIHByaW50 ZihfKCJTdGF0dXM6IFdhaXRpbmdcbiIpKTsKKyAgICAgIHByaW50ZigiJXMiLCBfKCJTdGF0 dXM6IFdhaXRpbmdcbiIpKTsKICAgICAgIGJyZWFrOwogICAgIGNhc2UgNDoKLSAgICAgIHBy aW50ZihfKCJTdGF0dXM6IElkbGVcbiIpKTsKKyAgICAgIHByaW50ZigiJXMiLCBfKCJTdGF0 dXM6IElkbGVcbiIpKTsKICAgICAgIGJyZWFrOwogICAgIGNhc2UgNToKLSAgICAgIHByaW50 ZihfKCJTdGF0dXM6IFBhdXNlZFxuIikpOworICAgICAgcHJpbnRmKCIlcyIsIF8oIlN0YXR1 czogUGF1c2VkXG4iKSk7CiAgICAgICBicmVhazsKICAgICBjYXNlIDc6Ci0gICAgICBwcmlu dGYoXygiU3RhdHVzOiBDbGVhbmluZ1xuIikpOworICAgICAgcHJpbnRmKCIlcyIsIF8oIlN0 YXR1czogQ2xlYW5pbmdcbiIpKTsKICAgICAgIGJyZWFrOwogICAgIGNhc2UgODoKLSAgICAg IHByaW50ZihfKCJTdGF0dXM6IEZhY3Rvcnkgc2hpcG1lbnRcbiIpKTsKKyAgICAgIHByaW50 ZigiJXMiLCBfKCJTdGF0dXM6IEZhY3Rvcnkgc2hpcG1lbnRcbiIpKTsKICAgICAgIGJyZWFr OwogICAgIGNhc2UgOToKLSAgICAgIHByaW50ZihfKCJTdGF0dXM6IFNsZWVwaW5nXG4iKSk7 IC8qIExvd2VyIHBvd2VyIG1vZGUgKi8KKyAgICAgIHByaW50ZigiJXMiLCBfKCJTdGF0dXM6 IFNsZWVwaW5nXG4iKSk7IC8qIExvd2VyIHBvd2VyIG1vZGUgKi8KICAgICAgIGJyZWFrOwog ICAgIGNhc2UgMHhhOgotICAgICAgcHJpbnRmKF8oIlN0YXR1czogU2h1dHRpbmcgZG93blxu IikpOworICAgICAgcHJpbnRmKCIlcyIsIF8oIlN0YXR1czogU2h1dHRpbmcgZG93blxuIikp OwogICAgICAgYnJlYWs7CiAgICAgY2FzZSAweGM6Ci0gICAgICBwcmludGYoXygiU3RhdHVz OiBJbml0aWFsaXppbmcgcGFwZXJcbiIpKTsKKyAgICAgIHByaW50ZigiJXMiLCBfKCJTdGF0 dXM6IEluaXRpYWxpemluZyBwYXBlclxuIikpOwogICAgICAgYnJlYWs7CiAgICAgY2FzZSAw eGQ6Ci0gICAgICBwcmludGYoXygiU3RhdHVzOiBCbGFjayBpbmsgc3dpdGNoaW5nXG4iKSk7 CisgICAgICBwcmludGYoIiVzIiwgXygiU3RhdHVzOiBCbGFjayBpbmsgc3dpdGNoaW5nXG4i KSk7CiAgICAgICBicmVhazsKICAgICBjYXNlIDB4ZjoKLSAgICAgIHByaW50ZihfKCJTdGF0 dXM6IEluaXRpYWxpemluZyBpbmtcbiIpKTsKKyAgICAgIHByaW50ZigiJXMiLCBfKCJTdGF0 dXM6IEluaXRpYWxpemluZyBpbmtcbiIpKTsKICAgICAgIGJyZWFrOwogICAgIGRlZmF1bHQ6 CiAgICAgICBwcmludGYoXygiU3RhdHVzOiBVbmtub3duICglZClcbiIpLCBwYXJhbSk7CkBA IC0xMTYwLDgyICsxMTYwLDgyIEBAIHsKICAgc3dpdGNoIChwYXJhbSkKICAgICB7CiAgICAg Y2FzZSAwOgotICAgICAgcHJpbnRmKF8oIkVycm9yOiBGYXRhbCBFcnJvclxuIikpOworICAg ICAgcHJpbnRmKCIlcyIsIF8oIkVycm9yOiBGYXRhbCBFcnJvclxuIikpOwogICAgICAgYnJl YWs7CiAgICAgY2FzZSAxOgotICAgICAgcHJpbnRmKF8oIkVycm9yOiBPdGhlciBpbnRlcmZh Y2UgaXMgc2VsZWN0ZWRcbiIpKTsKKyAgICAgIHByaW50ZigiJXMiLCBfKCJFcnJvcjogT3Ro ZXIgaW50ZXJmYWNlIGlzIHNlbGVjdGVkXG4iKSk7CiAgICAgICBicmVhazsKICAgICBjYXNl IDI6Ci0gICAgICBwcmludGYoXygiRXJyb3I6IENvdmVyIE9wZW5cbiIpKTsKKyAgICAgIHBy aW50ZigiJXMiLCBfKCJFcnJvcjogQ292ZXIgT3BlblxuIikpOwogICAgICAgYnJlYWs7CiAg ICAgY2FzZSA0OgotICAgICAgcHJpbnRmKF8oIkVycm9yOiBQYXBlciBqYW1cbiIpKTsKKyAg ICAgIHByaW50ZigiJXMiLCBfKCJFcnJvcjogUGFwZXIgamFtXG4iKSk7CiAgICAgICBicmVh azsKICAgICBjYXNlIDU6Ci0gICAgICBwcmludGYoXygiRXJyb3I6IEluayBvdXRcbiIpKTsK KyAgICAgIHByaW50ZigiJXMiLCBfKCJFcnJvcjogSW5rIG91dFxuIikpOwogICAgICAgYnJl YWs7CiAgICAgY2FzZSA2OgotICAgICAgcHJpbnRmKF8oIkVycm9yOiBQYXBlciBvdXRcbiIp KTsKKyAgICAgIHByaW50ZigiJXMiLCBfKCJFcnJvcjogUGFwZXIgb3V0XG4iKSk7CiAgICAg ICBicmVhazsKICAgICBjYXNlIDB4YjoKLSAgICAgIHByaW50ZihfKCJFcnJvcjogRG91Ymxl IGZlZWRcbiIpKTsKKyAgICAgIHByaW50ZigiJXMiLCBfKCJFcnJvcjogRG91YmxlIGZlZWRc biIpKTsKICAgICAgIGJyZWFrOwogICAgIGNhc2UgMHhjOgotICAgICAgcHJpbnRmKF8oIkVy cm9yOiBNaXNjZWxsYW5lb3VzIHBhcGVyIGVycm9yXG4iKSk7CisgICAgICBwcmludGYoIiVz IiwgXygiRXJyb3I6IE1pc2NlbGxhbmVvdXMgcGFwZXIgZXJyb3JcbiIpKTsKICAgICAgIGJy ZWFrOwogICAgIGNhc2UgMHgxMDoKLSAgICAgIHByaW50ZihfKCJFcnJvcjogTWFpbnRlbmFu Y2UgY2FydHJpZGdlIG92ZXJmbG93XG4iKSk7CisgICAgICBwcmludGYoIiVzIiwgXygiRXJy b3I6IE1haW50ZW5hbmNlIGNhcnRyaWRnZSBvdmVyZmxvd1xuIikpOwogICAgICAgYnJlYWs7 CiAgICAgY2FzZSAweDExOgotICAgICAgcHJpbnRmKF8oIkVycm9yOiBXYWl0IHJldHVybiBm cm9tIHRoZSB0ZWFyLW9mZiBwb3NpdGlvblxuIikpOworICAgICAgcHJpbnRmKCIlcyIsIF8o IkVycm9yOiBXYWl0IHJldHVybiBmcm9tIHRoZSB0ZWFyLW9mZiBwb3NpdGlvblxuIikpOwog ICAgICAgYnJlYWs7CiAgICAgY2FzZSAweDEyOgotICAgICAgcHJpbnRmKF8oIkVycm9yOiBE b3VibGUgZmVlZCBlcnJvclxuIikpOworICAgICAgcHJpbnRmKCIlcyIsIF8oIkVycm9yOiBE b3VibGUgZmVlZCBlcnJvclxuIikpOwogICAgICAgYnJlYWs7CiAgICAgY2FzZSAweDE2Ogot ICAgICAgcHJpbnRmKF8oIkVycm9yOiBDbGVhbmluZyBpbXBvc3NpYmxlXG4iKSk7CisgICAg ICBwcmludGYoIiVzIiwgXygiRXJyb3I6IENsZWFuaW5nIGltcG9zc2libGVcbiIpKTsKICAg ICAgIGJyZWFrOwogICAgIGNhc2UgMHgxYToKLSAgICAgIHByaW50ZihfKCJFcnJvcjogSW5r IGNhcnRyaWRnZSBsZXZlciByZWxlYXNlZFxuXG4iKSk7CisgICAgICBwcmludGYoIiVzIiwg XygiRXJyb3I6IEluayBjYXJ0cmlkZ2UgbGV2ZXIgcmVsZWFzZWRcblxuIikpOwogICAgICAg YnJlYWs7CiAgICAgY2FzZSAweDFjOgotICAgICAgcHJpbnRmKF8oIkVycm9yOiBVbnJlY292 ZXJhYmxlIGN1dHRlciBlcnJvclxuIikpOworICAgICAgcHJpbnRmKCIlcyIsIF8oIkVycm9y OiBVbnJlY292ZXJhYmxlIGN1dHRlciBlcnJvclxuIikpOwogICAgICAgYnJlYWs7CiAgICAg Y2FzZSAweDFkOgotICAgICAgcHJpbnRmKF8oIkVycm9yOiBSZWNvdmVyYWJsZSBjdXR0ZXIg amFtXG4iKSk7CisgICAgICBwcmludGYoIiVzIiwgXygiRXJyb3I6IFJlY292ZXJhYmxlIGN1 dHRlciBqYW1cbiIpKTsKICAgICAgIGJyZWFrOwogICAgIGNhc2UgMHgyMjoKLSAgICAgIHBy aW50ZihfKCJFcnJvcjogTm8gbWFpbnRlbmFuY2UgY2FydHJpZGdlIHByZXNlbnRcbiIpKTsK KyAgICAgIHByaW50ZigiJXMiLCBfKCJFcnJvcjogTm8gbWFpbnRlbmFuY2UgY2FydHJpZGdl IHByZXNlbnRcbiIpKTsKICAgICAgIGJyZWFrOwogICAgIGNhc2UgMHgyNToKLSAgICAgIHBy aW50ZihfKCJFcnJvcjogUmVhciBjb3ZlciBvcGVuXG4iKSk7CisgICAgICBwcmludGYoIiVz IiwgXygiRXJyb3I6IFJlYXIgY292ZXIgb3BlblxuIikpOwogICAgICAgYnJlYWs7CiAgICAg Y2FzZSAweDI5OgotICAgICAgcHJpbnRmKF8oIkVycm9yOiBDRCBUcmF5IE91dFxuIikpOwor ICAgICAgcHJpbnRmKCIlcyIsIF8oIkVycm9yOiBDRCBUcmF5IE91dFxuIikpOwogICAgICAg YnJlYWs7CiAgICAgY2FzZSAweDJhOgotICAgICAgcHJpbnRmKF8oIkVycm9yOiBDYXJkIGxv YWRpbmcgZXJyb3JcbiIpKTsKKyAgICAgIHByaW50ZigiJXMiLCBfKCJFcnJvcjogQ2FyZCBs b2FkaW5nIGVycm9yXG4iKSk7CiAgICAgICBicmVhazsKICAgICBjYXNlIDB4MmI6Ci0gICAg ICBwcmludGYoXygiRXJyb3I6IFRyYXkgY292ZXIgb3BlblxuIikpOworICAgICAgcHJpbnRm KCIlcyIsIF8oIkVycm9yOiBUcmF5IGNvdmVyIG9wZW5cbiIpKTsKICAgICAgIGJyZWFrOwog ICAgIGNhc2UgMHgyZDoKLSAgICAgIHByaW50ZihfKCJFcnJvcjogTm8gbWFpbnRlbmFuY2Ug Ym94XG4iKSk7CisgICAgICBwcmludGYoIiVzIiwgXygiRXJyb3I6IE5vIG1haW50ZW5hbmNl IGJveFxuIikpOwogICAgICAgYnJlYWs7CiAgICAgY2FzZSAweDJlOgotICAgICAgcHJpbnRm KF8oIkVycm9yOiBNYWludGVuYW5jZSBib3ggb3ZlcmZsb3dcbiIpKTsKKyAgICAgIHByaW50 ZigiJXMiLCBfKCJFcnJvcjogTWFpbnRlbmFuY2UgYm94IG92ZXJmbG93XG4iKSk7CiAgICAg ICBicmVhazsKICAgICBjYXNlIDB4MzY6Ci0gICAgICBwcmludGYoXygiRXJyb3I6IE1haW50 ZW5hbmNlIGNhcnRyaWRnZSBjb3ZlciBvcGVuXG4iKSk7CisgICAgICBwcmludGYoIiVzIiwg XygiRXJyb3I6IE1haW50ZW5hbmNlIGNhcnRyaWRnZSBjb3ZlciBvcGVuXG4iKSk7CiAgICAg ICBicmVhazsKICAgICBjYXNlIDB4Mzc6Ci0gICAgICBwcmludGYoXygiRXJyb3I6IEZyb250 IGNvdmVyIG9wZW5cbiIpKTsKKyAgICAgIHByaW50ZigiJXMiLCBfKCJFcnJvcjogRnJvbnQg Y292ZXIgb3BlblxuIikpOwogICAgICAgYnJlYWs7CiAgICAgY2FzZSAweDQwOgotICAgICAg cHJpbnRmKF8oIkVycm9yOiBTdHJpcCBiaW4gbWlzc2luZ1xuIikpOworICAgICAgcHJpbnRm KCIlcyIsIF8oIkVycm9yOiBTdHJpcCBiaW4gbWlzc2luZ1xuIikpOwogICAgICAgYnJlYWs7 CiAgICAgY2FzZSAweDQxOgotICAgICAgcHJpbnRmKF8oIkVycm9yOiBNYWludGVuYW5jZSBy ZXF1ZXN0XG4iKSk7CisgICAgICBwcmludGYoIiVzIiwgXygiRXJyb3I6IE1haW50ZW5hbmNl IHJlcXVlc3RcbiIpKTsKICAgICAgIGJyZWFrOwogICAgIGRlZmF1bHQ6CiAgICAgICBwcmlu dGYoXygiRXJyb3I6IFVua25vd24gKCVkKVxuIiksIHBhcmFtKTsKQEAgLTEyNjksMTAgKzEy NjksMTAgQEAgewogICAgICAgc3dpdGNoIChwYXJhbSkKIAl7CiAJY2FzZSAweDIwOgotCSAg cHJpbnRmKF8oIldhcm5pbmc6IE1haW50ZW5hbmNlIGNhcnRyaWRnZSBuZWFyIGZ1bGxcbiIp KTsKKwkgIHByaW50ZigiJXMiLCBfKCJXYXJuaW5nOiBNYWludGVuYW5jZSBjYXJ0cmlkZ2Ug bmVhciBmdWxsXG4iKSk7CiAJICBicmVhazsKIAljYXNlIDB4MjE6Ci0JICBwcmludGYoXygi V2FybmluZzogTWFpbnRlbmFuY2UgcmVxdWVzdCBwZW5kaW5nXG4iKSk7CisJICBwcmludGYo IiVzIiwgXygiV2FybmluZzogTWFpbnRlbmFuY2UgcmVxdWVzdCBwZW5kaW5nXG4iKSk7CiAJ ICBicmVhazsKIAlkZWZhdWx0OgogCSAgcHJpbnRmKF8oIldhcm5pbmc6IFVua25vd24gKCVs dSlcbiIpLCBwYXJhbSk7CkBAIC0xMjg3LDcgKzEyODcsNyBAQCB7CiAgIHN3aXRjaCAocGFy YW0pCiAgICAgewogICAgIGNhc2UgMDoKLSAgICAgIHByaW50ZihfKCJQcmludGluZyBub3p6 bGUgc2VsZi10ZXN0XG4iKSk7CisgICAgICBwcmludGYoIiVzIiwgXygiUHJpbnRpbmcgbm96 emxlIHNlbGYtdGVzdFxuIikpOwogICAgICAgYnJlYWs7CiAgICAgZGVmYXVsdDoKICAgICAg IGJyZWFrOwpAQCAtMTM4OSw3ICsxMzg5LDcgQEAgc3RwX3N0cmluZ19saXN0X2FkZF9zdHJp bmcoY29sb3JfbGlzdCwgIgogCSAgICB9CiAKIAkgIGlmIChjbWQgPT0gQ01EX1NUQVRVUykK LQkgICAgcHJpbnRmKF8oIkluayBMZXZlbHM6XG4iKSk7CisJICAgIHByaW50ZigiJXMiLCBf KCJJbmsgTGV2ZWxzOlxuIikpOwogCSAgcHJpbnRmKCIlMjBzICAgICUyMHNcbiIsIF8oIklu ayBjb2xvciIpLCBfKCJQZXJjZW50IHJlbWFpbmluZyIpKTsKIAkgIHByaW50X29sZF9pbmtf bGV2ZWxzKGluZCwgY29sb3JfbGlzdCk7CiAJICBzdHBfc3RyaW5nX2xpc3RfZGVzdHJveShj b2xvcl9saXN0KTsKQEAgLTE0MzQsNyArMTQzNCw3IEBAIHsKIAkgIHNpemVfdCBjb3VudCA9 ICh0b3RhbF9wYXJhbV9jb3VudCAtIDEpIC8gcGFyYW07CiAJICBpbmQgPSBidWYgKyBpICsg MzsKIAkgIGlmIChjbWQgPT0gQ01EX1NUQVRVUykKLQkgICAgcHJpbnRmKF8oIkluayBMZXZl bHM6XG4iKSk7CisJICAgIHByaW50ZigiJXMiLCBfKCJJbmsgTGV2ZWxzOlxuIikpOwogCSAg cHJpbnRmKCIlMjVzICAgICUyMHNcbiIsIF8oIkluayBjb2xvciIpLCBfKCJQZXJjZW50IHJl bWFpbmluZyIpKTsKIAkgIGZvciAoaiA9IDA7IGogPCBjb3VudDsgaisrKQogCSAgICB7CkBA IC0xNDk2LDI3ICsxNDk2LDI3IEBAIGJyZWFrOwogCSAgICBjYXNlIDB4MTk6CS8qIEpvYiBu YW1lICovCiAJICAgICAgaWYgKHRvdGFsX3BhcmFtX2NvdW50ID4gNSkKIAkJewotCQkgIHBy aW50ZihfKCJKb2IgTmFtZTogIikpOworCQkgIHByaW50ZigiJXMiLCBfKCJKb2IgTmFtZTog IikpOwogCQkgIGZvciAoaiA9IDU7IGogPCB0b3RhbF9wYXJhbV9jb3VudDsgaisrKQogCQkg ICAgcHV0Y2hhcihidWZbaSArIGogKyAyXSk7CiAJCSAgcHV0Y2hhcignXG4nKTsKIAkJfQog CSAgICAgIGJyZWFrOwogCSAgICBjYXNlIDB4MWY6CS8qIFNlcmlhbCBudW1iZXIgKi8KLQkg ICAgICBwcmludGYoXygiU2VyaWFsIE51bWJlcjogIikpOworCSAgICAgIHByaW50ZigiJXMi LCBfKCJTZXJpYWwgTnVtYmVyOiAiKSk7CiAJICAgICAgZm9yIChqID0gMDsgaiA8IHRvdGFs X3BhcmFtX2NvdW50OyBqKyspCiAJCSBwdXRjaGFyKGJ1ZltpICsgaiArIDJdKTsKIAkgICAg ICBwdXRjaGFyKCdcbicpOwogCSAgICAgIGJyZWFrOwogCSAgICBjYXNlIDB4MjE6IC8qIFBh cGVyIHJlbWFpbmluZywgaW4gY2VudGltZXRlcnMgKi8KICAgICAgICAgICAgICAgcGFyYW0g PSBidWZbaSArIDNdICsgKGJ1ZltpICsgNF0gPDwgOCk7Ci0JICAgICAgcHJpbnRmKF8oIlBh cGVyIFJlbWFpbmluZzoiKSk7CisJICAgICAgcHJpbnRmKCIlcyIsIF8oIlBhcGVyIFJlbWFp bmluZzoiKSk7CiAJICAgICAgcHJpbnRmKCIgJWQgZmVldCAvICVkIGNtIiwgKGludCkoKChk b3VibGUpcGFyYW0rMTUuMjQpIC8gMzAuNDhmKSwgcGFyYW0pOwogCSAgICAgIHB1dGNoYXIo J1xuJyk7CiAJICAgICAgYnJlYWs7CiAJICAgIGNhc2UgMHgyYzogLyogUGFwZXIgd2lkdGgs IGluIHVuaXRzIG9mIDM2MCBkcGkgKi8KIAkgICAgICBwYXJhbSA9IGJ1ZltpICsgMl0gKyAo YnVmW2kgKyAzXSA8PCA4KTsKLSAgICAgICAgICAgICAgcHJpbnRmKF8oIlBhcGVyIFdpZHRo OiAiKSk7CisgICAgICAgICAgICAgIHByaW50ZigiJXMiLCBfKCJQYXBlciBXaWR0aDogIikp OwogICAgICAgICAgICAgICBpZiAocGFyYW0gPiAyODgwKQogICAgICAgICAgICAgICAgIHBy aW50ZigiQTQgLyAyMTBtbSIpOwogICAgICAgICAgICAgICBlbHNlIGlmIChwYXJhbSA+IDIx NjApCkBAIC0xODkyLDcgKzE4OTIsNyBAQCBjb25zdCBzdHBfcHJpbnRlcl90ICpwcmludGVy OwogCiAgIGlmICghcmF3X2RldmljZSkKICAgICB7Ci0gICAgICBmcHJpbnRmKHN0ZGVycixf KCJPYnRhaW5pbmcgZXh0ZW5kZWQgaW5rIGluZm9ybWF0aW9uIHJlcXVpcmVzIHVzaW5nIGEg cmF3IGRldmljZS5cbiIpKTsKKyAgICAgIGZwcmludGYoc3RkZXJyLCIlcyIsIF8oIk9idGFp bmluZyBleHRlbmRlZCBpbmsgaW5mb3JtYXRpb24gcmVxdWlyZXMgdXNpbmcgYSByYXcgZGV2 aWNlLlxuIikpOwogICAgICAgZXhpdCgxKTsKICAgICB9CiAKQEAgLTE5MTksNyArMTkxOSw3 IEBAIHN0cF9zdHJpbmdfbGlzdF90ICpjb2xvcl9saXN0OwogCiAgIGlmICghcmF3X2Rldmlj ZSkKICAgICB7Ci0gICAgICBmcHJpbnRmKHN0ZGVycixfKCJSZXNldHRpbmcgaW5rIGxldmVs cyByZXF1aXJlcyB1c2luZyBhIHJhdyBkZXZpY2UuXG4iKSk7CisgICAgICBmcHJpbnRmKHN0 ZGVyciwiJXMiLCBfKCJSZXNldHRpbmcgaW5rIGxldmVscyByZXF1aXJlcyB1c2luZyBhIHJh dyBkZXZpY2UuXG4iKSk7CiAgICAgICBleGl0KDEpOwogICAgIH0KIApAQCAtMTk2Nyw3ICsx OTY3LDcgQEAgY29uc3Qgc3RwX3ByaW50ZXJfdCAqcHJpbnRlcjsKICAgaWYgKCFyYXdfZGV2 aWNlKQogICAgIHsKICAgICAgIGZwcmludGYoc3RkZXJyLAotCSAgICAgIF8oIlByaW50ZXIg aWRlbnRpZmljYXRpb24gcmVxdWlyZXMgdXNpbmcgYSByYXcgZGV2aWNlLlxuIikpOworCSAg ICAgICIlcyIsIF8oIlByaW50ZXIgaWRlbnRpZmljYXRpb24gcmVxdWlyZXMgdXNpbmcgYSBy YXcgZGV2aWNlLlxuIikpOwogICAgICAgZXhpdCgxKTsKICAgICB9CiAgIGlmIChwcmludGVy X21vZGVsKQpAQCAtMTk4NSw3ICsxOTg1LDcgQEAgZWxzZSBpZiAocHJpbnRlcl9tb2RlbCkK ICAgICBwcmludGYoIkVQU09OICVzXG4iLCBwcmludGVyX21vZGVsKTsKICAgZWxzZQogICAg IHsKLSAgICAgIGZwcmludGYoc3RkZXJyLCBfKCJDYW5ub3QgaWRlbnRpZnkgcHJpbnRlciBt b2RlbC5cbiIpKTsKKyAgICAgIGZwcmludGYoc3RkZXJyLCAiJXMiLCBfKCJDYW5ub3QgaWRl bnRpZnkgcHJpbnRlciBtb2RlbC5cbiIpKTsKICAgICAgIGV4aXQoMSk7CiAgICAgfQogfQpA QCAtMjAwNyw3ICsyMDA3LDcgQEAgZWxzZSBpZiAocmF3X2RldmljZSkKICAgICAodm9pZCkg Z2V0X3ByaW50ZXIoMSwgMCk7CiAgIGluaXRpYWxpemVfcHJpbnRfY21kKDEpOwogICBkb19y ZW1vdGVfY21kKCJDSCIsIDIsIDAsIDApOwotICBwcmludGYoXygiQ2xlYW5pbmcgaGVhZHMu Li5cbiIpKTsKKyAgcHJpbnRmKCIlcyIsIF8oIkNsZWFuaW5nIGhlYWRzLi4uXG4iKSk7CiAg IGV4aXQoZG9fcHJpbnRfY21kKCkpOwogfQogCkBAIC0yMDI0LDcgKzIwMjQsNyBAQCBkb19y ZW1vdGVfY21kX29ubHkoIlZJIiwgMiwgMCwgMCk7CiAgIGRvX3JlbW90ZV9jbWRfb25seSgi TkMiLCAyLCAwLCAweDEwKTsKICAgZG9fcmVtb3RlX2NtZF9vbmx5KCJOQyIsIDIsIDAsIDAp OwogICBlbmRfcmVtb3RlX3NlcXVlbmNlKCk7Ci0gIHByaW50ZihfKCJSdW5uaW5nIG5venps ZSBjaGVjaywgcGxlYXNlIGVuc3VyZSBwYXBlciBpcyBpbiB0aGUgcHJpbnRlci5cbiIpKTsK KyAgcHJpbnRmKCIlcyIsIF8oIlJ1bm5pbmcgbm96emxlIGNoZWNrLCBwbGVhc2UgZW5zdXJl IHBhcGVyIGlzIGluIHRoZSBwcmludGVyLlxuIikpOwogICBleGl0KGRvX3ByaW50X2NtZCgp KTsKIH0KIApAQCAtMjEwNyw3ICsyMTA3LDcgQEAgfQogc3RhdGljIHZvaWQKIHByaW50ZXJf ZXJyb3Iodm9pZCkKIHsKLSAgcHJpbnRmKF8oIlVuYWJsZSB0byBzZW5kIGNvbW1hbmQgdG8g dGhlIHByaW50ZXIsIGV4aXRpbmcuXG4iKSk7CisgIHByaW50ZigiJXMiLCBfKCJVbmFibGUg dG8gc2VuZCBjb21tYW5kIHRvIHRoZSBwcmludGVyLCBleGl0aW5nLlxuIikpOwogICBleGl0 KDEpOwogfQogCkBAIC0yMTIxLDEwICsyMTIxLDEwIEBAIGNoYXIgKmluYnVmOwogICAgICAg cmV0cnlfY291bnQrKzsKICAgICAgIGlmIChyZXRyeV9jb3VudCA+IDEwKQogCXsKLQkgIHBy aW50ZihfKCJFeGl0aW5nXG4iKSk7CisJICBwcmludGYoIiVzIiwgXygiRXhpdGluZ1xuIikp OwogCSAgZXhpdCgxKTsKIAl9Ci0gICAgICBwcmludGYoXygiUGxlYXNlIGluc3BlY3QgdGhl IGZpbmFsIG91dHB1dCB2ZXJ5IGNhcmVmdWxseSB0byBlbnN1cmUgdGhhdCB5b3VyXG4iCisg ICAgICBwcmludGYoIiVzIiwgXygiUGxlYXNlIGluc3BlY3QgdGhlIGZpbmFsIG91dHB1dCB2 ZXJ5IGNhcmVmdWxseSB0byBlbnN1cmUgdGhhdCB5b3VyXG4iCiAJICAgICAgICJwcmludGVy IGlzIGluIHByb3BlciBhbGlnbm1lbnQuIFlvdSBtYXkgbm93OlxuIgogCSAgICAgICAiICAo cylhdmUgdGhlIHJlc3VsdHMgaW4gdGhlIHByaW50ZXIsXG4iCiAJICAgICAgICIgIChxKXVp dCB3aXRob3V0IHNhdmluZyB0aGUgcmVzdWx0cywgb3JcbiIKQEAgLTIxMzksMjEgKzIxMzks MjEgQEAgc3dpdGNoIChpbmJ1ZlswXSkKIAl7CiAJY2FzZSAncSc6CiAJY2FzZSAnUSc6Ci0J ICBwcmludGYoXygiUGxlYXNlIGNvbmZpcm0gYnkgdHlwaW5nICdxJyBhZ2FpbiB0aGF0IHlv dSB3aXNoIHRvIHF1aXQgd2l0aG91dCBzYXZpbmc6XG4iKSk7CisJICBwcmludGYoIiVzIiwg XygiUGxlYXNlIGNvbmZpcm0gYnkgdHlwaW5nICdxJyBhZ2FpbiB0aGF0IHlvdSB3aXNoIHRv IHF1aXQgd2l0aG91dCBzYXZpbmc6XG4iKSk7CiAJICBmZmx1c2goc3Rkb3V0KTsKIAkgIGlu YnVmID0gZG9fZ2V0X2lucHV0IChfKCI+ICIpKTsKIAkgIGlmICghaW5idWYpCiAJICAgIGNv bnRpbnVlOwogCSAgaWYgKGluYnVmWzBdID09ICdxJyB8fCBpbmJ1ZlswXSA9PSAnUScpCiAJ ICAgIHsKLQkgICAgICBwcmludGYoXygiT0ssIHlvdXIgcHJpbnRlciBpcyBhbGlnbmVkLCBi dXQgdGhlIGFsaWdubWVudCBoYXMgbm90IGJlZW4gc2F2ZWQuXG4iCisJICAgICAgcHJpbnRm KCIlcyIsIF8oIk9LLCB5b3VyIHByaW50ZXIgaXMgYWxpZ25lZCwgYnV0IHRoZSBhbGlnbm1l bnQgaGFzIG5vdCBiZWVuIHNhdmVkLlxuIgogCQkgICAgICAgIklmIHlvdSB3aXNoIHRvIHNh dmUgdGhlIGFsaWdubWVudCwgeW91IG11c3QgcmVwZWF0IHRoaXMgcHJvY2Vzcy5cbiIpKTsK IAkgICAgICByZXR1cm4gMTsKIAkgICAgfQogCSAgYnJlYWs7CiAJY2FzZSAncic6CiAJY2Fz ZSAnUic6Ci0JICBwcmludGYoXygiUGxlYXNlIGNvbmZpcm0gYnkgdHlwaW5nICdyJyBhZ2Fp biB0aGF0IHlvdSB3aXNoIHRvIHJlcGVhdCB0aGVcbiIKKwkgIHByaW50ZigiJXMiLCBfKCJQ bGVhc2UgY29uZmlybSBieSB0eXBpbmcgJ3InIGFnYWluIHRoYXQgeW91IHdpc2ggdG8gcmVw ZWF0IHRoZVxuIgogCQkgICAiYWxpZ25tZW50IHByb2Nlc3M6XG4iKSk7CiAJICBmZmx1c2go c3Rkb3V0KTsKIAkgIGluYnVmID0gZG9fZ2V0X2lucHV0KF8oIj4gIikpOwpAQCAtMjE2MSwx MyArMjE2MSwxMyBAQCBpZiAoIWluYnVmKQogCSAgICBjb250aW51ZTsKIAkgIGlmIChpbmJ1 ZlswXSA9PSAncicgfHwgaW5idWZbMF0gPT0gJ1InKQogCSAgICB7Ci0JICAgICAgcHJpbnRm KF8oIlJlcGVhdGluZyB0aGUgYWxpZ25tZW50IHByb2Nlc3MuXG4iKSk7CisJICAgICAgcHJp bnRmKCIlcyIsIF8oIlJlcGVhdGluZyB0aGUgYWxpZ25tZW50IHByb2Nlc3MuXG4iKSk7CiAJ ICAgICAgcmV0dXJuIDA7CiAJICAgIH0KIAkgIGJyZWFrOwogCWNhc2UgJ3MnOgogCWNhc2Ug J1MnOgotCSAgcHJpbnRmKF8oIlRoaXMgd2lsbCBwZXJtYW5lbnRseSBhbHRlciB0aGUgY29u ZmlndXJhdGlvbiBvZiB5b3VyIHByaW50ZXIuXG4iCisJICBwcmludGYoIiVzIiwgXygiVGhp cyB3aWxsIHBlcm1hbmVudGx5IGFsdGVyIHRoZSBjb25maWd1cmF0aW9uIG9mIHlvdXIgcHJp bnRlci5cbiIKIAkJICAgIldBUk5JTkc6IHRoaXMgcHJvY2VkdXJlIGhhcyBub3QgYmVlbiBh cHByb3ZlZCBieSBTZWlrbyBFcHNvbiwgYW5kXG4iCiAJCSAgICJpdCBtYXkgZGFtYWdlIHlv dXIgcHJpbnRlci4gUHJvY2VlZD9cbiIKIAkJICAgIlBsZWFzZSBjb25maXJtIGJ5IHR5cGlu ZyAncycgYWdhaW4gdGhhdCB5b3Ugd2lzaCB0byBzYXZlIHRoZSBzZXR0aW5nc1xuIgpAQCAt MjE3OSwyNyArMjE3OSwyNyBAQCBpZiAoIWluYnVmKQogCSAgICBjb250aW51ZTsKIAkgIGlm IChpbmJ1ZlswXSA9PSAncycgfHwgaW5idWZbMF0gPT0gJ1MnKQogCSAgICB7Ci0JICAgICAg cHJpbnRmKF8oIkFib3V0IHRvIHNhdmUgc2V0dGluZ3MuLi4iKSk7CisJICAgICAgcHJpbnRm KCIlcyIsIF8oIkFib3V0IHRvIHNhdmUgc2V0dGluZ3MuLi4iKSk7CiAJICAgICAgZmZsdXNo KHN0ZG91dCk7CiAJICAgICAgaW5pdGlhbGl6ZV9wcmludF9jbWQoMSk7CiAJICAgICAgZG9f cmVtb3RlX2NtZCgiU1YiLCAwKTsKIAkgICAgICBpZiAoZG9fcHJpbnRfY21kKCkpCiAJCXsK LQkJICBwcmludGYoXygiZmFpbGVkIVxuIikpOwotCQkgIHByaW50ZihfKCJZb3VyIHNldHRp bmdzIHdlcmUgbm90IHNhdmVkIHN1Y2Nlc3NmdWxseS4gIFlvdSBtdXN0IHJlcGVhdCB0aGVc biIKKwkJICBwcmludGYoIiVzIiwgXygiZmFpbGVkIVxuIikpOworCQkgIHByaW50ZigiJXMi LCBfKCJZb3VyIHNldHRpbmdzIHdlcmUgbm90IHNhdmVkIHN1Y2Nlc3NmdWxseS4gIFlvdSBt dXN0IHJlcGVhdCB0aGVcbiIKIAkJCSAgICJhbGlnbm1lbnQgcHJvY2VkdXJlLlxuIikpOwog CQkgIGV4aXQoMSk7CiAJCX0KLQkgICAgICBwcmludGYoXygic3VjY2VlZGVkIVxuIikpOwot CSAgICAgIHByaW50ZihfKCJZb3VyIGFsaWdubWVudCBzZXR0aW5ncyBoYXZlIGJlZW4gc2F2 ZWQgdG8gdGhlIHByaW50ZXIuXG4iKSk7CisJICAgICAgcHJpbnRmKCIlcyIsIF8oInN1Y2Nl ZWRlZCFcbiIpKTsKKwkgICAgICBwcmludGYoIiVzIiwgXygiWW91ciBhbGlnbm1lbnQgc2V0 dGluZ3MgaGF2ZSBiZWVuIHNhdmVkIHRvIHRoZSBwcmludGVyLlxuIikpOwogCSAgICAgIHJl dHVybiAxOwogCSAgICB9CiAJICBicmVhazsKIAlkZWZhdWx0OgotCSAgcHJpbnRmKF8oIlVu cmVjb2duaXplZCBjb21tYW5kLlxuIikpOworCSAgcHJpbnRmKCIlcyIsIF8oIlVucmVjb2du aXplZCBjb21tYW5kLlxuIikpOwogCSAgY29udGludWU7CiAJfQotICAgICAgcHJpbnRmKF8o IkZpbmFsIGNvbW1hbmQgd2FzIG5vdCBjb25maXJtZWQuXG4iKSk7CisgICAgICBwcmludGYo IiVzIiwgXygiRmluYWwgY29tbWFuZCB3YXMgbm90IGNvbmZpcm1lZC5cbiIpKTsKICAgICB9 CiB9CiAKQEAgLTIyODAsNyArMjI4MCw3IEBAIGZvciAoY3VycGFzcyA9IDA7IGN1cnBhc3Mg PCBhbGlnbm1lbnRfcGEKIAlkb19yZW1vdGVfY21kKCJEVCIsIDMsIDAsIGN1cnBhc3MsIDAp OwogICAgICAgaWYgKGRvX3ByaW50X2NtZCgpKQogCXByaW50ZXJfZXJyb3IoKTsKLSAgICAg IHByaW50ZihfKCJQbGVhc2UgaW5zcGVjdCB0aGUgcHJpbnQsIGFuZCBjaG9vc2UgdGhlIGJl c3QgcGFpciBvZiBsaW5lcyBpbiBlYWNoIHBhdHRlcm4uXG4iCisgICAgICBwcmludGYoIiVz IiwgXygiUGxlYXNlIGluc3BlY3QgdGhlIHByaW50LCBhbmQgY2hvb3NlIHRoZSBiZXN0IHBh aXIgb2YgbGluZXMgaW4gZWFjaCBwYXR0ZXJuLlxuIgogCSAgICAgICAiVHlwZSBhIHBhaXIg bnVtYmVyLCAnPycgZm9yIGhlbHAsIG9yICdyJyB0byByZXBlYXQgdGhlIHByb2NlZHVyZS5c biIpKTsKICAgICAgIGluaXRpYWxpemVfcHJpbnRfY21kKDEpOwogICAgICAgZm9yIChjdXJw YXNzID0gMTsgY3VycGFzcyA8PSBhbGlnbm1lbnRfcGFzc2VzOyBjdXJwYXNzICsrKQpAQCAt MjI5MCw3ICsyMjkwLDcgQEAgcmVyZWFkOgogCSAgcmV0cnlfY291bnQrKzsKIAkgIGlmIChy ZXRyeV9jb3VudCA+IDEwKQogCSAgICB7Ci0JICAgICAgcHJpbnRmKF8oIkV4aXRpbmdcbiIp KTsKKwkgICAgICBwcmludGYoIiVzIiwgXygiRXhpdGluZ1xuIikpOwogCSAgICAgIHJldHVy bjsKIAkgICAgfQogCSAgcHJpbnRmKF8oIlBhc3MgIyVkIiksIGN1cnBhc3MpOwpAQCAtMjMw MSw3ICsyMzAxLDcgQEAgc3dpdGNoIChpbmJ1ZlswXSkKIAkgICAgewogCSAgICBjYXNlICdy JzoKIAkgICAgY2FzZSAnUic6Ci0JICAgICAgcHJpbnRmKF8oIlBsZWFzZSBpbnNlcnQgYSBm cmVzaCBzaGVldCBvZiBwYXBlci5cbiIpKTsKKwkgICAgICBwcmludGYoIiVzIiwgXygiUGxl YXNlIGluc2VydCBhIGZyZXNoIHNoZWV0IG9mIHBhcGVyLlxuIikpOwogCSAgICAgIGZmbHVz aChzdGRvdXQpOwogCSAgICAgIGluaXRpYWxpemVfcHJpbnRfY21kKDEpOwogCSAgICAgICh2 b2lkKSBkb19nZXRfaW5wdXQoXygiUHJlc3MgZW50ZXIgdG8gY29udGludWUgPiAiKSk7CkBA IC0yMzIwLDEyICsyMzIwLDEyIEBAIH0KIAkgIGFuc3dlciA9IHN0cnRvbChpbmJ1ZiwgJmVu ZHB0ciwgMTApOwogCSAgaWYgKGVycm5vID09IEVSQU5HRSkKIAkgICAgewotCSAgICAgIHBy aW50ZihfKCJOdW1iZXIgb3V0IG9mIHJhbmdlIVxuIikpOworCSAgICAgIHByaW50ZigiJXMi LCBfKCJOdW1iZXIgb3V0IG9mIHJhbmdlIVxuIikpOwogCSAgICAgIGdvdG8gcmVyZWFkOwog CSAgICB9CiAJICBpZiAoZW5kcHRyID09IGluYnVmKQogCSAgICB7Ci0JICAgICAgcHJpbnRm KF8oIkkgY2Fubm90IHVuZGVyc3RhbmQgd2hhdCB5b3UgdHlwZWQhXG4iKSk7CisJICAgICAg cHJpbnRmKCIlcyIsIF8oIkkgY2Fubm90IHVuZGVyc3RhbmQgd2hhdCB5b3UgdHlwZWQhXG4i KSk7CiAJICAgICAgZmZsdXNoKHN0ZG91dCk7CiAJICAgICAgZ290byByZXJlYWQ7CiAJICAg IH0KQEAgLTIzMzgsMTUgKzIzMzgsMTUgQEAgZ290byByZXJlYWQ7CiAJICAgIH0KIAkgIGRv X3JlbW90ZV9jbWQoIkRBIiwgNCwgMCwgY3VycGFzcyAtIDEsIDAsIGFuc3dlcik7CiAJfQot ICAgICAgcHJpbnRmKF8oIkF0dGVtcHRpbmcgdG8gc2V0IGFsaWdubWVudC4uLiIpKTsKKyAg ICAgIHByaW50ZigiJXMiLCBfKCJBdHRlbXB0aW5nIHRvIHNldCBhbGlnbm1lbnQuLi4iKSk7 CiAgICAgICBpZiAoZG9fcHJpbnRfY21kKCkpCiAJcHJpbnRlcl9lcnJvcigpOwotICAgICAg cHJpbnRmKF8oInN1Y2NlZWRlZC5cbiIpKTsKKyAgICAgIHByaW50ZigiJXMiLCBfKCJzdWNj ZWVkZWQuXG4iKSk7CiAgICAgICBwcmludGYoXygiUGxlYXNlIHZlcmlmeSB0aGF0IHRoZSBh bGlnbm1lbnQgaXMgY29ycmVjdC4gIEFmdGVyIHRoZSBhbGlnbm1lbnQgcGF0dGVyblxuIgog CSAgICAgICAiaXMgcHJpbnRlZCBhZ2FpbiwgcGxlYXNlIGVuc3VyZSB0aGF0IHRoZSBiZXN0 IHBhdHRlcm4gZm9yIGVhY2ggbGluZSBpc1xuIgogCSAgICAgICAicGF0dGVybiAlZC4gIElm IGl0IGlzIG5vdCwgeW91IHNob3VsZCByZXBlYXQgdGhlIHByb2Nlc3MgdG8gZ2V0IHRoZSBi ZXN0XG4iCiAJICAgICAgICJxdWFsaXR5IHByaW50aW5nLlxuIiksIChhbGlnbm1lbnRfY2hv aWNlcyArIDEpIC8gMik7Ci0gICAgICBwcmludGYoXygiUGxlYXNlIGluc2VydCBhIGZyZXNo IHNoZWV0IG9mIHBhcGVyLlxuIikpOworICAgICAgcHJpbnRmKCIlcyIsIF8oIlBsZWFzZSBp bnNlcnQgYSBmcmVzaCBzaGVldCBvZiBwYXBlci5cbiIpKTsKICAgICAgICh2b2lkKSBkb19n ZXRfaW5wdXQoXygiUHJlc3MgZW50ZXIgdG8gY29udGludWUgPiAiKSk7CiAgICAgICBpbml0 aWFsaXplX3ByaW50X2NtZCgxKTsKICAgICAgIGZvciAoY3VycGFzcyA9IDA7IGN1cnBhc3Mg PCBhbGlnbm1lbnRfcGFzc2VzOyBjdXJwYXNzKyspCkBAIC0yMzg4LDcgKzIzODgsNyBAQCBw cmludGYgKCIlcyIsIHByb21wdCk7CiAJZmdldHNfc3RhdHVzID0gZmdldHMgKGlucHV0LCBC VUZTSVosIHN0ZGluKTsKIAlpZiAoZmdldHNfc3RhdHVzID09IE5VTEwpCiAJewotCQlmcHJp bnRmIChzdGRvdXQsIF8oIkVycm9yIGluIGlucHV0XG4iKSk7CisJCWZwcmludGYgKHN0ZG91 dCwgIiVzIiwgXygiRXJyb3IgaW4gaW5wdXRcbiIpKTsKIAkJcmV0dXJuIChOVUxMKTsKIAl9 CiAJZWxzZSBpZiAoc3RybGVuIChpbnB1dCkgPT0gMSAmJiBpbnB1dFswXSA9PSAnXG4nKQot LS0gYS9zcmMvbWFpbi9wcmludC1keWVzdWIuYworKysgYi9zcmMvbWFpbi9wcmludC1keWVz dWIuYwpAQCAtMzg1Myw3ICszODUzLDcgQEAgIXN0cmNtcChwYWdlc2l6ZSwgInc1NzZoMTcy OCIpIHx8CiAgICAgICAgICFzdHJjbXAocGFnZXNpemUsICJ3NTc2aDIzMDQiKSB8fAogICAg ICAgICAhc3RyY21wKHBhZ2VzaXplLCAidzU3NmgyNTkyIikpCiAgICAgewotICAgICAgc3Rw X2VwcmludGYodiwgXygiTXVzdCB1c2UgZ2xvc3N5IG92ZXJjb2F0IHdpdGggcGFub3JhbWEg cHJpbnQgc2l6ZXMhXG4iKSk7CisgICAgICBzdHBfZXByaW50Zih2LCAiJXMiLCBfKCJNdXN0 IHVzZSBnbG9zc3kgb3ZlcmNvYXQgd2l0aCBwYW5vcmFtYSBwcmludCBzaXplcyFcbiIpKTsK ICAgICAgIHJldHVybiAwOwogICAgIH0KICAgfQpAQCAtNDUyMSw3ICs0NTIxLDcgQEAgLyog U2FuaXR5IGNoZWNrICovCiAgIGlmIChzdHBfY2hlY2tfcmF3X3BhcmFtZXRlcih2LCAiVXNl ckNvbW1lbnQiLCBTVFBfUEFSQU1FVEVSX0FDVElWRSkpIHsKICAgICB1c2VyY29tbWVudCA9 IHN0cF9nZXRfcmF3X3BhcmFtZXRlcih2LCAiVXNlckNvbW1lbnQiKTsKICAgICBpZiAodXNl cmNvbW1lbnQtPmJ5dGVzID4gMzQpIHsKLSAgICAgIHN0cF9lcHJpbnRmKHYsIF8oIlN0cFVz ZXJDb21tZW50IG11c3QgYmUgYmV0d2VlbiAwIGFuZCAzNCBieXRlcyFcbiIpKTsKKyAgICAg IHN0cF9lcHJpbnRmKHYsICIlcyIsIF8oIlN0cFVzZXJDb21tZW50IG11c3QgYmUgYmV0d2Vl biAwIGFuZCAzNCBieXRlcyFcbiIpKTsKICAgICAgIHJldHVybiAwOwogICAgIH0KICAgfQpA QCAtNDUyOSw3ICs0NTI5LDcgQEAgfQogICBpZiAoc3RwX2NoZWNrX3Jhd19wYXJhbWV0ZXIo diwgIlVzZXJMVVQiLCBTVFBfUEFSQU1FVEVSX0FDVElWRSkpIHsKICAgICB1c2VybHV0ID0g c3RwX2dldF9yYXdfcGFyYW1ldGVyKHYsICJVc2VyTFVUIik7CiAgICAgaWYgKHVzZXJjb21t ZW50LT5ieXRlcyAhPSAzNCkgewotICAgICAgc3RwX2VwcmludGYodiwgXygiU3RwVXNlckxV VCBtdXN0IGJlIGV4YWN0bHkgMzQgYnl0ZXMhXG4iKSk7CisgICAgICBzdHBfZXByaW50Zih2 LCAiJXMiLCBfKCJTdHBVc2VyTFVUIG11c3QgYmUgZXhhY3RseSAzNCBieXRlcyFcbiIpKTsK ICAgICAgIHJldHVybiAwOwogICAgIH0KICAgfQpAQCAtNDkzNCw3ICs0OTM0LDcgQEAgLyog U2FuaXR5IGNoZWNrICovCiAgIGlmIChzdHBfY2hlY2tfcmF3X3BhcmFtZXRlcih2LCAiVXNl ckNvbW1lbnQiLCBTVFBfUEFSQU1FVEVSX0FDVElWRSkpIHsKICAgICB1c2VyY29tbWVudCA9 IHN0cF9nZXRfcmF3X3BhcmFtZXRlcih2LCAiVXNlckNvbW1lbnQiKTsKICAgICBpZiAodXNl cmNvbW1lbnQtPmJ5dGVzID4gNDApIHsKLSAgICAgIHN0cF9lcHJpbnRmKHYsIF8oIlN0cFVz ZXJDb21tZW50IG11c3QgYmUgYmV0d2VlbiAwIGFuZCA0MCBieXRlcyFcbiIpKTsKKyAgICAg IHN0cF9lcHJpbnRmKHYsICIlcyIsIF8oIlN0cFVzZXJDb21tZW50IG11c3QgYmUgYmV0d2Vl biAwIGFuZCA0MCBieXRlcyFcbiIpKTsKICAgICAgIHJldHVybiAwOwogICAgIH0KICAgfQpA QCAtNzMyNiw3ICs3MzI2LDcgQEAgY29uc3QgY2hhciAqcXVhbGl0eSA9IHN0cF9nZXRfc3Ry aW5nX3BhcgogICBpbnQgbWF0Y2g7CiAKICAgaWYgKHVzZV9sdXQgJiYgc3RyY21wKG1hdGNo aW5nLCAiT2ZmIikpIHsKLQkgIHN0cF9lcHJpbnRmKHYsIF8oIkNhbm5vdCB1c2UgSW50ZXJu YWwgQ29ycmVjdGlvbiBhbmQgQ29sb3IgTWF0Y2hpbmcgdG9nZXRoZXIhXG4iKSk7CisJICBz dHBfZXByaW50Zih2LCAiJXMiLCBfKCJDYW5ub3QgdXNlIEludGVybmFsIENvcnJlY3Rpb24g YW5kIENvbG9yIE1hdGNoaW5nIHRvZ2V0aGVyIVxuIikpOwogCSAgcmV0dXJuIDA7CiAgIH0g ZWxzZSBpZiAodXNlX2x1dCAmJiAhc3RyY21wKG1hdGNoaW5nLCAiT2ZmIikpIHsKIAkgIG1h dGNoID0gMDsKQEAgLTg4NTQsNyArODg1NCw3IEBAIG11bHRpY3V0ID0gMjA7CiAgIH0gZWxz ZSBpZiAoIXN0cmNtcChwYWdlc2l6ZSwgInc1NzZoODQyIikpIHsKICAgICBtdWx0aWN1dCA9 IDIxOwogICB9IGVsc2UgewotICAgIHN0cF9lcHJpbnRmKHYsIF8oIklsbGVnYWwgcHJpbnQg c2l6ZSBzZWxlY3RlZCBmb3Igcm9sbCBtZWRpYSFcbiIpKTsKKyAgICBzdHBfZXByaW50Zih2 LCAiJXMiLCBfKCJJbGxlZ2FsIHByaW50IHNpemUgc2VsZWN0ZWQgZm9yIHJvbGwgbWVkaWEh XG4iKSk7CiAgICAgcmV0dXJuIDA7CiAgIH0KIApAQCAtODkwOCw3ICs4OTA4LDcgQEAgcGFn ZW51bSA9IHN0cF9nZXRfaW50X3BhcmFtZXRlcih2LCAiUGFnZQogCiAgIGlmICghc3RyY21w KG1lZGlhLT5uYW1lLCAiUm9sbCIpKSB7CiAgICAgaWYgKHN0cmNtcChkdXBsZXhfbW9kZSwg Ik5vbmUiKSAmJiBzdHJjbXAoZHVwbGV4X21vZGUsICJTdGFuZGFyZCIpKSB7Ci0gICAgICBz dHBfZXByaW50Zih2LCBfKCJEdXBsZXggbm90IHN1cHBvcnRlZCBvbiByb2xsIG1lZGlhLCBz d2l0Y2hpbmcgdG8gc2hlZXQgbWVkaWEhXG4iKSk7CisgICAgICBzdHBfZXByaW50Zih2LCAi JXMiLCBfKCJEdXBsZXggbm90IHN1cHBvcnRlZCBvbiByb2xsIG1lZGlhLCBzd2l0Y2hpbmcg dG8gc2hlZXQgbWVkaWEhXG4iKSk7CiAgICAgICBzdHBfc2V0X3N0cmluZ19wYXJhbWV0ZXIo diwgIk1lZGlhVHlwZSIsICJTaGVldCIpOwogICAgIH0gZWxzZSB7CiAgICAgICAvKiBJZiB3 ZSdyZSBub3QgdXNpbmcgZHVwbGV4IGFuZCByb2xsIG1lZGlhLCB0aGlzIGlzCkBAIC04OTQy LDcgKzg5NDIsNyBAQCBtdWx0aWN1dCA9IDE1OwogICB9IGVsc2UgaWYgKCFzdHJjbXAocGFn ZXNpemUsICJ3NTc2aDg2NC1kaXYzc2hlZXQiKSkgewogICAgIG11bHRpY3V0ID0gMjg7CiAg IH0gZWxzZSB7Ci0gICAgc3RwX2VwcmludGYodiwgXygiSWxsZWdhbCBwcmludCBzaXplIHNl bGVjdGVkIGZvciBzaGVldCBtZWRpYSFcbiIpKTsKKyAgICBzdHBfZXByaW50Zih2LCAiJXMi LCBfKCJJbGxlZ2FsIHByaW50IHNpemUgc2VsZWN0ZWQgZm9yIHNoZWV0IG1lZGlhIVxuIikp OwogICAgIHJldHVybiAwOwogICB9CiAKQEAgLTEwOTU0LDcgKzEwOTU0LDcgQEAgb3ZlcmNv YXRfaG9sZSA9IE5VTEw7CiAgIC8qIElmIG92ZXJjb2F0IGlzIG9mZiwgd2UgY2FuJ3QgdXNl IGhvbG9rb3RlIG9yIGhvbG9wYXRjaCAqLwogICBpZiAobHBhciAmJiBzdHJjbXAoIk9uIiwg bHBhcikpIHsKICAgICBpZiAoKGhvbG9rb3RlICYmIHN0cmNtcChob2xva290ZSwgIk9mZiIp KSB8fCBob2xvcGF0Y2ggfHwgb3ZlcmNvYXRfaG9sZSB8fCBob2xva290ZV9jdXN0b20pIHsK LSAgICAgIHN0cF9lcHJpbnRmKHYsIF8oIkhvbG9rb3RlLCBIb2xvcGF0Y2gsIGFuZCBPdmVy Y29hdCBob2xlIGZlYXR1cmVzIHJlcXVpcmUgT3ZlcmNvYXQgdG8gYmUgZW5hYmxlZCFcbiIp KTsKKyAgICAgIHN0cF9lcHJpbnRmKHYsICIlcyIsIF8oIkhvbG9rb3RlLCBIb2xvcGF0Y2gs IGFuZCBPdmVyY29hdCBob2xlIGZlYXR1cmVzIHJlcXVpcmUgT3ZlcmNvYXQgdG8gYmUgZW5h YmxlZCFcbiIpKTsKICAgICAgIHJldHVybiAwOwogICAgIH0KICAgfQpAQCAtMTA5NjMsMjEg KzEwOTYzLDIxIEBAIC8qIFNhbml0eSBjaGVjayBtYWdzdHJpcGUgKi8KICAgaWYgKHN0cF9j aGVja19yYXdfcGFyYW1ldGVyKHYsICJNYWdTdHJpcGUxIiwgU1RQX1BBUkFNRVRFUl9BQ1RJ VkUpKSB7CiAgICAgbWFnc3RyaXBlMSA9IHN0cF9nZXRfcmF3X3BhcmFtZXRlcih2LCAiTWFn U3RyaXBlMSIpOwogICAgIGlmIChtYWdzdHJpcGUxLT5ieXRlcyA+PSA3OSkgewotICAgICAg c3RwX2VwcmludGYodiwgXygiU3RwTWFnU3RyaXBlMSBtdXN0IGJlIGJldHdlZW4gMCBhbmQg NzggYnl0ZXMhXG4iKSk7CisgICAgICBzdHBfZXByaW50Zih2LCAiJXMiLCBfKCJTdHBNYWdT dHJpcGUxIG11c3QgYmUgYmV0d2VlbiAwIGFuZCA3OCBieXRlcyFcbiIpKTsKICAgICAgIHJl dHVybiAwOwogICAgIH0KICAgfQogICBpZiAoc3RwX2NoZWNrX3Jhd19wYXJhbWV0ZXIodiwg Ik1hZ1N0cmlwZTIiLCBTVFBfUEFSQU1FVEVSX0FDVElWRSkpIHsKICAgICBtYWdzdHJpcGUy ID0gc3RwX2dldF9yYXdfcGFyYW1ldGVyKHYsICJNYWdTdHJpcGUyIik7CiAgICAgaWYgKG1h Z3N0cmlwZTItPmJ5dGVzID49IDQwKSB7Ci0gICAgICBzdHBfZXByaW50Zih2LCBfKCJTdHBN YWdTdHJpcGUyIG11c3QgYmUgYmV0d2VlbiAwIGFuZCAzOSBieXRlcyFcbiIpKTsKKyAgICAg IHN0cF9lcHJpbnRmKHYsICIlcyIsIF8oIlN0cE1hZ1N0cmlwZTIgbXVzdCBiZSBiZXR3ZWVu IDAgYW5kIDM5IGJ5dGVzIVxuIikpOwogICAgICAgcmV0dXJuIDA7CiAgICAgfQogICB9CiAg IGlmIChzdHBfY2hlY2tfcmF3X3BhcmFtZXRlcih2LCAiTWFnU3RyaXBlMyIsIFNUUF9QQVJB TUVURVJfQUNUSVZFKSkgewogICAgIG1hZ3N0cmlwZTEgPSBzdHBfZ2V0X3Jhd19wYXJhbWV0 ZXIodiwgIk1hZ1N0cmlwZTMiKTsKICAgICBpZiAobWFnc3RyaXBlMS0+Ynl0ZXMgPj0gMTA3 KSB7Ci0gICAgICBzdHBfZXByaW50Zih2LCBfKCJTdHBNYWdTdHJpcGUzIG11c3QgYmUgYmV0 d2VlbiAwIGFuZCAxMDYgYnl0ZXMhXG4iKSk7CisgICAgICBzdHBfZXByaW50Zih2LCAiJXMi LCBfKCJTdHBNYWdTdHJpcGUzIG11c3QgYmUgYmV0d2VlbiAwIGFuZCAxMDYgYnl0ZXMhXG4i KSk7CiAgICAgICByZXR1cm4gMDsKICAgICB9CiAgIH0KQEAgLTExMDI0LDE2ICsxMTAyNCwx NiBAQCBwZC0+cHJpdmRhdGEubWFnaWNhcmQubWFnMVttYWdzdHJpcGUxLT5iCiAgICAgZm9y IChpID0gMCA7IGkgPCBtYWdzdHJpcGUxLT5ieXRlcyA7IGkrKykgewogICAgICAgaWYgKHBk LT5wcml2ZGF0YS5tYWdpY2FyZC5tYWcxW2ldIDwgMHgyMCB8fAogCSAgcGQtPnByaXZkYXRh Lm1hZ2ljYXJkLm1hZzFbaV0gPiAweDVmKSB7Ci0Jc3RwX2VwcmludGYodiwgXygiSWxsZWdh bCBBbHBoYW51bWVyaWMgaW4gTWFnc3RyaXBlLCAweDIwLT4weDVGIEFTQ0lJIG9ubHlcbiIp KTsKKwlzdHBfZXByaW50Zih2LCAiJXMiLCBfKCJJbGxlZ2FsIEFscGhhbnVtZXJpYyBpbiBN YWdzdHJpcGUsIDB4MjAtPjB4NUYgQVNDSUkgb25seVxuIikpOwogCXJldHVybiAwOwogICAg ICAgfQogICAgIH0KICAgICBpZiAocGQtPnByaXZkYXRhLm1hZ2ljYXJkLm1hZzFbMF0gIT0g JyUnKSB7Ci0gICAgICBzdHBfZXByaW50Zih2LCBfKCJNYWdzdHJpcGUgYWxwaGFudW1lcmlj IGRhdGEgbXVzdCBzdGFydCB3aXRoICclJSdcbiIpKTsKKyAgICAgIHN0cF9lcHJpbnRmKHYs ICIlcyIsIF8oIk1hZ3N0cmlwZSBhbHBoYW51bWVyaWMgZGF0YSBtdXN0IHN0YXJ0IHdpdGgg JyUlJ1xuIikpOwogICAgICAgcmV0dXJuIDA7CiAgICAgfQogICAgIGlmIChwZC0+cHJpdmRh dGEubWFnaWNhcmQubWFnMVttYWdzdHJpcGUxLT5ieXRlcyAtIDFdICE9ICc/JykgewotICAg ICAgc3RwX2VwcmludGYodiwgXygiTWFnc3RyaXBlIHN0cmluZyBtdXN0IGVuZCB3aXRoICc/ J1xuIikpOworICAgICAgc3RwX2VwcmludGYodiwgIiVzIiwgXygiTWFnc3RyaXBlIHN0cmlu ZyBtdXN0IGVuZCB3aXRoICc/J1xuIikpOwogICAgICAgcmV0dXJuIDA7CiAgICAgfQogICB9 CkBAIC0xMTA0NCwxNiArMTEwNDQsMTYgQEAgcGQtPnByaXZkYXRhLm1hZ2ljYXJkLm1hZzJb bWFnc3RyaXBlMi0+YgogICAgIGZvciAoaSA9IDAgOyBpIDwgbWFnc3RyaXBlMi0+Ynl0ZXMg OyBpKyspIHsKICAgICAgIGlmIChwZC0+cHJpdmRhdGEubWFnaWNhcmQubWFnMltpXSA8IDB4 MzAgfHwKIAkgIHBkLT5wcml2ZGF0YS5tYWdpY2FyZC5tYWcyW2ldID4gMHgzZikgewotCXN0 cF9lcHJpbnRmKHYsIF8oIklsbGVnYWwgTnVtZXJpYyBpbiBNYWdzdHJpcGUsIDB4MzAtPjB4 M0YgQVNDSUkgb25seVxuIikpOworCXN0cF9lcHJpbnRmKHYsICIlcyIsIF8oIklsbGVnYWwg TnVtZXJpYyBpbiBNYWdzdHJpcGUsIDB4MzAtPjB4M0YgQVNDSUkgb25seVxuIikpOwogCXJl dHVybiAwOwogICAgICAgfQogICAgIH0KICAgICBpZiAocGQtPnByaXZkYXRhLm1hZ2ljYXJk Lm1hZzJbMF0gIT0gJzsnKSB7Ci0gICAgICBzdHBfZXByaW50Zih2LCBfKCJNYWdzdHJpcGUg bnVtZXJpYyBkYXRhIG11c3Qgc3RhcnQgd2l0aCAnOydcbiIpKTsKKyAgICAgIHN0cF9lcHJp bnRmKHYsICIlcyIsIF8oIk1hZ3N0cmlwZSBudW1lcmljIGRhdGEgbXVzdCBzdGFydCB3aXRo ICc7J1xuIikpOwogICAgICAgcmV0dXJuIDA7CiAgICAgfQogICAgIGlmIChwZC0+cHJpdmRh dGEubWFnaWNhcmQubWFnMlttYWdzdHJpcGUyLT5ieXRlcyAtIDFdICE9ICc/JykgewotICAg ICAgc3RwX2VwcmludGYodiwgXygiTWFnc3RyaXBlIGRhdGEgbXVzdCBlbmQgd2l0aCAnPydc biIpKTsKKyAgICAgIHN0cF9lcHJpbnRmKHYsICIlcyIsIF8oIk1hZ3N0cmlwZSBkYXRhIG11 c3QgZW5kIHdpdGggJz8nXG4iKSk7CiAgICAgICByZXR1cm4gMDsKICAgICB9CiAgIH0KQEAg LTExMDY0LDE2ICsxMTA2NCwxNiBAQCBwZC0+cHJpdmRhdGEubWFnaWNhcmQubWFnM1ttYWdz dHJpcGUzLT5iCiAgICAgZm9yIChpID0gMCA7IGkgPCBtYWdzdHJpcGUzLT5ieXRlcyA7IGkr KykgewogICAgICAgaWYgKHBkLT5wcml2ZGF0YS5tYWdpY2FyZC5tYWczW2ldIDwgMHgzMCB8 fAogCSAgcGQtPnByaXZkYXRhLm1hZ2ljYXJkLm1hZzNbaV0gPiAweDNmKSB7Ci0Jc3RwX2Vw cmludGYodiwgXygiSWxsZWdhbCBOdW1lcmljIGluIE1hZ3N0cmlwZSwgMHgzMC0+MHgzRiBB U0NJSSBvbmx5XG4iKSk7CisJc3RwX2VwcmludGYodiwgIiVzIiwgXygiSWxsZWdhbCBOdW1l cmljIGluIE1hZ3N0cmlwZSwgMHgzMC0+MHgzRiBBU0NJSSBvbmx5XG4iKSk7CiAJcmV0dXJu IDA7CiAgICAgICB9CiAgICAgfQogICAgIGlmIChwZC0+cHJpdmRhdGEubWFnaWNhcmQubWFn M1swXSAhPSAnOycpIHsKLSAgICAgIHN0cF9lcHJpbnRmKHYsIF8oIk1hZ3N0cmlwZSBudW1l cmljIGRhdGEgbXVzdCBzdGFydCB3aXRoICc7J1xuIikpOworICAgICAgc3RwX2VwcmludGYo diwgIiVzIiwgXygiTWFnc3RyaXBlIG51bWVyaWMgZGF0YSBtdXN0IHN0YXJ0IHdpdGggJzsn XG4iKSk7CiAgICAgICByZXR1cm4gMDsKICAgICB9CiAgICAgaWYgKHBkLT5wcml2ZGF0YS5t YWdpY2FyZC5tYWczW21hZ3N0cmlwZTMtPmJ5dGVzIC0gMV0gIT0gJz8nKSB7Ci0gICAgICBz dHBfZXByaW50Zih2LCBfKCJNYWdzdHJpcGUgZGF0YSBtdXN0IGVuZCB3aXRoICc/J1xuIikp OworICAgICAgc3RwX2VwcmludGYodiwgIiVzIiwgXygiTWFnc3RyaXBlIGRhdGEgbXVzdCBl bmQgd2l0aCAnPydcbiIpKTsKICAgICAgIHJldHVybiAwOwogICAgIH0KICAgfQpAQCAtMTM3 MTIsNyArMTM3MTIsNyBAQCBkeWVzdWJfcHJpdmRhdGFfdCAqcGQ7CiAKICAgaWYgKCFzdHBf dmVyaWZ5KHYpKQogICAgIHsKLSAgICAgIHN0cF9lcHJpbnRmKHYsIF8oIlByaW50IG9wdGlv bnMgbm90IHZlcmlmaWVkOyBjYW5ub3QgcHJpbnQuXG4iKSk7CisgICAgICBzdHBfZXByaW50 Zih2LCAiJXMiLCBfKCJQcmludCBvcHRpb25zIG5vdCB2ZXJpZmllZDsgY2Fubm90IHByaW50 LlxuIikpOwogICAgICAgcmV0dXJuIDA7CiAgICAgfQogCi0tLSBhL3NyYy9tYWluL3ByaW50 LWVzY3AyLmMKKysrIGIvc3JjL21haW4vcHJpbnQtZXNjcDIuYwpAQCAtNDU0MCw3ICs0NTQw LDcgQEAgfQogCiAgIGlmICghc3RwX3ZlcmlmeSh2KSkKICAgICB7Ci0gICAgICBzdHBfZXBy aW50Zih2LCBfKCJQcmludCBvcHRpb25zIG5vdCB2ZXJpZmllZDsgY2Fubm90IHByaW50Llxu IikpOworICAgICAgc3RwX2VwcmludGYodiwgIiVzIiwgXygiUHJpbnQgb3B0aW9ucyBub3Qg dmVyaWZpZWQ7IGNhbm5vdCBwcmludC5cbiIpKTsKICAgICAgIHJldHVybiAwOwogICAgIH0K IAotLS0gYS9zcmMvbWFpbi9wcmludC1yYXcuYworKysgYi9zcmMvbWFpbi9wcmludC1yYXcu YwpAQCAtMjQ0LDE0ICsyNDQsMTQgQEAgc3RwX2ltYWdlX2luaXQoaW1hZ2UpOwogCiAgIGlm ICghc3RwX3ZlcmlmeShudikpCiAgICAgewotICAgICAgc3RwX2VwcmludGYobnYsIF8oIlBy aW50IG9wdGlvbnMgbm90IHZlcmlmaWVkOyBjYW5ub3QgcHJpbnQuXG4iKSk7CisgICAgICBz dHBfZXByaW50ZihudiwgIiVzIiwgXygiUHJpbnQgb3B0aW9ucyBub3QgdmVyaWZpZWQ7IGNh bm5vdCBwcmludC5cbiIpKTsKICAgICAgIHN0cF92YXJzX2Rlc3Ryb3kobnYpOwogICAgICAg c3RwX2ltYWdlX2NvbmNsdWRlKGltYWdlKTsKICAgICAgIHJldHVybiAwOwogICAgIH0KICAg aWYgKHdpZHRoICE9IHN0cF9pbWFnZV93aWR0aChpbWFnZSkgfHwgaGVpZ2h0ICE9IHN0cF9p bWFnZV9oZWlnaHQoaW1hZ2UpKQogICAgIHsKLSAgICAgIHN0cF9lcHJpbnRmKG52LCBfKCJJ bWFnZSBkaW1lbnNpb25zIG11c3QgbWF0Y2ggcGFwZXIgZGltZW5zaW9ucyIpKTsKKyAgICAg IHN0cF9lcHJpbnRmKG52LCAiJXMiLCBfKCJJbWFnZSBkaW1lbnNpb25zIG11c3QgbWF0Y2gg cGFwZXIgZGltZW5zaW9ucyIpKTsKICAgICAgIHN0cF92YXJzX2Rlc3Ryb3kobnYpOwogICAg ICAgc3RwX2ltYWdlX2NvbmNsdWRlKGltYWdlKTsKICAgICAgIHJldHVybiAwOwotLS0gYS9z cmMvbWFpbi9wcmludGVycy5jCisrKyBiL3NyYy9tYWluL3ByaW50ZXJzLmMKQEAgLTg0Niw3 ICs4NDYsNyBAQCBzdHBfZ2V0X3BhZ2VfaGVpZ2h0KHYpID4gaGVpZ2h0IHx8CiAJICBzdHBf Z2V0X3BhZ2Vfd2lkdGgodikgPD0gbWluX3dpZHRoIHx8IHN0cF9nZXRfcGFnZV93aWR0aCh2 KSA+IHdpZHRoKQogCXsKIAkgIGFuc3dlciA9IDA7Ci0JICBzdHBfZXByaW50Zih2LCBfKCJQ YWdlIHNpemUgaXMgbm90IHZhbGlkXG4iKSk7CisJICBzdHBfZXByaW50Zih2LCAiJXMiLCBf KCJQYWdlIHNpemUgaXMgbm90IHZhbGlkXG4iKSk7CiAJfQogICAgICAgc3RwX2RwcmludGYo U1RQX0RCR19QQVBFUiwgdiwKIAkJICAicGFnZSBzaXplIG1heCAlZiAlZiBtaW4gJWYgJWYg YWN0dWFsICVmICVmXG4iLApAQCAtODgxLDEzICs4ODEsMTMgQEAgfQogICBpZiAoc3RwX2dl dF9oZWlnaHQodikgPD0gLWVwc2lsb24pCiAgICAgewogICAgICAgYW5zd2VyID0gMDsKLSAg ICAgIHN0cF9lcHJpbnRmKHYsIF8oIkhlaWdodCBtdXN0IGJlIGdyZWF0ZXIgdGhhbiB6ZXJv XG4iKSk7CisgICAgICBzdHBfZXByaW50Zih2LCAiJXMiLCBfKCJIZWlnaHQgbXVzdCBiZSBn cmVhdGVyIHRoYW4gemVyb1xuIikpOwogICAgIH0KIAogICBpZiAoc3RwX2dldF93aWR0aCh2 KSA8PSAtZXBzaWxvbikKICAgICB7CiAgICAgICBhbnN3ZXIgPSAwOwotICAgICAgc3RwX2Vw cmludGYodiwgXygiV2lkdGggbXVzdCBiZSBncmVhdGVyIHRoYW4gemVyb1xuIikpOworICAg ICAgc3RwX2VwcmludGYodiwgIiVzIiwgXygiV2lkdGggbXVzdCBiZSBncmVhdGVyIHRoYW4g emVyb1xuIikpOwogICAgIH0KIAogICBpZiAoc3RwX2dldF9sZWZ0KHYpICsgc3RwX2dldF93 aWR0aCh2KSA+IHJpZ2h0ICsgZXBzaWxvbikK --------------GsnDFH5V0q000YRaQryMgtEZ Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline --------------GsnDFH5V0q000YRaQryMgtEZ Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ Gimp-print-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/gimp-print-devel --------------GsnDFH5V0q000YRaQryMgtEZ--