From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 15988 invoked by alias); 13 Jan 2012 00:21:25 -0000 Received: (qmail 15977 invoked by uid 22791); 13 Jan 2012 00:21:23 -0000 X-SWARE-Spam-Status: No, hits=-2.4 required=5.0 tests=AWL,BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,RCVD_IN_DNSWL_LOW,TW_BJ,TW_CP,T_RP_MATCHES_RCVD X-Spam-Check-By: sourceware.org Received: from mail-ww0-f43.google.com (HELO mail-ww0-f43.google.com) (74.125.82.43) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Fri, 13 Jan 2012 00:21:09 +0000 Received: by wgbdt11 with SMTP id dt11so2412786wgb.12 for ; Thu, 12 Jan 2012 16:21:08 -0800 (PST) Received: by 10.180.19.168 with SMTP id g8mr43253wie.4.1326414068442; Thu, 12 Jan 2012 16:21:08 -0800 (PST) Received: by 10.180.19.168 with SMTP id g8mr43246wie.4.1326414068371; Thu, 12 Jan 2012 16:21:08 -0800 (PST) MIME-Version: 1.0 Received: by 10.223.144.142 with HTTP; Thu, 12 Jan 2012 16:20:37 -0800 (PST) In-Reply-To: <20120112234239.GA6964@host2.jankratochvil.net> References: <20120112030648.14DBE190AFD@elbrus2.mtv.corp.google.com> <20120112212959.GA24491@host2.jankratochvil.net> <20120112234239.GA6964@host2.jankratochvil.net> From: Paul Pluzhnikov Date: Fri, 13 Jan 2012 00:21:00 -0000 Message-ID: Subject: Re: [patch] Fix for PR gdb/9538 (loading of separate debuginfo and symlinks). To: Jan Kratochvil Cc: Doug Evans , gdb-patches@sourceware.org X-System-Of-Record: true Content-Type: multipart/mixed; boundary=bcaec53d55035ed10104b65dd7d6 X-IsSubscribed: yes Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org X-SW-Source: 2012-01/txt/msg00455.txt.bz2 --bcaec53d55035ed10104b65dd7d6 Content-Type: text/plain; charset=ISO-8859-1 Content-length: 619 On Thu, Jan 12, 2012 at 3:42 PM, Jan Kratochvil wrote: > If you find it useful here is a patch. For lstat it is AFAIK simple. That *was* easy ;-) Could you commit it? Updated patch attached. (I also noticed incorrect use of make_cleanup; now fixed.) Thanks, -- Paul Pluzhnikov 2012-01-11 Paul Pluzhnikov PR gdb/9538 * symfile.c (find_separate_debug_file): New function. (terminate_after_last_dir_separator): Likewise. (find_separate_debug_file_by_debuglink): Also try realpath. testsuite/ChangeLog: PR gdb/9538 * gdb.base/sepdebug.exp: New test. --bcaec53d55035ed10104b65dd7d6 Content-Type: text/plain; charset=US-ASCII; name="gdb-symlink-pr9538-20120112b.txt" Content-Disposition: attachment; filename="gdb-symlink-pr9538-20120112b.txt" Content-Transfer-Encoding: base64 X-Attachment-Id: f_gxcgkss40 Content-length: 11172 SW5kZXg6IHN5bWZpbGUuYwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ClJDUyBm aWxlOiAvY3ZzL3NyYy9zcmMvZ2RiL3N5bWZpbGUuYyx2CnJldHJpZXZpbmcg cmV2aXNpb24gMS4zMjUKZGlmZiAtdSAtcCAtcjEuMzI1IHN5bWZpbGUuYwot LS0gc3ltZmlsZS5jCTEyIEphbiAyMDEyIDAwOjAwOjAxIC0wMDAwCTEuMzI1 CisrKyBzeW1maWxlLmMJMTMgSmFuIDIwMTIgMDA6MTU6MTkgLTAwMDAKQEAg LTE0NDEsNjMgKzE0NDEsNDggQEAgc2hvd19kZWJ1Z19maWxlX2RpcmVjdG9y eSAoc3RydWN0IHVpX2ZpbAogI2RlZmluZSBERUJVR19TVUJESVJFQ1RPUlkg Ii5kZWJ1ZyIKICNlbmRpZgogCi1jaGFyICoKLWZpbmRfc2VwYXJhdGVfZGVi dWdfZmlsZV9ieV9kZWJ1Z2xpbmsgKHN0cnVjdCBvYmpmaWxlICpvYmpmaWxl KQorLyogRmluZCBhIHNlcGFyYXRlIGRlYnVnaW5mbyBmaWxlIGZvciBPQkpG SUxFLCB1c2luZyBESVIgYXMgdGhlIGRpcmVjdG9yeQorICAgd2hlcmUgdGhl IG9yaWdpbmFsIGZpbGUgcmVzaWRlcyAobWF5IG5vdCBiZSB0aGUgc2FtZSBh cworICAgZGlybmFtZShvYmpmaWxlLT5uYW1lKSBkdWUgdG8gc3ltbGlua3Mp LCBhbmQgREVCVUdMSU5LIGFzIHRoZSBmaWxlIHdlIGFyZQorICAgbG9va2lu ZyBmb3IuICBSZXR1cm5zIHRoZSBuYW1lIG9mIHRoZSBkZWJ1Z2luZm8sIG9m IE5VTEwuICAqLworCitzdGF0aWMgY2hhciAqCitmaW5kX3NlcGFyYXRlX2Rl YnVnX2ZpbGUgKGNvbnN0IGNoYXIgKmRpciwKKwkJCSAgY29uc3QgY2hhciAq Y2Fub25fZGlyLAorCQkJICBjb25zdCBjaGFyICpkZWJ1Z2xpbmssCisJCQkg IHVuc2lnbmVkIGxvbmcgY3JjMzIsIHN0cnVjdCBvYmpmaWxlICpvYmpmaWxl KQogewotICBjaGFyICpiYXNlbmFtZSwgKmRlYnVnZGlyOwotICBjaGFyICpk aXIgPSBOVUxMOwotICBjaGFyICpkZWJ1Z2ZpbGUgPSBOVUxMOwotICBjaGFy ICpjYW5vbl9uYW1lID0gTlVMTDsKLSAgdW5zaWduZWQgbG9uZyBjcmMzMjsK KyAgY2hhciAqZGVidWdkaXI7CisgIGNoYXIgKmRlYnVnZmlsZTsKICAgaW50 IGk7CiAKLSAgYmFzZW5hbWUgPSBnZXRfZGVidWdfbGlua19pbmZvIChvYmpm aWxlLCAmY3JjMzIpOwotCi0gIGlmIChiYXNlbmFtZSA9PSBOVUxMKQotICAg IC8qIFRoZXJlJ3Mgbm8gc2VwYXJhdGUgZGVidWcgaW5mbywgaGVuY2UgdGhl cmUncyBubyB3YXkgd2UgY291bGQKLSAgICAgICBsb2FkIGl0ID0+IG5vIHdh cm5pbmcuICAqLwotICAgIGdvdG8gY2xlYW51cF9yZXR1cm5fZGVidWdmaWxl OwotCi0gIGRpciA9IHhzdHJkdXAgKG9iamZpbGUtPm5hbWUpOwotCi0gIC8q IFN0cmlwIG9mZiB0aGUgZmluYWwgZmlsZW5hbWUgcGFydCwgbGVhdmluZyB0 aGUgZGlyZWN0b3J5IG5hbWUsCi0gICAgIGZvbGxvd2VkIGJ5IGEgc2xhc2gu ICBUaGUgZGlyZWN0b3J5IGNhbiBiZSByZWxhdGl2ZSBvciBhYnNvbHV0ZS4g ICovCi0gIGZvciAoaSA9IHN0cmxlbihkaXIpIC0gMTsgaSA+PSAwOyBpLS0p Ci0gICAgewotICAgICAgaWYgKElTX0RJUl9TRVBBUkFUT1IgKGRpcltpXSkp Ci0JYnJlYWs7Ci0gICAgfQotICAvKiBJZiBJIGlzIC0xIHRoZW4gbm8gZGly ZWN0b3J5IGlzIHByZXNlbnQgdGhlcmUgYW5kIERJUiB3aWxsIGJlICIiLiAg Ki8KLSAgZGlyW2krMV0gPSAnXDAnOwotCi0gIC8qIFNldCBJIHRvIG1heCAo c3RybGVuIChjYW5vbl9uYW1lKSwgc3RybGVuIChkaXIpKS4gICovCi0gIGNh bm9uX25hbWUgPSBscmVhbHBhdGggKGRpcik7CisgIC8qIFNldCBJIHRvIG1h eCAoc3RybGVuIChjYW5vbl9kaXIpLCBzdHJsZW4gKGRpcikpLiAgKi8KICAg aSA9IHN0cmxlbiAoZGlyKTsKLSAgaWYgKGNhbm9uX25hbWUgJiYgc3RybGVu IChjYW5vbl9uYW1lKSA+IGkpCi0gICAgaSA9IHN0cmxlbiAoY2Fub25fbmFt ZSk7CisgIGlmIChjYW5vbl9kaXIgIT0gTlVMTCAmJiBzdHJsZW4gKGNhbm9u X2RpcikgPiBpKQorICAgIGkgPSBzdHJsZW4gKGNhbm9uX2Rpcik7CiAKICAg ZGVidWdmaWxlID0geG1hbGxvYyAoc3RybGVuIChkZWJ1Z19maWxlX2RpcmVj dG9yeSkgKyAxCiAJCSAgICAgICArIGkKIAkJICAgICAgICsgc3RybGVuIChE RUJVR19TVUJESVJFQ1RPUlkpCiAJCSAgICAgICArIHN0cmxlbiAoIi8iKQot CQkgICAgICAgKyBzdHJsZW4gKGJhc2VuYW1lKQorCQkgICAgICAgKyBzdHJs ZW4gKGRlYnVnbGluaykKIAkJICAgICAgICsgMSk7CiAKICAgLyogRmlyc3Qg dHJ5IGluIHRoZSBzYW1lIGRpcmVjdG9yeSBhcyB0aGUgb3JpZ2luYWwgZmls ZS4gICovCiAgIHN0cmNweSAoZGVidWdmaWxlLCBkaXIpOwotICBzdHJjYXQg KGRlYnVnZmlsZSwgYmFzZW5hbWUpOworICBzdHJjYXQgKGRlYnVnZmlsZSwg ZGVidWdsaW5rKTsKIAogICBpZiAoc2VwYXJhdGVfZGVidWdfZmlsZV9leGlz dHMgKGRlYnVnZmlsZSwgY3JjMzIsIG9iamZpbGUpKQotICAgIGdvdG8gY2xl YW51cF9yZXR1cm5fZGVidWdmaWxlOworICAgIHJldHVybiBkZWJ1Z2ZpbGU7 CiAKICAgLyogVGhlbiB0cnkgaW4gdGhlIHN1YmRpcmVjdG9yeSBuYW1lZCBE RUJVR19TVUJESVJFQ1RPUlkuICAqLwogICBzdHJjcHkgKGRlYnVnZmlsZSwg ZGlyKTsKICAgc3RyY2F0IChkZWJ1Z2ZpbGUsIERFQlVHX1NVQkRJUkVDVE9S WSk7CiAgIHN0cmNhdCAoZGVidWdmaWxlLCAiLyIpOwotICBzdHJjYXQgKGRl YnVnZmlsZSwgYmFzZW5hbWUpOworICBzdHJjYXQgKGRlYnVnZmlsZSwgZGVi dWdsaW5rKTsKIAogICBpZiAoc2VwYXJhdGVfZGVidWdfZmlsZV9leGlzdHMg KGRlYnVnZmlsZSwgY3JjMzIsIG9iamZpbGUpKQotICAgIGdvdG8gY2xlYW51 cF9yZXR1cm5fZGVidWdmaWxlOworICAgIHJldHVybiBkZWJ1Z2ZpbGU7CiAK ICAgLyogVGhlbiB0cnkgaW4gdGhlIGdsb2JhbCBkZWJ1Z2ZpbGUgZGlyZWN0 b3JpZXMuCiAKQEAgLTE1MjAsMjYgKzE1MDUsMjYgQEAgZmluZF9zZXBhcmF0 ZV9kZWJ1Z19maWxlX2J5X2RlYnVnbGluayAocwogICAgICAgZGVidWdmaWxl W2RlYnVnZGlyX2VuZCAtIGRlYnVnZGlyXSA9IDA7CiAgICAgICBzdHJjYXQg KGRlYnVnZmlsZSwgIi8iKTsKICAgICAgIHN0cmNhdCAoZGVidWdmaWxlLCBk aXIpOwotICAgICAgc3RyY2F0IChkZWJ1Z2ZpbGUsIGJhc2VuYW1lKTsKKyAg ICAgIHN0cmNhdCAoZGVidWdmaWxlLCBkZWJ1Z2xpbmspOwogCiAgICAgICBp ZiAoc2VwYXJhdGVfZGVidWdfZmlsZV9leGlzdHMgKGRlYnVnZmlsZSwgY3Jj MzIsIG9iamZpbGUpKQotCWdvdG8gY2xlYW51cF9yZXR1cm5fZGVidWdmaWxl OworCXJldHVybiBkZWJ1Z2ZpbGU7CiAKICAgICAgIC8qIElmIHRoZSBmaWxl IGlzIGluIHRoZSBzeXNyb290LCB0cnkgdXNpbmcgaXRzIGJhc2UgcGF0aCBp biB0aGUKIAkgZ2xvYmFsIGRlYnVnZmlsZSBkaXJlY3RvcnkuICAqLwotICAg ICAgaWYgKGNhbm9uX25hbWUKLQkgICYmIGZpbGVuYW1lX25jbXAgKGNhbm9u X25hbWUsIGdkYl9zeXNyb290LAorICAgICAgaWYgKGNhbm9uX2RpciAhPSBO VUxMCisJICAmJiBmaWxlbmFtZV9uY21wIChjYW5vbl9kaXIsIGdkYl9zeXNy b290LAogCQkJICAgIHN0cmxlbiAoZ2RiX3N5c3Jvb3QpKSA9PSAwCi0JICAm JiBJU19ESVJfU0VQQVJBVE9SIChjYW5vbl9uYW1lW3N0cmxlbiAoZ2RiX3N5 c3Jvb3QpXSkpCisJICAmJiBJU19ESVJfU0VQQVJBVE9SIChjYW5vbl9kaXJb c3RybGVuIChnZGJfc3lzcm9vdCldKSkKIAl7CiAJICBtZW1jcHkgKGRlYnVn ZmlsZSwgZGVidWdkaXIsIGRlYnVnZGlyX2VuZCAtIGRlYnVnZGlyKTsKIAkg IGRlYnVnZmlsZVtkZWJ1Z2Rpcl9lbmQgLSBkZWJ1Z2Rpcl0gPSAwOwotCSAg c3RyY2F0IChkZWJ1Z2ZpbGUsIGNhbm9uX25hbWUgKyBzdHJsZW4gKGdkYl9z eXNyb290KSk7CisJICBzdHJjYXQgKGRlYnVnZmlsZSwgY2Fub25fZGlyICsg c3RybGVuIChnZGJfc3lzcm9vdCkpOwogCSAgc3RyY2F0IChkZWJ1Z2ZpbGUs ICIvIik7Ci0JICBzdHJjYXQgKGRlYnVnZmlsZSwgYmFzZW5hbWUpOworCSAg c3RyY2F0IChkZWJ1Z2ZpbGUsIGRlYnVnbGluayk7CiAKIAkgIGlmIChzZXBh cmF0ZV9kZWJ1Z19maWxlX2V4aXN0cyAoZGVidWdmaWxlLCBjcmMzMiwgb2Jq ZmlsZSkpCi0JICAgIGdvdG8gY2xlYW51cF9yZXR1cm5fZGVidWdmaWxlOwor CSAgICByZXR1cm4gZGVidWdmaWxlOwogCX0KIAogICAgICAgZGVidWdkaXIg PSBkZWJ1Z2Rpcl9lbmQ7CkBAIC0xNTQ3LDEyICsxNTMyLDkxIEBAIGZpbmRf c2VwYXJhdGVfZGVidWdfZmlsZV9ieV9kZWJ1Z2xpbmsgKHMKICAgd2hpbGUg KCpkZWJ1Z2RpciAhPSAwKTsKIAogICB4ZnJlZSAoZGVidWdmaWxlKTsKLSAg ZGVidWdmaWxlID0gTlVMTDsKKyAgcmV0dXJuIE5VTEw7Cit9CisKKy8qIE1v ZGlmeSBQQVRIIHRvIGNvbnRhaW4gb25seSAiZGlyZWN0b3J5LyIgcGFydCBv ZiBQQVRILgorICAgSWYgdGhlcmUgd2VyZSBubywgZGlyZWN0b3J5IHNlcGFy YXRvcnMgaW4gUEFUSCwgUEFUSCB3aWxsIGJlIGVtcHR5CisgICBzdHJpbmcg b24gcmV0dXJuLiAgKi8KKworc3RhdGljIHZvaWQKK3Rlcm1pbmF0ZV9hZnRl cl9sYXN0X2Rpcl9zZXBhcmF0b3IgKGNoYXIgKnBhdGgpCit7CisgIGludCBp OworCisgIC8qIFN0cmlwIG9mZiB0aGUgZmluYWwgZmlsZW5hbWUgcGFydCwg bGVhdmluZyB0aGUgZGlyZWN0b3J5IG5hbWUsCisgICAgIGZvbGxvd2VkIGJ5 IGEgc2xhc2guICBUaGUgZGlyZWN0b3J5IGNhbiBiZSByZWxhdGl2ZSBvciBh YnNvbHV0ZS4gICovCisgIGZvciAoaSA9IHN0cmxlbihwYXRoKSAtIDE7IGkg Pj0gMDsgaS0tKQorICAgIGlmIChJU19ESVJfU0VQQVJBVE9SIChwYXRoW2ld KSkKKyAgICAgIGJyZWFrOworCisgIC8qIElmIEkgaXMgLTEgdGhlbiBubyBk aXJlY3RvcnkgaXMgcHJlc2VudCB0aGVyZSBhbmQgRElSIHdpbGwgYmUgIiIu ICAqLworICBwYXRoW2kgKyAxXSA9ICdcMCc7Cit9CisKKy8qIEZpbmQgc2Vw YXJhdGUgZGVidWdpbmZvIGZvciBPQkpGSUxFICh1c2luZyAuZ251X2RlYnVn bGluayBzZWN0aW9uKS4KKyAgIFJldHVybnMgcGF0aG5hbWUsIG9yIE5VTEwu ICAqLworCitjaGFyICoKK2ZpbmRfc2VwYXJhdGVfZGVidWdfZmlsZV9ieV9k ZWJ1Z2xpbmsgKHN0cnVjdCBvYmpmaWxlICpvYmpmaWxlKQoreworICBjaGFy ICpkZWJ1Z2xpbms7CisgIGNoYXIgKmRpciwgKmNhbm9uX2RpcjsKKyAgY2hh ciAqZGVidWdmaWxlOworICB1bnNpZ25lZCBsb25nIGNyYzMyOworICBzdHJ1 Y3QgY2xlYW51cCAqY2xlYW51cHM7CisKKyAgZGVidWdsaW5rID0gZ2V0X2Rl YnVnX2xpbmtfaW5mbyAob2JqZmlsZSwgJmNyYzMyKTsKKworICBpZiAoZGVi dWdsaW5rID09IE5VTEwpCisgICAgeworICAgICAgLyogVGhlcmUncyBubyBz ZXBhcmF0ZSBkZWJ1ZyBpbmZvLCBoZW5jZSB0aGVyZSdzIG5vIHdheSB3ZSBj b3VsZAorCSBsb2FkIGl0ID0+IG5vIHdhcm5pbmcuICAqLworICAgICAgcmV0 dXJuIE5VTEw7CisgICAgfQorCisgIGRpciA9IHhzdHJkdXAgKG9iamZpbGUt Pm5hbWUpOworICBjbGVhbnVwcyA9IG1ha2VfY2xlYW51cCAoeGZyZWUsIGRp cik7CisgIHRlcm1pbmF0ZV9hZnRlcl9sYXN0X2Rpcl9zZXBhcmF0b3IgKGRp cik7CisgIGNhbm9uX2RpciA9IGxyZWFscGF0aCAoZGlyKTsKKworICBkZWJ1 Z2ZpbGUgPSBmaW5kX3NlcGFyYXRlX2RlYnVnX2ZpbGUgKGRpciwgY2Fub25f ZGlyLCBkZWJ1Z2xpbmssCisJCQkJCWNyYzMyLCBvYmpmaWxlKTsKKyAgeGZy ZWUgKGNhbm9uX2Rpcik7CisKKyAgaWYgKGRlYnVnZmlsZSAhPSBOVUxMKQor ICAgIGdvdG8gY2xlYW51cDsKKworI2lmZGVmIEhBVkVfTFNUQVQKKworICAv KiBGb3IgUFIgZ2RiLzk1MzgsIHRyeSBhZ2FpbiB3aXRoIHJlYWxwYXRoIChp ZiBkaWZmZXJlbnQgZnJvbSB0aGUKKyAgICAgb3JpZ2luYWwpLiAgKi8KKyAg eworICAgIGNoYXIgKnN5bWxpbmtfZGlyOworICAgIHN0cnVjdCBzdGF0IHN0 X2J1ZjsKKworICAgIGlmIChsc3RhdCAob2JqZmlsZS0+bmFtZSwgJnN0X2J1 ZikgIT0gMCB8fCAhU19JU0xOSyhzdF9idWYuc3RfbW9kZSkpCisgICAgICBn b3RvIGNsZWFudXA7CisKKyAgICBzeW1saW5rX2RpciA9IGxyZWFscGF0aCAo b2JqZmlsZS0+bmFtZSk7CisgICAgaWYgKHN5bWxpbmtfZGlyID09IE5VTEwp CisgICAgICBnb3RvIGNsZWFudXA7CisKKyAgICBtYWtlX2NsZWFudXAgKHhm cmVlLCBzeW1saW5rX2Rpcik7CisgICAgdGVybWluYXRlX2FmdGVyX2xhc3Rf ZGlyX3NlcGFyYXRvciAoc3ltbGlua19kaXIpOworICAgIGlmIChzdHJjbXAg KGRpciwgc3ltbGlua19kaXIpID09IDApCisgICAgICB7CisJLyogU2FtZSBk aXJlY3RvcnksIG5vIHBvaW50IHJldHJ5aW5nLiAgKi8KKwlnb3RvIGNsZWFu dXA7CisgICAgICB9CisKKyAgICBkZWJ1Z2ZpbGUgPSBmaW5kX3NlcGFyYXRl X2RlYnVnX2ZpbGUgKHN5bWxpbmtfZGlyLCBzeW1saW5rX2RpciwgZGVidWds aW5rLAorCQkJCQkgIGNyYzMyLCBvYmpmaWxlKTsKKyAgfQorI2VuZGlmICAv KiBIQVZFX0xTVEFUICAqLwogCi1jbGVhbnVwX3JldHVybl9kZWJ1Z2ZpbGU6 Ci0gIHhmcmVlIChjYW5vbl9uYW1lKTsKLSAgeGZyZWUgKGJhc2VuYW1lKTsK LSAgeGZyZWUgKGRpcik7CisgY2xlYW51cDoKKyAgZG9fY2xlYW51cHMgKGNs ZWFudXBzKTsKICAgcmV0dXJuIGRlYnVnZmlsZTsKIH0KIApJbmRleDogdGVz dHN1aXRlL2dkYi5iYXNlL3NlcGRlYnVnLmV4cAo9PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09ClJDUyBmaWxlOiAvY3ZzL3NyYy9zcmMvZ2RiL3Rlc3RzdWl0ZS9n ZGIuYmFzZS9zZXBkZWJ1Zy5leHAsdgpyZXRyaWV2aW5nIHJldmlzaW9uIDEu MzMKZGlmZiAtdSAtcCAtcjEuMzMgc2VwZGVidWcuZXhwCi0tLSB0ZXN0c3Vp dGUvZ2RiLmJhc2Uvc2VwZGVidWcuZXhwCTQgSmFuIDIwMTIgMDg6MTc6NDYg LTAwMDAJMS4zMworKysgdGVzdHN1aXRlL2dkYi5iYXNlL3NlcGRlYnVnLmV4 cAkxMyBKYW4gMjAxMiAwMDoxNToxOSAtMDAwMApAQCAtNDUsNyArNDUsNyBA QCBpZiAgeyBbZ2RiX2NvbXBpbGUgIiR7c3JjZGlyfS8ke3N1YmRpcn0vCiAK ICMgTm90ZTogdGhlIHByb2NlZHVyZSBnZGJfZ251X3N0cmlwX2RlYnVnIHdp bGwgcHJvZHVjZSBhbiBleGVjdXRhYmxlIGNhbGxlZAogIyAke2JpbmZpbGV9 LCB3aGljaCBpcyBqdXN0IGxpa2UgdGhlIGV4ZWN1dGFibGUgKCRiaW5maWxl KSBidXQgd2l0aG91dAotIyB0aGUgZGVidWdpbmZvLiBJbnN0ZWFkICRiaW5m aWxlIGhhcyBhIC5nbnVkZWJ1Z2xpbmsgc2VjdGlvbiB3aGljaCBjb250YWlu cworIyB0aGUgZGVidWdpbmZvLiBJbnN0ZWFkICRiaW5maWxlIGhhcyBhIC5n bnVfZGVidWdsaW5rIHNlY3Rpb24gd2hpY2ggY29udGFpbnMKICMgdGhlIG5h bWUgb2YgYSBkZWJ1Z2luZm8gb25seSBmaWxlLiBUaGlzIGZpbGUgd2lsbCBi ZSBzdG9yZWQgaW4gdGhlCiAjIGdkYi5iYXNlLyBzdWJkaXJlY3RvcnkuCiAK QEAgLTU1LDEwICs1NSwyNyBAQCBpZiBbZ2RiX2dudV9zdHJpcF9kZWJ1ZyAk YmluZmlsZV0gewogICAgIHJldHVybiAtMQogfQogCi1nZGJfZXhpdAotZ2Ri X3N0YXJ0Ci1nZGJfcmVpbml0aWFsaXplX2RpciAkc3JjZGlyLyRzdWJkaXIK LWdkYl9sb2FkICR7YmluZmlsZX0KKyMKKyMgUFIgZ2RiLzk1MzguICBWZXJp ZnkgdGhhdCBzeW1saW5rZWQgZXhlY3V0YWJsZSBzdGlsbCBmaW5kcyB0aGUg c2VwYXJhdGUKKyMgZGVidWdpbmZvLgorIworc2V0IG9sZF9zdWJkaXIgJHtz dWJkaXJ9CitzZXQgc3ViZGlyICR7c3ViZGlyfS9wcjk1MzgKKworIyBDbGVh bnVwIGFueSBzdGFsZSBzdGF0ZS4KK3JlbW90ZV9leGVjIGJ1aWxkICJybSAt cmYgJHtzdWJkaXJ9IgorCityZW1vdGVfZXhlYyBidWlsZCAibWtkaXIgJHtz dWJkaXJ9IgorcmVtb3RlX2V4ZWMgYnVpbGQgImxuIC1zICR7YmluZmlsZX0g JHtzdWJkaXJ9IgorY2xlYW5fcmVzdGFydCAke3Rlc3RmaWxlfSR7RVhFRVhU fQoraWYgeyAkZ2RiX2ZpbGVfY21kX2RlYnVnX2luZm8gIT0gImRlYnVnIiB9 IHRoZW4geworICAgIGZhaWwgIk5vIGRlYnVnIGluZm9ybWF0aW9uIGZvdW5k LiIKK30KKworIyBSZXN0b3JlIHN1YmRpcgorc2V0IHN1YmRpciAke29sZF9z dWJkaXJ9CisKK2NsZWFuX3Jlc3RhcnQgJHt0ZXN0ZmlsZX0ke0VYRUVYVH0K IGlmIHsgJGdkYl9maWxlX2NtZF9kZWJ1Z19pbmZvICE9ICJkZWJ1ZyIgfSB0 aGVuIHsKICAgICBmYWlsICJObyBkZWJ1ZyBpbmZvcm1hdGlvbiBmb3VuZC4i CiB9Cg== --bcaec53d55035ed10104b65dd7d6--