From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 14947 invoked by alias); 21 Jan 2013 14:08:40 -0000 Received: (qmail 14930 invoked by uid 22791); 21 Jan 2013 14:08:38 -0000 X-SWARE-Spam-Status: No, hits=-3.7 required=5.0 tests=AWL,BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,KHOP_RCVD_TRUST,RCVD_IN_DNSWL_LOW,RCVD_IN_HOSTKARMA_YE,RP_MATCHES_RCVD,TW_BJ X-Spam-Check-By: sourceware.org Received: from mail-ee0-f43.google.com (HELO mail-ee0-f43.google.com) (74.125.83.43) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Mon, 21 Jan 2013 14:08:29 +0000 Received: by mail-ee0-f43.google.com with SMTP id c50so2830386eek.30 for ; Mon, 21 Jan 2013 06:08:27 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:x-received:date:message-id:subject:from:to :content-type:x-gm-message-state; bh=ePwl8MUms+jV0mysAZzQ022T0xFBfttWNdS4o9rUSlI=; b=hmgvECZgwvJMBf1zKB3OzBS6Z6jA3c3adtj2awl7D75NzBETUtECtEXaf0MA4JhefO +6x3LlqobT/JsAla8gEfPNWzbtWgMb8KwQ0MIKk03jJzGUaV6rxsstBfTO6jkI/wt6HC pVZbjzIzDERC9gojbripjNdHmTgtJ47yXNQZqtXNGYd7/raQT2PUDckmX3DlYiA52BxT wabDo3yhJzZ18L6D5M6H4svlIG44+MJD4tM5/ODZB4DyDMTBAMVdOuYwU/HiUhtkXbWU J5LAjrC4CPl5x1iAlkeIh1G6qucSdCHjRBguDSWy4HtyWxVzMuHq+qniYr0u60gVNJDk G2VA== MIME-Version: 1.0 X-Received: by 10.14.205.198 with SMTP id j46mr61028091eeo.27.1358777294947; Mon, 21 Jan 2013 06:08:14 -0800 (PST) Received: by 10.14.212.4 with HTTP; Mon, 21 Jan 2013 06:08:14 -0800 (PST) Date: Mon, 21 Jan 2013 14:08:00 -0000 Message-ID: Subject: [RFC - GDB Python API] New gdb.Architecture class From: Siva Chandra To: gdb-patches@sourceware.org Content-Type: multipart/mixed; boundary=047d7b3438eafe84ae04d3ccfde8 X-Gm-Message-State: ALoCoQm9sofQxtRRQ7Z7K+WwE1Nli0PIKrvFdt8OMZ03dNiWyweUMonw9xrxb8jEZUJVumkEvjZtk3zz7yeLfU8tbEzAo/7wpVDhcOkmKzhqw1QPHOTk6Si/hrR3tOW6IrYpNVe6/umcmYa7YUKrTaYZZz3k9pGNQ1JEkZUbhnFHPQMz00Oim5TWuwK+CXO8Oi9YlPLc5eSafplQNIb3rbQEXT1SWy85bw== 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-01/txt/msg00472.txt.bz2 --047d7b3438eafe84ae04d3ccfde8 Content-Type: text/plain; charset=ISO-8859-1 Content-length: 1023 Per suggestion here, http://sourceware.org/ml/gdb-patches/2013-01/msg00296.html, the attached patch adds a new class 'gdb.Architecture' with a single method 'name'. I will add tests and docs after we are OK with the code changes. ChangeLog: 2013-01-21 Siva Chandra Reddy Add a new class gdb.Architecture which exposes GDB's internal representation of architecture via GDB Python API. * Makefile.in: Add entries corresponding to the new file python/py-arch.c. * python/py-arch.c: Implement gdb.Architecture class. * python/py-frame.c (frapy_arch): Implement the method gdb.Frame.architecture(). (frame_object_methods): Add 'architecture' to the method table. * python/python-internal.h: Add declarations of new utility functions. * python/python.c (_initialize_python): Initialize gdb.Architecture class. (GdbMethods): Add 'current_architecture' to the method table. Thanks, Siva Chandra --047d7b3438eafe84ae04d3ccfde8 Content-Type: text/plain; charset=US-ASCII; name="gdb_arch_patch_v1.txt" Content-Disposition: attachment; filename="gdb_arch_patch_v1.txt" Content-Transfer-Encoding: base64 X-Attachment-Id: f_hc7osdv40 Content-length: 14213 ZGlmZiAtLWdpdCBhL2dkYi9NYWtlZmlsZS5pbiBiL2dkYi9NYWtlZmlsZS5p bgppbmRleCA3MzA1ZTZkLi45NTY5NjNlIDEwMDY0NAotLS0gYS9nZGIvTWFr ZWZpbGUuaW4KKysrIGIvZ2RiL01ha2VmaWxlLmluCkBAIC0yNzEsNiArMjcx LDcgQEAgU1VCRElSX1RVSV9DRkxBR1M9IFwKICMKIFNVQkRJUl9QWVRIT05f T0JTID0gXAogCXB5dGhvbi5vIFwKKwlweS1hcmNoLm8gXAogCXB5LWF1dG8t bG9hZC5vIFwKIAlweS1ibG9jay5vIFwKIAlweS1icGV2ZW50Lm8gXApAQCAt MzA0LDYgKzMwNSw3IEBAIFNVQkRJUl9QWVRIT05fT0JTID0gXAogCiBTVUJE SVJfUFlUSE9OX1NSQ1MgPSBcCiAJcHl0aG9uL3B5dGhvbi5jIFwKKwlweXRo b24vcHktYXJjaC5jIFwKIAlweXRob24vcHktYXV0by1sb2FkLmMgXAogCXB5 dGhvbi9weS1ibG9jay5jIFwKIAlweXRob24vcHktYnBldmVudC5jIFwKQEAg LTIwNDUsNiArMjA0NywxMCBAQCBweXRob24ubzogJChzcmNkaXIpL3B5dGhv bi9weXRob24uYwogCSQoQ09NUElMRSkgJChQWVRIT05fQ0ZMQUdTKSAkKHNy Y2RpcikvcHl0aG9uL3B5dGhvbi5jCiAJJChQT1NUQ09NUElMRSkKIAorcHkt YXJjaC5vOiAkKHNyY2RpcikvcHl0aG9uL3B5LWFyY2guYworCSQoQ09NUElM RSkgJChQWVRIT05fQ0ZMQUdTKSAkKHNyY2RpcikvcHl0aG9uL3B5LWFyY2gu YworCSQoUE9TVENPTVBJTEUpCisKIHB5LWF1dG8tbG9hZC5vOiAkKHNyY2Rp cikvcHl0aG9uL3B5LWF1dG8tbG9hZC5jCiAJJChDT01QSUxFKSAkKFBZVEhP Tl9DRkxBR1MpICQoc3JjZGlyKS9weXRob24vcHktYXV0by1sb2FkLmMKIAkk KFBPU1RDT01QSUxFKQpkaWZmIC0tZ2l0IGEvZ2RiL3B5dGhvbi9weS1hcmNo LmMgYi9nZGIvcHl0aG9uL3B5LWFyY2guYwpuZXcgZmlsZSBtb2RlIDEwMDY0 NAppbmRleCAwMDAwMDAwLi45NGY4OWY4Ci0tLSAvZGV2L251bGwKKysrIGIv Z2RiL3B5dGhvbi9weS1hcmNoLmMKQEAgLTAsMCArMSwxMzcgQEAKKy8qIFB5 dGhvbiBpbnRlcmZhY2UgdG8gYXJjaGl0ZWN0dXJlCisKKyAgIENvcHlyaWdo dCAoQykgMjAxMyBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KKwor ICAgVGhpcyBmaWxlIGlzIHBhcnQgb2YgR0RCLgorCisgICBUaGlzIHByb2dy YW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQg YW5kL29yIG1vZGlmeQorICAgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBH TlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAg IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9u IDMgb2YgdGhlIExpY2Vuc2UsIG9yCisgICAoYXQgeW91ciBvcHRpb24pIGFu eSBsYXRlciB2ZXJzaW9uLgorCisgICBUaGlzIHByb2dyYW0gaXMgZGlzdHJp YnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAg IGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBp bXBsaWVkIHdhcnJhbnR5IG9mCisgICBNRVJDSEFOVEFCSUxJVFkgb3IgRklU TkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgICBH TlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgor CisgICBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBH TlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICAgYWxvbmcgd2l0aCB0aGlz IHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xp Y2Vuc2VzLz4uICAqLworCisjaW5jbHVkZSAiZGVmcy5oIgorI2luY2x1ZGUg ImdkYmFyY2guaCIKKyNpbmNsdWRlICJhcmNoLXV0aWxzLmgiCisjaW5jbHVk ZSAicHl0aG9uLWludGVybmFsLmgiCisKK3R5cGVkZWYgc3RydWN0IHsKKyAg UHlPYmplY3RfSEVBRAorICBzdHJ1Y3QgZ2RiYXJjaCAqZ2RiYXJjaDsKK30g YXJjaF9vYmplY3Q7CisKKy8qIFJldHVybnMgdGhlIHN0cnVjdCBnZGJhcmNo IHZhbHVlIGNvcnJlc3BvbmRpbmcgdG8gdGhlIGdpdmVuIFB5dGhvbgorICAg YXJjaGl0ZWN0dXJlIG9iamVjdCBPQkouICAqLworCitzdHJ1Y3QgZ2RiYXJj aCAqCithcmNoX29iamVjdF90b19nZGJhcmNoIChQeU9iamVjdCAqb2JqKQor eworICBhcmNoX29iamVjdCAqcHlfYXJjaCA9IChhcmNoX29iamVjdCAqKSBv Ymo7CisgIHJldHVybiBweV9hcmNoLT5nZGJhcmNoOworfQorCisvKiBSZXR1 cm5zIHRoZSBQeXRob24gYXJjaGl0ZWN0dXJlIG9iamVjdCBjb3JyZXNwb25k aW5nIHRvIEdEQkFSQ0guICAqLworCitQeU9iamVjdCAqCitnZGJhcmNoX3Rv X2FyY2hfb2JqZWN0IChzdHJ1Y3QgZ2RiYXJjaCAqZ2RiYXJjaCkKK3sKKyAg YXJjaF9vYmplY3QgKm9iaiA9IFB5T2JqZWN0X05ldyAoYXJjaF9vYmplY3Qs ICZhcmNoX29iamVjdF90eXBlKTsKKyAgaWYgKG9iaiA9PSBOVUxMKQorICAg IHsKKyAgICAgIFB5RXJyX1NldFN0cmluZyAoUHlFeGNfTWVtb3J5RXJyb3Is CisgICAgICAgICAgICAgICAgICAgICAgIF8oIkNvdWxkIG5vdCBhbGxvY2F0 ZSBhcmNoaXRlY3RpcmUgb2JqZWN0IikpOworICAgICAgcmV0dXJuIE5VTEw7 CisgICAgfQorCisgIG9iai0+Z2RiYXJjaCA9IGdkYmFyY2g7CisgIHJldHVy biAoUHlPYmplY3QgKikgb2JqOworfQorCisvKiBJbXBsZW1lbnRhdGlvbiBv ZiBnZGIuQXJjaGl0ZWN0dXJlLm5hbWUgKHNlbGYpIC0+IFN0cmluZy4KKyAg IFJldHVybnMgdGhlIG5hbWUgb2YgdGhlIGFyY2hpdGVjdHVyZSBhcyBhIHN0 cmluZyB2YWx1ZS4gICovCisKK3N0YXRpYyBQeU9iamVjdCAqCithcmNocHlf bmFtZSAoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKSB7CisgIHN0 cnVjdCBnZGJhcmNoICpnZGJhcmNoID0gYXJjaF9vYmplY3RfdG9fZ2RiYXJj aCAoc2VsZik7CisgIGNvbnN0IGNoYXIgKm5hbWUgPSAoZ2RiYXJjaF9iZmRf YXJjaF9pbmZvIChnZGJhcmNoKSktPnByaW50YWJsZV9uYW1lOworICBQeU9i amVjdCAqcHlfbmFtZSA9IFB5X0J1aWxkVmFsdWUgKCJzIiwgbmFtZSk7CisK KyAgcmV0dXJuIHB5X25hbWU7Cit9CisKKy8qIEltcGxlbWVudGF0aW9uIG9m IGdkYi5jdXJyZW50X2FyY2ggKCkgLT4gZ2RiLkFyY2hpdGVjdHVyZS4KKyAg IFJldHVybnMgdGhlIGN1cnJlbnQgYXJjaGl0ZWN0dXJlIGFzIGEgZ2RiLkFy Y2hpdGVjdHVyZSBvYmplY3QuICAqLworCitQeU9iamVjdCAqCitnZGJweV9j dXJyZW50X2FyY2ggKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykg eworICBzdHJ1Y3QgZ2RiYXJjaCAqY3Vycl9hcmNoID0gZ2V0X2N1cnJlbnRf YXJjaCAoKTsKKyAgcmV0dXJuIGdkYmFyY2hfdG9fYXJjaF9vYmplY3QgKGN1 cnJfYXJjaCk7Cit9CisKKy8qIEluaXRpYWxpemVzIHRoZSBBcmNoaXRlY3R1 cmUgY2xhc3MgaW4gdGhlIGdkYiBtb2R1bGUuICAqLworCit2b2lkCitnZGJw eV9pbml0aWFsaXplX2FyY2ggKHZvaWQpCit7CisgIGFyY2hfb2JqZWN0X3R5 cGUudHBfbmV3ID0gUHlUeXBlX0dlbmVyaWNOZXc7CisgIGlmIChQeVR5cGVf UmVhZHkgKCZhcmNoX29iamVjdF90eXBlKSA8IDApCisgICAgcmV0dXJuOwor CisgIFB5X0lOQ1JFRiAoJmFyY2hfb2JqZWN0X3R5cGUpOworICBQeU1vZHVs ZV9BZGRPYmplY3QgKGdkYl9tb2R1bGUsICJBcmNoaXRlY3R1cmUiLAorICAg ICAgICAgICAgICAgICAgICAgIChQeU9iamVjdCAqKSAmYXJjaF9vYmplY3Rf dHlwZSk7Cit9CisKK3N0YXRpYyBQeU1ldGhvZERlZiBhcmNoX29iamVjdF9t ZXRob2RzIFtdID0geworICB7ICJuYW1lIiwgYXJjaHB5X25hbWUsIE1FVEhf Tk9BUkdTLAorICAgICJuYW1lICgpIC0+IFN0cmluZy5cblwKK1JldHVybiB0 aGUgbmFtZSBvZiB0aGUgYXJjaGl0ZWN0dXJlIGFzIGEgc3RyaW5nIHZhbHVl LiIgfSwKKyAge05VTEx9ICAvKiBTZW50aW5lbCAqLworfTsKKworUHlUeXBl T2JqZWN0IGFyY2hfb2JqZWN0X3R5cGUgPSB7CisgIFB5VmFyT2JqZWN0X0hF QURfSU5JVCAoTlVMTCwgMCkKKyAgImdkYi5BcmNoaXRlY3R1cmUiLCAgICAg ICAgICAgICAgICAgLyogdHBfbmFtZSAqLworICBzaXplb2YgKGFyY2hfb2Jq ZWN0KSwgICAgICAgICAgICAgICAvKiB0cF9iYXNpY3NpemUgKi8KKyAgMCwg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfaXRlbXNp emUgKi8KKyAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg LyogdHBfZGVhbGxvYyAqLworICAwLCAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAvKiB0cF9wcmludCAqLworICAwLCAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAvKiB0cF9nZXRhdHRyICovCisgIDAsICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3NldGF0dHIg Ki8KKyAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyog dHBfY29tcGFyZSAqLworICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAvKiB0cF9yZXByICovCisgIDAsICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIC8qIHRwX2FzX251bWJlciAqLworICAwLCAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9hc19zZXF1ZW5j ZSAqLworICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAv KiB0cF9hc19tYXBwaW5nICovCisgIDAsICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIC8qIHRwX2hhc2ggICovCisgIDAsICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2NhbGwgKi8KKyAgMCwgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfc3RyICovCisg IDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2dl dGF0dHJvICovCisgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIC8qIHRwX3NldGF0dHJvICovCisgIDAsICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIC8qIHRwX2FzX2J1ZmZlciAqLworICBQeV9UUEZM QUdTX0RFRkFVTFQsICAgICAgICAgICAgICAgICAvKiB0cF9mbGFncyAqLwor ICAiR0RCIGFyY2hpdGVjdHVyZSBvYmplY3QiLCAgICAgICAgICAvKiB0cF9k b2MgKi8KKyAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg LyogdHBfdHJhdmVyc2UgKi8KKyAgMCwgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgLyogdHBfY2xlYXIgKi8KKyAgMCwgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgLyogdHBfcmljaGNvbXBhcmUgKi8KKyAg MCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfd2Vh a2xpc3RvZmZzZXQgKi8KKyAgMCwgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgLyogdHBfaXRlciAqLworICAwLCAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAvKiB0cF9pdGVybmV4dCAqLworICBhcmNoX29i amVjdF9tZXRob2RzLCAgICAgICAgICAgICAgICAvKiB0cF9tZXRob2RzICov CisgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRw X21lbWJlcnMgKi8KKyAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgLyogdHBfZ2V0c2V0ICovCisgIDAsICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIC8qIHRwX2Jhc2UgKi8KKyAgMCwgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfZGljdCAqLworICAwLCAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9kZXNjcl9n ZXQgKi8KKyAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg LyogdHBfZGVzY3Jfc2V0ICovCisgIDAsICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIC8qIHRwX2RpY3RvZmZzZXQgKi8KKyAgMCwgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfaW5pdCAqLworICAw LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9hbGxv YyAqLworfTsKZGlmZiAtLWdpdCBhL2dkYi9weXRob24vcHktZnJhbWUuYyBi L2dkYi9weXRob24vcHktZnJhbWUuYwppbmRleCA0YjAyNWRiLi5iNDA5ZTNk IDEwMDY0NAotLS0gYS9nZGIvcHl0aG9uL3B5LWZyYW1lLmMKKysrIGIvZ2Ri L3B5dGhvbi9weS1mcmFtZS5jCkBAIC0xNjcsNiArMTY3LDI2IEBAIGZyYXB5 X3R5cGUgKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKICAgcmV0 dXJuIFB5SW50X0Zyb21Mb25nICh0eXBlKTsKIH0KIAorLyogSW1wbGVtZW50 YXRpb24gb2YgZ2RiLkZyYW1lLmFyY2hpdGVjdHVyZSAoc2VsZikgLT4gZ2Ri LkFyY2hpdGVjdHVyZS4KKyAgIFJldHVybnMgdGhlIGZyYW1lJ3MgYXJjaGl0 ZWN0dXJlIGFzIGEgZ2RiLkFyY2hpdGVjdHVyZSBvYmplY3QuICAqLworCitz dGF0aWMgUHlPYmplY3QgKgorZnJhcHlfYXJjaCAoUHlPYmplY3QgKnNlbGYs IFB5T2JqZWN0ICphcmdzKQoreworICBzdHJ1Y3QgZnJhbWVfaW5mbyAqZnJh bWUgPSBOVUxMOyAgICAvKiBJbml0aWFsaXplIHRvIGFwcGVhc2UgZ2NjIHdh cm5pbmcuICAqLworICBmcmFtZV9vYmplY3QgKm9iaiA9IChmcmFtZV9vYmpl Y3QgKikgc2VsZjsKKyAgdm9sYXRpbGUgc3RydWN0IGdkYl9leGNlcHRpb24g ZXhjZXB0OworICBlbnVtIHVud2luZF9zdG9wX3JlYXNvbiBzdG9wX3JlYXNv bjsKKworICBUUllfQ0FUQ0ggKGV4Y2VwdCwgUkVUVVJOX01BU0tfQUxMKQor ICAgIHsKKyAgICAgIEZSQVBZX1JFUVVJUkVfVkFMSUQgKHNlbGYsIGZyYW1l KTsKKyAgICB9CisgIEdEQl9QWV9IQU5ETEVfRVhDRVBUSU9OIChleGNlcHQp OworCisgIHJldHVybiBnZGJhcmNoX3RvX2FyY2hfb2JqZWN0IChvYmotPmdk YmFyY2gpOworfQorCiAvKiBJbXBsZW1lbnRhdGlvbiBvZiBnZGIuRnJhbWUu dW53aW5kX3N0b3BfcmVhc29uIChzZWxmKSAtPiBJbnRlZ2VyLgogICAgUmV0 dXJucyBvbmUgb2YgdGhlIGdkYi5GUkFNRV9VTldJTkRfKiBjb25zdGFudHMu ICAqLwogCkBAIC02MzIsNiArNjUyLDkgQEAgUmV0dXJuIHRoZSBmdW5jdGlv biBuYW1lIG9mIHRoZSBmcmFtZSwgb3IgTm9uZSBpZiBpdCBjYW4ndCBiZSBk ZXRlcm1pbmVkLiIgfSwKICAgeyAidHlwZSIsIGZyYXB5X3R5cGUsIE1FVEhf Tk9BUkdTLAogICAgICJ0eXBlICgpIC0+IEludGVnZXIuXG5cCiBSZXR1cm4g dGhlIHR5cGUgb2YgdGhlIGZyYW1lLiIgfSwKKyAgeyAiYXJjaGl0ZWN0dXJl IiwgZnJhcHlfYXJjaCwgTUVUSF9OT0FSR1MsCisgICAgImFyY2hpdGVjdHVy ZSAoKSAtPiBnZGIuQXJjaGl0ZWN0dXJlLlxuXAorUmV0dXJuIHRoZSBhcmNo aXRlY3R1cmUgb2YgdGhlIGZyYW1lLiIgfSwKICAgeyAidW53aW5kX3N0b3Bf cmVhc29uIiwgZnJhcHlfdW53aW5kX3N0b3BfcmVhc29uLCBNRVRIX05PQVJH UywKICAgICAidW53aW5kX3N0b3BfcmVhc29uICgpIC0+IEludGVnZXIuXG5c CiBSZXR1cm4gdGhlIHJlYXNvbiB3aHkgaXQncyBub3QgcG9zc2libGUgdG8g ZmluZCBmcmFtZXMgb2xkZXIgdGhhbiB0aGlzLiIgfSwKZGlmZiAtLWdpdCBh L2dkYi9weXRob24vcHl0aG9uLWludGVybmFsLmggYi9nZGIvcHl0aG9uL3B5 dGhvbi1pbnRlcm5hbC5oCmluZGV4IDdkNTJjMDYuLjIyZmZhNmEgMTAwNjQ0 Ci0tLSBhL2dkYi9weXRob24vcHl0aG9uLWludGVybmFsLmgKKysrIGIvZ2Ri L3B5dGhvbi9weXRob24taW50ZXJuYWwuaApAQCAtMTU0LDYgKzE1NCw3IEBA IGV4dGVybiBQeVR5cGVPYmplY3QgZXZlbnRzX29iamVjdF90eXBlOwogZXh0 ZXJuIFB5VHlwZU9iamVjdCBzdG9wX2V2ZW50X29iamVjdF90eXBlOwogZXh0 ZXJuIFB5VHlwZU9iamVjdCBicmVha3BvaW50X29iamVjdF90eXBlOwogZXh0 ZXJuIFB5VHlwZU9iamVjdCBmcmFtZV9vYmplY3RfdHlwZTsKK2V4dGVybiBQ eVR5cGVPYmplY3QgYXJjaF9vYmplY3RfdHlwZTsKIAogdHlwZWRlZiBzdHJ1 Y3QgYnJlYWtwb2ludF9vYmplY3QKIHsKQEAgLTIzMSw2ICsyMzIsNyBAQCBQ eU9iamVjdCAqZ2RicHlfc2VsZWN0ZWRfaW5mZXJpb3IgKFB5T2JqZWN0ICpz ZWxmLCBQeU9iamVjdCAqYXJncyk7CiBQeU9iamVjdCAqZ2RicHlfc3RyaW5n X3RvX2FyZ3YgKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncyk7CiBQ eU9iamVjdCAqZ2RicHlfcGFyYW1ldGVyIChQeU9iamVjdCAqc2VsZiwgUHlP YmplY3QgKmFyZ3MpOwogUHlPYmplY3QgKmdkYnB5X3BhcmFtZXRlcl92YWx1 ZSAoZW51bSB2YXJfdHlwZXMgdHlwZSwgdm9pZCAqdmFyKTsKK1B5T2JqZWN0 ICpnZGJweV9jdXJyZW50X2FyY2ggKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVj dCAqYXJncyk7CiBjaGFyICpnZGJweV9wYXJzZV9jb21tYW5kX25hbWUgKGNv bnN0IGNoYXIgKm5hbWUsCiAJCQkJc3RydWN0IGNtZF9saXN0X2VsZW1lbnQg KioqYmFzZV9saXN0LAogCQkJCXN0cnVjdCBjbWRfbGlzdF9lbGVtZW50ICoq c3RhcnRfbGlzdCk7CkBAIC0yNTAsNiArMjUyLDggQEAgUHlPYmplY3QgKnBz cHlfZ2V0X3ByaW50ZXJzIChQeU9iamVjdCAqLCB2b2lkICopOwogUHlPYmpl Y3QgKm9iamZpbGVfdG9fb2JqZmlsZV9vYmplY3QgKHN0cnVjdCBvYmpmaWxl ICopOwogUHlPYmplY3QgKm9iamZweV9nZXRfcHJpbnRlcnMgKFB5T2JqZWN0 ICosIHZvaWQgKik7CiAKK1B5T2JqZWN0ICpnZGJhcmNoX3RvX2FyY2hfb2Jq ZWN0IChzdHJ1Y3QgZ2RiYXJjaCAqZ2RiYXJjaCk7CisKIHRocmVhZF9vYmpl Y3QgKmNyZWF0ZV90aHJlYWRfb2JqZWN0IChzdHJ1Y3QgdGhyZWFkX2luZm8g KnRwKTsKIHRocmVhZF9vYmplY3QgKmZpbmRfdGhyZWFkX29iamVjdCAocHRp ZF90IHB0aWQpOwogUHlPYmplY3QgKmZpbmRfaW5mZXJpb3Jfb2JqZWN0IChp bnQgcGlkKTsKQEAgLTI2Myw2ICsyNjcsNyBAQCBzdHJ1Y3QgdHlwZSAqdHlw ZV9vYmplY3RfdG9fdHlwZSAoUHlPYmplY3QgKm9iaik7CiBzdHJ1Y3Qgc3lt dGFiICpzeW10YWJfb2JqZWN0X3RvX3N5bXRhYiAoUHlPYmplY3QgKm9iaik7 CiBzdHJ1Y3Qgc3ltdGFiX2FuZF9saW5lICpzYWxfb2JqZWN0X3RvX3N5bXRh Yl9hbmRfbGluZSAoUHlPYmplY3QgKm9iaik7CiBzdHJ1Y3QgZnJhbWVfaW5m byAqZnJhbWVfb2JqZWN0X3RvX2ZyYW1lX2luZm8gKFB5T2JqZWN0ICpmcmFt ZV9vYmopOworc3RydWN0IGdkYmFyY2ggKmFyY2hfb2JqZWN0X3RvX2dkYmFy Y2ggKFB5T2JqZWN0ICpvYmopOwogCiB2b2lkIGdkYnB5X2luaXRpYWxpemVf Z2RiX3JlYWRsaW5lICh2b2lkKTsKIHZvaWQgZ2RicHlfaW5pdGlhbGl6ZV9h dXRvX2xvYWQgKHZvaWQpOwpAQCAtMjkzLDYgKzI5OCw3IEBAIHZvaWQgZ2Ri cHlfaW5pdGlhbGl6ZV9jb250aW51ZV9ldmVudCAodm9pZCk7CiB2b2lkIGdk YnB5X2luaXRpYWxpemVfZXhpdGVkX2V2ZW50ICh2b2lkKTsKIHZvaWQgZ2Ri cHlfaW5pdGlhbGl6ZV90aHJlYWRfZXZlbnQgKHZvaWQpOwogdm9pZCBnZGJw eV9pbml0aWFsaXplX25ld19vYmpmaWxlX2V2ZW50ICh2b2lkKTsKK3ZvaWQg Z2RicHlfaW5pdGlhbGl6ZV9hcmNoICh2b2lkKTsKIAogc3RydWN0IGNsZWFu dXAgKm1ha2VfY2xlYW51cF9weV9kZWNyZWYgKFB5T2JqZWN0ICpweSk7CiAK ZGlmZiAtLWdpdCBhL2dkYi9weXRob24vcHl0aG9uLmMgYi9nZGIvcHl0aG9u L3B5dGhvbi5jCmluZGV4IGIwZjcxYTIuLjRmNTBjZjggMTAwNjQ0Ci0tLSBh L2dkYi9weXRob24vcHl0aG9uLmMKKysrIGIvZ2RiL3B5dGhvbi9weXRob24u YwpAQCAtMTYyMCw2ICsxNjIwLDcgQEAgbWVzc2FnZSA9PSBhbiBlcnJvciBt ZXNzYWdlIHdpdGhvdXQgYSBzdGFjayB3aWxsIGJlIHByaW50ZWQuIiksCiAg IGdkYnB5X2luaXRpYWxpemVfZXhpdGVkX2V2ZW50ICgpOwogICBnZGJweV9p bml0aWFsaXplX3RocmVhZF9ldmVudCAoKTsKICAgZ2RicHlfaW5pdGlhbGl6 ZV9uZXdfb2JqZmlsZV9ldmVudCAoKSA7CisgIGdkYnB5X2luaXRpYWxpemVf YXJjaCAoKTsKIAogICBvYnNlcnZlcl9hdHRhY2hfYmVmb3JlX3Byb21wdCAo YmVmb3JlX3Byb21wdF9ob29rKTsKIApAQCAtMTgyMiw2ICsxODIzLDkgQEAg UmV0dXJuIHRoZSBzZWxlY3RlZCB0aHJlYWQgb2JqZWN0LiIgfSwKICAgeyAi c2VsZWN0ZWRfaW5mZXJpb3IiLCBnZGJweV9zZWxlY3RlZF9pbmZlcmlvciwg TUVUSF9OT0FSR1MsCiAgICAgInNlbGVjdGVkX2luZmVyaW9yICgpIC0+IGdk Yi5JbmZlcmlvci5cblwKIFJldHVybiB0aGUgc2VsZWN0ZWQgaW5mZXJpb3Ig b2JqZWN0LiIgfSwKKyAgeyAiY3VycmVudF9hcmNoaXRlY3R1cmUiLCBnZGJw eV9jdXJyZW50X2FyY2gsIE1FVEhfTk9BUkdTLAorICAgICJjdXJyZW50X2Fy Y2hpdGVjdHVyZSAoKSAtPiBnZGIuQXJjaGl0ZWN0dXJlLlxuXAorUmV0dXJu IHRoZSBjdXJyZW50IGFyY2hpdGVjdHVyZSBvYmplY3QuIiB9LAogICB7ICJp bmZlcmlvcnMiLCBnZGJweV9pbmZlcmlvcnMsIE1FVEhfTk9BUkdTLAogICAg ICJpbmZlcmlvcnMgKCkgLT4gKGdkYi5JbmZlcmlvciwgLi4uKS5cblwKIFJl dHVybiBhIHR1cGxlIGNvbnRhaW5pbmcgYWxsIGluZmVyaW9ycy4iIH0sCg== --047d7b3438eafe84ae04d3ccfde8--