From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 2743 invoked by alias); 18 Nov 2004 21:22:38 -0000 Mailing-List: contact gdb-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-owner@sources.redhat.com Received: (qmail 2676 invoked from network); 18 Nov 2004 21:22:21 -0000 Received: from unknown (HELO mx1.redhat.com) (66.187.233.31) by sourceware.org with SMTP; 18 Nov 2004 21:22:21 -0000 Received: from int-mx1.corp.redhat.com (int-mx1.corp.redhat.com [172.16.52.254]) by mx1.redhat.com (8.12.11/8.12.11) with ESMTP id iAILMLna029548 for ; Thu, 18 Nov 2004 16:22:21 -0500 Received: from pobox.corp.redhat.com (pobox.corp.redhat.com [172.16.52.156]) by int-mx1.corp.redhat.com (8.11.6/8.11.6) with ESMTP id iAILMLr11120 for ; Thu, 18 Nov 2004 16:22:21 -0500 Received: from localhost.localdomain (vpn50-61.rdu.redhat.com [172.16.50.61]) by pobox.corp.redhat.com (8.12.8/8.12.8) with ESMTP id iAILMKbs022178 for ; Thu, 18 Nov 2004 16:22:20 -0500 Received: from saguaro (saguaro.lan [192.168.64.2]) by localhost.localdomain (8.12.11/8.12.10) with SMTP id iAILMFsK028761 for ; Thu, 18 Nov 2004 14:22:15 -0700 Date: Thu, 18 Nov 2004 21:45:00 -0000 From: Kevin Buettner To: gdb@sources.redhat.com Subject: Proposal (#2): qGetTLSAddr remote protocol packet Message-Id: <20041118142214.62efed41@saguaro> Organization: Red Hat Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="Multipart=_Thu__18_Nov_2004_14_22_14_-0700__53_AlrN.y8QeiQp" X-SW-Source: 2004-11/txt/msg00190.txt.bz2 This is a multi-part message in MIME format. --Multipart=_Thu__18_Nov_2004_14_22_14_-0700__53_AlrN.y8QeiQp Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-length: 1894 Below is a revised proposal for a new remote protocol packet for fetching a thread local storage address. It is written it in a form (sans markup) that is compatible with the rest of the remote protocol documentation. This proposal incorporates feedback from Andrew Cagney and Jim Blandy. I have also attached patches to gdb and gdbserver which demonstrate an implementation of this proposal. I'm not asking for approval on the paches at this time. I'll repost the patches separately, and suitably modified, to gdb-patches once we get the protocol specification nailed down. Further comments / suggestions? ------------------- qGetTLSAddr:thread-id,offset,load-module-param-1,...,load-module-param-N -- get thread local storage address Fetch the address associated with thread local storage specified by thread-id, offset, and load-module-param-1 thru load-module-param-N. thread-id is the (big endian, hex encoded) thread id associated with the thread for which to fetch the TLS address. offset is the (big endian, hex encoded) offset associated with the thread local variable. (This offset is obtained from the debug information associated with the variable.) load-module-param-1 thru load-module-param-N are (big endian, hex encoded) data which represent an OS/ABI specific encoding of the load module. For example, a GNU/Linux system will pass (as load-module-param-1) the link map address of the shared object associated with the thread local storage under consideration. Other operating environments may require different data, so the precise meaning of these parameters will vary. Reply: XX... Hex encoded (big endian) bytes representing the address of the thread local storage requested. Enn (where nn are hex digits) An error occurred. "" (empty) An empty reply indicates that qGetTLSAddr is not supported by the stub. --Multipart=_Thu__18_Nov_2004_14_22_14_-0700__53_AlrN.y8QeiQp Content-Type: text/plain; name="2004-11-18-gdb-qGetTLSAddr.patch" Content-Disposition: attachment; filename="2004-11-18-gdb-qGetTLSAddr.patch" Content-Transfer-Encoding: base64 Content-length: 10875 CSogZ2RiYXJjaC5zaCAocmVtb3RlX3FHZXRUTFNBZGRyX2xvYWRfbW9kdWxl X3BhcmFtcyk6IE5ldyBtZXRob2QuCgkqIGdkYmFyY2guYywgZ2RiYXJjaC5o OiBSZWdlbmVyYXRlLgoJKiBzb2xpYi1zdnI0LmMsIHNvbGl0LXN2cjQuaAoJ KHN2cjRfbnB0bF9yZW1vdGVfcUdldFRMU0FkZHJfbG9hZF9tb2R1bGVfcGFy YW1zKTogTmV3IGZ1bmN0aW9uLgoJKiBpMzg2LWxpbnV4LXRkZXAuYyAoaTM4 Nl9saW51eF9pbml0X2FiaSk6IFNldAoJcmVtb3RlX3FHZXRUTFNBZGRyX2xv YWRfbW9kdWxlX3BhcmFtcyBtZXRob2QuCgkqIHJlbW90ZS5jIChyZW1vdGVf cHJvdG9jb2xfcUdldFRMU0FkZHIpOiBOZXcgc3RhdGljIGdsb2JhbCB2YXJp YWJsZS4KCShzZXRfcmVtb3RlX3Byb3RvY29sX3FHZXRUTFNBZGRyX3BhY2tl dF9jbWQpCgkoc2hvd19yZW1vdGVfcHJvdG9jb2xfcUdldFRMU0FkZHJfcGFj a2V0X2NtZCkKCShyZW1vdGVfZ2V0X3RocmVhZF9sb2NhbF9hZGRyZXNzKTog TmV3IGZ1bmN0aW9ucy4KCShpbml0X2FsbF9wYWNrZXRfY29uZmlncyk6IElu aXRpYWxpemUgcmVtb3RlX3Byb3RvY29sX3FHZXRUTFNBZGRyCgl2YXJpYWJs ZS4KCShpbml0X3JlbW90ZV9vcHMpOiBJbml0aWFsaXplIGBgdG9fZ2V0X3Ro cmVhZF9sb2NhbF9hZGRyZXNzJycgaW4KCXRhcmdldCB2ZWN0b3IuCgkoc2hv d19yZW1vdGVfY21kKTogQ2FsbCBzaG93X3JlbW90ZV9wcm90b2NvbF9xR2V0 VExTX0FkZHJfcGFja2V0X2NtZCgpLgoJKF9pbml0aWFsaXplX3JlbW90ZSk6 ICBBZGQgc3VwcG9ydCBmb3IgdGhlICJzZXQgcmVtb3RlCglnZXQtdGhyZWFk LWxvY2FsLXN0b3JhZ2UtYWRkcmVzcy1wYWNrZXQnIGFuZCAic2hvdyByZW1v dGUKCWdldC10aHJlYWQtbG9jYWwtYWRkcmVzcy1wYWNrZXQiIGNvbW1hbmRz LgoKSW5kZXg6IGdkYmFyY2guc2gKPT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpS Q1MgZmlsZTogL2N2cy9zcmMvc3JjL2dkYi9nZGJhcmNoLnNoLHYKcmV0cmll dmluZyByZXZpc2lvbiAxLjM1MApkaWZmIC11IC1wIC1yMS4zNTAgZ2RiYXJj aC5zaAotLS0gZ2RiYXJjaC5zaAkzMSBPY3QgMjAwNCAyMToyMTo0MSAtMDAw MAkxLjM1MAorKysgZ2RiYXJjaC5zaAkxOCBOb3YgMjAwNCAyMDo1MToyNiAt MDAwMApAQCAtNTY3LDYgKzU2Nyw5IEBAIHY6PTpDT1JFX0FERFI6ZGVjcl9w Y19hZnRlcl9icmVhazo6OjA6OjoKIHY6PTpDT1JFX0FERFI6ZGVwcmVjYXRl ZF9mdW5jdGlvbl9zdGFydF9vZmZzZXQ6OjowOjo6MAogCiBtOjp2b2lkOnJl bW90ZV90cmFuc2xhdGVfeGZlcl9hZGRyZXNzOnN0cnVjdCByZWdjYWNoZSAq cmVnY2FjaGUsIENPUkVfQUREUiBnZGJfYWRkciwgaW50IGdkYl9sZW4sIENP UkVfQUREUiAqcmVtX2FkZHIsIGludCAqcmVtX2xlbjpyZWdjYWNoZSwgZ2Ri X2FkZHIsIGdkYl9sZW4sIHJlbV9hZGRyLCByZW1fbGVuOjpnZW5lcmljX3Jl bW90ZV90cmFuc2xhdGVfeGZlcl9hZGRyZXNzOjowCisKKyMgRmlsbCBpbiB0 aGUgYWRkaXRpb25hbCBwYXJhbWV0ZXJzIHJlcXVpcmVkIHRvIHJlbW90ZWx5 IGZldGNoIGEgVExTIGFkZHJlc3MKK0Y6PTppbnQ6cmVtb3RlX3FHZXRUTFNB ZGRyX2xvYWRfbW9kdWxlX3BhcmFtczpVTE9OR0VTVCAqKmFyZ3NfcHRyLCBp bnQgKmFyZ2NudF9wdHIsIHN0cnVjdCBvYmpmaWxlICpvYmpmaWxlOmFyZ3Nf cHRyLCBhcmdjbnRfcHRyLCBvYmpmaWxlCiAjCiB2Oj06Q09SRV9BRERSOmZy YW1lX2FyZ3Nfc2tpcDo6OjA6OjowCiBNOjpDT1JFX0FERFI6dW53aW5kX3Bj OnN0cnVjdCBmcmFtZV9pbmZvICpuZXh0X2ZyYW1lOm5leHRfZnJhbWUKSW5k ZXg6IGkzODYtbGludXgtdGRlcC5jCj09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K UkNTIGZpbGU6IC9jdnMvc3JjL3NyYy9nZGIvaTM4Ni1saW51eC10ZGVwLmMs dgpyZXRyaWV2aW5nIHJldmlzaW9uIDEuNDMKZGlmZiAtdSAtcCAtcjEuNDMg aTM4Ni1saW51eC10ZGVwLmMKLS0tIGkzODYtbGludXgtdGRlcC5jCTkgTm92 IDIwMDQgMTQ6Mjg6NDIgLTAwMDAJMS40MworKysgaTM4Ni1saW51eC10ZGVw LmMJMTggTm92IDIwMDQgMjA6NTE6MjYgLTAwMDAKQEAgLTQzNyw2ICs0Mzcs OSBAQCBpMzg2X2xpbnV4X2luaXRfYWJpIChzdHJ1Y3QgZ2RiYXJjaF9pbmZv CiAgIHNldF9nZGJhcmNoX3NraXBfc29saWJfcmVzb2x2ZXIgKGdkYmFyY2gs IGdsaWJjX3NraXBfc29saWJfcmVzb2x2ZXIpOwogCiAgIGR3YXJmMl9mcmFt ZV9zZXRfc2lnbmFsX2ZyYW1lX3AgKGdkYmFyY2gsIGkzODZfbGludXhfZHdh cmZfc2lnbmFsX2ZyYW1lX3ApOworCisgIHNldF9nZGJhcmNoX3JlbW90ZV9x R2V0VExTQWRkcl9sb2FkX21vZHVsZV9wYXJhbXMKKyAgICAoZ2RiYXJjaCwg c3ZyNF9ucHRsX3JlbW90ZV9xR2V0VExTQWRkcl9sb2FkX21vZHVsZV9wYXJh bXMpOwogfQogCiAvKiBQcm92aWRlIGEgcHJvdG90eXBlIHRvIHNpbGVuY2Ug LVdtaXNzaW5nLXByb3RvdHlwZXMuICAqLwpJbmRleDogcmVtb3RlLmMKPT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PQpSQ1MgZmlsZTogL2N2cy9zcmMvc3JjL2dk Yi9yZW1vdGUuYyx2CnJldHJpZXZpbmcgcmV2aXNpb24gMS4xNTMKZGlmZiAt dSAtcCAtcjEuMTUzIHJlbW90ZS5jCi0tLSByZW1vdGUuYwkxMSBOb3YgMjAw NCAxODo1OTozOSAtMDAwMAkxLjE1MworKysgcmVtb3RlLmMJMTggTm92IDIw MDQgMjA6NTE6MjYgLTAwMDAKQEAgLTk2MSw2ICs5NjEsMjMgQEAgc2hvd19y ZW1vdGVfcHJvdG9jb2xfcVBhcnRfYXV4dl9wYWNrZXRfYwogICBzaG93X3Bh Y2tldF9jb25maWdfY21kICgmcmVtb3RlX3Byb3RvY29sX3FQYXJ0X2F1eHYp OwogfQogCisvKiBTaG91bGQgd2UgdHJ5IHRoZSAncUdldFRMU0FkZHInIChH ZXQgVGhyZWFkIExvY2FsIFN0b3JhZ2UgQWRkcmVzcykgcmVxdWVzdD8gKi8K K3N0YXRpYyBzdHJ1Y3QgcGFja2V0X2NvbmZpZyByZW1vdGVfcHJvdG9jb2xf cUdldFRMU0FkZHI7CisKK3N0YXRpYyB2b2lkCitzZXRfcmVtb3RlX3Byb3Rv Y29sX3FHZXRUTFNBZGRyX3BhY2tldF9jbWQgKGNoYXIgKmFyZ3MsIGludCBm cm9tX3R0eSwKKwkJCQkgIHN0cnVjdCBjbWRfbGlzdF9lbGVtZW50ICpjKQor eworICB1cGRhdGVfcGFja2V0X2NvbmZpZyAoJnJlbW90ZV9wcm90b2NvbF9x R2V0VExTQWRkcik7Cit9CisKK3N0YXRpYyB2b2lkCitzaG93X3JlbW90ZV9w cm90b2NvbF9xR2V0VExTQWRkcl9wYWNrZXRfY21kIChjaGFyICphcmdzLCBp bnQgZnJvbV90dHksCisJCQkJCSBzdHJ1Y3QgY21kX2xpc3RfZWxlbWVudCAq YykKK3sKKyAgc2hvd19wYWNrZXRfY29uZmlnX2NtZCAoJnJlbW90ZV9wcm90 b2NvbF9xR2V0VExTQWRkcik7Cit9CisKIHN0YXRpYyBzdHJ1Y3QgcGFja2V0 X2NvbmZpZyByZW1vdGVfcHJvdG9jb2xfcDsKIAogc3RhdGljIHZvaWQKQEAg LTIwNjcsNiArMjA4NCw3IEBAIGluaXRfYWxsX3BhY2tldF9jb25maWdzICh2 b2lkKQogICAgICBkb3dubG9hZGluZy4gKi8KICAgdXBkYXRlX3BhY2tldF9j b25maWcgKCZyZW1vdGVfcHJvdG9jb2xfYmluYXJ5X2Rvd25sb2FkKTsKICAg dXBkYXRlX3BhY2tldF9jb25maWcgKCZyZW1vdGVfcHJvdG9jb2xfcVBhcnRf YXV4dik7CisgIHVwZGF0ZV9wYWNrZXRfY29uZmlnICgmcmVtb3RlX3Byb3Rv Y29sX3FHZXRUTFNBZGRyKTsKIH0KIAogLyogU3ltYm9sIGxvb2stdXAuICov CkBAIC01MjMzLDYgKzUyNTEsNTIgQEAgcmVtb3RlX3BpZF90b19zdHIgKHB0 aWRfdCBwdGlkKQogICByZXR1cm4gYnVmOwogfQogCisvKiBHZXQgdGhlIGFk ZHJlc3Mgb2YgdGhlIHRocmVhZCBsb2NhbCB2YXJpYWJsZSBpbiBPQkpGSUxF IHdoaWNoIGlzCisgICBzdG9yZWQgYXQgT0ZGU0VUIHdpdGhpbiB0aGUgdGhy ZWFkIGxvY2FsIHN0b3JhZ2UgZm9yIHRocmVhZCBQVElELiAgKi8KKworc3Rh dGljIENPUkVfQUREUgorcmVtb3RlX2dldF90aHJlYWRfbG9jYWxfYWRkcmVz cyAocHRpZF90IHB0aWQsIHN0cnVjdCBvYmpmaWxlICpvYmpmaWxlLAorCQkJ CSBDT1JFX0FERFIgb2Zmc2V0KQoreworICBpZiAocmVtb3RlX3Byb3RvY29s X3FHZXRUTFNBZGRyLnN1cHBvcnQgIT0gUEFDS0VUX0RJU0FCTEUKKyAgICAg ICYmIGdkYmFyY2hfcmVtb3RlX3FHZXRUTFNBZGRyX2xvYWRfbW9kdWxlX3Bh cmFtc19wIChjdXJyZW50X2dkYmFyY2gpKQorICAgIHsKKyAgICAgIHN0cnVj dCByZW1vdGVfc3RhdGUgKnJzID0gZ2V0X3JlbW90ZV9zdGF0ZSAoKTsKKyAg ICAgIGNoYXIgKmJ1ZiA9IGFsbG9jYSAocnMtPnJlbW90ZV9wYWNrZXRfc2l6 ZSk7CisgICAgICBjaGFyICpwID0gYnVmOworICAgICAgaW50IHN0YXR1cywg YXJnY250OworICAgICAgVUxPTkdFU1QgKmV4dHJhX2FyZ3M7CisKKyAgICAg IHN0cmNweSAocCwgInFHZXRUTFNBZGRyOiIpOworICAgICAgcCArPSBzdHJs ZW4gKHApOworICAgICAgcCArPSBoZXhudW1zdHIgKHAsIFBJREdFVCAocHRp ZCkpOworICAgICAgKnArKyA9ICcsJzsKKyAgICAgIHAgKz0gaGV4bnVtc3Ry IChwLCBvZmZzZXQpOworICAgICAgc3RhdHVzID0gZ2RiYXJjaF9yZW1vdGVf cUdldFRMU0FkZHJfbG9hZF9tb2R1bGVfcGFyYW1zCisgICAgICAgICAgICAg ICAgIChjdXJyZW50X2dkYmFyY2gsICZleHRyYV9hcmdzLCAmYXJnY250LCBv YmpmaWxlKTsKKyAgICAgIGlmIChzdGF0dXMpCisJeworCSAgaW50IGk7CisJ ICBmb3IgKGkgPSAwOyBpIDwgYXJnY250OyBpKyspCisJICAgIHsKKwkgICAg ICAqcCsrID0gJywnOworCSAgICAgIHAgKz0gaGV4bnVtc3RyIChwLCBleHRy YV9hcmdzW2ldKTsKKwkgICAgfQorCisJICBwdXRwa3QgKGJ1Zik7CisJICBn ZXRwa3QgKGJ1ZiwgcnMtPnJlbW90ZV9wYWNrZXRfc2l6ZSwgMCk7CisJICBp ZiAocGFja2V0X29rIChidWYsICZyZW1vdGVfcHJvdG9jb2xfcUdldFRMU0Fk ZHIpID09IFBBQ0tFVF9PSykKKwkgICAgeworCSAgICAgIFVMT05HRVNUIHJl c3VsdDsKKworCSAgICAgIHVucGFja192YXJsZW5faGV4IChidWYsICZyZXN1 bHQpOworCSAgICAgIHJldHVybiByZXN1bHQ7CisJICAgIH0KKwl9CisgICAg fQorICBlcnJvciAoIkNhbm5vdCBmaW5kIHRocmVhZC1sb2NhbCB2YWx1ZXMg b24gdGhpcyB0YXJnZXQuIik7Cit9CisKIHN0YXRpYyB2b2lkCiBpbml0X3Jl bW90ZV9vcHMgKHZvaWQpCiB7CkBAIC01MjcyLDYgKzUzMzYsNyBAQCBTcGVj aWZ5IHRoZSBzZXJpYWwgZGV2aWNlIGl0IGlzIGNvbm5lY3RlCiAgIHJlbW90 ZV9vcHMudG9fc3RvcCA9IHJlbW90ZV9zdG9wOwogICByZW1vdGVfb3BzLnRv X3hmZXJfcGFydGlhbCA9IHJlbW90ZV94ZmVyX3BhcnRpYWw7CiAgIHJlbW90 ZV9vcHMudG9fcmNtZCA9IHJlbW90ZV9yY21kOworICByZW1vdGVfb3BzLnRv X2dldF90aHJlYWRfbG9jYWxfYWRkcmVzcyA9IHJlbW90ZV9nZXRfdGhyZWFk X2xvY2FsX2FkZHJlc3M7CiAgIHJlbW90ZV9vcHMudG9fc3RyYXR1bSA9IHBy b2Nlc3Nfc3RyYXR1bTsKICAgcmVtb3RlX29wcy50b19oYXNfYWxsX21lbW9y eSA9IDE7CiAgIHJlbW90ZV9vcHMudG9faGFzX21lbW9yeSA9IDE7CkBAIC01 NDQ0LDYgKzU1MDksNyBAQCBzaG93X3JlbW90ZV9jbWQgKGNoYXIgKmFyZ3Ms IGludCBmcm9tX3R0CiAgIHNob3dfcmVtb3RlX3Byb3RvY29sX3Zjb250X3Bh Y2tldF9jbWQgKGFyZ3MsIGZyb21fdHR5LCBOVUxMKTsKICAgc2hvd19yZW1v dGVfcHJvdG9jb2xfYmluYXJ5X2Rvd25sb2FkX2NtZCAoYXJncywgZnJvbV90 dHksIE5VTEwpOwogICBzaG93X3JlbW90ZV9wcm90b2NvbF9xUGFydF9hdXh2 X3BhY2tldF9jbWQgKGFyZ3MsIGZyb21fdHR5LCBOVUxMKTsKKyAgc2hvd19y ZW1vdGVfcHJvdG9jb2xfcUdldFRMU0FkZHJfcGFja2V0X2NtZCAoYXJncywg ZnJvbV90dHksIE5VTEwpOwogfQogCiBzdGF0aWMgdm9pZApAQCAtNTY4NSw2 ICs1NzUxLDEzIEBAIGluIGEgbWVtb3J5IHBhY2tldC5cbiIsCiAJCQkgJnJl bW90ZV9zZXRfY21kbGlzdCwgJnJlbW90ZV9zaG93X2NtZGxpc3QsCiAJCQkg MCk7CiAKKyAgYWRkX3BhY2tldF9jb25maWdfY21kICgmcmVtb3RlX3Byb3Rv Y29sX3FHZXRUTFNBZGRyLAorCQkJICJxR2V0VExTQWRkciIsICJnZXQtdGhy ZWFkLWxvY2FsLXN0b3JhZ2UtYWRkcmVzcyIsCisJCQkgc2V0X3JlbW90ZV9w cm90b2NvbF9xR2V0VExTQWRkcl9wYWNrZXRfY21kLAorCQkJIHNob3dfcmVt b3RlX3Byb3RvY29sX3FHZXRUTFNBZGRyX3BhY2tldF9jbWQsCisJCQkgJnJl bW90ZV9zZXRfY21kbGlzdCwgJnJlbW90ZV9zaG93X2NtZGxpc3QsCisJCQkg MCk7CisKICAgLyogS2VlcCB0aGUgb2xkIGBgc2V0IHJlbW90ZSBaLXBhY2tl dCAuLi4nJyB3b3JraW5nLiAqLwogICBhZGRfc2V0c2hvd19hdXRvX2Jvb2xl YW5fY21kICgiWi1wYWNrZXQiLCBjbGFzc19vYnNjdXJlLAogCQkJCSZyZW1v dGVfWl9wYWNrZXRfZGV0ZWN0LCAiXApJbmRleDogc29saWItc3ZyNC5jCj09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT0KUkNTIGZpbGU6IC9jdnMvc3JjL3NyYy9n ZGIvc29saWItc3ZyNC5jLHYKcmV0cmlldmluZyByZXZpc2lvbiAxLjQ0CmRp ZmYgLXUgLXAgLXIxLjQ0IHNvbGliLXN2cjQuYwotLS0gc29saWItc3ZyNC5j CTkgSnVuIDIwMDQgMjA6MDM6MzMgLTAwMDAJMS40NAorKysgc29saWItc3Zy NC5jCTE4IE5vdiAyMDA0IDIwOjUxOjI2IC0wMDAwCkBAIC0xNDQzLDYgKzE0 NDMsMjcgQEAgc3ZyNF9scDY0X2ZldGNoX2xpbmtfbWFwX29mZnNldHMgKHZv aWQpCiAgIHJldHVybiBsbXA7CiB9CiAMCitpbnQKK3N2cjRfbnB0bF9yZW1v dGVfcUdldFRMU0FkZHJfbG9hZF9tb2R1bGVfcGFyYW1zIChVTE9OR0VTVCAq KmFyZ3NfcHRyLAorCQkJCQkgICAgICAgICBpbnQgKmFyZ2NudF9wdHIsCisJ CQkJCSAgICAgICAgIHN0cnVjdCBvYmpmaWxlICpvYmpmaWxlKQoreworICBD T1JFX0FERFIgbG07CisKKyAgbG0gPSBzdnI0X2ZldGNoX29iamZpbGVfbGlu a19tYXAgKG9iamZpbGUpOworCisgIGlmICghbG0pCisgICAgcmV0dXJuIDA7 CisgIGVsc2UKKyAgICB7CisgICAgICBzdGF0aWMgVUxPTkdFU1QgYXJnc1sx XTsKKyAgICAgIGFyZ3NbMF0gPSBsbTsKKyAgICAgICphcmdzX3B0ciA9IGFy Z3M7CisgICAgICAqYXJnY250X3B0ciA9IDE7CisgICAgICByZXR1cm4gMTsK KyAgICB9Cit9CisMCiAKIHN0YXRpYyBzdHJ1Y3QgdGFyZ2V0X3NvX29wcyBz dnI0X3NvX29wczsKIApJbmRleDogc29saWItc3ZyNC5oCj09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT0KUkNTIGZpbGU6IC9jdnMvc3JjL3NyYy9nZGIvc29saWIt c3ZyNC5oLHYKcmV0cmlldmluZyByZXZpc2lvbiAxLjgKZGlmZiAtdSAtcCAt cjEuOCBzb2xpYi1zdnI0LmgKLS0tIHNvbGliLXN2cjQuaAkxMiBNYXIgMjAw NCAyMjowMTozOSAtMDAwMAkxLjgKKysrIHNvbGliLXN2cjQuaAkxOCBOb3Yg MjAwNCAyMDo1MToyNiAtMDAwMApAQCAtOTIsNCArOTIsOCBAQCBleHRlcm4g c3RydWN0IGxpbmtfbWFwX29mZnNldHMgKigqbGVnYWN5CiBleHRlcm4gc3Ry dWN0IGxpbmtfbWFwX29mZnNldHMgKnN2cjRfaWxwMzJfZmV0Y2hfbGlua19t YXBfb2Zmc2V0cyAodm9pZCk7CiBleHRlcm4gc3RydWN0IGxpbmtfbWFwX29m ZnNldHMgKnN2cjRfbHA2NF9mZXRjaF9saW5rX21hcF9vZmZzZXRzICh2b2lk KTsKIAorLyogUmV0dXJuIE9TL0FCSSBzcGVjaWZpYyBwYXJhbWV0ZXJzIG5l ZWRlZCBmb3IgcUdldFRMU0FkZHIgcGFja2V0LiAgKi8KK2V4dGVybiBpbnQg c3ZyNF9ucHRsX3JlbW90ZV9xR2V0VExTQWRkcl9sb2FkX21vZHVsZV9wYXJh bXMKKyAgKFVMT05HRVNUICoqYXJnc19wdHIsIGludCAqYXJnY250X3B0ciwg c3RydWN0IG9iamZpbGUgKm9iamZpbGUpOworCiAjZW5kaWYgLyogc29saWIt c3ZyNC5oICovCg== --Multipart=_Thu__18_Nov_2004_14_22_14_-0700__53_AlrN.y8QeiQp Content-Type: text/plain; name="2004-11-18-gdbserver-qGetTLSAddr.patch" Content-Disposition: attachment; filename="2004-11-18-gdbserver-qGetTLSAddr.patch" Content-Transfer-Encoding: base64 Content-length: 7943 CSogTWFrZWZpbGUuaW4gKHNlcnZlci5vKTogQ2F1c2UgVVNFX1RIUkVBRF9E QiB0byBiZSBkZWZpbmVkIGFzCglhcHByb3ByaWF0ZS4KCSogcmVtb3RlLXV0 aWxzLmMgKGRlY29kZV9xR2V0VExTQWRkcl9hcmdzLCBlbmNvZGVfcUdldFRM U0FkZHJfcmVzdWx0KToKCU5ldyBmdW5jdGlvbnMuCgkqIHNlcnZlci5jICho YW5kbGVfcXVlcnkpOiBBZGQgc3VwcG9ydCBmb3IgcUdldFRMU0FkZHIgcGFj a2V0LgoJKiBzZXJ2ZXIuaCAoZGVjb2RlX3FHZXRUTFNBZGRyX2FyZ3MsIGVu Y29kZV9xR2V0VExTQWRkcl9yZXN1bHQpCgkoZ2V0X3RocmVhZF9sb2NhbF9h ZGRyKTogRGVjbGFyZS4KCSogdGhyZWFkLWRiLmMgKGdldF90aHJlYWRfbG9j YWxfYWRkcik6IE5ldyBmdW5jdGlvbi4KCkluZGV4OiBNYWtlZmlsZS5pbgo9 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09ClJDUyBmaWxlOiAvY3ZzL3NyYy9zcmMv Z2RiL2dkYnNlcnZlci9NYWtlZmlsZS5pbix2CnJldHJpZXZpbmcgcmV2aXNp b24gMS4yNwpkaWZmIC11IC1wIC1yMS4yNyBNYWtlZmlsZS5pbgotLS0gTWFr ZWZpbGUuaW4JMTYgT2N0IDIwMDQgMTY6MTg6NTQgLTAwMDAJMS4yNworKysg TWFrZWZpbGUuaW4JMTggTm92IDIwMDQgMjA6NDU6NDkgLTAwMDAKQEAgLTI0 Niw2ICsyNDYsOCBAQCBwcm9jLXNlcnZpY2UubzogcHJvYy1zZXJ2aWNlLmMg JChzZXJ2ZXJfCiByZWdjYWNoZS5vOiByZWdjYWNoZS5jICQoc2VydmVyX2gp ICQocmVnZGVmX2gpCiByZW1vdGUtdXRpbHMubzogcmVtb3RlLXV0aWxzLmMg dGVybWluYWwuaCAkKHNlcnZlcl9oKQogc2VydmVyLm86IHNlcnZlci5jICQo c2VydmVyX2gpCisJJChDQykgLWMgJChDUFBGTEFHUykgJChJTlRFUk5BTF9D RkxBR1MpICQ8IEBVU0VfVEhSRUFEX0RCQAorCiB0YXJnZXQubzogdGFyZ2V0 LmMgJChzZXJ2ZXJfaCkKIHRocmVhZC1kYi5vOiB0aHJlYWQtZGIuYyAkKHNl cnZlcl9oKSAkKGdkYl9wcm9jX3NlcnZpY2VfaCkKIHV0aWxzLm86IHV0aWxz LmMgJChzZXJ2ZXJfaCkKSW5kZXg6IHJlbW90ZS11dGlscy5jCj09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT0KUkNTIGZpbGU6IC9jdnMvc3JjL3NyYy9nZGIvZ2Ri c2VydmVyL3JlbW90ZS11dGlscy5jLHYKcmV0cmlldmluZyByZXZpc2lvbiAx LjIyCmRpZmYgLXUgLXAgLXIxLjIyIHJlbW90ZS11dGlscy5jCi0tLSByZW1v dGUtdXRpbHMuYwkxNiBPY3QgMjAwNCAxNzo0MjowMCAtMDAwMAkxLjIyCisr KyByZW1vdGUtdXRpbHMuYwkxOCBOb3YgMjAwNCAyMDo0NTo0OSAtMDAwMApA QCAtNzIxLDYgKzcyMSw2MCBAQCBkZWNvZGVfTV9wYWNrZXQgKGNoYXIgKmZy b20sIENPUkVfQUREUiAqCiAgIGNvbnZlcnRfYXNjaWlfdG9faW50ICgmZnJv bVtpKytdLCB0bywgKmxlbl9wdHIpOwogfQogCitpbnQKK2RlY29kZV9xR2V0 VExTQWRkcl9hcmdzIChjaGFyICpidWYsIHVuc2lnbmVkIGxvbmcgKnRocmVh ZF9pZF9wdHIsCisgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQg bG9uZyAqb2Zmc2V0X3B0ciwgQ09SRV9BRERSICpsbV9wdHIpCit7CisgIGlu dCBpID0gMDsKKyAgY2hhciBjaDsKKworICAqdGhyZWFkX2lkX3B0ciA9IDA7 CisgICpvZmZzZXRfcHRyID0gMDsKKyAgKmxtX3B0ciA9IDA7CisKKyAgd2hp bGUgKChjaCA9IGJ1ZltpKytdKSAmJiBjaCAhPSAnLCcpCisgICAgeworICAg ICAgKnRocmVhZF9pZF9wdHIgPSAqdGhyZWFkX2lkX3B0ciA8PCA0OworICAg ICAgKnRocmVhZF9pZF9wdHIgfD0gZnJvbWhleCAoY2gpICYgMHgwZjsKKyAg ICB9CisKKyAgaWYgKGNoID09IDApCisgICAgcmV0dXJuIDA7CisKKyAgd2hp bGUgKChjaCA9IGJ1ZltpKytdKSAmJiBjaCAhPSAnLCcpCisgICAgeworICAg ICAgKm9mZnNldF9wdHIgPSAqb2Zmc2V0X3B0ciA8PCA0OworICAgICAgKm9m ZnNldF9wdHIgfD0gZnJvbWhleCAoY2gpICYgMHgwZjsKKyAgICB9CisKKyAg aWYgKGNoID09IDApCisgICAgcmV0dXJuIDA7CisKKyAgd2hpbGUgKChjaCA9 IGJ1ZltpKytdKSkKKyAgICB7CisgICAgICAqbG1fcHRyID0gKmxtX3B0ciA8 PCA0OworICAgICAgKmxtX3B0ciB8PSBmcm9taGV4IChjaCkgJiAweDBmOwor ICAgIH0KKworICBpZiAoY2ggPT0gMCkKKyAgICByZXR1cm4gMTsKKyAgZWxz ZQorICAgIHJldHVybiAwOworfQorCitjaGFyICoKK2VuY29kZV9xR2V0VExT QWRkcl9yZXN1bHQgKGNoYXIgKmJ1ZiwgQ09SRV9BRERSIGFkZHIpCit7Cisg IGludCBzaGZ0ID0gc2l6ZW9mIChDT1JFX0FERFIpICogOCAtIDQ7CisgIHdo aWxlIChzaGZ0ID49IDApCisgICAgeworICAgICAgKmJ1ZisrID0gdG9oZXgg KChhZGRyID4+IHNoZnQpICYgMHgwZik7CisgICAgICBzaGZ0IC09IDQ7Cisg ICAgfQorICAqYnVmID0gMDsKKyAgcmV0dXJuIGJ1ZjsKK30KKwogLyogQXNr IEdEQiBmb3IgdGhlIGFkZHJlc3Mgb2YgTkFNRSwgYW5kIHJldHVybiBpdCBp biBBRERSUCBpZiBmb3VuZC4KICAgIFJldHVybnMgMSBpZiB0aGUgc3ltYm9s IGlzIGZvdW5kLCAwIGlmIGl0IGlzIG5vdCwgLTEgb24gZXJyb3IuICAqLwog CkluZGV4OiBzZXJ2ZXIuYwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ClJDUyBm aWxlOiAvY3ZzL3NyYy9zcmMvZ2RiL2dkYnNlcnZlci9zZXJ2ZXIuYyx2CnJl dHJpZXZpbmcgcmV2aXNpb24gMS4yMgpkaWZmIC11IC1wIC1yMS4yMiBzZXJ2 ZXIuYwotLS0gc2VydmVyLmMJNSBNYXIgMjAwNCAwMzo0NDoyNyAtMDAwMAkx LjIyCisrKyBzZXJ2ZXIuYwkxOCBOb3YgMjAwNCAyMDo0NTo0OSAtMDAwMApA QCAtMTQyLDYgKzE0MiwzNyBAQCBoYW5kbGVfcXVlcnkgKGNoYXIgKm93bl9i dWYpCiAgICAgICByZXR1cm47CiAgICAgfQogCisjaWZkZWYgVVNFX1RIUkVB RF9EQgorICBpZiAoc3RybmNtcCAoInFHZXRUTFNBZGRyOiIsIG93bl9idWYs IDEyKSA9PSAwKQorICAgIHsKKyAgICAgIHVuc2lnbmVkIGxvbmcgdGhyZWFk X2lkLCBvZmZzZXQ7CisgICAgICBDT1JFX0FERFIgbGlua19tYXBfYWRkciwg dGxzX2FkZHI7CisgICAgICBpbnQgc3RhdHVzOworCisgICAgICBzdGF0dXMg PSBkZWNvZGVfcUdldFRMU0FkZHJfYXJncyAob3duX2J1ZiArIDEyLCAmdGhy ZWFkX2lkLCAmb2Zmc2V0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICZsaW5rX21hcF9hZGRyKTsKKyAgICAgIGlmICghc3Rh dHVzKQorCXsKKwkgIC8qIE1hbGZvcm1lZCBxR2V0VExTQWRkciBwYWNrZXQu ICAqLworCSAgd3JpdGVfZW5uIChvd25fYnVmKTsKKwkgIHJldHVybjsKKwl9 CisKKyAgICAgIHN0YXR1cyA9IGdldF90aHJlYWRfbG9jYWxfYWRkciAodGhy ZWFkX2lkLCBvZmZzZXQsIGxpbmtfbWFwX2FkZHIsCisgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICZ0bHNfYWRkcik7CisKKyAgICAg IGlmICghc3RhdHVzKQorCXsKKwkgIC8qIFVuYWJsZSB0byBvYnRhaW4gdGhy ZWFkIGxvY2FsIGFkZHJlc3MuICAqLworCSAgd3JpdGVfZW5uIChvd25fYnVm KTsKKwkgIHJldHVybjsKKwl9CisKKyAgICAgIGVuY29kZV9xR2V0VExTQWRk cl9yZXN1bHQgKG93bl9idWYsIHRsc19hZGRyKTsKKyAgICAgIHJldHVybjsK KyAgICB9CisjZW5kaWYKKwogICAvKiBPdGhlcndpc2Ugd2UgZGlkbid0IGtu b3cgd2hhdCBwYWNrZXQgaXQgd2FzLiAgU2F5IHdlIGRpZG4ndAogICAgICB1 bmRlcnN0YW5kIGl0LiAgKi8KICAgb3duX2J1ZlswXSA9IDA7CkluZGV4OiBz ZXJ2ZXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ClJDUyBmaWxlOiAvY3Zz L3NyYy9zcmMvZ2RiL2dkYnNlcnZlci9zZXJ2ZXIuaCx2CnJldHJpZXZpbmcg cmV2aXNpb24gMS4xNQpkaWZmIC11IC1wIC1yMS4xNSBzZXJ2ZXIuaAotLS0g c2VydmVyLmgJMTIgTWFyIDIwMDQgMjA6NTE6MjEgLTAwMDAJMS4xNQorKysg c2VydmVyLmgJMTggTm92IDIwMDQgMjA6NDU6NDkgLTAwMDAKQEAgLTE0Nyw2 ICsxNDcsMTAgQEAgdm9pZCBkZWNvZGVfbV9wYWNrZXQgKGNoYXIgKmZyb20s IENPUkVfQQogdm9pZCBkZWNvZGVfTV9wYWNrZXQgKGNoYXIgKmZyb20sIENP UkVfQUREUiAqIG1lbV9hZGRyX3B0ciwKIAkJICAgICAgdW5zaWduZWQgaW50 ICpsZW5fcHRyLCBjaGFyICp0byk7CiAKK2ludCBkZWNvZGVfcUdldFRMU0Fk ZHJfYXJncyAoY2hhciAqYnVmLCB1bnNpZ25lZCBsb25nICp0aHJlYWRfaWRf cHRyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBs b25nICpvZmZzZXRfcHRyLCBDT1JFX0FERFIgKmxtX3B0cik7CitjaGFyICog ZW5jb2RlX3FHZXRUTFNBZGRyX3Jlc3VsdCAoY2hhciAqYnVmLCBDT1JFX0FE RFIgYWRkcik7CisKIGludCB1bmhleGlmeSAoY2hhciAqYmluLCBjb25zdCBj aGFyICpoZXgsIGludCBjb3VudCk7CiBpbnQgaGV4aWZ5IChjaGFyICpoZXgs IGNvbnN0IGNoYXIgKmJpbiwgaW50IGNvdW50KTsKIApAQCAtMTc4LDQgKzE4 Miw4IEBAIHZvaWQgaW5pdF9yZWdpc3RlcnMgKHZvaWQpOwogCQkgPyAocmVn aXN0ZXJzX2xlbmd0aCAoKSArIDMyKSBcCiAJCSA6IDIwMDApCiAKKy8qIEZ1 bmN0aW9ucyBmcm9tIHRocmVhZC1kYi5jLiAgKi8KKworaW50IGdldF90aHJl YWRfbG9jYWxfYWRkciAodW5zaWduZWQgbG9uZyB0aHJlYWRfaWQsIHVuc2ln bmVkIGxvbmcgb2Zmc2V0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAg Q09SRV9BRERSIGxpbmtfbWFwX2FkZHIsIENPUkVfQUREUiAqdGxzX2FkZHJf cHRyKTsKICNlbmRpZiAvKiBTRVJWRVJfSCAqLwpJbmRleDogdGhyZWFkLWRi LmMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PQpSQ1MgZmlsZTogL2N2cy9zcmMv c3JjL2dkYi9nZGJzZXJ2ZXIvdGhyZWFkLWRiLmMsdgpyZXRyaWV2aW5nIHJl dmlzaW9uIDEuMgpkaWZmIC11IC1wIC1yMS4yIHRocmVhZC1kYi5jCi0tLSB0 aHJlYWQtZGIuYwkxNiBPY3QgMjAwNCAxNzo0MjowMCAtMDAwMAkxLjIKKysr IHRocmVhZC1kYi5jCTE4IE5vdiAyMDA0IDIwOjQ1OjQ5IC0wMDAwCkBAIC0z NjYsMyArMzY2LDI3IEBAIHRocmVhZF9kYl9pbml0ICgpCiAKICAgcmV0dXJu IDA7CiB9CisKK2ludAorZ2V0X3RocmVhZF9sb2NhbF9hZGRyICh1bnNpZ25l ZCBsb25nIHRocmVhZF9pZCwgdW5zaWduZWQgbG9uZyBvZmZzZXQsCisgICAg ICAgICAgICAgICAgICAgICAgIENPUkVfQUREUiBsaW5rX21hcF9hZGRyLCBD T1JFX0FERFIgKnRsc19hZGRyX3B0cikKK3sKKyAgdGRfdGhyaGFuZGxlX3Qg dGhyZWFkX2hhbmRsZTsKKyAgdGRfZXJyX2Ugc3RhdHVzOworICB2b2lkICph ZGRyOworCisgIHN0YXR1cyA9IHRkX3RhX21hcF9pZDJ0aHIgKHRocmVhZF9h Z2VudCwgKHRocmVhZF90KSB0aHJlYWRfaWQsCisgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICZ0aHJlYWRfaGFuZGxlKTsKKworICBpZiAoc3RhdHVz ICE9IFREX09LKQorICAgIHJldHVybiAwOworCisgIHN0YXR1cyA9IHRkX3Ro cl90bHNfZ2V0X2FkZHIgKCZ0aHJlYWRfaGFuZGxlLCAodm9pZCAqKSAobG9u ZykgbGlua19tYXBfYWRkciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgKHNpemVfdCkgb2Zmc2V0LCAmYWRkcik7CisgICp0bHNfYWRkcl9w dHIgPSAoQ09SRV9BRERSKSAobG9uZykgYWRkcjsKKworICBpZiAoc3RhdHVz ICE9IFREX09LKQorICAgIHJldHVybiAwOworICBlbHNlCisgICAgcmV0dXJu IDE7Cit9Cg== --Multipart=_Thu__18_Nov_2004_14_22_14_-0700__53_AlrN.y8QeiQp--