From: Max Muermann Date: 2006-07-07T09:28:55+09:00 Subject: Re: debugging proposal ------_=_NextPart_001_01C6A15C.F00D9D08 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable > Excellent! >=20 > Attached is a fix for getting the correct binding. Now it is attched. I always do that... Max ------_=_NextPart_001_01C6A15C.F00D9D08 Content-Type: application/octet-stream; name="rdebug.c" Content-Transfer-Encoding: base64 Content-Description: rdebug.c Content-Disposition: attachment; filename="rdebug.c" DQojaW5jbHVkZSA8cnVieS5oPg0KI2luY2x1ZGUgPG5vZGUuaD4NCiNpbmNsdWRlIDxlbnYuaD4N Cg0Kc3RhdGljIFZBTFVFIGJyZWFrcG9pbnRfZnVuYyA9IDA7DQpzdGF0aWMgaW50IGRlYnVnZ2lu ZyA9IDE7DQpzdGF0aWMgdm9pZCBjYWxsX2JyZWFrcG9pbnRfZnVuYyhyYl9ldmVudF90LE5PREUq LFZBTFVFLElELFZBTFVFKTsNCnN0YXRpYyBpbnQgYnJlYWtwb2ludF9ldmVudF9ob29rX3NldCA9 IDA7DQoNCnR5cGVkZWYgc3RydWN0IGJyZWFrcG9pbnQgew0KICAgIGNoYXIqIGZpbGU7DQogICAg aW50IGxpbmU7DQogICAgc3RydWN0IGJyZWFrcG9pbnQgKm5leHQ7DQp9IHJiX2JyZWFrcG9pbnRf dDsNCg0Kc3RhdGljIHJiX2JyZWFrcG9pbnRfdCAqcmJfYnJlYWtwb2ludHM7DQoNCg0KLyoNCiAq IE1pc3Npbmcgc3R1ZmYsIGRlZmluZWQgaW4gZXZhbC5jIGFuZCBqdXN0IGNvcGllZCBvciBhZGFw dGVkIA0KICoNCiAqLw0KDQpzdGF0aWMgVkFMVUUNCnJiX29ial9pc19wcm9jKHByb2MpDQogICAg VkFMVUUgcHJvYzsNCnsNCiAgICAvKiBubyBhY2Nlc3MgdG8gYmxrX2ZyZWUgOi18ICovDQogICAg LyoNCiAgICAgaWYgKFRZUEUocHJvYykgPT0gVF9EQVRBICYmIFJEQVRBKHByb2MpLT5kZnJlZSA9 PSAoUlVCWV9EQVRBX0ZVTkMpYmxrX2ZyZWUpIHsNCglyZXR1cm4gUXRydWU7DQogICAgfSANCiAg ICAqLw0KICAgIHJldHVybiByYl9vYmpfaXNfa2luZF9vZihwcm9jLCByYl9jUHJvYyk7DQp9DQoN Ci8qDQogKiBhY3R1YWwgY29kZQ0KICovIA0KDQpWQUxVRQ0KYWRkX2JyZWFrcG9pbnQoIGludCBh cmdjLCBWQUxVRSAqYXJndiwgVkFMVUUgc2VsZiApDQp7CQ0KICAgIHJiX2JyZWFrcG9pbnRfdCAq YnA7DQoNCiAgaWYgKDAgPT0gYXJnYykNCiAgICAgIHJiX3JhaXNlKHJiX2VBcmdFcnJvciwgImF0 IGxlYXN0IG9uZSBhcmd1bWVudCByZXF1aXJlZCIpOw0KDQogIGJwID0gQUxMT0MocmJfYnJlYWtw b2ludF90KTsNCiAgaWYgKDE9PWFyZ2MpIHsNCiAgICAgIGJwLT5maWxlID0gcnVieV9zb3VyY2Vm aWxlOw0KICAgICAgYnAtPmxpbmUgPSBGSVgySU5UKGFyZ3ZbMF0pOw0KICB9IGVsc2Ugew0KICAg ICAgYnAtPmZpbGUgPSBTdHJpbmdWYWx1ZVB0cihhcmd2WzBdKTsNCiAgICAgIGJwLT5saW5lID0g RklYMklOVChhcmd2WzFdKTsNCiAgfQ0KDQogIGJwLT5uZXh0ID0gcmJfYnJlYWtwb2ludHM7DQog IHJiX2JyZWFrcG9pbnRzID0gYnA7DQoNCiAgcHJpbnRmKCJhYnA6ICVzOiVpXG4iLGJwLT5maWxl LCBicC0+bGluZSk7DQoNCiAgcmV0dXJuIFFuaWw7DQp9DQoNClZBTFVFDQpyZW1vdmVfYnJlYWtw b2ludCggVkFMVUUgc2VsZiwgVkFMVUUgZmlsZSwgVkFMVUUgbGluZSApDQp7CQ0KICAgIGNoYXIg KiBjZmlsZTsNCiAgICBpbnQgaWxpbmU7DQogICAgcmJfYnJlYWtwb2ludF90ICpwcmV2Ow0KICAg IHJiX2JyZWFrcG9pbnRfdCAqYnA7DQoNCiAgaWYgKCFyYl9icmVha3BvaW50cykNCiAgICByZXR1 cm4gUWZhbHNlOw0KDQogIGNmaWxlID0gU1RSMkNTVFIoZmlsZSk7DQogIGlsaW5lID0gRklYMklO VChsaW5lKTsNCg0KICBwcmV2ID0gcmJfYnJlYWtwb2ludHM7DQoNCiAgLy8gdHJpdmlhbCBjYXNl DQogIGlmIChpc19icmVha3BvaW50KCBjZmlsZSwgaWxpbmUsIHByZXYpKSB7DQogICAgICByYl9i cmVha3BvaW50cyA9IHByZXYtPm5leHQ7DQogICAgICBmcmVlKHByZXYpOw0KICAgICAgcmV0dXJu IFF0cnVlOw0KICB9DQoNCiAgYnAgPSBwcmV2LT5uZXh0Ow0KDQogIHdoaWxlIChicCkgew0KICAg ICAgaWYgKGlzX2JyZWFrcG9pbnQoIGNmaWxlLCBpbGluZSwgYnApKSB7DQogICAgICAgICAgcHJl di0+bmV4dCA9IGJwLT5uZXh0Ow0KICAgICAgICAgIGZyZWUoYnApOw0KICAgICAgICAgIHJldHVy biBRdHJ1ZTsNCiAgICAgIH0NCiAgICAgIHByZXYgPSBicDsNCiAgICAgIGJwID0gcHJldi0+bmV4 dDsNCiAgfQ0KICAvLyBubyBtYXRjaGluZyBicmVha3BvaW50IGZvdW5kDQogIHJldHVybiBRZmFs c2U7DQp9DQoNClZBTFVFDQpicmVha3BvaW50cygpDQp7DQogIFZBTFVFIGJwcyA9IHJiX2FyeV9u ZXcoKTsNCgkNCiAgcmJfYnJlYWtwb2ludF90ICpicCA9IHJiX2JyZWFrcG9pbnRzOw0KDQogIHdo aWxlKGJwKSB7DQogICAgICBWQUxVRSBicGFyciA9IHJiX2FyeV9uZXcoKTsNCiAgICAgIHJiX2Fy eV9wdXNoKCBicGFyciwgcmJfc3RyX25ldzIoYnAtPmZpbGUpKTsNCiAgICAgIHJiX2FyeV9wdXNo KCBicGFyciwgSU5UMkZJWChicC0+bGluZSkpOwkNCiAgICAgIHJiX2FyeV9wdXNoKGJwcywgYnBh cnIpOw0KICAgICAgYnAgPSBicC0+bmV4dDsNCiAgfQ0KDQogIHJldHVybiBicHM7DQp9DQoNCmlu dA0KaXNfYnJlYWtwb2ludCggY2hhciAqZmlsZSwgaW50IGxpbmUsIHJiX2JyZWFrcG9pbnRfdCAq YnApDQp7DQogIHJldHVybiAoIGxpbmUgPT0gYnAtPmxpbmUgJiYgMCA9PSBzdHJjbXAoIGJwLT5m aWxlLCBmaWxlKSk7DQp9DQoNCnN0YXRpYyBWQUxVRQ0Kc2V0X2JyZWFrcG9pbnRfZnVuYyhWQUxV RSBvYmosIFZBTFVFIGJyZWFrcG9pbnQpDQp7DQogICAgLyogcmJfZXZlbnRfaG9va190ICpob29r OyAqLw0KDQogICAgcmJfc2VjdXJlKDQpOw0KICAgIGlmIChOSUxfUChicmVha3BvaW50KSkgew0K CS8qIHRyYWNlX2Z1bmMgPSAwOyAqLw0KCXJiX3JlbW92ZV9ldmVudF9ob29rKGNhbGxfYnJlYWtw b2ludF9mdW5jKTsNCglyZXR1cm4gUW5pbDsNCiAgICB9DQogICAgaWYgKCFyYl9vYmpfaXNfcHJv YyhicmVha3BvaW50KSkgew0KCXJiX3JhaXNlKHJiX2VUeXBlRXJyb3IsICJicmVha3BvaW50X2Z1 bmMgbmVlZHMgdG8gYmUgUHJvYyIpOw0KICAgIH0NCiAgICBicmVha3BvaW50X2Z1bmMgPSBicmVh a3BvaW50Ow0KDQogICAgaWYgKGJyZWFrcG9pbnRfZXZlbnRfaG9va19zZXQpDQogICAgICAgIHJl dHVybjsNCg0KICAgIHJiX2FkZF9ldmVudF9ob29rKGNhbGxfYnJlYWtwb2ludF9mdW5jLCBSVUJZ X0VWRU5UX0xJTkUpOw0KICAgIGJyZWFrcG9pbnRfZXZlbnRfaG9va19zZXQgPSAxOw0KICAgIHJl dHVybiBicmVha3BvaW50Ow0KfQ0KDQoNCnN0YXRpYyBWQUxVRQ0KZW5hYmxlX2RlYnVnZ2luZyhW QUxVRSBhcmdzKQ0Kew0KICBkZWJ1Z2dpbmcgPSAxOw0KICByZXR1cm4gUW5pbDsNCn0NCg0KDQpz dGF0aWMgVkFMVUUNCmRvX2NhbGxfYnJlYWtwb2ludF9mdW5jKFZBTFVFIGFyZ3MpDQp7DQogIHJl dHVybiByYl9mdW5jYWxsMihicmVha3BvaW50X2Z1bmMsIHJiX2ludGVybigiY2FsbCIpLCA2LCAo VkFMVUUgKilhcmdzKTsNCn0NCg0KDQpzdGF0aWMgdm9pZA0KY2FsbF9icmVha3BvaW50X2Z1bmMo cmJfZXZlbnRfdCBldmVudCwgTk9ERSAqbm9kZSwgVkFMVUUgc2VsZiwgSUQgaWQsIFZBTFVFIGts YXNzIC8qIE9LICovKQ0Kew0KICBWQUxVRSBhcmdzWzZdOw0KICB2b2lkICphcmdzMlsyXTsNCiAg Y29uc3QgY2hhciAqZXZlbnRfbmFtZTsNCiAgY2hhciAqc291cmNlZmlsZSA9IE5VTEw7DQogIGlu dCBzb3VyY2VsaW5lID0gMDsNCiAgcmJfYnJlYWtwb2ludF90ICpicDsNCiAgVkFMVUUga3JubDsN Cg0KICBpZiAoZGVidWdnaW5nID09IDApDQogICAgICByZXR1cm47DQoJDQogIGlmIChldmVudCAh PSBSVUJZX0VWRU5UX0xJTkUpDQogICAgICByZXR1cm47DQoNCiAgaWYgKCFicmVha3BvaW50X2Z1 bmMpIHJldHVybjsNCiAgaWYgKGlkID09IElEX0FMTE9DQVRPUikgcmV0dXJuOw0KICBpZiAoIW5v ZGUgJiYgcnVieV9zb3VyY2VsaW5lID09IDApIHJldHVybjsNCg0KICBpZihub2RlKSB7DQogICAg ICBzb3VyY2VsaW5lID0gbmRfbGluZShub2RlKTsNCiAgICAgIHNvdXJjZWZpbGUgPSBub2RlLT5u ZF9maWxlOw0KICB9DQoNCiAgcHJpbnRmKCJicD86JXM6JWlcbiIsIHNvdXJjZWZpbGUsIHNvdXJj ZWxpbmUpOw0KDQogIC8vIGNoZWNrIHdldGhlciB3ZSBoYXZlIGEgYnJlYWtwb2ludCBmb3IgdGhp cyBmaWxlL2xpbmUNCiAgYnAgPSByYl9icmVha3BvaW50czsNCiAgDQogIHdoaWxlIChicCkgew0K ICAgICAgaWYgKHNvdXJjZWxpbmUgPT0gYnAtPmxpbmUgJiYgMD09c3RyY21wKHNvdXJjZWZpbGUs IGJwLT5maWxlKSkNCiAgICAgICAgICBicmVhazsNCiAgICAgIGJwID0gYnAtPm5leHQ7DQogIH0N Cg0KICBpZiAoIWJwKQ0KICAgICAgcmV0dXJuOw0KDQogIGlmIChrbGFzcykgew0KICAgICAgaWYg KFRZUEUoa2xhc3MpID09IFRfSUNMQVNTKSB7DQogICAgICAgICAga2xhc3MgPSBSQkFTSUMoa2xh c3MpLT5rbGFzczsNCiAgICAgIH0NCiAgICAgIGVsc2UgaWYgKEZMX1RFU1Qoa2xhc3MsIEZMX1NJ TkdMRVRPTikpIHsNCiAgICAgICAgICBrbGFzcyA9IHJiX2l2X2dldChrbGFzcywgIl9fYXR0YWNo ZWRfXyIpOw0KICAgICAgfQ0KICB9DQoNCiAgLy8gdHVybiBicmVha3BvaW50cyBvZmYgd2hpbGUg Y2FsbGluZyBicmVha3BvaW50IGZ1bmN0aW9uDQogIGRlYnVnZ2luZyA9IDA7DQoNCiAgYXJnc1sw XSA9IHJiX3N0cl9uZXcyKCJMSU5FIik7DQogIGFyZ3NbMV0gPSByYl9zdHJfbmV3Mihzb3VyY2Vm aWxlID8gc291cmNlZmlsZSA6ICIocnVieSkiKTsNCiAgYXJnc1syXSA9IElOVDJGSVgoc291cmNl bGluZSk7DQogIGFyZ3NbM10gPSBpZCA/IElEMlNZTShpZCkgOiBRbmlsOw0KICAvL2FyZ3NbNF0g PSByYl9ldmFsX3N0cmluZygiYmluZGluZyIpOyAgICAgICAvKiByYl9mX2JpbmRpbmcocnVieV9m cmFtZS0+c2VsZik7ICovDQogIGFyZ3NbNF0gPSByYl9mdW5jYWxsKCBzZWxmLCByYl9pbnRlcm4o ImJpbmRpbmciKSwgMCk7DQoNCiAgYXJnc1s1XSA9IGtsYXNzID8ga2xhc3MgOiBRbmlsOw0KICBy Yl9lbnN1cmUoZG9fY2FsbF9icmVha3BvaW50X2Z1bmMsIChWQUxVRSlhcmdzLCBlbmFibGVfZGVi dWdnaW5nLCAoVkFMVUUpMCk7DQogIA0KICAvLyB0dXJuIGJyZWFrcG9pbnRzIGJhY2sgb24NCiAg ZW5hYmxlX2RlYnVnZ2luZygwKTsNCn0NCg0Kdm9pZA0KSW5pdF9yZGVidWcoKQ0Kew0KICBicmVh a3BvaW50X2Z1bmMgPSAwOw0KICByYl9kZWZpbmVfZ2xvYmFsX2Z1bmN0aW9uKCJzZXRfYnJlYWtw b2ludF9mdW5jIiwgc2V0X2JyZWFrcG9pbnRfZnVuYywgMSk7DQogIHJiX2dsb2JhbF92YXJpYWJs ZSgmYnJlYWtwb2ludF9mdW5jKTsNCg0KICByYl9kZWZpbmVfZ2xvYmFsX2Z1bmN0aW9uKCJhZGRf YnJlYWtwb2ludCIsIGFkZF9icmVha3BvaW50LCAtMSk7DQogIHJiX2RlZmluZV9nbG9iYWxfZnVu Y3Rpb24oInJlbW92ZV9icmVha3BvaW50IiwgcmVtb3ZlX2JyZWFrcG9pbnQsIDIpOw0KICByYl9k ZWZpbmVfZ2xvYmFsX2Z1bmN0aW9uKCJicmVha3BvaW50cyIsIGJyZWFrcG9pbnRzLCAwKTsNCn0N Cg0KLyogdmltOiBzZXQgdHM9OCBzdz00IHN0cz00IGV4cGFuZHRhYjogKi8NCg== ------_=_NextPart_001_01C6A15C.F00D9D08--