From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 979 invoked by alias); 15 Feb 2013 21:01:01 -0000 Received: (qmail 970 invoked by uid 22791); 15 Feb 2013 21:00:59 -0000 X-SWARE-Spam-Status: No, hits=-5.4 required=5.0 tests=AWL,BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,KHOP_RCVD_TRUST,KHOP_THREADED,RCVD_IN_DNSWL_LOW,RCVD_IN_HOSTKARMA_YE,RP_MATCHES_RCVD,TW_BJ,TW_HP X-Spam-Check-By: sourceware.org Received: from mail-ea0-f178.google.com (HELO mail-ea0-f178.google.com) (209.85.215.178) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Fri, 15 Feb 2013 21:00:21 +0000 Received: by mail-ea0-f178.google.com with SMTP id a14so1563402eaa.23 for ; Fri, 15 Feb 2013 13:00:19 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:x-received:in-reply-to:references:date:message-id :subject:from:to:cc:content-type:x-gm-message-state; bh=GPP1AR3jZKf7htrQOxmVQ8uOtdwR41y+fNPx58T2LPY=; b=SkI0RPxWvPW4s39I6Q3gsZj95nYqwFBJ7+yhFC9nHAUUrrwV4geMxXOkFS4xKqxlpU vaslJYFS5JqVaFMnQW0EOBbWgwnzwNSogphukrCjG42adCUgG0VaziHrOYnyBsN9Ff/i iQn06obt3IzPIu7br1dg9Xj6hHfdU0Pzim4VeNt3zTWIFyC/TLjsVZwFJuSKqp/s4L/B rQPn846sUQMUyjU//gYG7+jL6K3TFeSZXW36mnEpPI9Qt+Um0H0ulQOHUX5lL+88W63W FbLUzn9onMiu0hN6jaGqjKNopEhsL20kqrvMjrrOdyXOQE9ZUHavXf+Fb9+4vnWmWHbT mYgA== MIME-Version: 1.0 X-Received: by 10.14.184.68 with SMTP id r44mr12251860eem.40.1360962019629; Fri, 15 Feb 2013 13:00:19 -0800 (PST) Received: by 10.14.207.195 with HTTP; Fri, 15 Feb 2013 13:00:19 -0800 (PST) In-Reply-To: References: <20753.38272.55066.651097@ruffy2.mtv.corp.google.com> <87txphmdt3.fsf@fleche.redhat.com> <87r4kkks5g.fsf@fleche.redhat.com> <20763.64197.459891.627211@ruffy2.mtv.corp.google.com> <20765.55532.700460.792597@ruffy2.mtv.corp.google.com> Date: Fri, 15 Feb 2013 21:01:00 -0000 Message-ID: Subject: Re: [RFC - Python Scripting] New method gdb.Architecture.disassemble From: Siva Chandra To: gdb-patches Cc: Doug Evans , Tom Tromey , Eli Zaretskii Content-Type: multipart/mixed; boundary=047d7b3438ecbb9c7904d5c9a949 X-Gm-Message-State: ALoCoQkYgGPJAF/6sEPOQf+wWaEOtV2tWX8YZc5OBQQdOGS2PuXnngs7I+w06mlzU8jfKtMPwmWoSRzEgXuW6/GMbOl15ggrbmEBSd5GnuNiSqMZQgtQeXWthM0NuH7xaburSYPEw6TedD1AFkimbJ0IStcsA0fyPKO+4qBLnnwS5aRb06opG28tmisHm24xQTjefQb5JY00c4v+J/kBQTsvQ4fyKWEZxg== 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: 2013-02/txt/msg00419.txt.bz2 --047d7b3438ecbb9c7904d5c9a949 Content-Type: text/plain; charset=ISO-8859-1 Content-length: 905 sorry again! twice today... patch attached this time. On Fri, Feb 15, 2013 at 12:35 PM, Siva Chandra wrote: > Fixed all of Doug's nits. Patch attached. > > 2013-02-15 Siva Chandra Reddy > > Add a new method 'disassemble' to gdb.Architecture class. > * python/py-arch.c (archpy_disassmble): Implementation of the > new method gdb.Architecture.disassemble. > (arch_object_methods): Add entry for the new method. > > doc/ > > * gdb.texinfo (Architectures In Python): Add description about > the new method gdb.Architecture.disassemble. > > testsuite/ > > * gdb.python/py-arch.c: New test case > * gdb.python/py-arch.exp: New tests to test > gdb.Architecture.disassemble > * gdb.python/Makefile.in: Add py-arch to the list of > EXECUTABLES. > > Thanks, > Siva Chandra --047d7b3438ecbb9c7904d5c9a949 Content-Type: text/plain; charset=US-ASCII; name="arch_disassemble_patch_v7.txt" Content-Disposition: attachment; filename="arch_disassemble_patch_v7.txt" Content-Transfer-Encoding: base64 X-Attachment-Id: f_hd7tmq2v0 Content-length: 15088 ZGlmZiAtLWdpdCBhL2dkYi9kb2MvZ2RiLnRleGluZm8gYi9nZGIvZG9jL2dk Yi50ZXhpbmZvCmluZGV4IGUzZjMzNmUuLmZmMGZjMDIgMTAwNjQ0Ci0tLSBh L2dkYi9kb2MvZ2RiLnRleGluZm8KKysrIGIvZ2RiL2RvYy9nZGIudGV4aW5m bwpAQCAtMjYwNDAsNiArMjYwNDAsMzggQEAgQSBAY29kZXtnZGIuQXJjaGl0 ZWN0dXJlfSBjbGFzcyBoYXMgdGhlIGZvbGxvd2luZyBtZXRob2RzOgogUmV0 dXJuIHRoZSBuYW1lIChzdHJpbmcgdmFsdWUpIG9mIHRoZSBhcmNoaXRlY3R1 cmUuCiBAZW5kIGRlZnVuCiAKK0BkZWZ1biBBcmNoaXRlY3R1cmUuZGlzYXNz ZW1ibGUgKEB2YXJ7c3RhcnRfcGN9IEBye1t9LCBAdmFye2VuZF9wY30gQHJ7 W30sIEB2YXJ7Y291bnR9QHJ7XV19KQorUmV0dXJuIGEgbGlzdCBvZiBhdCBt b3N0IEB2YXJ7Y291bnR9IGRpc2Fzc2VtYmxlZCBpbnN0cnVjdGlvbnMKK3do b3NlIHN0YXJ0IGFkZHJlc3MgZmFsbHMgaW4gdGhlIGNsb3NlZCBtZW1vcnkg YWRkcmVzcyBpbnRlcnZhbCBmcm9tCitAdmFye3N0YXJ0X3BjfSB0byBAdmFy e2VuZF9wY30uICBJZiBAdmFye2VuZF9wY30gaXMgbm90IHNwZWNpZmllZCwg YnV0CitAdmFye2NvdW50fSBpcyBzcGVjaWZpZWQsIHRoZW4gQHZhcntjb3Vu dH0gbnVtYmVyIG9mIGluc3RydWN0aW9ucworc3RhcnRpbmcgZnJvbSB0aGUg YWRkcmVzcyBAdmFye3N0YXJ0X3BjfSBhcmUgcmV0dXJuZWQuICBJZiBAdmFy e2NvdW50fQoraXMgbm90IHNwZWNpZmllZCBidXQgQHZhcntlbmRfcGN9IGlz IHNwZWNpZmllZCwgdGhlbiBhbGwgaW5zdHJ1Y3Rpb25zCit3aG9zZSBzdGFy dCBhZGRyZXNzIGZhbGxzIGluIHRoZSBjbG9zZWQgbWVtb3J5IGFkZHJlc3Mg aW50ZXJ2YWwgZnJvbQorQHZhcntzdGFydF9wY30gdG8gQHZhcntlbmRfcGN9 IGFyZSByZXR1cm5lZC4gIElmIG5laXRoZXIgQHZhcntlbmRfcGN9Citub3Ig QHZhcntjb3VudH0gYXJlIHNwZWNpZmllZCwgdGhlbiBhIHNpbmdsZSBpbnN0 cnVjdGlvbiBhdAorQHZhcntzdGFydF9wY30gaXMgcmV0dXJuZWQuICBGb3Ig YWxsIG9mIHRoZXNlIGNhc2VzLCB0aGUgZWxlbWVudHMgb2YgdGhlCityZXR1 cm5lZCBsaXN0IGFyZSBhIFB5dGhvbiBAY29kZXtkaWN0fSB3aXRoIHRoZSBm b2xsb3dpbmcgc3RyaW5nIGtleXM6CisKK0B0YWJsZSBAY29kZQorCitAaXRl bSBhZGRyCitUaGUgdmFsdWUgY29ycmVzcG9uZGluZyB0byB0aGlzIGtleSBp cyBhIFB5dGhvbiBsb25nIGludGVnZXIgY2FwdHVyaW5nCit0aGUgbWVtb3J5 IGFkZHJlc3Mgb2YgdGhlIGluc3RydWN0aW9uLgorCitAaXRlbSBhc20KK1Ro ZSB2YWx1ZSBjb3JyZXNwb25kaW5nIHRvIHRoaXMga2V5IGlzIGEgc3RyaW5n IHZhbHVlIHdoaWNoIHJlcHJlc2VudHMKK3RoZSBpbnN0cnVjdGlvbiB3aXRo IGFzc2VtYmx5IGxhbmd1YWdlIG1uZW1vbmljcy4gIFRoZSBhc3NlbWJseQor bGFuZ3VhZ2UgZmxhdm9yIHVzZWQgaXMgdGhlIHNhbWUgYXMgdGhhdCBzcGVj aWZpZWQgYnkgdGhlIGN1cnJlbnQgQ0xJCit2YXJpYWJsZSBAY29kZXtkaXNh c3NlbWJseS1mbGF2b3J9LiAgQHhyZWZ7TWFjaGluZSBDb2RlfS4KKworQGl0 ZW0gbGVuZ3RoCitUaGUgdmFsdWUgY29ycmVzcG9uZGluZyB0byB0aGlzIGtl eSBpcyB0aGUgbGVuZ3RoIChpbnRlZ2VyIHZhbHVlKSBvZiB0aGUKK2luc3Ry dWN0aW9uIGluIGJ5dGVzLgorCitAZW5kIHRhYmxlCitAZW5kIGRlZnVuCisK IEBub2RlIFB5dGhvbiBBdXRvLWxvYWRpbmcKIEBzdWJzZWN0aW9uIFB5dGhv biBBdXRvLWxvYWRpbmcKIEBjaW5kZXggUHl0aG9uIGF1dG8tbG9hZGluZwpk aWZmIC0tZ2l0IGEvZ2RiL3B5dGhvbi9weS1hcmNoLmMgYi9nZGIvcHl0aG9u L3B5LWFyY2guYwppbmRleCBlZGQ1MDhmLi5iNDFkZTA2IDEwMDY0NAotLS0g YS9nZGIvcHl0aG9uL3B5LWFyY2guYworKysgYi9nZGIvcHl0aG9uL3B5LWFy Y2guYwpAQCAtMjAsNiArMjAsNyBAQAogI2luY2x1ZGUgImRlZnMuaCIKICNp bmNsdWRlICJnZGJhcmNoLmgiCiAjaW5jbHVkZSAiYXJjaC11dGlscy5oIgor I2luY2x1ZGUgImRpc2FzbS5oIgogI2luY2x1ZGUgInB5dGhvbi1pbnRlcm5h bC5oIgogCiB0eXBlZGVmIHN0cnVjdCBhcmNoX29iamVjdF90eXBlX29iamVj dCB7CkBAIC04Niw2ICs4NywxNDUgQEAgYXJjaHB5X25hbWUgKFB5T2JqZWN0 ICpzZWxmLCBQeU9iamVjdCAqYXJncykKICAgcmV0dXJuIHB5X25hbWU7CiB9 CiAKKy8qIEltcGxlbWVudGF0aW9uIG9mCisgICBnZGIuQXJjaGl0ZWN0dXJl LmRpc2Fzc2VtYmxlIChzZWxmLCBzdGFydF9wYyBbLCBlbmRfcGMgWyxjb3Vu dF1dKSAtPiBMaXN0LgorICAgUmV0dXJucyBhIGxpc3Qgb2YgaW5zdHJ1Y3Rp b25zIGluIGEgbWVtb3J5IGFkZHJlc3MgcmFuZ2UuICBFYWNoIGluc3RydWN0 aW9uCisgICBpbiB0aGUgbGlzdCBpcyBhIFB5dGhvbiBkaWN0IG9iamVjdC4K KyovCisKK3N0YXRpYyBQeU9iamVjdCAqCithcmNocHlfZGlzYXNzZW1ibGUg KFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncywgUHlPYmplY3QgKmt3 KQoreworICBzdGF0aWMgY2hhciAqa2V5d29yZHNbXSA9IHsgInN0YXJ0X3Bj IiwgImVuZF9wYyIsICJjb3VudCIsIE5VTEwgfTsKKyAgQ09SRV9BRERSIHN0 YXJ0LCBlbmQgPSAwOworICBDT1JFX0FERFIgcGM7CisgIGdkYl9weV91bG9u Z2VzdCBzdGFydF90ZW1wOworICBsb25nIGNvdW50ID0gMCwgaTsKKyAgUHlP YmplY3QgKnJlc3VsdF9saXN0LCAqZW5kX29iaiA9IE5VTEwsICpjb3VudF9v YmogPSBOVUxMOworICBzdHJ1Y3QgZ2RiYXJjaCAqZ2RiYXJjaCA9IGFyY2hf b2JqZWN0X3RvX2dkYmFyY2ggKHNlbGYpOworCisgIGlmICghUHlBcmdfUGFy c2VUdXBsZUFuZEtleXdvcmRzIChhcmdzLCBrdywgR0RCX1BZX0xMVV9BUkcg InxPTyIsIGtleXdvcmRzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgJnN0YXJ0X3RlbXAsICZlbmRfb2JqLCAmY291bnRfb2JqKSkK KyAgICByZXR1cm4gTlVMTDsKKworICBzdGFydCA9IHN0YXJ0X3RlbXA7Cisg IGlmIChlbmRfb2JqKQorICAgIHsKKyAgICAgIGlmIChQeU9iamVjdF9UeXBl Q2hlY2sgKGVuZF9vYmosICZQeUludF9UeXBlKSkKKyAgICAgICAgLyogSWYg dGhlIGVuZF9wYyB2YWx1ZSBpcyBzcGVjaWZpZWQgd2l0aG91dCBhIHRyYWls aW5nICdMJywgZW5kX29iaiB3aWxsCisgICAgICAgICAgIGJlIGFuIGludGVn ZXIgYW5kIG5vdCBhIGxvbmcgaW50ZWdlci4gICovCisgICAgICAgIGVuZCA9 IFB5SW50X0FzTG9uZyAoZW5kX29iaik7CisgICAgICBlbHNlIGlmIChQeU9i amVjdF9UeXBlQ2hlY2sgKGVuZF9vYmosICZQeUxvbmdfVHlwZSkpCisgICAg ICAgIGVuZCA9IFB5TG9uZ19Bc1Vuc2lnbmVkTG9uZ0xvbmcgKGVuZF9vYmop OworICAgICAgZWxzZQorICAgICAgICB7CisgICAgICAgICAgUHlfREVDUkVG IChlbmRfb2JqKTsKKyAgICAgICAgICBQeV9YREVDUkVGIChjb3VudF9vYmop OworICAgICAgICAgIFB5RXJyX1NldFN0cmluZyAoUHlFeGNfVHlwZUVycm9y LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgXygiQXJndW1lbnQgJ2Vu ZF9wYycgc2hvdWxkIGJlIGEgKGxvbmcpIGludGVnZXIuIikpOworCisgICAg ICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIH0KKworICAgICAgaWYgKGVu ZCA8IHN0YXJ0KQorICAgICAgICB7CisgICAgICAgICAgUHlfREVDUkVGIChl bmRfb2JqKTsKKyAgICAgICAgICBQeV9YREVDUkVGIChjb3VudF9vYmopOwor ICAgICAgICAgIFB5RXJyX1NldFN0cmluZyAoUHlFeGNfVmFsdWVFcnJvciwK KyAgICAgICAgICAgICAgICAgICAgICAgICAgIF8oIkFyZ3VtZW50ICdlbmRf cGMnIHNob3VsZCBiZSBncmVhdGVyIHRoYW4gb3IgIgorICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAiZXF1YWwgdG8gdGhlIGFyZ3VtZW50ICdzdGFy dF9wYycuIikpOworCisgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAg IH0KKyAgICB9CisgIGlmIChjb3VudF9vYmopCisgICAgeworICAgICAgY291 bnQgPSBQeUludF9Bc0xvbmcgKGNvdW50X29iaik7CisgICAgICBpZiAoUHlF cnJfT2NjdXJyZWQgKCkgfHwgY291bnQgPCAwKQorICAgICAgICB7CisgICAg ICAgICAgUHlfREVDUkVGIChjb3VudF9vYmopOworICAgICAgICAgIFB5X1hE RUNSRUYgKGVuZF9vYmopOworICAgICAgICAgIFB5RXJyX1NldFN0cmluZyAo UHlFeGNfVHlwZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg XygiQXJndW1lbnQgJ2NvdW50JyBzaG91bGQgYmUgYW4gbm9uLW5lZ2F0aXZl ICIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImludGVnZXIuIikp OworCisgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIH0KKyAgICB9 CisKKyAgcmVzdWx0X2xpc3QgPSBQeUxpc3RfTmV3ICgwKTsKKyAgaWYgKHJl c3VsdF9saXN0ID09IE5VTEwpCisgICAgcmV0dXJuIE5VTEw7CisKKyAgZm9y IChwYyA9IHN0YXJ0LCBpID0gMDsKKyAgICAgICAvKiBBbGwgYXJncyBhcmUg c3BlY2lmaWVkLiAgKi8KKyAgICAgICAoZW5kX29iaiAmJiBjb3VudF9vYmog JiYgcGMgPD0gZW5kICYmIGkgPCBjb3VudCkKKyAgICAgICAvKiBlbmRfcGMg aXMgc3BlY2lmaWVkLCBidXQgbm8gY291bnQuICAqLworICAgICAgIHx8IChl bmRfb2JqICYmIGNvdW50X29iaiA9PSBOVUxMICYmIHBjIDw9IGVuZCkKKyAg ICAgICAvKiBlbmRfcGMgaXMgbm90IHNwZWNpZmllZCwgYnV0IGEgY291bnQg aXMuICAqLworICAgICAgIHx8IChlbmRfb2JqID09IE5VTEwgJiYgY291bnRf b2JqICYmIGkgPCBjb3VudCkKKyAgICAgICAvKiBCb3RoIGVuZF9wYyBhbmQg Y291bnQgYXJlIG5vdCBzcGVjaWZpZWQuICAqLworICAgICAgIHx8IChlbmRf b2JqID09IE5VTEwgJiYgY291bnRfb2JqID09IE5VTEwgJiYgcGMgPT0gc3Rh cnQpOykKKyAgICB7CisgICAgICBpbnQgaW5zbl9sZW4gPSAwOworICAgICAg Y2hhciAqYXMgPSBOVUxMOworICAgICAgc3RydWN0IHVpX2ZpbGUgKm1lbWZp bGUgPSBtZW1fZmlsZW9wZW4gKCk7CisgICAgICBQeU9iamVjdCAqaW5zbl9k aWN0ID0gUHlEaWN0X05ldyAoKTsKKyAgICAgIHZvbGF0aWxlIHN0cnVjdCBn ZGJfZXhjZXB0aW9uIGV4Y2VwdDsKKworICAgICAgaWYgKGluc25fZGljdCA9 PSBOVUxMKQorICAgICAgICB7CisgICAgICAgICAgUHlfREVDUkVGIChyZXN1 bHRfbGlzdCk7CisgICAgICAgICAgdWlfZmlsZV9kZWxldGUgKG1lbWZpbGUp OworCisgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIH0KKyAgICAg IGlmIChQeUxpc3RfQXBwZW5kIChyZXN1bHRfbGlzdCwgaW5zbl9kaWN0KSkK KyAgICAgICAgeworICAgICAgICAgIFB5X0RFQ1JFRiAocmVzdWx0X2xpc3Qp OworICAgICAgICAgIFB5X0RFQ1JFRiAoaW5zbl9kaWN0KTsKKyAgICAgICAg ICB1aV9maWxlX2RlbGV0ZSAobWVtZmlsZSk7CisKKyAgICAgICAgICByZXR1 cm4gTlVMTDsgIC8qIFB5TGlzdF9BcHBlbmQgU2V0cyB0aGUgZXhjZXB0aW9u LiAgKi8KKyAgICAgICAgfQorCisgICAgICBUUllfQ0FUQ0ggKGV4Y2VwdCwg UkVUVVJOX01BU0tfQUxMKQorICAgICAgICB7CisgICAgICAgICAgaW5zbl9s ZW4gPSBnZGJfcHJpbnRfaW5zbiAoZ2RiYXJjaCwgcGMsIG1lbWZpbGUsIE5V TEwpOworICAgICAgICB9CisgICAgICBpZiAoZXhjZXB0LnJlYXNvbiA8IDAp CisgICAgICAgIHsKKyAgICAgICAgICBQeV9ERUNSRUYgKHJlc3VsdF9saXN0 KTsKKyAgICAgICAgICB1aV9maWxlX2RlbGV0ZSAobWVtZmlsZSk7CisKKyAg ICAgICAgICByZXR1cm4gZ2RicHlfY29udmVydF9leGNlcHRpb24gKGV4Y2Vw dCk7CisgICAgICAgIH0KKworICAgICAgYXMgPSB1aV9maWxlX3hzdHJkdXAg KG1lbWZpbGUsIE5VTEwpOworICAgICAgaWYgKFB5RGljdF9TZXRJdGVtU3Ry aW5nIChpbnNuX2RpY3QsICJhZGRyIiwKKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgZ2RiX3B5X2xvbmdfZnJvbV91bG9uZ2VzdCAocGMpKQor ICAgICAgICAgIHx8IFB5RGljdF9TZXRJdGVtU3RyaW5nIChpbnNuX2RpY3Qs ICJhc20iLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQ eVN0cmluZ19Gcm9tU3RyaW5nICgqYXMgPyBhcyA6ICI8dW5rbm93bj4iKSkK KyAgICAgICAgICB8fCBQeURpY3RfU2V0SXRlbVN0cmluZyAoaW5zbl9kaWN0 LCAibGVuZ3RoIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgUHlJbnRfRnJvbUxvbmcgKGluc25fbGVuKSkpCisgICAgICAgIHsKKyAg ICAgICAgICBQeV9ERUNSRUYgKHJlc3VsdF9saXN0KTsKKworICAgICAgICAg IHVpX2ZpbGVfZGVsZXRlIChtZW1maWxlKTsKKyAgICAgICAgICB4ZnJlZSAo YXMpOworCisgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIH0KKwor ICAgICAgcGMgKz0gaW5zbl9sZW47CisgICAgICBpKys7CisgICAgICB1aV9m aWxlX2RlbGV0ZSAobWVtZmlsZSk7CisgICAgICB4ZnJlZSAoYXMpOworICAg IH0KKworICByZXR1cm4gcmVzdWx0X2xpc3Q7Cit9CisKIC8qIEluaXRpYWxp emVzIHRoZSBBcmNoaXRlY3R1cmUgY2xhc3MgaW4gdGhlIGdkYiBtb2R1bGUu ICAqLwogCiB2b2lkCkBAIC0xMDUsNiArMjQ1LDExIEBAIHN0YXRpYyBQeU1l dGhvZERlZiBhcmNoX29iamVjdF9tZXRob2RzIFtdID0gewogICB7ICJuYW1l IiwgYXJjaHB5X25hbWUsIE1FVEhfTk9BUkdTLAogICAgICJuYW1lICgpIC0+ IFN0cmluZy5cblwKIFJldHVybiB0aGUgbmFtZSBvZiB0aGUgYXJjaGl0ZWN0 dXJlIGFzIGEgc3RyaW5nIHZhbHVlLiIgfSwKKyAgeyAiZGlzYXNzZW1ibGUi LCAoUHlDRnVuY3Rpb24pIGFyY2hweV9kaXNhc3NlbWJsZSwKKyAgICBNRVRI X1ZBUkFSR1MgfCBNRVRIX0tFWVdPUkRTLAorICAgICJkaXNhc3NlbWJsZSAo c3RhcnRfcGMgWywgZW5kX3BjIFssIGNvdW50XV0pIC0+IExpc3QuXG5cCitS ZXR1cm4gYSBsaXN0IG9mIGF0IG1vc3QgQ09VTlQgZGlzYXNzZW1ibGVkIGlu c3RydWN0aW9ucyBmcm9tIFNUQVJUX1BDIHRvXG5cCitFTkRfUEMuIiB9LAog ICB7TlVMTH0gIC8qIFNlbnRpbmVsICovCiB9OwogCmRpZmYgLS1naXQgYS9n ZGIvdGVzdHN1aXRlL2dkYi5weXRob24vTWFrZWZpbGUuaW4gYi9nZGIvdGVz dHN1aXRlL2dkYi5weXRob24vTWFrZWZpbGUuaW4KaW5kZXggNGUyODZiNS4u MGI4MTUwNyAxMDA2NDQKLS0tIGEvZ2RiL3Rlc3RzdWl0ZS9nZGIucHl0aG9u L01ha2VmaWxlLmluCisrKyBiL2dkYi90ZXN0c3VpdGUvZ2RiLnB5dGhvbi9N YWtlZmlsZS5pbgpAQCAtNiw3ICs2LDcgQEAgRVhFQ1VUQUJMRVMgPSBweS10 eXBlIHB5LXZhbHVlIHB5LXByZXR0eXByaW50IHB5LXRlbXBsYXRlIHB5LWJs b2NrIFwKIAlweS1zaGFyZWQgcHl0aG9uIGxpYi10eXBlcyBweS1ldmVudHMg cHktZXZ0aHJlYWRzIHB5LWZyYW1lIFwKIAlweS1taSBweS1wcC1tYWludCBw eS1wcm9nc3BhY2UgcHktc2VjdGlvbi1zY3JpcHQgcHktb2JqZmlsZSBcCiAJ cHktZmluaXNoLWJyZWFrcG9pbnQgcHktZmluaXNoLWJyZWFrcG9pbnQyIHB5 LXZhbHVlLWNjIHB5LWV4cGxvcmUgXAotCXB5LWV4cGxvcmUtY2MKKwlweS1l eHBsb3JlLWNjIHB5LWFyY2gKIAogTUlTQ0VMTEFORU9VUyA9IHB5LXNoYXJl ZC1zbC5zbCBweS1ldmVudHMtc2hsaWIuc28gcHktZXZlbnRzLXNobGliLW5v ZGVidWcuc28gCiAKZGlmZiAtLWdpdCBhL2dkYi90ZXN0c3VpdGUvZ2RiLnB5 dGhvbi9weS1hcmNoLmMgYi9nZGIvdGVzdHN1aXRlL2dkYi5weXRob24vcHkt YXJjaC5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmUy ZmU1NWMKLS0tIC9kZXYvbnVsbAorKysgYi9nZGIvdGVzdHN1aXRlL2dkYi5w eXRob24vcHktYXJjaC5jCkBAIC0wLDAgKzEsMjMgQEAKKy8qIFRoaXMgdGVz dGNhc2UgaXMgcGFydCBvZiBHREIsIHRoZSBHTlUgZGVidWdnZXIuCisKKyAg IENvcHlyaWdodCAyMDEzIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5j LgorCisgICBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNh biByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICAgaXQgdW5kZXIg dGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBh cyBwdWJsaXNoZWQgYnkKKyAgIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRp b247IGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCisgICAo YXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorCisgICBUaGlz IHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3 aWxsIGJlIHVzZWZ1bCwKKyAgIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsg d2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgICBNRVJD SEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBP U0UuICBTZWUgdGhlCisgICBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBm b3IgbW9yZSBkZXRhaWxzLgorCisgICBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2 ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQor ICAgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSAgPGh0 dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorKi8KKworaW50CittYWlu ICh2b2lkKQoreworICByZXR1cm4gMDsKK30KZGlmZiAtLWdpdCBhL2dkYi90 ZXN0c3VpdGUvZ2RiLnB5dGhvbi9weS1hcmNoLmV4cCBiL2dkYi90ZXN0c3Vp dGUvZ2RiLnB5dGhvbi9weS1hcmNoLmV4cApuZXcgZmlsZSBtb2RlIDEwMDY0 NAppbmRleCAwMDAwMDAwLi40ZTczNmI4Ci0tLSAvZGV2L251bGwKKysrIGIv Z2RiL3Rlc3RzdWl0ZS9nZGIucHl0aG9uL3B5LWFyY2guZXhwCkBAIC0wLDAg KzEsNTQgQEAKKyMgQ29weXJpZ2h0IDIwMTMgRnJlZSBTb2Z0d2FyZSBGb3Vu ZGF0aW9uLCBJbmMuCisKKyMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdh cmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyMg aXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMg TGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyMgdGhlIEZyZWUgU29mdHdhcmUg Rm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwg b3IKKyMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyMK KyMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRo YXQgaXQgd2lsbCBiZSB1c2VmdWwsCisjIGJ1dCBXSVRIT1VUIEFOWSBXQVJS QU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisj IE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIg UFVSUE9TRS4gIFNlZSB0aGUKKyMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vu c2UgZm9yIG1vcmUgZGV0YWlscy4KKyMKKyMgWW91IHNob3VsZCBoYXZlIHJl Y2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vu c2UKKyMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8 aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisKK3N0YW5kYXJkX3Rl c3RmaWxlCisKK2lmIHsgW3ByZXBhcmVfZm9yX3Rlc3RpbmcgJHt0ZXN0Zmls ZX0uZXhwICR7dGVzdGZpbGV9ICR7c3JjZmlsZX1dIH0geworICAgIHJldHVy biAtMQorfQorCisjIFNraXAgYWxsIHRlc3RzIGlmIFB5dGhvbiBzY3JpcHRp bmcgaXMgbm90IGVuYWJsZWQuCitpZiB7IFtza2lwX3B5dGhvbl90ZXN0c10g fSB7IGNvbnRpbnVlIH0KKworaWYgIVtydW50b19tYWluXSB7CisgICByZXR1 cm4gLTEKK30KKworZ2RiX3B5X3Rlc3Rfc2lsZW50X2NtZCAicHl0aG9uIGZy YW1lID0gZ2RiLnNlbGVjdGVkX2ZyYW1lKCkiICJnZXQgZnJhbWUiIDAKK2dk Yl9weV90ZXN0X3NpbGVudF9jbWQgInB5dGhvbiBhcmNoID0gZnJhbWUuYXJj aGl0ZWN0dXJlKCkiICJnZXQgYXJjaCIgMAorZ2RiX3B5X3Rlc3Rfc2lsZW50 X2NtZCAicHl0aG9uIHBjID0gZnJhbWUucGMoKSIgImdldCBwYyIgMAorZ2Ri X3B5X3Rlc3Rfc2lsZW50X2NtZCAicHl0aG9uIGluc25fbGlzdDEgPSBhcmNo LmRpc2Fzc2VtYmxlKHBjLCBwYywgMSkiIFwKKyAgImRpc2Fzc2VtYmxlIiAw CitnZGJfcHlfdGVzdF9zaWxlbnRfY21kICJweXRob24gaW5zbl9saXN0MiA9 IGFyY2guZGlzYXNzZW1ibGUocGMsIHBjKSIgXAorICAiZGlzYXNzZW1ibGUg bm8gY291bnQiIDAKK2dkYl9weV90ZXN0X3NpbGVudF9jbWQgInB5dGhvbiBp bnNuX2xpc3QzID0gYXJjaC5kaXNhc3NlbWJsZShwYywgY291bnQ9MSkiIFwK KyAgImRpc2Fzc2VtYmxlIG5vIGVuZCIgMAorZ2RiX3B5X3Rlc3Rfc2lsZW50 X2NtZCAicHl0aG9uIGluc25fbGlzdDQgPSBhcmNoLmRpc2Fzc2VtYmxlKHBj KSIgXAorICAiZGlzYXNzZW1ibGUgbm8gZW5kIG5vIGNvdW50IiAwCisKK2dk Yl90ZXN0ICJweXRob24gcHJpbnQgbGVuKGluc25fbGlzdDEpIiAiMSIgInRl c3QgbnVtYmVyIG9mIGluc3RydWN0aW9ucyAxIgorZ2RiX3Rlc3QgInB5dGhv biBwcmludCBsZW4oaW5zbl9saXN0MikiICIxIiAidGVzdCBudW1iZXIgb2Yg aW5zdHJ1Y3Rpb25zIDIiCitnZGJfdGVzdCAicHl0aG9uIHByaW50IGxlbihp bnNuX2xpc3QzKSIgIjEiICJ0ZXN0IG51bWJlciBvZiBpbnN0cnVjdGlvbnMg MyIKK2dkYl90ZXN0ICJweXRob24gcHJpbnQgbGVuKGluc25fbGlzdDQpIiAi MSIgInRlc3QgbnVtYmVyIG9mIGluc3RydWN0aW9ucyA0IgorCitnZGJfcHlf dGVzdF9zaWxlbnRfY21kICJweXRob24gaW5zbiA9IGluc25fbGlzdDFcWzBc XSIgImdldCBpbnN0cnVjdGlvbiIgMAorCitnZGJfdGVzdCAicHl0aG9uIHBy aW50IFwiYWRkclwiIGluIGluc24iICJUcnVlIiAidGVzdCBrZXkgYWRkciIK K2dkYl90ZXN0ICJweXRob24gcHJpbnQgXCJhc21cIiBpbiBpbnNuIiAiVHJ1 ZSIgInRlc3Qga2V5IGFzbSIKK2dkYl90ZXN0ICJweXRob24gcHJpbnQgXCJs ZW5ndGhcIiBpbiBpbnNuIiAiVHJ1ZSIgInRlc3Qga2V5IGxlbmd0aCIKKwor IyBOZWdhdGl2ZSB0ZXN0CitnZGJfdGVzdCAicHl0aG9uIGFyY2guZGlzYXNz ZW1ibGUoMCwgMCkiICIuKmdkYlwuTWVtb3J5RXJyb3IuKiIgXAorICAidGVz dCBleGNlcHRpb24iCg== --047d7b3438ecbb9c7904d5c9a949--