From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 31822 invoked by alias); 4 Jun 2008 06:41:08 -0000 Received: (qmail 31685 invoked by uid 22791); 4 Jun 2008 06:41:06 -0000 X-Spam-Check-By: sourceware.org Received: from d5152C2DE.access.telenet.be (HELO lx-dmz.televic.com) (81.82.194.222) by sourceware.org (qpsmtpd/0.31) with ESMTP; Wed, 04 Jun 2008 06:40:49 +0000 Received: (qmail 13597 invoked from network); 4 Jun 2008 06:39:13 -0000 Received: from nt-email.televic.com (10.0.0.9) by lx-dmz.televic.com with SMTP; 4 Jun 2008 06:39:13 -0000 Content-class: urn:content-classes:message MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="----_=_NextPart_001_01C8C5CC.64D6C23F" Date: Wed, 04 Jun 2008 06:41:00 -0000 Message-ID: <369C2E4EDB94C34881A8178BEA192A124DA1@nt-email.TELEVIC.COM> From: =?iso-8859-1?Q?Lambrecht_J=FCrgen?= To: X-IsSubscribed: yes Mailing-List: contact ecos-discuss-help@ecos.sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: ecos-discuss-owner@ecos.sourceware.org Subject: [ECOS] FW: Re: [ECOS] bugs in AT91 Ethernet driver X-SW-Source: 2008-06/txt/msg00015.txt.bz2 ------_=_NextPart_001_01C8C5CC.64D6C23F Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-length: 253 now with attachment > -----Original Message----- > From: Lambrecht J=FCrgen > Sent: woensdag 4 juni 2008 0:08 > To: ecos-discuss@sources.redhat.com > Subject: Re: [ECOS] bugs in AT91 Ethernet driver >=20 > Major bug found in TX part - see below. >=20 ------_=_NextPart_001_01C8C5CC.64D6C23F Content-Type: text/plain; name="if_at91_udiff2.txt" Content-Transfer-Encoding: base64 Content-Description: if_at91_udiff2.txt Content-Disposition: attachment; filename="if_at91_udiff2.txt" Content-length: 21180 LS0tIEY6XHZlcnNpb25fZWNvc1xwYWNrYWdlc1xkZXZzXGV0aFxhcm1cYXQ5 MVxjdXJyZW50XHNyY1xpZl9hdDkxLmMJMjAwOC0wMy0wNyAwODozNTozNi4w MDAwMDAwMDAgKy0wMjAwDQorKysgRjpcZWNvc19yb25ldGl4XHBhY2thZ2Vz XGRldnNcZXRoXGFybVxhdDkxXGN1cnJlbnRcc3JjXGlmX2F0OTEuYwkyMDA4 LTA2LTA0IDAwOjAxOjUxLjAwMDAwMDAwMCArLTAyMDANCkBAIC0zNiwxNiAr MzYsMTggQEANCiAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tDQogLy8jIyMjRUNPU0dQTENPUFlSSUdIVEVORCMjIyMN CiAvLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQogLy8jIyMjI0RF U0NSSVBUSU9OQkVHSU4jIyMjDQogLy8NCiAvLyBBdXRob3Iocyk6ICAgIEFu ZHJldyBMdW5uLCBKb2huIEVpZ2VsYWFyDQotLy8gQ29udHJpYnV0b3JzOiAg DQorLy8gQ29udHJpYnV0b3JzOiBKdWVyZ2VuIExhbWJyZWNodCANCiAvLyBE YXRlOiAgICAgICAgIDIwMDYtMDUtMTANCi0vLyBQdXJwb3NlOg0KLS8vIERl c2NyaXB0aW9uOg0KKy8vIFB1cnBvc2U6ICAgICAgQlNEIGNvbXBhdGlibGUg bmV0d29yayBkcml2ZXINCisvLyBEZXNjcmlwdGlvbjogIEhXIG5ldHdvcmsg ZHJpdmVyIGZvciBBVDkxIEVNQUMgYmxvY2sgb2YgQVQ5MVNBTSB1QydzLg0K Ky8vIExpbWl0YXRpb25zOiAgSnVtYm8gZnJhbWVzIGFyZSBub3Qgc3VwcG9y dGVkIGJlY2F1c2Ugb2YNCisvLyAgICAgICAgICAgICAgIEFUOTFfRU1BQ19S QkRfU1JfTEVOX01BU0sgPSAweEZGRg0KIC8vDQogLy8jIyMjREVTQ1JJUFRJ T05FTkQjIyMjDQogLy8NCiAvLz09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PSovDQogDQogI2luY2x1ZGUgPHBrZ2NvbmYvc3lzdGVtLmg+DQpAQCAtNjQs MTMgKzY2LDE1IEBADQogI2luY2x1ZGUgPGN5Zy9pbmZyYS9jeWdfdHlwZS5o Pg0KICNpbmNsdWRlIDxjeWcvaW5mcmEvY3lnX2Fzcy5oPg0KICNpbmNsdWRl IDxjeWcvaW5mcmEvZGlhZy5oPg0KICNpbmNsdWRlIDxjeWcvaW8vZXRoL25l dGRldi5oPg0KICNpbmNsdWRlIDxjeWcvaW8vZXRoL2V0aF9kcnYuaD4NCiAj aW5jbHVkZSA8Y3lnL2lvL2V0aC9ldGhfZHJ2X3N0YXRzLmg+DQotI2luY2x1 ZGUgPGN5Zy9pby9ldGhfcGh5Lmg+DQorI2lmZGVmIFBIWV9QUkVTRU5UDQor ICAgI2luY2x1ZGUgPGN5Zy9pby9ldGhfcGh5Lmg+DQorI2VuZGlmDQogI2lu Y2x1ZGUgPGVycm5vLmg+DQogI2luY2x1ZGUgPHN0cmluZy5oPg0KIA0KIC8v IFNldCB1cCB0aGUgbGV2ZWwgb2YgZGVidWcgb3V0cHV0DQogI2lmIENZR1BL R19ERVZTX0VUSF9BUk1fQVQ5MV9ERUJVR19MRVZFTCA+IDANCiAgICAjZGVm aW5lIGRlYnVnMV9wcmludGYoYXJncy4uLikgZGlhZ19wcmludGYoYXJncykN CkBAIC0xNjUsMTMgKzE2OSwxNSBAQA0KIHR5cGVkZWYgc3RydWN0IGF0OTFf ZXRoX3ByaXZfcyANCiB7DQogICAgY3lnX3VpbnQzMiAgICBpbnRyX3ZlY3Rv cjsNCiAgICBjaGFyICplc2Ffa2V5OyAgICAgIC8vIFJlZEJvb3QgJ2tleScg Zm9yIGRldmljZSBFU0ENCiAgICBjeWdfdWludDggKmVuYWRkcjsNCiAgICBj eWdfdWludDMyIGJhc2U7ICAgIC8vIEJhc2UgYWRkcmVzcyBvZiBkZXZpY2UN CisjaWZkZWYgUEhZX1BSRVNFTlQNCiAgICBldGhfcGh5X2FjY2Vzc190ICpw aHk7DQorI2VuZGlmDQogICAgcmJkX3QgcmJkW0NZR05VTV9ERVZTX0VUSF9B Uk1fQVQ5MV9SWF9CVUZTXTsNCiAgICByYl90ICByYltDWUdOVU1fREVWU19F VEhfQVJNX0FUOTFfUlhfQlVGU107DQogICAgdGJkX3QgdGJkW0NZR05VTV9E RVZTX0VUSF9BUk1fQVQ5MV9UWF9CVUZTXTsNCiAgICB1bnNpZ25lZCBsb25n IGN1cnJfdHhfa2V5Ow0KICAgIGN5Z19ib29sIHR4X2J1c3k7DQogICAgY3ln X3VpbnQzMiBsYXN0X3RiZF9pZHg7DQpAQCAtMjk3LDE5ICszMDMsMjAgQEAN CiAgICB7DQogICAgICAgQ1lHX0ZBSUwoIlVuYWJsZSB0byBwcm9ncmFtIE1J SSBjbG9jayIpOw0KICAgIH0NCiANCiAgICBIQUxfV1JJVEVfVUlOVDMyKEFU OTFfRU1BQyArIEFUOTFfRU1BQ19OQ0ZHLCBjZmcpOw0KIH0NCi0NCisvKiBU aGUgZ2VuZXJhbCBQSFkgZHJpdmVyIG11c3Qga25vdyBob3cgdG8gYWNjZXNz IHRoZSBQSFkuICovDQorI2lmZGVmIFBIWV9QUkVTRU5UDQogRVRIX1BIWV9S RUdfTEVWRUxfQUNDRVNTX0ZVTlMoYXQ5MV9waHksIA0KICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGF0OTFfaW5pdF9waHksDQogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgTlVMTCwNCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBhdDkxX3dyaXRlX3BoeSwNCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBhdDkxX3JlYWRfcGh5KTsNCi0NCisjZW5kaWYN CiAvLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NCiAvLyBSZWNlaXZlciBi dWZmZXIgaGFuZGxpbmcNCiANCiAvLyBJbml0aWFsaXplIHRoZSByZWNlaXZl ciBidWZmZXJzIGFuZCBkZXNjcmlwdG9ycw0KIHN0YXRpYyB2b2lkDQogYXQ5 MV9yYl9pbml0KGF0OTFfZXRoX3ByaXZfdCAqcHJpdikNCkBAIC0zMzMsMTMg KzM0MCwxMyBAQA0KIGF0OTFfdGJfaW5pdChhdDkxX2V0aF9wcml2X3QgKnBy aXYpDQogew0KICAgIGludCBpOw0KICAgIGZvciAoaSA9IDAgOyBpIDwgQ1lH TlVNX0RFVlNfRVRIX0FSTV9BVDkxX1RYX0JVRlM7IGkrKykNCiAgICB7DQog ICAgICAgcHJpdi0+dGJkW2ldLmFkZHIgPSAwOw0KLSAgICAgIHByaXYtPnRi ZFtpXS5zciA9IEFUOTFfRU1BQ19UQkRfU1JfVVNFRDsNCisgICAgICBwcml2 LT50YmRbaV0uc3IgPSAwOyAvKiBkYXRhc2hlZXQgMzYuNC4xLjMgZm9yIFNB TTkyNjAgdkcgYW5kIDM3LjQuMS4zIGZvciBTQU03IHZHIHBvaW50IDIgKi8N CiAgICB9DQogICAgLy8gU2V0IHRoZSB3cmFwIGJpdCBvbiB0aGUgbGFzdCBl bnRyeQ0KICAgIHByaXYtPnRiZFtDWUdOVU1fREVWU19FVEhfQVJNX0FUOTFf VFhfQlVGUy0xXS5zciB8PSBBVDkxX0VNQUNfVEJEX1NSX1dSQVA7DQogfQ0K IA0KIC8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KQEAgLTQ4MiwxMyAr NDg5LDE1IEBADQogew0KICAgIHN0cnVjdCBldGhfZHJ2X3NjICpzYyA9IChz dHJ1Y3QgZXRoX2Rydl9zYyAqKXRhYi0+ZGV2aWNlX2luc3RhbmNlOw0KICAg IGF0OTFfZXRoX3ByaXZfdCAqcHJpdiA9IChhdDkxX2V0aF9wcml2X3QgKilz Yy0+ZHJpdmVyX3ByaXZhdGU7DQogICAgYm9vbCBlc2Ffb2sgPSBmYWxzZTsN CiAgICB1bnNpZ25lZCBjaGFyIGVuYWRkcls2XSA9IHsgQ1lHUEtHX0RFVlNf RVRIX0FSTV9BVDkxX01BQ0FERFJ9Ow0KICAgIHVuc2lnbmVkIGNoYXIgZW56 ZXJvWzZdID0geyAweDAsIDB4MCwgMHgwLCAweDAsIDB4MCwgMHgwfTsNCisj aWZkZWYgUEhZX1BSRVNFTlQNCiAgICB1bnNpZ25lZCBzaG9ydCBwaHlfc3Rh dGUgPSAwOw0KKyNlbmRpZg0KICAgIGN5Z191aW50MzIgbmNmZyA9IDA7DQog DQogICAgZGVidWcxX3ByaW50ZigiXG5BVDkxX0VUSDogSW5pdGlhbGlzaW5n IEAgJXhcbiIscHJpdi0+YmFzZSk7DQogDQogICAgcHJpdi0+dHhfYnVzeSA9 IGZhbHNlOw0KICAgIHByaXYtPmN1cnJfdGJkX2lkeCA9IDA7DQpAQCAtNTE4 LDEzICs1MjcsMTMgQEANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg NCwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGN5Z19hZGRyd29y ZF90KXNjLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdDkxX2V0 aF9pc3IsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV0aF9kcnZf ZHNyLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmcHJpdi0+aW50 cl9oYW5kbGUsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICZwcml2 LT5pbnRyKTsNCi0NCisgICAvKiBkZWZhdWx0IGlzIGxldmVsIHNlbnNpdGl2 ZTsgKi8NCiAgICBjeWdfZHJ2X2ludGVycnVwdF9hdHRhY2gocHJpdi0+aW50 cl9oYW5kbGUpOw0KICAgIGN5Z19kcnZfaW50ZXJydXB0X3VubWFzayhwcml2 LT5pbnRyX3ZlY3Rvcik7DQogI2VuZGlmDQogDQogI2lmZGVmIENZR0hXUl9E RVZTX0VUSF9BUk1fQVQ5MV9HRVRfRVNBDQogICAgLy8gR2V0IE1BQyBhZGRy ZXNzIGZyb20gUmVkQm9vdCBjb25maWd1cmF0aW9uIHZhcmlhYmxlcw0KQEAg LTU1Nyw1NyArNTY2LDY0IEBADQogICAgLy8gU2V0dXAgdGhlIHRyYW5zbWl0 IGRlc2NyaXB0b3JzDQogICAgYXQ5MV90Yl9pbml0KHByaXYpOw0KIA0KICAg IC8vIEFuZCB0ZWxsIHRoZSBFTUFDIHdoZXJlIHRoZSBmaXJzdCB0cmFuc21p dCBidWZmZXIgZGVzY3JpcHRvciBpcw0KICAgIEhBTF9XUklURV9VSU5UMzIo cHJpdi0+YmFzZSArIEFUOTFfRU1BQ19UQlFQLCAoY3lnX3VpbnQzMilwcml2 LT50YmQpOw0KIA0KKyNpZmRlZiBQSFlfUFJFU0VOVA0KICAgIC8vIFNldHVw IHRoZSBQSFkNCiAgICBDWUdfQVNTRVJUQyhwcml2LT5waHkpOw0KIA0KICAg IGF0OTFfbWRpb19lbmFibGUoKTsNCiAgICBpZiAoIV9ldGhfcGh5X2luaXQo cHJpdi0+cGh5KSkNCiAgICB7DQogICAgICAgYXQ5MV9tZGlvX2Rpc2FibGUo KTsNCisgICAgICBkZWJ1ZzJfcHJpbnRmKCJfZXRoX3BoeV9pbml0IGZhaWxl ZFxuIik7DQogICAgICAgcmV0dXJuIChmYWxzZSk7DQogICAgfQ0KIA0KICAg IC8vIEdldCB0aGUgY3VycmVudCBtb2RlIGFuZCBwcmludCBpdA0KICAgIHBo eV9zdGF0ZSA9IF9ldGhfcGh5X3N0YXRlKHByaXYtPnBoeSk7DQorI2VuZGlm DQogICAgYXQ5MV9tZGlvX2Rpc2FibGUoKTsNCiANCiAgICBIQUxfUkVBRF9V SU5UMzIocHJpdi0+YmFzZSArIEFUOTFfRU1BQ19OQ0ZHLG5jZmcpOw0KIA0K LQ0KKyNpZmRlZiBQSFlfUFJFU0VOVA0KICAgIGlmICgocGh5X3N0YXRlICYg RVRIX1BIWV9TVEFUX0xJTkspICE9IDApDQogICAgew0KICAgICAgIGlmICgo KHBoeV9zdGF0ZSAmIEVUSF9QSFlfU1RBVF8xMDBNQikgIT0gMCkpDQogICAg ICAgew0KICAgICAgICAgIGRlYnVnMV9wcmludGYoIkFUOTFfRVRIOiAxMDBN Ynl0ZS9zIik7DQorI2VuZGlmDQogICAgICAgICAgbmNmZyB8PSBBVDkxX0VN QUNfTkNGR19TUERfMTAwTWJwczsNCisjaWZkZWYgUEhZX1BSRVNFTlQNCiAg ICAgICB9DQogICAgICAgZWxzZQ0KICAgICAgIHsNCiAgICAgICAgICBkZWJ1 ZzFfcHJpbnRmKCJBVDkxX0VUSDogMTBNYnl0ZS9zIik7DQogICAgICAgICAg bmNmZyAmPSB+KEFUOTFfRU1BQ19OQ0ZHX1NQRF8xMDBNYnBzKTsNCiAgICAg ICB9DQogICAgICAgaWYoKHBoeV9zdGF0ZSAmIEVUSF9QSFlfU1RBVF9GRFgp KQ0KICAgICAgIHsNCiAgICAgICAgICBkZWJ1ZzFfcHJpbnRmKCIgRnVsbCBE dXBsZXhcbiIpOw0KKyNlbmRpZg0KICAgICAgICAgIG5jZmcgfD0gQVQ5MV9F TUFDX05DRkdfRkQ7DQorI2lmZGVmIFBIWV9QUkVTRU5UDQogICAgICAgfQ0K ICAgICAgIGVsc2UNCiAgICAgICB7DQogICAgICAgICAgZGVidWcxX3ByaW50 ZigiIEhhbGYgRHVwbGV4XG4iKTsNCiAgICAgICAgICBuY2ZnICY9IH4oQVQ5 MV9FTUFDX05DRkdfRkQpOw0KICAgICAgIH0NCiAgICB9DQogICAgZWxzZQ0K ICAgIHsNCiAgICAgICBkZWJ1ZzFfcHJpbnRmKCJBVDkxX0VUSDogTm8gTGlu a1xuIik7DQogICAgfQ0KLQ0KKyNlbmRpZg0KIA0KICAgIC8vU2V0dXAgdGhl IG5ldHdvcmsgY29uZmlndXJhdGlvbg0KICAgIG5jZmcgfD0gKEFUOTFfRU1B Q19OQ0ZHX1JMQ0UpOw0KIA0KICAgIEhBTF9XUklURV9VSU5UMzIocHJpdi0+ YmFzZSArIEFUOTFfRU1BQ19OQ0ZHLG5jZmcpOw0KIA0KQEAgLTYzMCwzMSAr NjQ2LDQwIEBADQogDQogLy8gVGhpcyBmdW5jdGlvbiBpcyBjYWxsZWQgdG8g c3RvcCB0aGUgaW50ZXJmYWNlLg0KIHN0YXRpYyB2b2lkIA0KIGF0OTFfZXRo X3N0b3Aoc3RydWN0IGV0aF9kcnZfc2MgKnNjKQ0KIHsNCiAgICBhdDkxX2V0 aF9wcml2X3QgKnByaXYgPSAoYXQ5MV9ldGhfcHJpdl90ICopc2MtPmRyaXZl cl9wcml2YXRlOw0KKyNpZmRlZiBDWUdJTlRfSU9fRVRIX0lOVF9TVVBQT1JU X1JFUVVJUkVEDQorICAgY3lnX3VpbnQzMiBiaXRzOw0KIA0KKyAgIGJpdHMg PSAoQVQ5MV9FTUFDX0lTUl9SQ09NIHwgQVQ5MV9FTUFDX0lTUl9UT1ZSIHwg QVQ5MV9FTUFDX0lTUl9UVU5EIHwNCisgICAgICAgICAgIEFUOTFfRU1BQ19J U1JfUlRSWSB8IEFUOTFfRU1BQ19JU1JfVEJSRSB8IEFUOTFfRU1BQ19JU1Jf VENPTSk7DQorDQorICAgSEFMX1dSSVRFX1VJTlQzMihwcml2LT5iYXNlICsg QVQ5MV9FTUFDX0lEUiwgYml0cyk7DQorI2VuZGlmDQogICAgYXQ5MV9kaXNh YmxlKHByaXYpOw0KIH0NCiANCiAvLyBUaGlzIGZ1bmN0aW9uIGlzIGNhbGxl ZCB0byAic3RhcnQgdXAiIHRoZSBpbnRlcmZhY2UuIEl0IG1heSBiZSBjYWxs ZWQNCiAvLyBtdWx0aXBsZSB0aW1lcywgZXZlbiB3aGVuIHRoZSBoYXJkd2Fy ZSBpcyBhbHJlYWR5IHJ1bm5pbmcuDQogc3RhdGljIHZvaWQNCiBhdDkxX2V0 aF9zdGFydChzdHJ1Y3QgZXRoX2Rydl9zYyAqc2MsIHVuc2lnbmVkIGNoYXIg KmVuYWRkciwgaW50IGZsYWdzKQ0KIHsNCiAgICBhdDkxX2V0aF9wcml2X3Qg KnByaXYgPSAoYXQ5MV9ldGhfcHJpdl90ICopc2MtPmRyaXZlcl9wcml2YXRl Ow0KKyNpZmRlZiBDWUdJTlRfSU9fRVRIX0lOVF9TVVBQT1JUX1JFUVVJUkVE DQogICAgY3lnX3VpbnQzMiBiaXRzOw0KIA0KICAgIC8vIEVuYWJsZSB0aGUg aW50ZXJydXB0cyB3ZSBhcmUgaW50ZXJlc3RlZCBpbg0KICAgIC8vIFRPRE86 IFdlIHByb2JhYmx5IG5lZWQgdG8gYWRkIGF0IGxlYXN0IHRoZSBSQk5BIGlu dGVycnVwdCBoZXJlDQogICAgLy8gICAgICAgYXMgd2VsbCBpbiBvcmRlciB0 byBkbyBzb21lIGVycm9yIGhhbmRsaW5nDQotICAgYml0cyA9IChBVDkxX0VN QUNfSVNSX1JDT00gfCBBVDkxX0VNQUNfSVNSX1RDT00pOw0KKyAgIGJpdHMg PSAoQVQ5MV9FTUFDX0lTUl9SQ09NIHwgQVQ5MV9FTUFDX0lTUl9UT1ZSIHwg QVQ5MV9FTUFDX0lTUl9UVU5EIHwNCisgICAgICAgICAgIEFUOTFfRU1BQ19J U1JfUlRSWSB8IEFUOTFfRU1BQ19JU1JfVEJSRSB8IEFUOTFfRU1BQ19JU1Jf VENPTSk7DQogDQogICAgSEFMX1dSSVRFX1VJTlQzMihwcml2LT5iYXNlICsg QVQ5MV9FTUFDX0lFUiwgYml0cyk7DQotDQorI2VuZGlmDQogICAgLy8gRW5h YmxlIHRoZSByZWNlaXZlciBhbmQgdHJhbnNtaXR0ZXINCiAgICBhdDkxX2Vu YWJsZShwcml2KTsNCiB9DQogDQogLy8gVGhpcyBmdW5jdGlvbiBpcyBjYWxs ZWQgZm9yIGxvdyBsZXZlbCAiY29udHJvbCIgb3BlcmF0aW9ucw0KIHN0YXRp YyBpbnQNCkBAIC02OTcsMTIgKzcyMiwxMyBAQA0KIC8vDQogLy8gV2UgYWxs b2NhdGUgb25lIGJ1ZmZlciBkZXNjcmlwdG9yIHBlciBzY2F0dGVyL2dhdGhl ciBlbnRyeS4gV2UgYXNzdW1lIHRoYXQNCiAvLyBhIHR5cGljYWwgcGFja2V0 IHdpbGwgbm90IGhhdmUgbW9yZSB0aGFuIDMgc3VjaCBlbnRyaWVzLCBhbmQg c28gd2Ugc2F5IHdlDQogLy8gY2FuIHNlbmQgYSBwYWNrZXQgd2hlbiB3ZSBo YXZlIDMgb3IgbW9yZSBidWZmZXIgZGVzY3JpcHRvcnMgZnJlZQ0KIC8vDQog Ly8gVE9ETzogSW1wbGVtZW50IHdoYXQgdGhlIGNvbW1lbnQgYWN0dWFsbHkg c2F5cyENCisvLyBKTDogbW9yZSBkaWZmaWN1bHQgd2l0aCBjb3B5IHRvIFNS QU0uLg0KIHN0YXRpYyBpbnQNCiBhdDkxX2V0aF9jYW5fc2VuZChzdHJ1Y3Qg ZXRoX2Rydl9zYyAqc2MpDQogew0KICAgIGludCBjYW5fc2VuZDsNCiAgICBh dDkxX2V0aF9wcml2X3QgKnByaXYgPSAoYXQ5MV9ldGhfcHJpdl90ICopc2Mt PmRyaXZlcl9wcml2YXRlOw0KICAgIGlmKHByaXYtPnR4X2J1c3kpDQpAQCAt NzIxLDIwICs3NDcsMjcgQEANCiBhdDkxX2V0aF9zZW5kKHN0cnVjdCBldGhf ZHJ2X3NjICpzYywgc3RydWN0IGV0aF9kcnZfc2cgKnNnX2xpc3QsIGludCBz Z19sZW4sIA0KICAgICAgICAgICAgICAgaW50IHRvdGFsX2xlbiwgdW5zaWdu ZWQgbG9uZyBrZXkpDQogew0KICAgIGF0OTFfZXRoX3ByaXZfdCAqcHJpdiA9 IChhdDkxX2V0aF9wcml2X3QgKilzYy0+ZHJpdmVyX3ByaXZhdGU7DQogICAg aW50IGk7DQogICAgY3lnX3VpbnQzMiBzcjsNCi0NCi0gICBwcml2LT50eF9i dXN5ID0gdHJ1ZTsNCisjaWZkZWYgU1JBTTFfT1JJR0lOIC8qIGRlZmluZSBp dCBpbiBwbGZfaW8uaCBpZiBwcmVzZW50ICovDQorICAgY3lnX3VpbnQzMiB0 b3RhbF9ieXRlcyA9IDA7IC8qIHBvc2l0aW9uIGluIFNSQU0xICovDQorI2Vu ZGlmDQorICAgcHJpdi0+dHhfYnVzeSA9IHRydWU7IC8qIGZvciBjYW5fc2Vu ZCgpICovDQogDQotICAgcHJpdi0+bGFzdF90YmRfaWR4ID0gcHJpdi0+Y3Vy cl90YmRfaWR4Ow0KKyAgIHByaXYtPmxhc3RfdGJkX2lkeCA9IHByaXYtPmN1 cnJfdGJkX2lkeDsgLy8/Pw0KIA0KICAgIGZvcihpID0gMDtpPHNnX2xlbjtp KyspDQogICAgew0KKyNpZmRlZiBTUkFNMV9PUklHSU4NCisgICAgICBtZW1j cHkoKGN5Z191aW50OCAqKShTUkFNMV9PUklHSU4rdG90YWxfYnl0ZXMpLCAo Y3lnX3VpbnQ4ICopKHNnX2xpc3RbaV0uYnVmKSwgc2dfbGlzdFtpXS5sZW4p Ow0KKyAgICAgIHByaXYtPnRiZFtwcml2LT5jdXJyX3RiZF9pZHhdLmFkZHIg PSBTUkFNMV9PUklHSU4rdG90YWxfYnl0ZXM7DQorI2Vsc2UNCiAgICAgICBw cml2LT50YmRbcHJpdi0+Y3Vycl90YmRfaWR4XS5hZGRyID0gc2dfbGlzdFtp XS5idWY7DQorI2VuZGlmDQogDQogICAgICAgc3IgPSAoc2dfbGlzdFtpXS5s ZW4gJiBBVDkxX0VNQUNfVEJEX1NSX0xFTl9NQVNLKTsNCiAgICAgICAvLyBT ZXQgdGhlIEVuZCBPZiBGcmFtZSBiaXQgaW4gdGhlIGxhc3QgZGVzY3JpcHRv cg0KICAgICAgIGlmKGkgPT0gKHNnX2xlbi0xKSkNCiAgICAgICB7DQogICAg ICAgICAgc3IgfD0gQVQ5MV9FTUFDX1RCRF9TUl9FT0Y7DQpAQCAtNzQ3LDM3 ICs3ODAsNDUgQEANCiAgICAgICB9DQogICAgICAgZWxzZQ0KICAgICAgIHsN CiAgICAgICAgICBwcml2LT50YmRbcHJpdi0+Y3Vycl90YmRfaWR4XS5zciA9 IChzciB8IEFUOTFfRU1BQ19UQkRfU1JfV1JBUCk7DQogICAgICAgICAgcHJp di0+Y3Vycl90YmRfaWR4ID0gMDsNCiAgICAgICB9DQorI2lmZGVmIFNSQU0x X09SSUdJTg0KKyAgICAgIHRvdGFsX2J5dGVzICs9IHNnX2xpc3RbaV0ubGVu Ow0KKyNlbmRpZg0KICAgIH0NCiANCiAgICAvLyBTdG9yZSBhd2F5IHRoZSBr ZXkgZm9yIHdoZW4gdGhlIHRyYW5zbWl0IGhhcyBjb21wbGV0ZWQNCiAgICAv LyBhbmQgd2UgbmVlZCB0byB0ZWxsIHRoZSBzdGFjayB3aGljaCB0cmFuc21p dCBoYXMgY29tcGxldGVkLg0KICAgIHByaXYtPmN1cnJfdHhfa2V5ID0ga2V5 Ow0KIA0KICAgIGF0OTFfc3RhcnRfdHJhbnNtaXR0ZXIocHJpdik7DQogfQ0K IA0KLXN0YXRpYyB2b2lkIGF0OTFfcmVzZXRfdGJkKGF0OTFfZXRoX3ByaXZf dCAqcHJpdikNCisvKiBkYXRhc2hlZXQgMzYuNC4xLjMgZm9yIFNBTTkyNjAg dkcgYW5kIDM3LjQuMS4zIGZvciBTQU03IHZHIHBvaW50IDI6IA0KKyAgIHNl dCBBVDkxX0VNQUNfVEJEX1NSX1VTRUQ9MCAqLw0KK3N0YXRpYyB2b2lkIGF0 OTFfcmVzZXRfdGJkKGF0OTFfZXRoX3ByaXZfdCAqcHJpdiwgYm9vbCBiX3Jl c2V0X3RiZF9pZHgpDQogew0KICAgICAgd2hpbGUocHJpdi0+Y3Vycl90YmRf aWR4ICE9IHByaXYtPmxhc3RfdGJkX2lkeCkNCiAgICAgIHsNCiAgICAgICAg IGlmKHByaXYtPmxhc3RfdGJkX2lkeCA9PSAoQ1lHTlVNX0RFVlNfRVRIX0FS TV9BVDkxX1RYX0JVRlMtMSkpDQogICAgICAgICB7DQotICAgICAgICAgICBw cml2LT50YmRbcHJpdi0+bGFzdF90YmRfaWR4XS5zciA9IA0KLSAgICAgICAg ICAgICAoQVQ5MV9FTUFDX1RCRF9TUl9VU0VEfEFUOTFfRU1BQ19UQkRfU1Jf V1JBUCk7DQorICAgICAgICAgICBwcml2LT50YmRbcHJpdi0+bGFzdF90YmRf aWR4XS5zciA9IEFUOTFfRU1BQ19UQkRfU1JfV1JBUDsNCiAgICAgICAgICAg IHByaXYtPmxhc3RfdGJkX2lkeCA9IDA7DQogICAgICAgICB9DQogICAgICAg ICBlbHNlDQogICAgICAgICB7DQotICAgICAgICAgICBwcml2LT50YmRbcHJp di0+bGFzdF90YmRfaWR4XS5zciA9IEFUOTFfRU1BQ19UQkRfU1JfVVNFRDsN CisgICAgICAgICAgIHByaXYtPnRiZFtwcml2LT5sYXN0X3RiZF9pZHhdLnNy ID0gMDsNCiAgICAgICAgICAgIHByaXYtPmxhc3RfdGJkX2lkeCsrOw0KICAg ICAgICAgfQ0KLSAgICAgfQ0KKyAgICAgfQ0KKyAgICAgaWYgKGJfcmVzZXRf dGJkX2lkeCkNCisgICAgIHsNCisgICAgICAgIHByaXYtPmN1cnJfdGJkX2lk eCA9IDA7IC8vcmVzZXQsIGJlY2F1c2UgRU1BQyBhbHNvIHJlc2V0cyBpdHMg cXVldWUgDQorICAgICB9ICAgICAgICAgICAgICAgICAgICAgICAgICAvL3Bv aW50ZXIgdG8gdGhlIFRCUVANCiB9DQogDQogDQogLy89PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09DQogDQogI2lmZGVmIENZR0lOVF9JT19FVEhfSU5UX1NV UFBPUlRfUkVRVUlSRUQNCkBAIC03OTEsMjEgKzgzMiwyMyBAQA0KIA0KICAg IC8qIEdldCB0aGUgaW50ZXJydXB0IHN0YXR1cyAqLw0KICAgIEhBTF9SRUFE X1VJTlQzMihwcml2LT5iYXNlK0FUOTFfRU1BQ19JU1IsaXNyKTsNCiANCiAg ICByZXQgPSBDWUdfSVNSX0hBTkRMRUQ7DQogDQotICAgLy9UT0RPOiBXZSBz aG91bGQgcHJvYmFibHkgYmUgaGFuZGxpbmcgc29tZSBvZiB0aGUgZXJyb3Ig aW50ZXJydXB0cyBhcyB3ZWxsDQotICAgaWYoaXNyICYgQVQ5MV9FTUFDX0lT Ul9UQ09NKQ0KKyAgIGlmKGlzciAmIChBVDkxX0VNQUNfSVNSX1RPVlIgfCBB VDkxX0VNQUNfSVNSX1RVTkQgfCBBVDkxX0VNQUNfSVNSX1JUUlkgfCBBVDkx X0VNQUNfSVNSX1RCUkUgfCBBVDkxX0VNQUNfSVNSX1RDT00pKQ0KICAgIHsN CiAgICAgICByZXQgPSBDWUdfSVNSX0NBTExfRFNSOw0KKyAgICAgIGRlYnVn Ml9wcmludGYoIlRYIElSUVxuIik7DQogICAgfQ0KIA0KKyAgIC8vVE9ETzog V2Ugc2hvdWxkIHByb2JhYmx5IGJlIGhhbmRsaW5nIHNvbWUgb2YgdGhlIGVy cm9yIGludGVycnVwdHMgYXMgd2VsbA0KICAgIGlmKGlzciAmIEFUOTFfRU1B Q19JU1JfUkNPTSkNCiAgICB7DQogICAgICAgcmV0ID0gQ1lHX0lTUl9DQUxM X0RTUjsNCisgICAgICBkZWJ1ZzJfcHJpbnRmKCJSWCBJUlFcbiIpOw0KICAg IH0NCiAgICBjeWdfaW50ZXJydXB0X2Fja25vd2xlZGdlKHZlY3Rvcik7DQog ICAgcmV0dXJuKHJldCk7DQogfQ0KICNlbmRpZg0KIA0KQEAgLTgxNyw1NiAr ODYwLDc5IEBADQogICAgY3lnX3VpbnQzMiB0c3I7DQogICAgY3lnX3VpbnQz MiByc3I7DQogDQogICAgY3lnX3VpbnQzMiBjdHI7DQogICAgY3lnX3VpbnQz MiBjbnQ7DQogICAgY3lnX3VpbnQzMiBpZHg7DQorICAgYm9vbCBiX3Jlc2V0 X3RiZF9pZHggPSBmYWxzZTsNCiANCi0gICAvKiBHZXQgdGhlIFRyYW5zbWl0 IFN0YXR1cyAqLw0KKyAgIC8qIEdldCB0aGUgVHJhbnNtaXQgU3RhdHVzIGFu ZCBjbGVhciBpdCAqLw0KICAgIEhBTF9SRUFEX1VJTlQzMihwcml2LT5iYXNl K0FUOTFfRU1BQ19UU1IsdHNyKTsNCiAgICBIQUxfV1JJVEVfVUlOVDMyKHBy aXYtPmJhc2UrQVQ5MV9FTUFDX1RTUix0c3IpOw0KIA0KLSAgIC8qIEdldCB0 aGUgUmVjZWl2ZSBTdGF0dXMgKi8NCisgICAvKiBHZXQgdGhlIFJlY2VpdmUg U3RhdHVzIGFuZCBjbGVhciBpdCAqLw0KICAgIEhBTF9SRUFEX1VJTlQzMihw cml2LT5iYXNlK0FUOTFfRU1BQ19SU1IscnNyKTsNCiAgICBIQUxfV1JJVEVf VUlOVDMyKHByaXYtPmJhc2UrQVQ5MV9FTUFDX1JTUixyc3IpOw0KIA0KIA0K ICAgIC8vVE9ETzogVGhlIGludGVycnVwdHMgb3RoZXIgdGhhbiBSQ09NUCBh bmQgVENPTVAgbmVlZHMgdG8gYmUNCiAgICAvLyAgICAgIGhhbmRsZWQgcHJv cGVybHkgZXNwZWNpYWxseSBzdHVmZiBsaWtlIFJCTkEgd2hpY2ggY291bGQg aGF2ZQ0KICAgIC8vICAgICAgc2VyaW91cyBlZmZlY3RzIG9uIGRyaXZlciBw ZXJmb3JtYW5jZQ0KIA0KLSAgIC8qIFNlcnZpY2UgdGhlIFRYIGJ1ZmZlcnMg Ki8NCisgICAvKiBTZXJ2aWNlIHRoZSBUWCBidWZmZXJzIGFmdGVyIElSUSAq Lw0KKyAgIGlmICh0c3ImQVQ5MV9FTUFDX1RTUl9PVlIpICAvLzANCisgICB7 DQorICAgICAgZGVidWcxX3ByaW50ZigiQVQ5MV9FVEg6IFR4IFVCUlxuIik7 DQorICAgICAgYl9yZXNldF90YmRfaWR4ID0gdHJ1ZTsNCisgICB9DQorDQog ICAgaWYgKHRzciZBVDkxX0VNQUNfVFNSX0NPTCkgIC8vMQ0KICAgIHsNCiAg ICAgICBkZWJ1ZzFfcHJpbnRmKCJBVDkxX0VUSDogVHggQ09MXG4iKTsNCiAg ICB9DQogDQogICAgaWYgKHRzciZBVDkxX0VNQUNfVFNSX1JMRSkgIC8vMg0K ICAgIHsNCiAgICAgICBkZWJ1ZzFfcHJpbnRmKCJBVDkxX0VUSDogVHggUkxF XG4iKTsNCisgICAgICBiX3Jlc2V0X3RiZF9pZHggPSB0cnVlOw0KICAgIH0N CiANCisgICBpZiAoKHRzciZBVDkxX0VNQUNfVFNSX1RYSURMRSkgPT0gMCkg Ly8zDQorICAgew0KKyAgICAgIGRlYnVnMl9wcmludGYoIkFUOTFfRVRIOiBU eCBJRExFXG4iKTsNCisgICB9DQorDQogICAgaWYgKHRzciZBVDkxX0VNQUNf VFNSX0JOUSkgIC8vNA0KICAgIHsNCiAgICAgICBkZWJ1ZzFfcHJpbnRmKCJB VDkxX0VUSDogVHggQkVYXG4iKTsNCisgICAgICBiX3Jlc2V0X3RiZF9pZHgg PSB0cnVlOw0KICAgIH0NCiANCiAgICBpZiAodHNyJkFUOTFfRU1BQ19UU1Jf VU5EKSAgLy82DQogICAgew0KICAgICAgIGRlYnVnMV9wcmludGYoIkFUOTFf RVRIOiBUeCBVTkRcbiIpOw0KKyAgICAgIGJfcmVzZXRfdGJkX2lkeCA9IHRy dWU7DQogICAgfQ0KIA0KICAgIC8qIENoZWNrIHRoYXQgdGhlIGxhc3QgdHJh bnNtaXNzaW9uIGlzIGNvbXBsZXRlZCAqLw0KKyAgIC8qIEFmdGVyIGVhY2gg dHJhbnNtaXQsIGl0IGlzIGJlc3QgdG8gaW1tZWRpYXRlbHkgcmVzZXQgdGJk ICovDQorICAgLyogSWYgdGhlcmUgd2VyZSBlcnJvcnMsIHRiZF9pZHggbXVz dCBiZSByZXNldCBhbHNvICovDQogICAgaWYgKHRzciZBVDkxX0VNQUNfVFNS X0NPTVApIC8vNQ0KICAgIHsNCi0gICAgICBhdDkxX3Jlc2V0X3RiZChwcml2 KTsNCisgICAgICBkZWJ1ZzJfcHJpbnRmKCJBVDkxX0VUSDogVHggQ09NUC5c biIpOw0KKyAgICAgIGF0OTFfcmVzZXRfdGJkKHByaXYsIGJfcmVzZXRfdGJk X2lkeCk7DQogICAgICAgX2V0aF9kcnZfdHhfZG9uZShzYyxwcml2LT5jdXJy X3R4X2tleSwwKTsNCiAgICAgICBwcml2LT50eF9idXN5ID0gZmFsc2U7DQog ICAgfQ0KKyAgIGVsc2UgaWYgKGJfcmVzZXRfdGJkX2lkeCA9PSB0cnVlKQ0K KyAgIHsNCisgICAgICBhdDkxX3Jlc2V0X3RiZChwcml2LCBiX3Jlc2V0X3Ri ZF9pZHgpOw0KKyAgIH0NCiANCi0gICAvKiBTZXJ2aWNlIHRoZSBSWCBidWZm ZXJzIHdoZW4gd2UgZ2V0IHNvbWV0aGluZyAqLw0KKw0KKyAgIC8qIFNlcnZp Y2UgdGhlIFJYIGJ1ZmZlcnMgd2hlbiB3ZSBnZXQgc29tZXRoaW5nIGFmdGVy IElSUSAqLw0KICAgIGlmIChyc3ImQVQ5MV9FTUFDX1JTUl9SRUMpDQogICAg ew0KICAgICAgIC8qIERvIHRoaXMgYWxsIHVudGlsIHdlIGZpbmQgdGhlIGZp cnN0IEVNQUMgQnVmZmVyICovDQogICAgICAgd2hpbGUgKHByaXYtPnJiZFtw cml2LT5jdXJyX3JiZF9pZHhdLmFkZHIgJiBBVDkxX0VNQUNfUkJEX0FERFJf T1dORVJfU1cpDQogICAgICAgew0KIA0KQEAgLTkzMSwyNyArOTk3LDMwIEBA DQogICAgY3lnX3VpbnQzMiBieXRlc19pbl9idWZmZXI7DQogICAgY3lnX3Vp bnQzMiBieXRlc19pbl9saXN0ID0gMDsNCiAgICBjeWdfdWludDMyIGJ5dGVz X25lZWRlZF9saXN0ID0gMDsNCiAgICBjeWdfdWludDMyIGJ1ZmZlcl9wb3Mg PSAwOw0KICAgIGN5Z191aW50OCAqIHNnX2J1ZjsNCiAgICBjeWdfdWludDMy IHRvdGFsX2J5dGVzID0gMDsNCi0NCisgICAvKiBidWZmZXJfcG9zIGlzIHBv c2l0aW9uIGluIGN1cnJlbnQgMTI4QiBidWZmZXIgKi8NCisgICAvKiBieXRl c19pbl9saXN0IGlzIHBvc2l0aW9uIGluIGN1cnJlbnQgc2dfbGlzdCAqLw0K KyAgIC8qIHRvdGFsX2J5dGVzIGlzIHRvdGFsIG5vLiBvZiBwYWNrZXQgYnl0 ZXMgYWxyZWFkeSBjb3BpZWQgKi8NCiAgICBmb3IoaSA9IDA7aTxzZ19sZW47 aSsrKQ0KICAgIHsNCi0gICAgICB3aGlsZShieXRlc19pbl9saXN0IDwgc2df bGlzdFtpXS5sZW4pDQotICAgICAgew0KKyAgICAgIGJ5dGVzX2luX2xpc3Qg PSAwOyAvKiBnbyB0byBuZXh0IGxpc3QgKi8NCisgICAgICB3aGlsZShieXRl c19pbl9saXN0IDwgc2dfbGlzdFtpXS5sZW4pIC8vZnJlZWJzZCAtIGk9MDog MTRCDQorICAgICAgeyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAvL2ZyZWVic2QgLSBpPTE6IDEyOEIgb3IgcmVtYWluZGVyIG9mIHBh Y2tldA0KICAgICAgICAgIGJ5dGVzX25lZWRlZF9saXN0ID0gc2dfbGlzdFtp XS5sZW4gLSBieXRlc19pbl9saXN0Ow0KIA0KICAgICAgICAgIGlmKHByaXYt PnJiZFtwcml2LT5jdXJyX3JiZF9pZHhdLnNyICYgQVQ5MV9FTUFDX1JCRF9T Ul9FT0YpDQotICAgICAgICAgew0KLQkgICAgICBieXRlc19pbl9idWZmZXIg PSANCisgICAgICAgICB7IC8qIFRoaXMgMTI4QiBidWZmZXIgY29udGFpbnMg dGhlIEVuZCBPZiB0aGUgRnJhbWUuICovDQorICAgICAgICAgICAgYnl0ZXNf aW5fYnVmZmVyID0NCiAJCSgocHJpdi0+cmJkW3ByaXYtPmN1cnJfcmJkX2lk eF0uc3IgJiBBVDkxX0VNQUNfUkJEX1NSX0xFTl9NQVNLKQ0KLQkJIC0gdG90 YWxfYnl0ZXMpIC0gYnVmZmVyX3BvczsNCisJCSAtIHRvdGFsX2J5dGVzKTsN CiAgICAgICAgICB9DQogICAgICAgICAgZWxzZQ0KLSAgICAgICAgIHsNCisg ICAgICAgICB7IC8qIEFUOTFfRU1BQ19SWF9CVUZGX1NJWkUgPSAxMjhCICov DQogICAgICAgICAgICAgYnl0ZXNfaW5fYnVmZmVyID0gQVQ5MV9FTUFDX1JY X0JVRkZfU0laRSAtIGJ1ZmZlcl9wb3M7DQogICAgICAgICAgfQ0KIA0KICAg ICAgICAgIHNnX2J1ZiA9IChjeWdfdWludDggKikoc2dfbGlzdFtpXS5idWYp Ow0KIA0KICAgICAgICAgIGlmKGJ5dGVzX25lZWRlZF9saXN0IDwgYnl0ZXNf aW5fYnVmZmVyKQ0KQEAgLTEwMDEsMTQgKzEwNzAsMTcgQEANCiAgICByZXR1 cm4oQ1lHTlVNX0hBTF9JTlRFUlJVUFRfRU1BQyk7DQogfQ0KIA0KIGF0OTFf ZXRoX3ByaXZfdCBhdDkxX3ByaXZfZGF0YSA9DQogew0KICAgIC5pbnRyX3Zl Y3RvciA9IENZR05VTV9IQUxfSU5URVJSVVBUX0VNQUMsDQotICAgLmJhc2Ug PSBBVDkxX0VNQUMsDQorICAgLmJhc2UgPSBBVDkxX0VNQUMNCisjaWZkZWYg UEhZX1BSRVNFTlQNCisgICAsDQogICAgLnBoeSA9ICZhdDkxX3BoeQ0KKyNl bmRpZg0KIH07DQogDQogRVRIX0RSVl9TQyhhdDkxX3NjLA0KICAgICAgICAg ICAgJmF0OTFfcHJpdl9kYXRhLCAgICAgICAvLyBEcml2ZXIgc3BlY2lmaWMg ZGF0YQ0KICAgICAgICAgICAgImV0aDAiLCAgICAgICAgICAgICAgICAvLyBO YW1lIGZvciB0aGlzIGludGVyZmFjZQ0KICAgICAgICAgICAgYXQ5MV9ldGhf c3RhcnQsDQo= ------_=_NextPart_001_01C8C5CC.64D6C23F Content-Type: text/plain; charset=us-ascii Content-length: 148 -- Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss ------_=_NextPart_001_01C8C5CC.64D6C23F--