From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 16225 invoked by alias); 27 Nov 2012 18:36:27 -0000 Received: (qmail 16062 invoked by uid 22791); 27 Nov 2012 18:36:25 -0000 X-SWARE-Spam-Status: No, hits=-3.1 required=5.0 tests=AWL,BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM,KHOP_RCVD_TRUST,RCVD_IN_DNSWL_LOW,RCVD_IN_HOSTKARMA_YE X-Spam-Check-By: sourceware.org Received: from mail-qc0-f175.google.com (HELO mail-qc0-f175.google.com) (209.85.216.175) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Tue, 27 Nov 2012 18:36:21 +0000 Received: by mail-qc0-f175.google.com with SMTP id j3so9536777qcs.20 for ; Tue, 27 Nov 2012 10:36:20 -0800 (PST) MIME-Version: 1.0 Received: by 10.49.25.102 with SMTP id b6mr3201839qeg.27.1354041380086; Tue, 27 Nov 2012 10:36:20 -0800 (PST) Received: by 10.49.12.210 with HTTP; Tue, 27 Nov 2012 10:36:19 -0800 (PST) Date: Tue, 27 Nov 2012 18:36:00 -0000 Message-ID: Subject: PATCH: Enable both ld and gold in GCC 4.8 From: "H.J. Lu" To: Paolo Bonzini Cc: Matthias Klose , GCC Patches , Diego Novillo Content-Type: multipart/mixed; boundary=047d7b621ac878a56d04cf7e5397 X-IsSubscribed: yes Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org X-SW-Source: 2012-11/txt/msg02253.txt.bz2 --047d7b621ac878a56d04cf7e5397 Content-Type: text/plain; charset=ISO-8859-1 Content-length: 1589 On Tue, Nov 27, 2012 at 9:23 AM, H.J. Lu wrote: > On Tue, Nov 27, 2012 at 9:20 AM, Paolo Bonzini wrote: >> Il 27/11/2012 17:07, H.J. Lu ha scritto: >>> There is no reply for >>> >>> http://gcc.gnu.org/ml/gcc-patches/2011-06/msg02121.html >> >> That counts as lack of review... >> > > That is no response from patch submitter. It is different from > lack of review. > I updated patch for trunk. OK to install? Thanks. -- H.J. -- 2011-06-27 Doug Kwan Google ref 41164-p2 Backport upstream patch under review. 2011-01-19 Nick Clifton Matthias Klose * configure.ac (gcc_cv_gold_srcdir): New cached variable - contains the location of the gold sources. (ORIGINAL_GOLD_FOR_TARGET): New substituted variable - contains the name of the locally built gold executable. * configure: Regenerate. * collect2.c (main): Detect the -use-gold and -use-ld switches and select the appropriate linker, if found. If a linker cannot be found and collect2 is executing in verbose mode then report the search paths examined. * exec-tool.in: Detect the -use-gold and -use-ld switches and select the appropriate linker, if found. Add support for -v switch. Report problems locating linker executable. * gcc.c (LINK_COMMAND_SPEC): Translate -fuse-ld=gold into -use-gold and -fuse-ld=bfd into -use-ld. * common.opt: Add fuse-ld=gold and fuse-ld=bfd. * opts.c (comman_handle_option): Ignore -fuse-ld=gold and -fuse-ld=bfd. * doc/invoke.texi: Document the new options. --047d7b621ac878a56d04cf7e5397 Content-Type: application/octet-stream; name="0001-Enable-both-ld-and-gold-in-gcc.patch" Content-Disposition: attachment; filename="0001-Enable-both-ld-and-gold-in-gcc.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_ha1d82nr0 Content-length: 26633 RnJvbSA1MGZmMWEyNDg3MGZlMjE0ZmMyMmIxNDdiNjcwOGMxYjA5ZTFkN2Iy IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBEb3VnIEt3YW4gPGRv dWdrd2FuQGdvb2dsZS5jb20+CkRhdGU6IFR1ZSwgMjcgTm92IDIwMTIgMTA6 MDU6MzMgLTA4MDAKU3ViamVjdDogW1BBVENIXSBFbmFibGUgYm90aCBsZCBh bmQgZ29sZCBpbiBnY2MKCjIwMTEtMDYtMjcgICBEb3VnIEt3YW4gIDxkb3Vn a3dhbkBnb29nbGUuY29tPgoKCUdvb2dsZSByZWYgNDExNjQtcDIKCUJhY2tw b3J0IHVwc3RyZWFtIHBhdGNoIHVuZGVyIHJldmlldy4KCgkyMDExLTAxLTE5 ICAgTmljayBDbGlmdG9uICA8bmlja2NAcmVkaGF0LmNvbT4KICAgICAgIAkJ ICAgICBNYXR0aGlhcyBLbG9zZSA8ZG9rb0BkZWJpYW4ub3JnPgoKCSogY29u ZmlndXJlLmFjIChnY2NfY3ZfZ29sZF9zcmNkaXIpOiBOZXcgY2FjaGVkIHZh cmlhYmxlIC0KCWNvbnRhaW5zIHRoZSBsb2NhdGlvbiBvZiB0aGUgZ29sZCBz b3VyY2VzLgoJKE9SSUdJTkFMX0dPTERfRk9SX1RBUkdFVCk6IE5ldyBzdWJz dGl0dXRlZCB2YXJpYWJsZSAtIGNvbnRhaW5zCgl0aGUgbmFtZSBvZiB0aGUg bG9jYWxseSBidWlsdCBnb2xkIGV4ZWN1dGFibGUuCgkqIGNvbmZpZ3VyZTog UmVnZW5lcmF0ZS4KCSogY29sbGVjdDIuYyAobWFpbik6IERldGVjdCB0aGUg LXVzZS1nb2xkIGFuZCAtdXNlLWxkIHN3aXRjaGVzCglhbmQgc2VsZWN0IHRo ZSBhcHByb3ByaWF0ZSBsaW5rZXIsIGlmIGZvdW5kLgoJSWYgYSBsaW5rZXIg Y2Fubm90IGJlIGZvdW5kIGFuZCBjb2xsZWN0MiBpcyBleGVjdXRpbmcgaW4K CXZlcmJvc2UgbW9kZSB0aGVuIHJlcG9ydCB0aGUgc2VhcmNoIHBhdGhzIGV4 YW1pbmVkLgoJKiBleGVjLXRvb2wuaW46IERldGVjdCB0aGUgLXVzZS1nb2xk IGFuZCAtdXNlLWxkIHN3aXRjaGVzIGFuZAoJc2VsZWN0IHRoZSBhcHByb3By aWF0ZSBsaW5rZXIsIGlmIGZvdW5kLgoJQWRkIHN1cHBvcnQgZm9yIC12IHN3 aXRjaC4KCVJlcG9ydCBwcm9ibGVtcyBsb2NhdGluZyBsaW5rZXIgZXhlY3V0 YWJsZS4KCSogZ2NjLmMgKExJTktfQ09NTUFORF9TUEVDKTogVHJhbnNsYXRl IC1mdXNlLWxkPWdvbGQgaW50bwoJLXVzZS1nb2xkIGFuZCAtZnVzZS1sZD1i ZmQgaW50byAtdXNlLWxkLgoJKiBjb21tb24ub3B0OiBBZGQgZnVzZS1sZD1n b2xkIGFuZCBmdXNlLWxkPWJmZC4KCSogb3B0cy5jIChjb21tYW5faGFuZGxl X29wdGlvbik6IElnbm9yZSAtZnVzZS1sZD1nb2xkIGFuZAoJLWZ1c2UtbGQ9 YmZkLgoJKiBkb2MvaW52b2tlLnRleGk6IERvY3VtZW50IHRoZSBuZXcgb3B0 aW9ucy4KLS0tCiBnY2MvY29sbGVjdDIuYyAgICAgIHwgMTU1ICsrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0K IGdjYy9jb21tb24ub3B0ICAgICAgfCAgIDMgKwogZ2NjL2NvbmZpZ3VyZSAg ICAgICB8ICAxOSArKysrKysrCiBnY2MvY29uZmlndXJlLmFjICAgIHwgIDE0 ICsrKysrCiBnY2MvZG9jL2ludm9rZS50ZXhpIHwgIDEyICsrKy0KIGdjYy9l eGVjLXRvb2wuaW4gICAgfCAxMTggKysrKysrKysrKysrKysrKysrKysrKysr KysrKystLS0tLS0tLS0tCiBnY2MvZ2NjLmMgICAgICAgICAgIHwgICAzICsK IGdjYy9vcHRzLmMgICAgICAgICAgfCAgIDMgKy0KIDkgZmlsZXMgY2hhbmdl ZCwgMjkyIGluc2VydGlvbnMoKyksIDYyIGRlbGV0aW9ucygtKQogY3JlYXRl IG1vZGUgMTAwNjQ0IGdjYy9DaGFuZ2VMb2cuZ29sZAoKZGlmZiAtLWdpdCBh L2djYy9jb2xsZWN0Mi5jIGIvZ2NjL2NvbGxlY3QyLmMKaW5kZXggNDljNDAz MC4uZDViZmZjYiAxMDA2NDQKLS0tIGEvZ2NjL2NvbGxlY3QyLmMKKysrIGIv Z2NjL2NvbGxlY3QyLmMKQEAgLTg0MiwxNyArODQyLDE5IEBAIG1heWJlX3J1 bl9sdG9fYW5kX3JlbGluayAoY2hhciAqKmx0b19sZF9hcmd2LCBjaGFyICoq b2JqZWN0X2xzdCwKIGludAogbWFpbiAoaW50IGFyZ2MsIGNoYXIgKiphcmd2 KQogewotICBzdGF0aWMgY29uc3QgY2hhciAqY29uc3QgbGRfc3VmZml4CT0g ImxkIjsKLSAgc3RhdGljIGNvbnN0IGNoYXIgKmNvbnN0IHBsdWdpbl9sZF9z dWZmaXggPSBQTFVHSU5fTERfU1VGRklYOwotICBzdGF0aWMgY29uc3QgY2hh ciAqY29uc3QgcmVhbF9sZF9zdWZmaXggPSAicmVhbC1sZCI7CisgIHN0YXRp YyBjb25zdCBjaGFyICpjb25zdCBsZF9zdWZmaXgJICAgICA9ICJsZCI7Cisg IHN0YXRpYyBjb25zdCBjaGFyICpjb25zdCBnb2xkX3N1ZmZpeCAgICAgICA9 ICJsZC5nb2xkIjsKKyAgc3RhdGljIGNvbnN0IGNoYXIgKmNvbnN0IGJmZF9s ZF9zdWZmaXggICAgID0gImxkLmJmZCI7CisgIHN0YXRpYyBjb25zdCBjaGFy ICpjb25zdCBwbHVnaW5fbGRfc3VmZml4ICA9IFBMVUdJTl9MRF9TVUZGSVg7 CisgIHN0YXRpYyBjb25zdCBjaGFyICpjb25zdCByZWFsX2xkX3N1ZmZpeCAg ICA9ICJyZWFsLWxkIjsKICAgc3RhdGljIGNvbnN0IGNoYXIgKmNvbnN0IGNv bGxlY3RfbGRfc3VmZml4ID0gImNvbGxlY3QtbGQiOwotICBzdGF0aWMgY29u c3QgY2hhciAqY29uc3Qgbm1fc3VmZml4CT0gIm5tIjsKLSAgc3RhdGljIGNv bnN0IGNoYXIgKmNvbnN0IGdubV9zdWZmaXgJPSAiZ25tIjsKKyAgc3RhdGlj IGNvbnN0IGNoYXIgKmNvbnN0IG5tX3N1ZmZpeAkgICAgID0gIm5tIjsKKyAg c3RhdGljIGNvbnN0IGNoYXIgKmNvbnN0IGdubV9zdWZmaXgJICAgICA9ICJn bm0iOwogI2lmZGVmIExERF9TVUZGSVgKLSAgc3RhdGljIGNvbnN0IGNoYXIg KmNvbnN0IGxkZF9zdWZmaXgJPSBMRERfU1VGRklYOworICBzdGF0aWMgY29u c3QgY2hhciAqY29uc3QgbGRkX3N1ZmZpeAkgICAgID0gTEREX1NVRkZJWDsK ICNlbmRpZgotICBzdGF0aWMgY29uc3QgY2hhciAqY29uc3Qgc3RyaXBfc3Vm Zml4ID0gInN0cmlwIjsKLSAgc3RhdGljIGNvbnN0IGNoYXIgKmNvbnN0IGdz dHJpcF9zdWZmaXggPSAiZ3N0cmlwIjsKKyAgc3RhdGljIGNvbnN0IGNoYXIg KmNvbnN0IHN0cmlwX3N1ZmZpeCAgICAgID0gInN0cmlwIjsKKyAgc3RhdGlj IGNvbnN0IGNoYXIgKmNvbnN0IGdzdHJpcF9zdWZmaXggICAgID0gImdzdHJp cCI7CiAKICNpZmRlZiBDUk9TU19ESVJFQ1RPUllfU1RSVUNUVVJFCiAgIC8q IElmIHdlIGxvb2sgZm9yIGEgcHJvZ3JhbSBpbiB0aGUgY29tcGlsZXIgZGly ZWN0b3JpZXMsIHdlIGp1c3QgdXNlCkBAIC04NjIsNiArODY0LDEwIEBAIG1h aW4gKGludCBhcmdjLCBjaGFyICoqYXJndikKIAogICBjb25zdCBjaGFyICpj b25zdCBmdWxsX2xkX3N1ZmZpeCA9CiAgICAgY29uY2F0KHRhcmdldF9tYWNo aW5lLCAiLSIsIGxkX3N1ZmZpeCwgTlVMTCk7CisgIGNvbnN0IGNoYXIgKmNv bnN0IGZ1bGxfZ29sZF9zdWZmaXggPQorICAgIGNvbmNhdCAodGFyZ2V0X21h Y2hpbmUsICItIiwgZ29sZF9zdWZmaXgsIE5VTEwpOworICBjb25zdCBjaGFy ICpjb25zdCBmdWxsX2JmZF9sZF9zdWZmaXggPQorICAgIGNvbmNhdCAodGFy Z2V0X21hY2hpbmUsICItIiwgYmZkX2xkX3N1ZmZpeCwgTlVMTCk7CiAgIGNv bnN0IGNoYXIgKmNvbnN0IGZ1bGxfcGx1Z2luX2xkX3N1ZmZpeCA9CiAgICAg Y29uY2F0KHRhcmdldF9tYWNoaW5lLCAiLSIsIHBsdWdpbl9sZF9zdWZmaXgs IE5VTEwpOwogICBjb25zdCBjaGFyICpjb25zdCBmdWxsX25tX3N1ZmZpeCA9 CkBAIC04NzcsMTUgKzg4MywxNyBAQCBtYWluIChpbnQgYXJnYywgY2hhciAq KmFyZ3YpCiAgIGNvbnN0IGNoYXIgKmNvbnN0IGZ1bGxfZ3N0cmlwX3N1ZmZp eCA9CiAgICAgY29uY2F0ICh0YXJnZXRfbWFjaGluZSwgIi0iLCBnc3RyaXBf c3VmZml4LCBOVUxMKTsKICNlbHNlCi0gIGNvbnN0IGNoYXIgKmNvbnN0IGZ1 bGxfbGRfc3VmZml4CT0gbGRfc3VmZml4OworICBjb25zdCBjaGFyICpjb25z dCBmdWxsX2xkX3N1ZmZpeAkgID0gbGRfc3VmZml4OworICBjb25zdCBjaGFy ICpjb25zdCBmdWxsX2dvbGRfc3VmZml4CSAgPSBnb2xkX3N1ZmZpeDsKKyAg Y29uc3QgY2hhciAqY29uc3QgZnVsbF9iZmRfbGRfc3VmZml4CSAgPSBiZmRf bGRfc3VmZml4OwogICBjb25zdCBjaGFyICpjb25zdCBmdWxsX3BsdWdpbl9s ZF9zdWZmaXggPSBwbHVnaW5fbGRfc3VmZml4OwotICBjb25zdCBjaGFyICpj b25zdCBmdWxsX25tX3N1ZmZpeAk9IG5tX3N1ZmZpeDsKLSAgY29uc3QgY2hh ciAqY29uc3QgZnVsbF9nbm1fc3VmZml4CT0gZ25tX3N1ZmZpeDsKKyAgY29u c3QgY2hhciAqY29uc3QgZnVsbF9ubV9zdWZmaXgJICA9IG5tX3N1ZmZpeDsK KyAgY29uc3QgY2hhciAqY29uc3QgZnVsbF9nbm1fc3VmZml4CSAgPSBnbm1f c3VmZml4OwogI2lmZGVmIExERF9TVUZGSVgKLSAgY29uc3QgY2hhciAqY29u c3QgZnVsbF9sZGRfc3VmZml4CT0gbGRkX3N1ZmZpeDsKKyAgY29uc3QgY2hh ciAqY29uc3QgZnVsbF9sZGRfc3VmZml4CSAgPSBsZGRfc3VmZml4OwogI2Vu ZGlmCi0gIGNvbnN0IGNoYXIgKmNvbnN0IGZ1bGxfc3RyaXBfc3VmZml4CT0g c3RyaXBfc3VmZml4OwotICBjb25zdCBjaGFyICpjb25zdCBmdWxsX2dzdHJp cF9zdWZmaXgJPSBnc3RyaXBfc3VmZml4OworICBjb25zdCBjaGFyICpjb25z dCBmdWxsX3N0cmlwX3N1ZmZpeAkgID0gc3RyaXBfc3VmZml4OworICBjb25z dCBjaGFyICpjb25zdCBmdWxsX2dzdHJpcF9zdWZmaXgJICA9IGdzdHJpcF9z dWZmaXg7CiAjZW5kaWYgLyogQ1JPU1NfRElSRUNUT1JZX1NUUlVDVFVSRSAq LwogCiAgIGNvbnN0IGNoYXIgKmFyZzsKQEAgLTg5OSw3ICs5MDcsMTMgQEAg bWFpbiAoaW50IGFyZ2MsIGNoYXIgKiphcmd2KQogICBjb25zdCBjaGFyICoq Y19wdHI7CiAgIGNoYXIgKipsZDFfYXJndjsKICAgY29uc3QgY2hhciAqKmxk MTsKLSAgYm9vbCB1c2VfcGx1Z2luID0gZmFsc2U7CisgIGVudW0gbGlua2Vy X3NlbGVjdAorICB7CisgICAgREZMVF9MSU5LRVIsCisgICAgUExVR0lOX0xJ TktFUiwKKyAgICBHT0xEX0xJTktFUiwKKyAgICBCRkRfTElOS0VSCisgIH0g c2VsZWN0ZWRfbGlua2VyID0gREZMVF9MSU5LRVI7CiAKICAgLyogVGhlIGtp bmRzIG9mIHN5bWJvbHMgd2Ugd2lsbCBoYXZlIHRvIGNvbnNpZGVyIHdoZW4g c2Nhbm5pbmcgdGhlCiAgICAgIG91dGNvbWUgb2YgYSBmaXJzdCBwYXNzIGxp bmsuICBUaGlzIGlzIEFMTCB0byBzdGFydCB3aXRoLCB0aGVuIG1pZ2h0CkBA IC05OTAsMTUgKzEwMDQsMjEgQEAgbWFpbiAoaW50IGFyZ2MsIGNoYXIgKiph cmd2KQogICAgICAgICBlbHNlIGlmICghIHN0cmNtcCAoYXJndltpXSwgIi1m bHRvLXBhcnRpdGlvbj1ub25lIikpCiAJICBub19wYXJ0aXRpb24gPSB0cnVl OwogICAgICAgICBlbHNlIGlmICgoISBzdHJuY21wIChhcmd2W2ldLCAiLWZs dG89IiwgNikKLQkJICB8fCAhIHN0cmNtcCAoYXJndltpXSwgIi1mbHRvIikp ICYmICEgdXNlX3BsdWdpbikKKwkJICB8fCAhIHN0cmNtcCAoYXJndltpXSwg Ii1mbHRvIikpCisJCSAmJiBzZWxlY3RlZF9saW5rZXIgIT0gUExVR0lOX0xJ TktFUikKIAkgIGx0b19tb2RlID0gTFRPX01PREVfV0hPUFI7CiAJZWxzZSBp ZiAoIXN0cm5jbXAgKGFyZ3ZbaV0sICItZm5vLWx0byIsIDgpKQogCSAgbHRv X21vZGUgPSBMVE9fTU9ERV9OT05FOwogICAgICAgICBlbHNlIGlmICghIHN0 cmNtcCAoYXJndltpXSwgIi1wbHVnaW4iKSkKIAkgIHsKLQkgICAgdXNlX3Bs dWdpbiA9IHRydWU7CisJICAgIHNlbGVjdGVkX2xpbmtlciA9ICBQTFVHSU5f TElOS0VSOwogCSAgICBsdG9fbW9kZSA9IExUT19NT0RFX05PTkU7CiAJICB9 CisJZWxzZSBpZiAoISBzdHJjbXAgKGFyZ3ZbaV0sICItdXNlLWdvbGQiKSkK KwkgIHNlbGVjdGVkX2xpbmtlciA9IEdPTERfTElOS0VSOworCWVsc2UgaWYg KCEgc3RyY21wIChhcmd2W2ldLCAiLXVzZS1sZCIpKQorCSAgc2VsZWN0ZWRf bGlua2VyID0gQkZEX0xJTktFUjsKKwogI2lmZGVmIENPTExFQ1RfRVhQT1JU X0xJU1QKIAkvKiBzaW5jZSAtYnJ0bCwgLWJleHBvcnQsIC1iNjQgYXJlIG5v dCBwb3NpdGlvbiBkZXBlbmRlbnQKIAkgICBhbHNvIGNoZWNrIGZvciB0aGVt IGhlcmUgKi8KQEAgLTEwODEsMzUgKzExMDEsMTA4IEBAIG1haW4gKGludCBh cmdjLCBjaGFyICoqYXJndikKICAgLyogVHJ5IHRvIGRpc2NvdmVyIGEgdmFs aWQgbGlua2VyL25tL3N0cmlwIHRvIHVzZS4gICovCiAKICAgLyogTWF5YmUg d2Uga25vdyB0aGUgcmlnaHQgZmlsZSB0byB1c2UgKGlmIG5vdCBjcm9zcyku ICAqLwotICBsZF9maWxlX25hbWUgPSAwOworICBsZF9maWxlX25hbWUgPSBO VUxMOwogI2lmZGVmIERFRkFVTFRfTElOS0VSCiAgIGlmIChhY2Nlc3MgKERF RkFVTFRfTElOS0VSLCBYX09LKSA9PSAwKQogICAgIGxkX2ZpbGVfbmFtZSA9 IERFRkFVTFRfTElOS0VSOwotICBpZiAobGRfZmlsZV9uYW1lID09IDApCisg IGlmIChsZF9maWxlX25hbWUgPT0gTlVMTCkKICNlbmRpZgogI2lmZGVmIFJF QUxfTERfRklMRV9OQU1FCiAgIGxkX2ZpbGVfbmFtZSA9IGZpbmRfYV9maWxl ICgmcGF0aCwgUkVBTF9MRF9GSUxFX05BTUUpOwotICBpZiAobGRfZmlsZV9u YW1lID09IDApCisgIGlmIChsZF9maWxlX25hbWUgPT0gTlVMTCkKICNlbmRp ZgogICAvKiBTZWFyY2ggdGhlICh0YXJnZXQtc3BlY2lmaWMpIGNvbXBpbGVy IGRpcnMgZm9yIGxkJy4gICovCiAgIGxkX2ZpbGVfbmFtZSA9IGZpbmRfYV9m aWxlICgmY3BhdGgsIHJlYWxfbGRfc3VmZml4KTsKICAgLyogTGlrZXdpc2Ug Zm9yIGBjb2xsZWN0LWxkJy4gICovCi0gIGlmIChsZF9maWxlX25hbWUgPT0g MCkKKyAgaWYgKGxkX2ZpbGVfbmFtZSA9PSBOVUxMKQogICAgIGxkX2ZpbGVf bmFtZSA9IGZpbmRfYV9maWxlICgmY3BhdGgsIGNvbGxlY3RfbGRfc3VmZml4 KTsKICAgLyogU2VhcmNoIHRoZSBjb21waWxlciBkaXJlY3RvcmllcyBmb3Ig YGxkJy4gIFdlIGhhdmUgcHJvdGVjdGlvbiBhZ2FpbnN0CiAgICAgIHJlY3Vy c2l2ZSBjYWxscyBpbiBmaW5kX2FfZmlsZS4gICovCi0gIGlmIChsZF9maWxl X25hbWUgPT0gMCkKLSAgICBsZF9maWxlX25hbWUgPSBmaW5kX2FfZmlsZSAo JmNwYXRoLAotCQkJCXVzZV9wbHVnaW4KLQkJCQk/IHBsdWdpbl9sZF9zdWZm aXgKLQkJCQk6IGxkX3N1ZmZpeCk7CisgIGlmIChsZF9maWxlX25hbWUgPT0g TlVMTCkKKyAgICBzd2l0Y2ggKHNlbGVjdGVkX2xpbmtlcikKKyAgICAgIHsK KyAgICAgIGRlZmF1bHQ6CisgICAgICBjYXNlIERGTFRfTElOS0VSOgorCWxk X2ZpbGVfbmFtZSA9IGZpbmRfYV9maWxlICgmY3BhdGgsIGxkX3N1ZmZpeCk7 CisJYnJlYWs7CisgICAgICBjYXNlIFBMVUdJTl9MSU5LRVI6CisJbGRfZmls ZV9uYW1lID0gZmluZF9hX2ZpbGUgKCZjcGF0aCwgcGx1Z2luX2xkX3N1ZmZp eCk7CisJYnJlYWs7CisgICAgICBjYXNlIEdPTERfTElOS0VSOgorCWxkX2Zp bGVfbmFtZSA9IGZpbmRfYV9maWxlICgmY3BhdGgsIGdvbGRfc3VmZml4KTsK KwlicmVhazsKKyAgICAgIGNhc2UgQkZEX0xJTktFUjoKKwlsZF9maWxlX25h bWUgPSBmaW5kX2FfZmlsZSAoJmNwYXRoLCBiZmRfbGRfc3VmZml4KTsKKwli cmVhazsKKyAgICAgIH0KICAgLyogU2VhcmNoIHRoZSBvcmRpbmFyeSBzeXN0 ZW0gYmluIGRpcmVjdG9yaWVzCiAgICAgIGZvciBgbGQnIChpZiBuYXRpdmUg bGlua2luZykgb3IgYFRBUkdFVC1sZCcgKGlmIGNyb3NzKS4gICovCi0gIGlm IChsZF9maWxlX25hbWUgPT0gMCkKLSAgICBsZF9maWxlX25hbWUgPSBmaW5k X2FfZmlsZSAoJnBhdGgsCi0JCQkJdXNlX3BsdWdpbgotCQkJCT8gZnVsbF9w bHVnaW5fbGRfc3VmZml4Ci0JCQkJOiBmdWxsX2xkX3N1ZmZpeCk7CisgIGlm IChsZF9maWxlX25hbWUgPT0gTlVMTCkKKyAgICBzd2l0Y2ggKHNlbGVjdGVk X2xpbmtlcikKKyAgICAgIHsKKyAgICAgIGRlZmF1bHQ6CisgICAgICBjYXNl IERGTFRfTElOS0VSOgorCWxkX2ZpbGVfbmFtZSA9IGZpbmRfYV9maWxlICgm cGF0aCwgZnVsbF9sZF9zdWZmaXgpOworCWJyZWFrOworICAgICAgY2FzZSBQ TFVHSU5fTElOS0VSOgorCWxkX2ZpbGVfbmFtZSA9IGZpbmRfYV9maWxlICgm cGF0aCwgZnVsbF9wbHVnaW5fbGRfc3VmZml4KTsKKwlicmVhazsKKyAgICAg IGNhc2UgR09MRF9MSU5LRVI6CisJbGRfZmlsZV9uYW1lID0gZmluZF9hX2Zp bGUgKCZwYXRoLCBmdWxsX2dvbGRfc3VmZml4KTsKKwlicmVhazsKKyAgICAg IGNhc2UgQkZEX0xJTktFUjoKKwlsZF9maWxlX25hbWUgPSBmaW5kX2FfZmls ZSAoJnBhdGgsIGZ1bGxfYmZkX2xkX3N1ZmZpeCk7CisJYnJlYWs7CisgICAg ICB9CisgIC8qIElmIHdlIGZhaWxlZCB0byBmaW5kIGEgcGx1Z2luLWNhcGFi bGUgbGlua2VyLCB0cnkgdGhlIG9yZGluYXJ5IG9uZS4gICovCisgIGlmIChs ZF9maWxlX25hbWUgPT0gTlVMTCAmJiBzZWxlY3RlZF9saW5rZXIgPT0gUExV R0lOX0xJTktFUikKKyAgICBsZF9maWxlX25hbWUgPSBmaW5kX2FfZmlsZSAo JmNwYXRoLCBsZF9zdWZmaXgpOworCisgIGlmICgodmZsYWcgfHwgZGVidWcp ICYmIGxkX2ZpbGVfbmFtZSA9PSBOVUxMKQorICAgIHsKKyAgICAgIHN0cnVj dCBwcmVmaXhfbGlzdCAqIHA7CisgICAgICBjb25zdCBjaGFyICogczsKKwor ICAgICAgbm90aWNlICgiY29sbGVjdDI6IHdhcm5pbmc6IHVuYWJsZSB0byBm aW5kIGxpbmtlci5cbiIpOworCisjaWZkZWYgREVGQVVMVF9MSU5LRVIKKyAg ICAgIG5vdGljZSAoIiBTZWFyY2hlZCBmb3IgdGhpcyBhYnNvbHV0ZSBleGVj dXRhYmxlOlxuIik7CisgICAgICBub3RpY2UgKCIgJXNcbiIsIERFRkFVTFRf TElOS0VSKTsKKyNlbmRpZgorCisgICAgICBub3RpY2UgKCIgU2VhcmNoZWQg aW4gdGhlc2UgcGF0aHM6XG4iKTsKKyAgICAgIGZvciAocCA9IGNwYXRoLnBs aXN0OyBwICE9IE5VTEw7IHAgPSBwLT5uZXh0KQorCW5vdGljZSAoIiAgJXNc biIsIHAtPnByZWZpeCk7CisgICAgICBub3RpY2UgKCIgRm9yIHRoZXNlIGV4 ZWN1dGFibGVzOlxuIik7CisgICAgICBub3RpY2UgKCIgICVzXG4iLCByZWFs X2xkX3N1ZmZpeCk7CisgICAgICBub3RpY2UgKCIgICVzXG4iLCBjb2xsZWN0 X2xkX3N1ZmZpeCk7CisgICAgICBzd2l0Y2ggKHNlbGVjdGVkX2xpbmtlcikK KyAgICAgIHsKKyAgICAgIGRlZmF1bHQ6CisgICAgICBjYXNlIERGTFRfTElO S0VSOiAgICBzID0gbGRfc3VmZml4OyBicmVhazsKKyAgICAgIGNhc2UgUExV R0lOX0xJTktFUjogIHMgPSBwbHVnaW5fbGRfc3VmZml4OyBicmVhazsKKyAg ICAgIGNhc2UgR09MRF9MSU5LRVI6ICAgIHMgPSBnb2xkX3N1ZmZpeDsgYnJl YWs7CisgICAgICBjYXNlIEJGRF9MSU5LRVI6ICAgICBzID0gYmZkX2xkX3N1 ZmZpeDsgYnJlYWs7CisgICAgICB9CisgICAgICBub3RpY2UgKCIgICVzXG4i LCBzKTsKKworICAgICAgbm90aWNlICgiIEFuZCBzZWFyY2hlZCBpbiB0aGVz ZSBwYXRoczpcbiIpOworICAgICAgZm9yIChwID0gcGF0aC5wbGlzdDsgcCAh PSBOVUxMOyBwID0gcC0+bmV4dCkKKwlub3RpY2UgKCIgICVzXG4iLCBwLT5w cmVmaXgpOworICAgICAgbm90aWNlICgiIEZvciB0aGVzZSBleGVjdXRhYmxl czpcbiIpOworI2lmZGVmIFJFQUxfTERfRklMRV9OQU1FCisgICAgICBub3Rp Y2UgKCIgJXNcbiIsIFJFQUxfTERfRklMRV9OQU1FKTsKKyNlbmRpZgorICAg ICAgc3dpdGNoIChzZWxlY3RlZF9saW5rZXIpCisgICAgICB7CisgICAgICBk ZWZhdWx0OgorICAgICAgY2FzZSBERkxUX0xJTktFUjogICAgcyA9IGZ1bGxf bGRfc3VmZml4OyBicmVhazsKKyAgICAgIGNhc2UgUExVR0lOX0xJTktFUjog IHMgPSBmdWxsX3BsdWdpbl9sZF9zdWZmaXg7IGJyZWFrOworICAgICAgY2Fz ZSBHT0xEX0xJTktFUjogICAgcyA9IGZ1bGxfZ29sZF9zdWZmaXg7IGJyZWFr OworICAgICAgY2FzZSBCRkRfTElOS0VSOiAgICAgcyA9IGZ1bGxfYmZkX2xk X3N1ZmZpeDsgYnJlYWs7CisgICAgICB9CisgICAgICBub3RpY2UgKCIgICVz XG4iLCBzKTsKKyAgICB9CiAKICNpZmRlZiBSRUFMX05NX0ZJTEVfTkFNRQog ICBubV9maWxlX25hbWUgPSBmaW5kX2FfZmlsZSAoJnBhdGgsIFJFQUxfTk1f RklMRV9OQU1FKTsKZGlmZiAtLWdpdCBhL2djYy9jb21tb24ub3B0IGIvZ2Nj L2NvbW1vbi5vcHQKaW5kZXggNGM4YmQxMS4uY2E2N2U4OSAxMDA2NDQKLS0t IGEvZ2NjL2NvbW1vbi5vcHQKKysrIGIvZ2NjL2NvbW1vbi5vcHQKQEAgLTIx NzEsNiArMjE3MSw5IEBAIGZ1bndpbmQtdGFibGVzCiBDb21tb24gUmVwb3J0 IFZhcihmbGFnX3Vud2luZF90YWJsZXMpIE9wdGltaXphdGlvbgogSnVzdCBn ZW5lcmF0ZSB1bndpbmQgdGFibGVzIGZvciBleGNlcHRpb24gaGFuZGxpbmcK IAorZnVzZS1sZD0KK0NvbW1vbiBKb2luZWQgVW5kb2N1bWVudGVkCisKIGZ1 c2UtbGlua2VyLXBsdWdpbgogQ29tbW9uIFVuZG9jdW1lbnRlZAogCmRpZmYg LS1naXQgYS9nY2MvY29uZmlndXJlIGIvZ2NjL2NvbmZpZ3VyZQppbmRleCBl MmMxMTllLi40ZGE4NGQ1IDEwMDc1NQotLS0gYS9nY2MvY29uZmlndXJlCisr KyBiL2djYy9jb25maWd1cmUKQEAgLTY4MCw2ICs2ODAsNyBAQCBnY2NfY3Zf cmVhZGVsZgogZ2NjX2N2X29iamR1bXAKIE9SSUdJTkFMX05NX0ZPUl9UQVJH RVQKIGdjY19jdl9ubQorT1JJR0lOQUxfR09MRF9GT1JfVEFSR0VUCiBPUklH SU5BTF9MRF9GT1JfVEFSR0VUCiBPUklHSU5BTF9QTFVHSU5fTERfRk9SX1RB UkdFVAogZ2NjX2N2X2xkCkBAIC0yMTM3Nyw2ICsyMTM3OCwyMSBAQCBmaQog ZmkKIGZpCiAKK2djY19jdl9sZF9nb2xkX3NyY2Rpcj1gZWNobyAkc3JjZGly IHwgc2VkIC1lICdzLC9nY2MkLCwnYC9nb2xkCisKK2lmIHRlc3QgIiR7Z2Nj X2N2X2dvbGQrc2V0fSIgPSBzZXQ7IHRoZW4gOgorCitlbHNlCisKK2lmIHRl c3QgLWYgJGdjY19jdl9sZF9nb2xkX3NyY2Rpci9jb25maWd1cmUuYWMgXAor ICAgICAmJiB0ZXN0IC1mIC4uL2dvbGQvTWFrZWZpbGUgXAorICAgICAmJiB0 ZXN0IHgkYnVpbGQgPSB4JGhvc3Q7IHRoZW4KKwlnY2NfY3ZfZ29sZD0uLi9n b2xkL2xkLW5ldyRidWlsZF9leGVleHQKK2Vsc2UKKyAgICAgICAgZ2NjX2N2 X2dvbGQ9JycKK2ZpCitmaQorCiBPUklHSU5BTF9QTFVHSU5fTERfRk9SX1RB UkdFVD0kZ2NjX2N2X2xkCiBQTFVHSU5fTERfU1VGRklYPWBiYXNlbmFtZSAk Z2NjX2N2X2xkIHwgc2VkIC1lICJzLCR0YXJnZXRfYWxpYXMtLCwiYAogIyBp ZiB0aGUgUExVR0lOX0xEIGlzIHNldCBsZC1uZXcsIGp1c3QgaGF2ZSBpdCBh cyBsZApAQCAtMjE0MjIsNiArMjE0MzgsOSBAQCBjYXNlICIkT1JJR0lOQUxf TERfRk9SX1RBUkdFVCIgaW4KICA7OwogZXNhYwogCitPUklHSU5BTF9HT0xE X0ZPUl9UQVJHRVQ9JGdjY19jdl9nb2xkCisKKwogeyAkYXNfZWNobyAiJGFz X21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBjaGVja2luZyB3aGF0IGxpbmtl ciB0byB1c2UiID4mNQogJGFzX2VjaG9fbiAiY2hlY2tpbmcgd2hhdCBsaW5r ZXIgdG8gdXNlLi4uICIgPiY2OyB9CiBpZiB0ZXN0ICIkZ2NjX2N2X2xkIiA9 IC4uL2xkL2xkLW5ldyRidWlsZF9leGVleHQgXApkaWZmIC0tZ2l0IGEvZ2Nj L2NvbmZpZ3VyZS5hYyBiL2djYy9jb25maWd1cmUuYWMKaW5kZXggYzZmNTdi ZC4uMzA1YTFjZCAxMDA2NDQKLS0tIGEvZ2NjL2NvbmZpZ3VyZS5hYworKysg Yi9nY2MvY29uZmlndXJlLmFjCkBAIC0yMDI3LDYgKzIwMjcsMTcgQEAgZWxz ZQogICAgICAgICBBQ19QQVRIX1BST0coZ2NjX2N2X2xkLCAkTERfRk9SX1RB UkdFVCkKIGZpXSkKIAorZ2NjX2N2X2xkX2dvbGRfc3JjZGlyPWBlY2hvICRz cmNkaXIgfCBzZWQgLWUgJ3MsL2djYyQsLCdgL2dvbGQKKworQVNfVkFSX1NF VF9JRihnY2NfY3ZfZ29sZCwsIFsKK2lmIHRlc3QgLWYgJGdjY19jdl9sZF9n b2xkX3NyY2Rpci9jb25maWd1cmUuYWMgXAorICAgICAmJiB0ZXN0IC1mIC4u L2dvbGQvTWFrZWZpbGUgXAorICAgICAmJiB0ZXN0IHgkYnVpbGQgPSB4JGhv c3Q7IHRoZW4KKwlnY2NfY3ZfZ29sZD0uLi9nb2xkL2xkLW5ldyRidWlsZF9l eGVleHQKK2Vsc2UKKyAgICAgICAgZ2NjX2N2X2dvbGQ9JycKK2ZpXSkKKwog T1JJR0lOQUxfUExVR0lOX0xEX0ZPUl9UQVJHRVQ9JGdjY19jdl9sZAogUExV R0lOX0xEX1NVRkZJWD1gYmFzZW5hbWUgJGdjY19jdl9sZCB8IHNlZCAtZSAi cywkdGFyZ2V0X2FsaWFzLSwsImAKICMgaWYgdGhlIFBMVUdJTl9MRCBpcyBz ZXQgbGQtbmV3LCBqdXN0IGhhdmUgaXQgYXMgbGQKQEAgLTIwNjIsNiArMjA3 Myw5IEBAIGNhc2UgIiRPUklHSU5BTF9MRF9GT1JfVEFSR0VUIiBpbgogICAq KSBBQ19DT05GSUdfRklMRVMoY29sbGVjdC1sZDpleGVjLXRvb2wuaW4sIFtj aG1vZCAreCBjb2xsZWN0LWxkXSkgOzsKIGVzYWMgCiAKK09SSUdJTkFMX0dP TERfRk9SX1RBUkdFVD0kZ2NjX2N2X2dvbGQKK0FDX1NVQlNUKE9SSUdJTkFM X0dPTERfRk9SX1RBUkdFVCkKKwogQUNfTVNHX0NIRUNLSU5HKHdoYXQgbGlu a2VyIHRvIHVzZSkKIGlmIHRlc3QgIiRnY2NfY3ZfbGQiID0gLi4vbGQvbGQt bmV3JGJ1aWxkX2V4ZWV4dCBcCiAgICB8fCB0ZXN0ICIkZ2NjX2N2X2xkIiA9 IC4uL2dvbGQvbGQtbmV3JGJ1aWxkX2V4ZWV4dDsgdGhlbgpkaWZmIC0tZ2l0 IGEvZ2NjL2RvYy9pbnZva2UudGV4aSBiL2djYy9kb2MvaW52b2tlLnRleGkK aW5kZXggNTFiNmU4NS4uYjc4ZjY5OCAxMDA2NDQKLS0tIGEvZ2NjL2RvYy9p bnZva2UudGV4aQorKysgYi9nY2MvZG9jL2ludm9rZS50ZXhpCkBAIC00MjUs NyArNDI1LDcgQEAgT2JqZWN0aXZlLUMgYW5kIE9iamVjdGl2ZS1DKysgRGlh bGVjdHN9LgogLWZ1bml0LWF0LWEtdGltZSAtZnVucm9sbC1hbGwtbG9vcHMg LWZ1bnJvbGwtbG9vcHMgQGdvbAogLWZ1bnNhZmUtbG9vcC1vcHRpbWl6YXRp b25zIC1mdW5zYWZlLW1hdGgtb3B0aW1pemF0aW9ucyAtZnVuc3dpdGNoLWxv b3BzIEBnb2wKIC1mdmFyaWFibGUtZXhwYW5zaW9uLWluLXVucm9sbGVyIC1m dmVjdC1jb3N0LW1vZGVsIC1mdnB0IC1md2ViIEBnb2wKLS1md2hvbGUtcHJv Z3JhbSAtZndwYSAtZnVzZS1saW5rZXItcGx1Z2luIEBnb2wKKy1md2hvbGUt cHJvZ3JhbSAtZndwYSAtZnVzZS1sZCAtZnVzZS1saW5rZXItcGx1Z2luIEBn b2wKIC0tcGFyYW0gQHZhcntuYW1lfT1AdmFye3ZhbHVlfQogLU8gIC1PMCAg LU8xICAtTzIgIC1PMyAgLU9zIC1PZmFzdCAtT2d9CiAKQEAgLTg0MTksNiAr ODQxOSwxNiBAQCB0aGUgY29tcGFyaXNvbiBvcGVyYXRpb24gYmVmb3JlIHJl Z2lzdGVyIGFsbG9jYXRpb24gaXMgY29tcGxldGUuCiAKIEVuYWJsZWQgYXQg bGV2ZWxzIEBvcHRpb257LU99LCBAb3B0aW9uey1PMn0sIEBvcHRpb257LU8z fSwgQG9wdGlvbnstT3N9LgogCitAaXRlbSAtZnVzZS1sZD1nb2xkCitVc2Ug dGhlIEBjb21tYW5ke2dvbGR9IGxpbmtlciBpbnN0ZWFkIG9mIHRoZSBkZWZh dWx0IGxpbmtlci4KK1RoaXMgb3B0aW9uIGlzIG9ubHkgbmVjZXNzYXJ5IGlm IEdDQyBoYXMgYmVlbiBjb25maWd1cmVkIHdpdGgKK0BvcHRpb257LS1lbmFi bGUtZ29sZH0gYW5kIEBvcHRpb257LS1lbmFibGUtbGQ9ZGVmYXVsdH0uCisK K0BpdGVtIC1mdXNlLWxkPWJmZAorVXNlIHRoZSBAY29tbWFuZHtsZC5iZmR9 IGxpbmtlciBpbnN0ZWFkIG9mIHRoZSBkZWZhdWx0IGxpbmtlci4KK1RoaXMg b3B0aW9uIGlzIG9ubHkgbmVjZXNzYXJ5IGlmIEdDQyBoYXMgYmVlbiBjb25m aWd1cmVkIHdpdGgKK0BvcHRpb257LS1lbmFibGUtZ29sZH0gYW5kIEBvcHRp b257LS1lbmFibGUtbGR9LgorCiBAaXRlbSAtZmNwcm9wLXJlZ2lzdGVycwog QG9waW5kZXggZmNwcm9wLXJlZ2lzdGVycwogQWZ0ZXIgcmVnaXN0ZXIgYWxs b2NhdGlvbiBhbmQgcG9zdC1yZWdpc3RlciBhbGxvY2F0aW9uIGluc3RydWN0 aW9uIHNwbGl0dGluZywKZGlmZiAtLWdpdCBhL2djYy9leGVjLXRvb2wuaW4g Yi9nY2MvZXhlYy10b29sLmluCmluZGV4IDhhMTA3NzUuLjQ2YWFlZGMgMTAw NjQ0Ci0tLSBhL2djYy9leGVjLXRvb2wuaW4KKysrIGIvZ2NjL2V4ZWMtdG9v bC5pbgpAQCAtMSw2ICsxLDYgQEAKICMhIC9iaW4vc2gKIAotIyBDb3B5cmln aHQgKEMpIDIwMDcsIDIwMDgsIDIwMTAgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0 aW9uLCBJbmMuCisjIENvcHlyaWdodCAoQykgMjAwNywgMjAwOCwgMjAxMCwg MjAxMSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KICMgVGhpcyBm aWxlIGlzIHBhcnQgb2YgR0NDLgogCiAjIEdDQyBpcyBmcmVlIHNvZnR3YXJl OyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CkBAIC0y MSwxMSArMjEsMTMgQEAKIAogT1JJR0lOQUxfQVNfRk9SX1RBUkdFVD0iQE9S SUdJTkFMX0FTX0ZPUl9UQVJHRVRAIgogT1JJR0lOQUxfTERfRk9SX1RBUkdF VD0iQE9SSUdJTkFMX0xEX0ZPUl9UQVJHRVRAIgorT1JJR0lOQUxfR09MRF9G T1JfVEFSR0VUPSJAT1JJR0lOQUxfR09MRF9GT1JfVEFSR0VUQCIKIE9SSUdJ TkFMX1BMVUdJTl9MRF9GT1JfVEFSR0VUPSJAT1JJR0lOQUxfUExVR0lOX0xE X0ZPUl9UQVJHRVRAIgogT1JJR0lOQUxfTk1fRk9SX1RBUkdFVD0iQE9SSUdJ TkFMX05NX0ZPUl9UQVJHRVRAIgogZXhlZXh0PUBob3N0X2V4ZWV4dEAKIGZh c3RfaW5zdGFsbD1AZW5hYmxlX2Zhc3RfaW5zdGFsbEAKIG9iamRpcj1Ab2Jq ZGlyQAordmVyc2lvbj0iMS4xIgogCiBpbnZva2VkPWBiYXNlbmFtZSAiJDAi YAogaWQ9JGludm9rZWQKQEAgLTM2LDE1ICszOCw0NCBAQCBjYXNlICIkaW52 b2tlZCIgaW4KICAgICBkaXI9Z2FzCiAgICAgOzsKICAgY29sbGVjdC1sZCkK LSAgICAjIHdoZW4gdXNpbmcgYSBsaW5rZXIgcGx1Z2luLCBnY2Mgd2lsbCBh bHdheXMgcGFzcyAnLXBsdWdpbicgYXMgdGhlCi0gICAgIyBmaXJzdCBvciBz ZWNvbmQgb3B0aW9uIHRvIHRoZSBsaW5rZXIuCi0gICAgaWYgdGVzdCB4IiQx IiA9ICJ4LXBsdWdpbiIgfHwgdGVzdCB4IiQyIiA9ICJ4LXBsdWdpbiI7IHRo ZW4KLSAgICAgIG9yaWdpbmFsPSRPUklHSU5BTF9QTFVHSU5fTERfRk9SX1RB UkdFVAotICAgIGVsc2UKLSAgICAgIG9yaWdpbmFsPSRPUklHSU5BTF9MRF9G T1JfVEFSR0VUCi0gICAgZmkKICAgICBwcm9nPWxkLW5ldyRleGVleHQKLSAg ICBkaXI9bGQKKyAgICAjIExvb2sgZm9yIHRoZSBhIGNvbW1hbmQgbGluZSBv cHRpb24KKyAgICAjIHNwZWNpZnlpbmcgdGhlIGxpbmtlciB0byBiZSB1c2Vk LgorICAgIGNhc2UgIiAkKiAiIGluCisgICAgICAqXCAtdXNlLWdvbGRcICop CisgICAgICAgIG9yaWdpbmFsPSRPUklHSU5BTF9HT0xEX0ZPUl9UQVJHRVQK KwlkaXI9Z29sZAorICAgICAgICA7OworICAgICAgKlwgLXVzZS1sZFwgKiB8 ICpcIC11c2UtbGQuYmZkXCAqKQorICAgICAgICBvcmlnaW5hbD0kT1JJR0lO QUxfTERfRk9SX1RBUkdFVAorICAgICAgICBkaXI9bGQKKyAgICAgICAgOzsK KyAgICAgICpcIC1wbHVnaW5cICopCisgICAgICAgIG9yaWdpbmFsPSRPUklH SU5BTF9QTFVHSU5fTERfRk9SX1RBUkdFVAorICAgICAgICBkaXI9bGQKKwk7 OworICAgICAgKikKKyAgICAgICAgb3JpZ2luYWw9JE9SSUdJTkFMX0xEX0ZP Ul9UQVJHRVQKKyAgICAgICAgZGlyPWxkCisJOzsKKyAgICBlc2FjCisKKyAg ICAjIElmIHRoZSBzZWxlY3RlZCBsaW5rZXIgaGFzIG5vdCBiZWVuIGNvbmZp Z3VyZWQgdGhlbgorICAgICMgdHJ5IHVzaW5nIHRoZSBvdGhlcnMsIGluIHRo ZSBvcmRlciBQTFVHSU4tTEQsIExELCBHT0xELgorICAgIGlmIHRlc3QgeCIk b3JpZ2luYWwiID0geDsgdGhlbgorICAgICAgaWYgdGVzdCB4IiRPUklHSU5B TF9QTFVHSU5fTERfRk9SX1RBUkdFVCIgIT0geDsgdGhlbgorICAgICAgICBv cmlnaW5hbD0kT1JJR0lOQUxfUExVR0lOX0xEX0ZPUl9UQVJHRVQKKyAgICAg ICAgZGlyPWxkCisgICAgICBlbGlmIHRlc3QgeCIkT1JJR0lOQUxfTERfRk9S X1RBUkdFVCIgIT0geDsgdGhlbgorICAgICAgICBvcmlnaW5hbD0kT1JJR0lO QUxfTERfRk9SX1RBUkdFVAorICAgICAgICBkaXI9bGQKKyAgICAgIGVsaWYg dGVzdCB4IiRPUklHSU5BTF9HT0xEX0ZPUl9UQVJHRVQiICE9IHg7IHRoZW4K KyAgICAgICAgb3JpZ2luYWw9JE9SSUdJTkFMX0dPTERfRk9SX1RBUkdFVAor ICAgICAgICBkaXI9Z29sZAorICAgICAgIyBPdGhlcndpc2UgZG8gbm90aGlu ZyAtIHRoZSBjYXNlIHN0YXRlbWVudCBiZWxvdworICAgICAgIyB3aWxsIGlz c3VlIGFuIGVycm9yIG1lc3NhZ2UgZm9yIHVzLgorICAgICAgZmkKKyAgICBm aQogICAgIGlkPWxkCiAgICAgOzsKICAgbm0pCkBAIC02MSwyOSArOTIsNTgg QEAgY2FzZSAiJG9yaWdpbmFsIiBpbgogICAgIHNjcmlwdGRpcj1gY2QgIiR0 ZGlyIiAmJiBwd2RgCiAKICAgICBpZiB0ZXN0IC14ICRzY3JpcHRkaXIvLi4v JGRpci8kcHJvZzsgdGhlbgotICAgICAgdGVzdCAiJGZhc3RfaW5zdGFsbCIg PSB5ZXMgfHwgZXhlYyAkc2NyaXB0ZGlyLy4uLyRkaXIvJHByb2cgJHsxKyIk QCJ9Ci0KLSAgICAgICMgaWYgbGlidG9vbCBkaWQgZXZlcnl0aGluZyBpdCBu ZWVkcyB0byBkbywgdGhlcmUncyBhIGZhc3QgcGF0aAotICAgICAgbHRfcHJv Zz0kc2NyaXB0ZGlyLy4uLyRkaXIvJG9iamRpci9sdC0kcHJvZyAKLSAgICAg IHRlc3QgLXggJGx0X3Byb2cgJiYgZXhlYyAkbHRfcHJvZyAkezErIiRAIn0K LQotICAgICAgIyBsaWJ0b29sIGhhcyBub3QgcmVsaW5rZWQgbGQtbmV3IHll dCwgYnV0IHdlIGNhbm5vdCBqdXN0IHVzZSB0aGUKLSAgICAgICMgcHJldmlv dXMgc3RhZ2UgKGJlY2F1c2UgdGhlbiB0aGUgcmVsaW5raW5nIHdvdWxkIGp1 c3QgbmV2ZXIgaGFwcGVuISkuCi0gICAgICAjIFNvIHdlIHRha2UgZXh0cmEg Y2FyZSB0byB1c2UgcHJldi1sZC9sZC1uZXcgKm9uIHJlY3Vyc2l2ZSBjYWxs cyouCi0gICAgICBldmFsIExUX1JDVT0iXCR7TFRfUkNVXyRpZH0iCi0gICAg ICB0ZXN0IHgiJExUX1JDVSIgPSB4IjEiICYmIGV4ZWMgJHNjcmlwdGRpci8u Li9wcmV2LSRkaXIvJHByb2cgJHsxKyIkQCJ9Ci0KLSAgICAgIGV2YWwgTFRf UkNVXyRpZD0xCi0gICAgICBleHBvcnQgTFRfUkNVXyRpZAotICAgICAgJHNj cmlwdGRpci8uLi8kZGlyLyRwcm9nICR7MSsiJEAifQotICAgICAgcmVzdWx0 PSQ/Ci0gICAgICBleGl0ICRyZXN1bHQKKyAgICAgIGlmIHRlc3QgIiRmYXN0 X2luc3RhbGwiID0geWVzOyB0aGVuCisgICAgICAgICMgSWYgbGlidG9vbCBk aWQgZXZlcnl0aGluZyBpdCBuZWVkcyB0byBkbywgdGhlcmUncyBhIGZhc3Qg cGF0aC4KKyAgICAgICAgbHRfcHJvZz0kc2NyaXB0ZGlyLy4uLyRkaXIvJG9i amRpci9sdC0kcHJvZyAKIAorCWlmIHRlc3QgLXggJGx0X3Byb2c7IHRoZW4K KwkgIG9yaWdpbmFsPSRsdF9wcm9nCisgICAgICAgIGVsc2UKKyAgICAgICAg ICAjIExpYnRvb2wgaGFzIG5vdCByZWxpbmtlZCBsZC1uZXcgeWV0LCBidXQg d2UgY2Fubm90IGp1c3QgdXNlIHRoZQorICAgICAgICAgICMgcHJldmlvdXMg c3RhZ2UgKGJlY2F1c2UgdGhlbiB0aGUgcmVsaW5raW5nIHdvdWxkIGp1c3Qg bmV2ZXIgaGFwcGVuISkuCisgICAgICAgICAgIyBTbyB3ZSB0YWtlIGV4dHJh IGNhcmUgdG8gdXNlIHByZXYtbGQvbGQtbmV3ICpvbiByZWN1cnNpdmUgY2Fs bHMqLgorICAgICAgICAgIGV2YWwgTFRfUkNVPSJcJHtMVF9SQ1VfJGlkfSIK KyAgICAgICAgICBpZiB0ZXN0IHgiJExUX1JDVSIgPSB4IjEiOyB0aGVuCisJ ICAgIG9yaWdpbmFsPSRzY3JpcHRkaXIvLi4vcHJldi0kZGlyLyRwcm9nCisg ICAgICAgICAgZWxzZQorICAgICAgICAgICAgZXZhbCBMVF9SQ1VfJGlkPTEK KyAgICAgICAgICAgIGV4cG9ydCBMVF9SQ1VfJGlkCisgICAgICAgICAgICBj YXNlICIgJCogIiBpbgorICAgICAgICAgICAgICAqXCAtdlwgKikKKyAgICAg ICAgICAgICAgIGVjaG8gIiRpbnZva2VkICR2ZXJzaW9uIgorICAgICAgICAg ICAgICAgZWNobyAkc2NyaXB0ZGlyLy4uLyRkaXIvJHByb2cgJCoKKyAgICAg ICAgICAgICAgIDs7CisgICAgICAgICAgICBlc2FjCisgICAgICAgICAgICAk c2NyaXB0ZGlyLy4uLyRkaXIvJHByb2cgJHsxKyIkQCJ9CisgICAgICAgICAg ICByZXN1bHQ9JD8KKyAgICAgICAgICAgIGV4aXQgJHJlc3VsdAorICAgICAg ICAgIGZpCisgICAgICAgIGZpCisgICAgICBlbHNlCisJb3JpZ2luYWw9JHNj cmlwdGRpci8uLi8kZGlyLyRwcm9nCisgICAgICBmaQogICAgIGVsc2UKLSAg ICAgIGV4ZWMgJHNjcmlwdGRpci8uLi9wcmV2LSRkaXIvJHByb2cgJHsxKyIk QCJ9CisgICAgICBvcmlnaW5hbD0kc2NyaXB0ZGlyLy4uL3ByZXYtJGRpci8k cHJvZwogICAgIGZpCiAgICAgOzsKLSAgKikKLSAgICBleGVjICRvcmlnaW5h bCAkezErIiRAIn0KKyAgIiIpCisgICAgZWNobyAiJGludm9rZWQ6IGV4ZWN1 dGFibGUgbm90IGNvbmZpZ3VyZWQiCisgICAgZXhpdCAxCiAgICAgOzsKIGVz YWMKKworIyBJZiAtdiBoYXMgYmVlbiB1c2VkIHRoZW4gZGlzcGxheSBvdXIg dmVyc2lvbiBudW1iZXIKKyMgYW5kIHRoZW4gZWNobyB0aGUgY29tbWFuZCB3 ZSBhcmUgYWJvdXQgdG8gaW52b2tlLgorY2FzZSAiICQqICIgaW4KKyAgKlwg LXZcICopCisgICAgZWNobyAiJGludm9rZWQgJHZlcnNpb24iCisgICAgZWNo byAkb3JpZ2luYWwgJCoKKyAgICA7OworZXNhYworCitpZiB0ZXN0IC14ICRv cmlnaW5hbDsgdGhlbgorICBleGVjICIkb3JpZ2luYWwiICR7MSsiJEAifQor ZWxzZQorICBlY2hvICIkaW52b2tlZDogdW5hYmxlIHRvIGxvY2F0ZSBleGVj dXRhYmxlOiAkb3JpZ2luYWwiCisgIGV4aXQgMQorZmkKZGlmZiAtLWdpdCBh L2djYy9nY2MuYyBiL2djYy9nY2MuYwppbmRleCAxM2U5M2U1Li4xNzAyZDJj IDEwMDY0NAotLS0gYS9nY2MvZ2NjLmMKKysrIGIvZ2NjL2djYy5jCkBAIC03 MDUsNiArNzA1LDkgQEAgcHJvcGVyIHBvc2l0aW9uIGFtb25nIHRoZSBvdGhl ciBvdXRwdXQgZmlsZXMuICAqLwogICAgIExJTktfUExVR0lOX1NQRUMgXAog ICAgICIle2ZsdG98Zmx0bz0qOiU8ZmNvbXBhcmUtZGVidWcqfSBcCiAgICAg JXtmbHRvfSAle2ZsdG89Kn0gJWwgIiBMSU5LX1BJRV9TUEVDIFwKKyAgICIl e2Z1c2UtbGQ9Z29sZDole2Z1c2UtbGQ9YmZkOiVlLWZ1c2UtbGQ9Z29sZCBh bmQgLWZ1c2UtbGQ9YmZkIG1heSBub3QgYmUgdXNlZCB0b2dldGhlcn19IFwK KyAgICAle2Z1c2UtbGQ9Z29sZDotdXNlLWdvbGR9IFwKKyAgICAle2Z1c2Ut bGQ9YmZkOi11c2UtbGR9IiBcCiAgICAiJVggJXtvKn0gJXtlKn0gJXtOfSAl e259ICV7cn1cCiAgICAgJXtzfSAle3R9ICV7dSp9ICV7en0gJXtafSAleyFu b3N0ZGxpYjoleyFub3N0YXJ0ZmlsZXM6JVN9fVwKICAgICAle3N0YXRpYzp9 ICV7TCp9ICUobWZ3cmFwKSAlKGxpbmtfbGliZ2NjKSAlb1wKZGlmZiAtLWdp dCBhL2djYy9vcHRzLmMgYi9nY2Mvb3B0cy5jCmluZGV4IGIzYTlhZmUuLmFl NGI2MWEgMTAwNjQ0Ci0tLSBhL2djYy9vcHRzLmMKKysrIGIvZ2NjL29wdHMu YwpAQCAtMTc1Myw4ICsxNzUzLDkgQEAgY29tbW9uX2hhbmRsZV9vcHRpb24g KHN0cnVjdCBnY2Nfb3B0aW9ucyAqb3B0cywKICAgICAgIGRjLT5tYXhfZXJy b3JzID0gdmFsdWU7CiAgICAgICBicmVhazsKIAorICAgIGNhc2UgT1BUX2Z1 c2VfbGRfOgogICAgIGNhc2UgT1BUX2Z1c2VfbGlua2VyX3BsdWdpbjoKLSAg ICAgIC8qIE5vLW9wLiBVc2VkIGJ5IHRoZSBkcml2ZXIgYW5kIHBhc3NlZCB0 byB1cyBiZWNhdXNlIGl0IHN0YXJ0cyB3aXRoIGYuKi8KKyAgICAgIC8qIE5v LW9wLiBVc2VkIGJ5IHRoZSBkcml2ZXIgYW5kIHBhc3NlZCB0byB1cyBiZWNh dXNlIGl0IHN0YXJ0cyB3aXRoIGYuICAqLwogICAgICAgYnJlYWs7CiAKICAg ICBkZWZhdWx0OgotLSAKMS43LjExLjcKCg== --047d7b621ac878a56d04cf7e5397--