From mboxrd@z Thu Jan 1 00:00:00 1970 From: oliver.schlenker@domain.hid Date: Fri, 9 Oct 2009 13:34:37 +0000 Message-ID: <0000AD00.4ACF580B@192.168.2.103> MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: base64 Subject: Re: [Xenomai-help] :: rt_printf with daemonized task List-Id: Help regarding installation and common use of Xenomai List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: jan.kiszka@domain.hid Cc: xenomai@xenomai.org DQoNCg0KLS0tLS0tLS0gT3JpZ2luYWwgTWVzc2FnZSAtLS0tLS0tLQ0KU3ViamVjdDogUmU6IDo6 IHJ0X3ByaW50ZiB3aXRoIGRhZW1vbml6ZWQgdGFzayAoMDgtT2t0LTIwMDkgMTU6MTcpDQpGcm9t OiAgICBKYW4gS2lzemthIDxqYW4ua2lzemthQHNpZW1lbnMuY29tPg0KVG86ICAgICAgb2xpdmVy LnNjaGxlbmtlckBzbW1vdGlvbmNvbnRyb2wuZGUNCg0KPiBvbGl2ZXIuc2NobGVua2VyQHNtbW90 aW9uY29udHJvbC5kZSB3cm90ZToNCj4gPiANCj4gPiANCj4gPiANCj4gPiANCj4gPiAtLS0tLS0t LSBPcmlnaW5hbCBNZXNzYWdlIC0tLS0tLS0tDQo+ID4gU3ViamVjdDogUmU6IFJlIDogcnRfcHJp bnRmIHdpdGggZGFlbW9uaXplZCB0YXNrICgwOC1Pa3QtMjAwOSAxMjoxNikNCj4gPiBGcm9tOiAg ICBKYW4gS2lzemthIDxqYW4ua2lzemthQHNpZW1lbnMuY29tPg0KPiA+IFRvOiAgICAgIG9saXZl ci5zY2hsZW5rZXJAc21tb3Rpb25jb250cm9sLmRlDQo+ID4gDQo+ID4+IEdpbGxlcyBDaGFudGVw ZXJkcml4IHdyb3RlOg0KPiA+Pj4gSmFuIEtpc3prYSB3cm90ZToNCj4gPj4+PiBHaWxsZXMgQ2hh bnRlcGVyZHJpeCB3cm90ZToNCj4gPj4+Pj4gb2xpdmVyLnNjaGxlbmtlckBzbW1vdGlvbmNvbnRy b2wuZGUgd3JvdGU6DQo+ID4+Pj4+Pj4+IGludCBtYWluKCBpbnQgYXJjLCBjaGFyICphcmd2W10g KSB7IGludCBpOw0KPiA+Pj4+Pj4+Pg0KPiA+Pj4+Pj4+PiBydF9wcmludF9hdXRvX2luaXQoMSk7 DQo+ID4+Pj4+Pj4+DQo+ID4+Pj4+Pj4+IHJ0X3ByaW50ZigiLS0tLS0tLS0tLS0tLS0tIFRFU1Qg UlQtUFJJTlRGICAxIC0tLS0tLS0tLS0tLVxuIik7DQo+ID4+Pj4+Pj4+DQo+ID4+Pj4+Pj4+IHNs ZWVwKDEpOw0KPiA+Pj4+Pj4+Pg0KPiA+Pj4+Pj4+PiBkYWVtb24oMCwwKTsNCj4gPj4+Pj4+Pj4N Cj4gPj4+Pj4+Pj4gcnRfcHJpbnRfYXV0b19pbml0KDEpOw0KPiA+Pj4+Pj4gT2ssIHVuZGVyc3Rv b2QsIGF0IGxlYXN0IGZvciB0aGUgc2NlbmFyaW8gd2hlcmUgdGhlIHJ0X3ByaW50IGZlYXR1cmUN Cj4gPj4+Pj4+IGlzIGluaXRpYWxpc2VkIGJlZm9yIHRoZSBmb3JrL2RhZW1vbiBjYWxsLiBXaGF0 IEkgZG9uJ3QgdW5kZXJzdGFuZA0KPiA+Pj4+Pj4gaXMsIHdoeSBpdCBkb2VzIG5vdCB3b3JrIGlm IHRoZSBydF9wcmludCBmZWF0dXJlIGlzIGluaXRpYWxpc2VkIA0KPiBhZnRlcg0KPiA+Pj4+Pj4g dGhlIGZvcmsgLyBkYWVtb24uDQo+ID4+Pj4+IEZyb20gdGhlIHdheSBJIHVuZGVyc3RhbmQgeW91 ciBjb2RlLCB5b3UgbmV2ZXIgdHJpZWQgdG8gaW5pdGlhbGl6ZSANCj4gdGhlDQo+ID4+Pj4+IHJ0 X3ByaW50IGZlYXR1cmUgb25seSBhZnRlciB0aGUgZm9yaywgeW91ciBjb2RlIGluaXRpYWxpemVz IGl0IGJvdGgNCj4gPj4+Pj4gYmVmb3JlIGFuZCBhZnRlci4NCj4gPj4+Pj4NCj4gPj4+PiBUaGVy ZSBhcmUgdHdvIGluaXRpYWxpemF0aW9uczogVGhlIGJhc2UgaW5pdCBkb25lIHZpYSBfX3J0X3By aW50X2luaXQgDQo+IG9uDQo+ID4+Pj4gbGlicmFyeSBsb2FkaW5nIGFuZCB0aGUgb25lIHRvIGJl IGRvbmUgcGVyLXRocmVhZCB2aWEgcnRfcHJpbnRfaW5pdCAoDQo+IG9yDQo+ID4+Pj4gb24gZmly c3QgcnRfcHJpbnRmKS4gVGhhdCBwcmludGVyIHRocmVhZCBpcyBpbml0aWFsaXplZCB2aWEgdGhl IGZvcm1lcg0KPiA+Pj4+IG9uZS4gT24gZm9yaywgd2UgZG8gbm90IG5lZWQgdG8gcmUtcnVuIHRo ZSBmdWxsIF9fcnRfcHJpbnRfaW5pdA0KPiA+Pj4+ICh2YXJpYWJsZXMgYW5kIHJlc291cmNlcyBh cmUgY2xvbmVkIG9uIGZvcmspLCB3ZSBqdXN0IG5lZWQgdG8gc3Bhd24NCj4gPj4+PiBhbm90aGVy IHByaW50ZXIgdGhyZWFkLg0KPiA+Pj4gVW5sZXNzIEkgYW0gd3JvbmcsIHJ0ZGsgYWxzbyBtYWlu dGFpbnMgYSBsaXN0IG9mIHRoZSB0aHJlYWQgYnVmZmVycw0KPiA+Pj4gd2hpY2ggbmVlZCB0byBi ZSBwb2xsZWQuIEFmdGVyIHRoZSBmb3JrLCB0aGlzIGxpc3Qgd2lsbCBiZSBpbnRhY3QsIGJ1dA0K PiA+Pj4gdGhlIHRocmVhZHMgdG8gd2hpY2ggYmVsb25nIHRoZSBidWZmZXJzIHdpbGwgbm8gbG9u Z2VyIGV4aXN0LiBTbywgSU1PLA0KPiA+Pj4gdGhlIGZvcmsgaGFuZGxlciBzaG91bGQgYWxzbyBm cmVlIGFsbCB0aGVzZSBidWZmZXJzIGFuZCByZXNldCB0aGUgbGlzdA0KPiA+Pj4gdG8gdGhlIGVt cHR5IHN0YXRlLg0KPiA+PiBGYW1vdXMgbGFzdCB3b3JkczogVGhhdCBzaG91bGQgd29yayB3aXRo b3V0IHR3ZWFraW5nLiBBIHByaW50X2J1ZmZlcg0KPiA+PiBvbmx5IGNvbnRhaW5zIGRhdGEgcmVm ZXJlbmNlcywgbm90aGluZyB0aGF0IHBvaW50cyB0byBzb21lIHVuY2xvbmVkIA0KPiB0aHJlYWQu DQo+ID4+DQo+ID4+IEphbg0KPiA+Pg0KPiA+PiAtLSANCj4gPj4gU2llbWVucyBBRywgQ29ycG9y YXRlIFRlY2hub2xvZ3ksIENUIFNFIDINCj4gPj4gQ29ycG9yYXRlIENvbXBldGVuY2UgQ2VudGVy IEVtYmVkZGVkIExpbnV4DQo+ID4gDQo+ID4gVG8gaGF2ZSBhIGZvcmsgc2F2ZSBydHByaW50IGxp YnJhcnkgaXQncyBuZWNlc3NhcnkgdG8NCj4gPiANCj4gPiAxLiBSZXNldCBydGRrIHRocmVhZCBi dWZmZXIgbGlzdA0KPiA+ICAgIA0KPiA+ICAgICBJIGhhdmUgbm8gaWRlYSB3aGVyZSB0byBsb29r IGF0IGZvciB0aGUgcnRkayB0aHJlYWQgYnVmZmVyIGxpc3QuIEluc2lkZSANCj4gPiBydF9wcmlu dC5jID8NCj4gDQo+IEl0J3MgYWxsIHRoZXJlLCBpdCdzIGNhbGxlZCBmaXJzdF9idWZmZXIuIEp1 c3Qgd2FsayB0aGF0IGxpc3QgYW5kIGNhbGwNCj4gY2xlYW51cF9idWZmZXJzIG9uIHRoZSBlbnRy aWVzLg0KPiANCj4gPiAgICANCj4gPiAyLiBTcGF3bmluZyBhbm90aGVyIHByaW50ZXIgdGhyZWFk DQo+ID4gICAgIHdpdGggY29kZSBsaWtlIDoNCj4gPiAJcHRocmVhZF9hdHRyX2luaXQoJnRoYXR0 cik7DQo+ID4gCXB0aHJlYWRfYXR0cl9zZXRzdGFja3NpemUoJnRoYXR0ciwgUFRIUkVBRF9TVEFD S19NSU4pOw0KPiA+IAlwdGhyZWFkX2NyZWF0ZSgmX19wcmludGVyX3RocmVhZCwgJnRoYXR0ciwg cHJpbnRlcl9sb29wLCBOVUxMKTsgDQo+ID4gDQo+ID4gDQo+ID4gSXMgdGhlcmUgYW55dGhpbmcg ZWxzZSB0byBkbyA/DQo+ID4gDQo+IA0KPiBQcm9iYWJseSBub3QsIGJ1dCBJIHdhcyBhbHJlYWR5 IHdyb25nIGJlZm9yZS4gOikNCj4gDQo+ID4gDQo+ID4gSSdtIGFsc28gcGxhbm5pbmcgdG8gYWRk IGEgZnVuY3Rpb24gdG8gdGhlIGxpYiBsaWtlIDoNCj4gPiANCj4gPiBydF9wcmludF90b19zeXNs b2coIGludCBwcmlvcml0eSApDQo+IA0KPiBCZXR0ZXIgcHJvdmlkZSBzb21lIHJ0X3N5c2xvZyhp bnQgcHJpb3JpdHksIGNoYXIgKmZvcm1hdCwgLi4uKSwNCj4gY29ycmVzcG9uZGluZyB0byB0aGUg c3RhbmRhcmQgc2VydmljZS4NCj4gDQo+IEphbg0KPiANCj4gLS0gDQo+IFNpZW1lbnMgQUcsIENv cnBvcmF0ZSBUZWNobm9sb2d5LCBDVCBTRSAyDQo+IENvcnBvcmF0ZSBDb21wZXRlbmNlIENlbnRl ciBFbWJlZGRlZCBMaW51eA0KDQoNCkkgaGF2ZSBkb25lIHNldmVyYWwgY2hhbmdlcyBpbiBydF9w cmludC5jIGFuZCBydGRrLmggdG8gZXh0ZW5kDQp0aGUgZnVuY3Rpb25hbGl0eSBvZiBydC1wcmlu dCBsaWIgYXMgZm9sbG93cyA6DQotIEZvcmsgc2F2ZSBpbml0aWFsaXNhdGlvbiBvZiB0aGUgbGli cmFyeSBieSB1c2luZyBwdGhyZWFkX2F0Zm9yaygpDQogIFRoZXJlIGFyZSBub3cgdHdvIGhvb2tz IGludGVncmF0ZWQgOg0KICAgIDEuIEEgcHJlcGFyZSBob29rIHdoaWNoIGlzIGNhbGxlZCB0byBw cmVwYXJlIHRoZSBmb3JrLiBUaGlzDQogICAgICAgIGhvb2sgY2xlYXJzIGFsbCBvcGVuIHByaW50 IGJ1ZmZlcnMNCiAgICAyLiBBIGNoaWxkIGhvb2sgd2hpY2ggaXMgY2FsbGVkIGFmdGVyIHRoZSBm b3JrIG9uIHRoZSBjaGlsZCBzaWRlLg0KICAgICAgIFRoaXMgaG9vayBjbGVhcnMgYWxzbyBhbGwg b3BlbiBwcmludCBidWZmZXJzIChqdXN0IG90IGJlIG9uIHRoZSBzYXZlIHNpZGUpDQogICAgICAg YW5kIGlzIHNwYXduaW5nIGFub3RoZXIgcHJpbnRlciB0aHJlYWQuDQoNCi0gQWRkaW5nIHR3byBh ZGRpdGlvbiBmdW5jdGlvbnMNCiAgICAxLiBydF9zeXNsb2coIGludCBwcmlvcml0eSwgY2hhciAq Zm9ybWF0LCAuLi4pDQogICAgICAgIHdoaWNoIHJlcG9ydHMgYWxsIG1lc3NhZ2VzIHRvIHRoZSBz eXNsb2csIHVzaW5nIHRoZSBwcmludCBidWZmZXJzIG9mIHJ0cHJpbnQNCiAgICAyLiBydF92c3lz bG9nKCBpbnQgcHJpb3JpdHksIGNoYXIgKmZvcm1hdCwgdmFfbGlzdCBhcmdzICkNCiAgICAgICAg c2FtZSBhcyBhYm92ZSBmb3IgdmFfbGlzdCBhcmd1bWVudHMuDQoNCkJvdGggY2hhbmdlcyBkbyBy dW4gaW4gbXkgYXBwbGljYXRpb24gYXMgZXhwZWN0ZWQuIEl0J3Mgbm93IHBvc3NpYmxlIHRvIHVz ZQ0KcnRfcHJpbnQtbGliIGluIGEgZGFlbW9uaXplZCBwcm9jZXNzIGFuZCBydF9wcmludCBvdXRw dXQgY2FuIGJlIGRpcmVjdGVkDQp0byBzeXNsb2cgdmlhIHJ0X3N5c2xvZy9ydF92c3lzbG9nLg0K DQoNCk9saXZlcg0KDQoNCg0KLS0tIHJ0ZGsuaC5vcmlnaW5hbAkyMDA3LTEyLTA5IDExOjQ2OjM2 LjAwMDAwMDAwMCArMDEwMA0KKysrIHJ0ZGsuaAkyMDA5LTEwLTA5IDExOjQ2OjUyLjc2NzI3MTEw MCArMDIwMA0KICAgICAgICAgICAgICAgICANCiBpbnQgcnRfdnByaW50Zihjb25zdCBjaGFyICpm b3JtYXQsIHZhX2xpc3QgYXJncyk7DQogaW50IHJ0X2ZwcmludGYoRklMRSAqc3RyZWFtLCBjb25z dCBjaGFyICpmb3JtYXQsIC4uLik7DQogaW50IHJ0X3ByaW50Zihjb25zdCBjaGFyICpmb3JtYXQs IC4uLik7DQordm9pZCBydF9zeXNsb2coIGludCBwcmlvcml0eSwgY2hhciAqZm9ybWF0LCAuLi4p Ow0KK3ZvaWQgcnRfdnN5c2xvZyhpbnQgcHJpb3JpdHksIGNoYXIgKmZvcm1hdCwgdmFfbGlzdCBh cmdzKTsNCisNCiANCiBpbnQgcnRfcHJpbnRfaW5pdChzaXplX3QgYnVmZmVyX3NpemUsIGNvbnN0 IGNoYXIgKm5hbWUpOw0KIHZvaWQgcnRfcHJpbnRfY2xlYW51cCh2b2lkKTsgDQoNCg0KLS0tIHJ0 X3ByaW50LmMub3JpZ2luYWwJMjAwOC0wOS0xMCAxMDozNjoyNy4wMDAwMDAwMDAgKzAyMDANCisr KyBydF9wcmludC5jCTIwMDktMTAtMDkgMTE6NDc6MTYuMDE0NDQzOTAwICswMjAwDQogICAgICAg ICAgICAgICAgIA0KICNpbmNsdWRlIDxzdGRsaWIuaD4NCiAjaW5jbHVkZSA8c3RyaW5nLmg+DQog I2luY2x1ZGUgPHVuaXN0ZC5oPg0KKyNpbmNsdWRlIDxzeXNsb2cuaD4NCiANCiAjaW5jbHVkZSA8 cnRkay5oPg0KICNpbmNsdWRlIDxhc20veGVub21haS9zeXN0ZW0uaD4NCiAgICAgICAgICAgICAg ICAgIA0KIA0KICNkZWZpbmUgUlRfUFJJTlRfTElORV9CUkVBSwkJMjU2DQogDQorI2RlZmluZSBS VF9QUklOVF9TWVNMT0dfU1RSRUFNCSgoRklMRSAqKS05OTk5KQ0KKw0KIHN0cnVjdCBlbnRyeV9o ZWFkIHsNCiAJRklMRSAqZGVzdDsNCiAJdWludDMyX3Qgc2VxX25vOw0KKwlpbnQgcHJpb3JpdHk7 DQogCWNoYXIgdGV4dFsxXTsNCiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOw0KIA0KICAgICAg ICAgICAgICAgICAgIA0KIA0KIHN0YXRpYyB2b2lkIGNsZWFudXBfYnVmZmVyKHN0cnVjdCBwcmlu dF9idWZmZXIgKmJ1ZmZlcik7DQogc3RhdGljIHZvaWQgcHJpbnRfYnVmZmVycyh2b2lkKTsNCitz dGF0aWMgdm9pZCBydF9wcmludF9yZWluaXRfYXRmb3JrX3ByZXBhcmUodm9pZCk7DQorc3RhdGlj IHZvaWQgcnRfcHJpbnRfcmVpbml0X2F0Zm9ya19jaGlsZCh2b2lkKTsNCiANCiAvKiAqKiogcnRf cHJpbnQgQVBJICoqKiAqLw0KIA0KLWludCBydF92ZnByaW50ZihGSUxFICpzdHJlYW0sIGNvbnN0 IGNoYXIgKmZvcm1hdCwgdmFfbGlzdCBhcmdzKQ0KK3N0YXRpYyBpbnQgcnRfcHJpbnRfdG9fYnVm ZmVyKEZJTEUgKnN0cmVhbSwgaW50IHByaW9yaXR5LCBjb25zdCBjaGFyICpmb3JtYXQsIHZhX2xp c3QgYXJncykNCiB7DQogCXN0cnVjdCBwcmludF9idWZmZXIgKmJ1ZmZlciA9IHB0aHJlYWRfZ2V0 c3BlY2lmaWMoX19idWZmZXJfa2V5KTsNCiAJb2ZmX3Qgd3JpdGVfcG9zLCByZWFkX3BvczsNCiAg ICAgICAgICAgICAgICAgICANCiAJCQkvKiBXcml0ZSBvdXQgZW1wdHkgZW50cnkgKi8NCiAJCQlo ZWFkID0gYnVmZmVyLT5yaW5nICsgd3JpdGVfcG9zOw0KIAkJCWhlYWQtPnNlcV9ubyA9IF9fc2Vx X25vOw0KKwkJCWhlYWQtPnByaW9yaXR5ID0gMDsNCiAJCQloZWFkLT50ZXh0WzBdID0gMDsNCiAN CiAJCQkvKiBGb3J3YXJkIHRvIHRoZSByaW5nIGJ1ZmZlciBzdGFydCAqLw0KICAgICAgICAgICAg ICAgICAgIA0KIAkvKiBJZiB3ZSB3ZXJlIGFibGUgdG8gd3JpdGUgc29tZSB0ZXh0LCBmaW5hbGlz ZSB0aGUgZW50cnkgKi8NCiAJaWYgKGxlbiA+IDApIHsNCiAJCWhlYWQtPnNlcV9ubyA9ICsrX19z ZXFfbm87DQorCQloZWFkLT5wcmlvcml0eSA9IHByaW9yaXR5Ow0KIAkJaGVhZC0+ZGVzdCA9IHN0 cmVhbTsNCiANCiAJCS8qIE1vdmUgZm9yd2FyZCBieSB0ZXh0IGFuZCBoZWFkIGxlbmd0aCAqLw0K ICAgICAgICAgICAgICAgICAgIA0KIAkJLyogQW4gZW1wdHkgZW50cnkgbWFya3MgdGhlIHdyYXAt YXJvdW5kICovDQogCQloZWFkID0gYnVmZmVyLT5yaW5nICsgd3JpdGVfcG9zOw0KIAkJaGVhZC0+ c2VxX25vID0gX19zZXFfbm87DQorCQloZWFkLT5wcmlvcml0eSA9IHByaW9yaXR5Ow0KIAkJaGVh ZC0+dGV4dFswXSA9IDA7DQogDQogCQl3cml0ZV9wb3MgPSAwOw0KICAgICAgICAgICAgICAgICAg ICANCiAJcmV0dXJuIHJlczsNCiB9DQogDQoraW50IHJ0X3ZmcHJpbnRmKEZJTEUgKnN0cmVhbSwg Y29uc3QgY2hhciAqZm9ybWF0LCB2YV9saXN0IGFyZ3MpDQorew0KKwlyZXR1cm4gcnRfcHJpbnRf dG9fYnVmZmVyKCBzdHJlYW0sIDAsIGZvcm1hdCwgYXJncyk7DQorfQ0KKw0KIGludCBydF92cHJp bnRmKGNvbnN0IGNoYXIgKmZvcm1hdCwgdmFfbGlzdCBhcmdzKQ0KIHsNCiAJcmV0dXJuIHJ0X3Zm cHJpbnRmKHN0ZG91dCwgZm9ybWF0LCBhcmdzKTsNCiAgICAgICAgICAgICAgICAgICAgDQogCXJl dHVybiBuOw0KIH0NCiANCit2b2lkIHJ0X3N5c2xvZyhpbnQgcHJpb3JpdHksIGNoYXIgKmZvcm1h dCwgLi4uKQ0KK3sNCisJdmFfbGlzdCBhcmdzOw0KKw0KKwl2YV9zdGFydChhcmdzLCBmb3JtYXQp Ow0KKwlydF9wcmludF90b19idWZmZXIoUlRfUFJJTlRfU1lTTE9HX1NUUkVBTSwgcHJpb3JpdHks IGZvcm1hdCwgYXJncyk7DQorCXZhX2VuZChhcmdzKTsNCisNCisJcmV0dXJuOw0KK30NCisNCit2 b2lkIHJ0X3ZzeXNsb2coaW50IHByaW9yaXR5LCBjaGFyICpmb3JtYXQsIHZhX2xpc3QgYXJncyAp DQorew0KKw0KKwlydF9wcmludF90b19idWZmZXIoUlRfUFJJTlRfU1lTTE9HX1NUUkVBTSwgcHJp b3JpdHksIGZvcm1hdCwgYXJncyk7DQorDQorCXJldHVybjsNCit9DQorDQogc3RhdGljIHZvaWQg c2V0X2J1ZmZlcl9uYW1lKHN0cnVjdCBwcmludF9idWZmZXIgKmJ1ZmZlciwgY29uc3QgY2hhciAq bmFtZSkNCiB7DQogCWludCBuOw0KICAgICAgICAgICAgICAgICAgICANCiANCiAJCWlmIChsZW4p IHsNCiAJCQkvKiBQcmludCBvdXQgbm9uLWVtcHR5IGVudHJ5IGFuZCBwcm9jZWVkICovDQotCQkJ ZnByaW50ZihoZWFkLT5kZXN0LCAiJXMiLCBoZWFkLT50ZXh0KTsNCisJCQkvKiBDaGVjayBpZiBv dXRwdXQgZ29lcyB0byBzeXNsb2cgKi8NCisJCQlpZiAoaGVhZC0+ZGVzdCA9PSBSVF9QUklOVF9T WVNMT0dfU1RSRUFNKSB7DQorCQkJICAgCXN5c2xvZyggaGVhZC0+cHJpb3JpdHksICIlcyIsIGhl YWQtPnRleHQgKTsNCisJCQl9IGVsc2Ugew0KKwkJCQkvKiBPdXRwdXQgZ29lcyB0byBzcGVjaWZp ZWQgc3RyZWFtICovDQorCQkJCWZwcmludGYoaGVhZC0+ZGVzdCwgIiVzIiwgaGVhZC0+dGV4dCk7 DQorCQkJfQ0KKw0KIAkJCXJlYWRfcG9zICs9IHNpemVvZigqaGVhZCkgKyBsZW47DQogCQl9IGVs c2Ugew0KIAkJCS8qIEVtcHRyeSBlbnRyaWVzIG1hcmsgdGhlIHdyYXAtYXJvdW5kICovDQogICAg ICAgICAgICAgICAgICAgIA0KIAl9DQogfQ0KIA0KK3N0YXRpYyB2b2lkIHJ0X3ByaW50X3JlaW5p dF9hdGZvcmtfY2hpbGQodm9pZCkNCit7DQorCXB0aHJlYWRfYXR0cl90IHRoYXR0cjsNCisJc3Ry dWN0IHByaW50X2J1ZmZlciAqYnVmZmVyLCpuZXh0X2I7DQorDQorCS8qIENsZWFuIHBhcmVudCBw cm9jZXNzIGJ1ZmZlciBsaXN0IC0NCisJICAgU2hvdWxkbid0IGJlIG5lY2Vzc2FyeSBiZWNhdXNl IGFsc28gZG9uZSBhdCBhdGZvcmtfcGFyZW50DQorCSovDQorCWJ1ZmZlciA9IF9fZmlyc3RfYnVm ZmVyOw0KKwl3aGlsZSAoYnVmZmVyKSB7DQorCQluZXh0X2IgPSBidWZmZXItPm5leHQ7DQorCQlj bGVhbnVwX2J1ZmZlcihidWZmZXIpOw0KKwkJYnVmZmVyID0gbmV4dF9iOw0KKwl9DQorDQorCS8q IFRocm93IG5ldyB0aHJlYWQgd2l0aCBwcmludGVyIGxvb3AgaW4gY2hpbGQgcHJvY2VzcyAqLw0K KwlwdGhyZWFkX2F0dHJfaW5pdCgmdGhhdHRyKTsNCisJcHRocmVhZF9hdHRyX3NldHN0YWNrc2l6 ZSgmdGhhdHRyLCBQVEhSRUFEX1NUQUNLX01JTik7DQorCXB0aHJlYWRfY3JlYXRlKCZfX3ByaW50 ZXJfdGhyZWFkLCAmdGhhdHRyLCBwcmludGVyX2xvb3AsIE5VTEwpOw0KKwlwdGhyZWFkX2F0Zm9y ayhydF9wcmludF9yZWluaXRfYXRmb3JrX3ByZXBhcmUsTlVMTCxydF9wcmludF9yZWluaXRfYXRm b3JrX2NoaWxkKTsNCit9DQorDQorc3RhdGljIHZvaWQgcnRfcHJpbnRfcmVpbml0X2F0Zm9ya19w cmVwYXJlKHZvaWQpDQorew0KKwlzdHJ1Y3QgcHJpbnRfYnVmZmVyICpidWZmZXIsKm5leHRfYjsN CisNCisJLyogQ2xlYW4gcGFyZW50IHByb2Nlc3MgYnVmZmVyIGxpc3QgKi8NCisJYnVmZmVyID0g X19maXJzdF9idWZmZXI7DQorCXdoaWxlIChidWZmZXIpIHsNCisJCW5leHRfYiA9IGJ1ZmZlci0+ bmV4dDsNCisJCWNsZWFudXBfYnVmZmVyKGJ1ZmZlcik7DQorCQlidWZmZXIgPSBuZXh0X2I7DQor CX0NCit9DQorDQogdm9pZCBfX3J0X3ByaW50X2luaXQodm9pZCkNCiB7DQogCXB0aHJlYWRfYXR0 cl90IHRoYXR0cjsNCiAgICAgICAgICAgICAgICAgICANCiAJcHRocmVhZF9hdHRyX2luaXQoJnRo YXR0cik7DQogCXB0aHJlYWRfYXR0cl9zZXRzdGFja3NpemUoJnRoYXR0ciwgUFRIUkVBRF9TVEFD S19NSU4pOw0KIAlwdGhyZWFkX2NyZWF0ZSgmX19wcmludGVyX3RocmVhZCwgJnRoYXR0ciwgcHJp bnRlcl9sb29wLCBOVUxMKTsNCisJcHRocmVhZF9hdGZvcmsocnRfcHJpbnRfcmVpbml0X2F0Zm9y a19wcmVwYXJlLE5VTEwscnRfcHJpbnRfcmVpbml0X2F0Zm9ya19jaGlsZCk7DQogfSANCg0KDQoN Cg0KVG86IGphbi5raXN6a2FAc2llbWVucy5jb20NCkNjOiBnaWxsZXMuY2hhbnRlcGVyZHJpeEB4 ZW5vbWFpLm9yZw0KICAgIHhlbm9tYWktaGVscEBnbmEub3JnDQo=