From mboxrd@z Thu Jan 1 00:00:00 1970 From: Adam Nielsen Subject: Re: [PATCH 2/2 v5] New netfilter target to trigger LED devices Date: Thu, 19 Feb 2009 08:20:15 +1000 Message-ID: <499C899F.5010002@shikadi.net> References: <49934702.9060909@shikadi.net> <4993B34C.1020307@trash.net> <49940D58.3040404@shikadi.net> <49998E6C.2030504@trash.net> <1234878654.5312.34.camel@dax.rpnet.com> <499C17C2.9020502@trash.net> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------------080700010302060105070503" Cc: Richard Purdie , Netfilter Developer Mailing List To: Patrick McHardy Return-path: Received: from vitalin.sorra.shikadi.net ([64.71.152.201]:3561 "EHLO vitalin.sorra.shikadi.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754581AbZBRWUT (ORCPT ); Wed, 18 Feb 2009 17:20:19 -0500 In-Reply-To: <499C17C2.9020502@trash.net> Sender: netfilter-devel-owner@vger.kernel.org List-ID: This is a multi-part message in MIME format. --------------080700010302060105070503 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit > Adam, I wanted to apply this, but I get rejects for every single > existing file. There appears to be some whitespace damage, please > resend as attachment. Hmm, that's odd - Thunderbird must not like sending tabs - sorry about that! I hope the attached files work better. Cheers, Adam. --------------080700010302060105070503 Content-Type: text/plain; name="kernel-leds.patch" Content-Transfer-Encoding: base64 Content-Disposition: inline; filename="kernel-leds.patch" S2VybmVsIG1vZHVsZSBwcm92aWRpbmcgaW1wbGVtZW50YXRpb24gb2YgTEVEIG5ldGZpbHRl ciB0YXJnZXQuICBFYWNoIAppbnN0YW5jZSBvZiB0aGUgdGFyZ2V0IGFwcGVhcnMgYXMgYSBs ZWQtdHJpZ2dlciBkZXZpY2UsIHdoaWNoIGNhbiBiZSAKYXNzb2NpYXRlZCB3aXRoIG9uZSBv ciBtb3JlIExFRHMgaW4gL3N5cy9jbGFzcy9sZWRzLwoKQWNrZWQtYnk6IFJpY2hhcmQgUHVy ZGllIDxycHVyZGllQGxpbnV4LmludGVsLmNvbT4KU2lnbmVkLW9mZi1ieTogQWRhbSBOaWVs c2VuIDxhLm5pZWxzZW5Ac2hpa2FkaS5uZXQ+CgotLS0KCmRpZmYgLXVyTiBsaW51eC0yLjYu MjguMy1vcmlnL2RyaXZlcnMvbGVkcy9LY29uZmlnIGxpbnV4LTIuNi4yOC4zL2RyaXZlcnMv bGVkcy9LY29uZmlnCi0tLSBsaW51eC0yLjYuMjguMy1vcmlnL2RyaXZlcnMvbGVkcy9LY29u ZmlnCTIwMDktMDItMDMgMDQ6MTI6MTAuMDAwMDAwMDAwICsxMDAwCisrKyBsaW51eC0yLjYu MjguMy9kcml2ZXJzL2xlZHMvS2NvbmZpZwkyMDA5LTAyLTA4IDIyOjQ2OjA2Ljg0NDYyNjk3 MSArMTAwMApAQCAtMjE3LDQgKzIxNyw3IEBACiAJICBUaGlzIGFsbG93cyBMRURzIHRvIGJl IGluaXRpYWxpc2VkIGluIHRoZSBPTiBzdGF0ZS4KIAkgIElmIHVuc3VyZSwgc2F5IFkuCiAK K2NvbW1lbnQgImlwdGFibGVzIHRyaWdnZXIgaXMgdW5kZXIgTmV0ZmlsdGVyIGNvbmZpZyAo TEVEIHRhcmdldCkiCisJZGVwZW5kcyBvbiBMRURTX1RSSUdHRVJTCisKIGVuZGlmICMgTkVX X0xFRFMKZGlmZiAtdXJOIGxpbnV4LTIuNi4yOC4zLW9yaWcvaW5jbHVkZS9saW51eC9uZXRm aWx0ZXIvS2J1aWxkIGxpbnV4LTIuNi4yOC4zL2luY2x1ZGUvbGludXgvbmV0ZmlsdGVyL0ti dWlsZAotLS0gbGludXgtMi42LjI4LjMtb3JpZy9pbmNsdWRlL2xpbnV4L25ldGZpbHRlci9L YnVpbGQJMjAwOS0wMi0wMyAwNDoxMjoxMC4wMDAwMDAwMDAgKzEwMDAKKysrIGxpbnV4LTIu Ni4yOC4zL2luY2x1ZGUvbGludXgvbmV0ZmlsdGVyL0tidWlsZAkyMDA5LTAyLTA4IDIyOjQ2 OjA2LjkxMTU2MDkxMyArMTAwMApAQCAtNyw2ICs3LDcgQEAKIGhlYWRlci15ICs9IHh0X0NP Tk5NQVJLLmgKIGhlYWRlci15ICs9IHh0X0NPTk5TRUNNQVJLLmgKIGhlYWRlci15ICs9IHh0 X0RTQ1AuaAoraGVhZGVyLXkgKz0geHRfTEVELmgKIGhlYWRlci15ICs9IHh0X01BUksuaAog aGVhZGVyLXkgKz0geHRfTkZMT0cuaAogaGVhZGVyLXkgKz0geHRfTkZRVUVVRS5oCmRpZmYg LXVyTiBsaW51eC0yLjYuMjguMy1vcmlnL2luY2x1ZGUvbGludXgvbmV0ZmlsdGVyL3h0X0xF RC5oIGxpbnV4LTIuNi4yOC4zL2luY2x1ZGUvbGludXgvbmV0ZmlsdGVyL3h0X0xFRC5oCi0t LSBsaW51eC0yLjYuMjguMy1vcmlnL2luY2x1ZGUvbGludXgvbmV0ZmlsdGVyL3h0X0xFRC5o CTE5NzAtMDEtMDEgMTA6MDA6MDAuMDAwMDAwMDAwICsxMDAwCisrKyBsaW51eC0yLjYuMjgu My9pbmNsdWRlL2xpbnV4L25ldGZpbHRlci94dF9MRUQuaAkyMDA5LTAyLTEyIDA3OjI5OjE5 LjAzMzYzMTczNSArMTAwMApAQCAtMCwwICsxLDEzIEBACisjaWZuZGVmIF9YVF9MRURfSAor I2RlZmluZSBfWFRfTEVEX0gKKworc3RydWN0IHh0X2xlZF9pbmZvIHsKKwljaGFyIGlkWzI3 XTsgICAgICAgIC8qIFVuaXF1ZSBJRCBmb3IgdGhpcyB0cmlnZ2VyIGluIHRoZSBMRUQgY2xh c3MgKi8KKwlfX3U4IGFsd2F5c19ibGluazsgIC8qIEJsaW5rIGV2ZW4gaWYgdGhlIExFRCBp cyBhbHJlYWR5IG9uICovCisJX191MzIgZGVsYXk7ICAgICAgICAvKiBEZWxheSB1bnRpbCBM RUQgaXMgc3dpdGNoZWQgb2ZmIGFmdGVyIHRyaWdnZXIgKi8KKworCS8qIEtlcm5lbCBkYXRh IHVzZWQgaW4gdGhlIG1vZHVsZSAqLworCXZvaWQgKmludGVybmFsX2RhdGEgX19hdHRyaWJ1 dGVfXygoYWxpZ25lZCg4KSkpOworfTsKKworI2VuZGlmIC8qIF9YVF9MRURfSCAqLwpkaWZm IC11ck4gbGludXgtMi42LjI4LjMtb3JpZy9uZXQvbmV0ZmlsdGVyL0tjb25maWcgbGludXgt Mi42LjI4LjMvbmV0L25ldGZpbHRlci9LY29uZmlnCi0tLSBsaW51eC0yLjYuMjguMy1vcmln L25ldC9uZXRmaWx0ZXIvS2NvbmZpZwkyMDA5LTAyLTAzIDA0OjEyOjEwLjAwMDAwMDAwMCAr MTAwMAorKysgbGludXgtMi42LjI4LjMvbmV0L25ldGZpbHRlci9LY29uZmlnCTIwMDktMDIt MDggMjI6NDY6MDYuOTgyNjMxMDc5ICsxMDAwCkBAIC0zNTcsNiArMzU3LDMwIEBACiAKIAkg IFRvIGNvbXBpbGUgaXQgYXMgYSBtb2R1bGUsIGNob29zZSBNIGhlcmUuICBJZiB1bnN1cmUs IHNheSBOLgogCitjb25maWcgTkVURklMVEVSX1hUX1RBUkdFVF9MRUQKKwl0cmlzdGF0ZSAn IkxFRCIgdGFyZ2V0IHN1cHBvcnQnCisJZGVwZW5kcyBvbiBMRURTX0NMQVNTCisJZGVwZW5k cyBvbiBORVRGSUxURVJfQURWQU5DRUQKKwloZWxwCisJICBUaGlzIG9wdGlvbiBhZGRzIGEg YExFRCcgdGFyZ2V0LCB3aGljaCBhbGxvd3MgeW91IHRvIGJsaW5rIExFRHMgaW4KKwkgIHJl c3BvbnNlIHRvIHBhcnRpY3VsYXIgcGFja2V0cyBwYXNzaW5nIHRocm91Z2ggeW91ciBtYWNo aW5lLgorCisJICBUaGlzIGNhbiBiZSB1c2VkIHRvIHR1cm4gYSBzcGFyZSBMRUQgaW50byBh IG5ldHdvcmsgYWN0aXZpdHkgTEVELAorCSAgd2hpY2ggb25seSBmbGFzaGVzIGluIHJlc3Bv bnNlIHRvIEZUUCB0cmFuc2ZlcnMsIGZvciBleGFtcGxlLiAgT3IKKwkgIHlvdSBjb3VsZCBo YXZlIGFuIExFRCB3aGljaCBsaWdodHMgdXAgZm9yIGEgbWludXRlIG9yIHR3byBldmVyeSB0 aW1lCisJICBzb21lYm9keSBjb25uZWN0cyB0byB5b3VyIG1hY2hpbmUgdmlhIFNTSC4KKwor CSAgWW91IHdpbGwgbmVlZCBzdXBwb3J0IGZvciB0aGUgImxlZCIgY2xhc3MgdG8gbWFrZSB0 aGlzIHdvcmsuCisKKwkgIFRvIGNyZWF0ZSBhbiBMRUQgdHJpZ2dlciBmb3IgaW5jb21pbmcg U1NIIHRyYWZmaWM6CisJICAgIGlwdGFibGVzIC1BIElOUFVUIC1wIHRjcCAtLWRwb3J0IDIy IC1qIExFRCAtLWxlZC10cmlnZ2VyLWlkIHNzaCAtLWxlZC1kZWxheSAxMDAwCisKKwkgIFRo ZW4gYXR0YWNoIHRoZSBuZXcgdHJpZ2dlciB0byBhbiBMRUQgb24geW91ciBzeXN0ZW06CisJ ICAgIGVjaG8gbmV0ZmlsdGVyLXNzaCA+IC9zeXMvY2xhc3MvbGVkcy88bGVkbmFtZT4vdHJp Z2dlcgorCisJICBGb3IgbW9yZSBpbmZvcm1hdGlvbiBvbiB0aGUgTEVEcyBhdmFpbGFibGUg b24geW91ciBzeXN0ZW0sIHNlZQorCSAgRG9jdW1lbnRhdGlvbi9sZWRzLWNsYXNzLnR4dAor CiBjb25maWcgTkVURklMVEVSX1hUX1RBUkdFVF9NQVJLCiAJdHJpc3RhdGUgJyJNQVJLIiB0 YXJnZXQgc3VwcG9ydCcKIAlkZWZhdWx0IG0gaWYgTkVURklMVEVSX0FEVkFOQ0VEPW4KZGlm ZiAtdXJOIGxpbnV4LTIuNi4yOC4zLW9yaWcvbmV0L25ldGZpbHRlci9NYWtlZmlsZSBsaW51 eC0yLjYuMjguMy9uZXQvbmV0ZmlsdGVyL01ha2VmaWxlCi0tLSBsaW51eC0yLjYuMjguMy1v cmlnL25ldC9uZXRmaWx0ZXIvTWFrZWZpbGUJMjAwOS0wMi0wMyAwNDoxMjoxMC4wMDAwMDAw MDAgKzEwMDAKKysrIGxpbnV4LTIuNi4yOC4zL25ldC9uZXRmaWx0ZXIvTWFrZWZpbGUJMjAw OS0wMi0wOCAyMjo0NjowNy4wMzE2MzIwNzIgKzEwMDAKQEAgLTQ1LDYgKzQ1LDcgQEAKIG9i ai0kKENPTkZJR19ORVRGSUxURVJfWFRfVEFSR0VUX0NPTk5NQVJLKSArPSB4dF9DT05OTUFS Sy5vCiBvYmotJChDT05GSUdfTkVURklMVEVSX1hUX1RBUkdFVF9DT05OU0VDTUFSSykgKz0g eHRfQ09OTlNFQ01BUksubwogb2JqLSQoQ09ORklHX05FVEZJTFRFUl9YVF9UQVJHRVRfRFND UCkgKz0geHRfRFNDUC5vCitvYmotJChDT05GSUdfTkVURklMVEVSX1hUX1RBUkdFVF9MRUQp ICs9IHh0X0xFRC5vCiBvYmotJChDT05GSUdfTkVURklMVEVSX1hUX1RBUkdFVF9NQVJLKSAr PSB4dF9NQVJLLm8KIG9iai0kKENPTkZJR19ORVRGSUxURVJfWFRfVEFSR0VUX05GTE9HKSAr PSB4dF9ORkxPRy5vCiBvYmotJChDT05GSUdfTkVURklMVEVSX1hUX1RBUkdFVF9ORlFVRVVF KSArPSB4dF9ORlFVRVVFLm8KZGlmZiAtdXJOIGxpbnV4LTIuNi4yOC4zLW9yaWcvbmV0L25l dGZpbHRlci94dF9MRUQuYyBsaW51eC0yLjYuMjguMy9uZXQvbmV0ZmlsdGVyL3h0X0xFRC5j Ci0tLSBsaW51eC0yLjYuMjguMy1vcmlnL25ldC9uZXRmaWx0ZXIveHRfTEVELmMJMTk3MC0w MS0wMSAxMDowMDowMC4wMDAwMDAwMDAgKzEwMDAKKysrIGxpbnV4LTIuNi4yOC4zL25ldC9u ZXRmaWx0ZXIveHRfTEVELmMJMjAwOS0wMi0xMiAyMToyMzo0Mi4wODE5OTAwMjggKzEwMDAK QEAgLTAsMCArMSwxNjIgQEAKKy8qCisgKiB4dF9MRUQuYyAtIG5ldGZpbHRlciB0YXJnZXQg dG8gbWFrZSBMRURzIGJsaW5rIHVwb24gcGFja2V0IG1hdGNoZXMKKyAqCisgKiBDb3B5cmln aHQgKEMpIDIwMDggQWRhbSBOaWVsc2VuIDxhLm5pZWxzZW5Ac2hpa2FkaS5uZXQ+CisgKgor ICogVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRl IGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdl bmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0 d2FyZSBGb3VuZGF0aW9uOyB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UuCisgKgorICogVGhp cyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1 c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUg aW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9S IEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGlj IExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVj ZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxv bmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdh cmUKKyAqIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxv b3IsIEJvc3RvbiwgTUEKKyAqIDAyMTEwLTEzMDEgVVNBLgorICoKKyAqLworCisjaW5jbHVk ZSA8bGludXgvbW9kdWxlLmg+CisjaW5jbHVkZSA8bGludXgvc2tidWZmLmg+CisjaW5jbHVk ZSA8bGludXgvbmV0ZmlsdGVyL3hfdGFibGVzLmg+CisjaW5jbHVkZSA8bGludXgvbGVkcy5o PgorI2luY2x1ZGUgPGxpbnV4L211dGV4Lmg+CisKKyNpbmNsdWRlIDxsaW51eC9uZXRmaWx0 ZXIveHRfTEVELmg+CisKK01PRFVMRV9MSUNFTlNFKCJHUEwiKTsKK01PRFVMRV9BVVRIT1Io IkFkYW0gTmllbHNlbiA8YS5uaWVsc2VuQHNoaWthZGkubmV0PiIpOworTU9EVUxFX0RFU0NS SVBUSU9OKCJYdGFibGVzOiB0cmlnZ2VyIExFRCBkZXZpY2VzIG9uIHBhY2tldCBtYXRjaCIp OworCisvKgorICogVGhpcyBpcyBkZWNsYXJlZCBpbiBoZXJlICh0aGUga2VybmVsIG1vZHVs ZSkgb25seSwgdG8gYXZvaWQgaGF2aW5nIHRoZXNlCisgKiBkZXBlbmRlbmNpZXMgaW4gdXNl cnNwYWNlIGNvZGUuICBUaGlzIGlzIHdoYXQgeHRfbGVkX2luZm8uaW50ZXJuYWxfZGF0YQor ICogcG9pbnRzIHRvLgorICovCitzdHJ1Y3QgeHRfbGVkX2luZm9faW50ZXJuYWwgeworCXN0 cnVjdCBsZWRfdHJpZ2dlciBuZXRmaWx0ZXJfbGVkX3RyaWdnZXI7CisJc3RydWN0IHRpbWVy X2xpc3QgdGltZXI7Cit9OworCitzdGF0aWMgdW5zaWduZWQgaW50CitsZWRfdGcoc3RydWN0 IHNrX2J1ZmYgKnNrYiwgY29uc3Qgc3RydWN0IHh0X3RhcmdldF9wYXJhbSAqcGFyKQorewor CWNvbnN0IHN0cnVjdCB4dF9sZWRfaW5mbyAqbGVkaW5mbyA9IHBhci0+dGFyZ2luZm87CisJ Lypub2NvbnN0Ki9zdHJ1Y3QgeHRfbGVkX2luZm9faW50ZXJuYWwgKmxlZGludGVybmFsID0g bGVkaW5mby0+aW50ZXJuYWxfZGF0YTsKKworCS8qCisJICogSWYgImFsd2F5cyBibGluayIg aXMgZW5hYmxlZCwgYW5kIHRoZXJlJ3Mgc3RpbGwgc29tZSB0aW1lIHVudGlsIHRoZQorCSAq IExFRCB3aWxsIHN3aXRjaCBvZmYsIGJyaWVmbHkgc3dpdGNoIGl0IG9mZiBub3cuCisJICov CisJaWYgKChsZWRpbmZvLT5kZWxheSA+IDApICYmIGxlZGluZm8tPmFsd2F5c19ibGluawor CQkmJiB0aW1lcl9wZW5kaW5nKCZsZWRpbnRlcm5hbC0+dGltZXIpKQorCQkJbGVkX3RyaWdn ZXJfZXZlbnQoJmxlZGludGVybmFsLT5uZXRmaWx0ZXJfbGVkX3RyaWdnZXIsCisJCQkJTEVE X09GRik7CisKKwlsZWRfdHJpZ2dlcl9ldmVudCgmbGVkaW50ZXJuYWwtPm5ldGZpbHRlcl9s ZWRfdHJpZ2dlciwgTEVEX0ZVTEwpOworCisJLyogSWYgdGhlcmUncyBhIHBvc2l0aXZlIGRl bGF5LCBzdGFydC91cGRhdGUgdGhlIHRpbWVyICovCisJaWYgKGxlZGluZm8tPmRlbGF5ID4g MCkgeworCQltb2RfdGltZXIoJmxlZGludGVybmFsLT50aW1lciwKKwkJCWppZmZpZXMgKyBt c2Vjc190b19qaWZmaWVzKGxlZGluZm8tPmRlbGF5KSk7CisKKwkvKiBPdGhlcndpc2UgaWYg dGhlcmUgd2FzIG5vIGRlbGF5IGdpdmVuLCBibGluayBhcyBmYXN0IGFzIHBvc3NpYmxlICov CisJfSBlbHNlIGlmIChsZWRpbmZvLT5kZWxheSA9PSAwKSB7CisJCWxlZF90cmlnZ2VyX2V2 ZW50KCZsZWRpbnRlcm5hbC0+bmV0ZmlsdGVyX2xlZF90cmlnZ2VyLCBMRURfT0ZGKTsKKwl9 CisKKwkvKiBlbHNlIHRoZSBkZWxheSBpcyBuZWdhdGl2ZSwgd2hpY2ggbWVhbnMgc3dpdGNo IG9uIGFuZCBzdGF5IG9uICovCisKKwlyZXR1cm4gWFRfQ09OVElOVUU7Cit9CisKK3N0YXRp YyB2b2lkIGxlZF90aW1lb3V0X2NhbGxiYWNrKHVuc2lnbmVkIGxvbmcgZGF0YSkKK3sKKwlz dHJ1Y3QgeHRfbGVkX2luZm8gKmxlZGluZm8gPSAoc3RydWN0IHh0X2xlZF9pbmZvICopZGF0 YTsKKwlzdHJ1Y3QgeHRfbGVkX2luZm9faW50ZXJuYWwgKmxlZGludGVybmFsID0gbGVkaW5m by0+aW50ZXJuYWxfZGF0YTsKKworCWxlZF90cmlnZ2VyX2V2ZW50KCZsZWRpbnRlcm5hbC0+ bmV0ZmlsdGVyX2xlZF90cmlnZ2VyLCBMRURfT0ZGKTsKK30KKworc3RhdGljIGJvb2wgbGVk X3RnX2NoZWNrKGNvbnN0IHN0cnVjdCB4dF90Z2Noa19wYXJhbSAqcGFyKQoreworCS8qbm9j b25zdCovIHN0cnVjdCB4dF9sZWRfaW5mbyAqbGVkaW5mbyA9IHBhci0+dGFyZ2luZm87CisJ c3RydWN0IHh0X2xlZF9pbmZvX2ludGVybmFsICpsZWRpbnRlcm5hbDsKKwlpbnQgZXJyOwor CisJaWYgKGxlZGluZm8tPmlkWzBdID09ICdcMCcpIHsKKwkJcHJpbnRrKEtFUk5fRVJSIEtC VUlMRF9NT0ROQU1FICI6IE5vICdpZCcgcGFyYW1ldGVyIGdpdmVuLlxuIik7CisJCXJldHVy biBmYWxzZTsKKwl9CisKKwlsZWRpbnRlcm5hbCA9IGt6YWxsb2Moc2l6ZW9mKHN0cnVjdCB4 dF9sZWRfaW5mb19pbnRlcm5hbCksIEdGUF9LRVJORUwpOworCWlmICghbGVkaW50ZXJuYWwp IHsKKwkJcHJpbnRrKEtFUk5fQ1JJVCBLQlVJTERfTU9ETkFNRSAiOiBvdXQgb2YgbWVtb3J5 XG4iKTsKKwkJcmV0dXJuIGZhbHNlOworCX0KKworCWxlZGludGVybmFsLT5uZXRmaWx0ZXJf bGVkX3RyaWdnZXIubmFtZSA9IGxlZGluZm8tPmlkOworCisJZXJyID0gbGVkX3RyaWdnZXJf cmVnaXN0ZXIoJmxlZGludGVybmFsLT5uZXRmaWx0ZXJfbGVkX3RyaWdnZXIpOworCWlmIChl cnIpIHsKKwkJcHJpbnRrKEtFUk5fQ1JJVCBLQlVJTERfTU9ETkFNRQorCQkJIjogbGVkX3Ry aWdnZXJfcmVnaXN0ZXIoKSBmYWlsZWRcbiIpOworCQlpZiAoZXJyID09IC1FRVhJU1QpCisJ CQlwcmludGsoS0VSTl9FUlIgS0JVSUxEX01PRE5BTUUKKwkJCQkiOiBUcmlnZ2VyIG5hbWUg aXMgYWxyZWFkeSBpbiB1c2UuXG4iKTsKKwkJZ290byBleGl0X2FsbG9jOworCX0KKworCS8q IFNlZSBpZiB3ZSBuZWVkIHRvIHNldCB1cCBhIHRpbWVyICovCisJaWYgKGxlZGluZm8tPmRl bGF5ID4gMCkKKwkJc2V0dXBfdGltZXIoJmxlZGludGVybmFsLT50aW1lciwgbGVkX3RpbWVv dXRfY2FsbGJhY2ssCisJCQkodW5zaWduZWQgbG9uZykgbGVkaW5mbyk7CisKKwlsZWRpbmZv LT5pbnRlcm5hbF9kYXRhID0gbGVkaW50ZXJuYWw7CisKKwlyZXR1cm4gdHJ1ZTsKKworZXhp dF9hbGxvYzoKKwlrZnJlZShsZWRpbnRlcm5hbCk7CisKKwlyZXR1cm4gZmFsc2U7Cit9CisK K3N0YXRpYyB2b2lkIGxlZF90Z19kZXN0cm95KGNvbnN0IHN0cnVjdCB4dF90Z2R0b3JfcGFy YW0gKnBhcikKK3sKKwljb25zdCBzdHJ1Y3QgeHRfbGVkX2luZm8gKmxlZGluZm8gPSBwYXIt PnRhcmdpbmZvOworCS8qbm9jb25zdCovc3RydWN0IHh0X2xlZF9pbmZvX2ludGVybmFsICps ZWRpbnRlcm5hbCA9IGxlZGluZm8tPmludGVybmFsX2RhdGE7CisKKwlpZiAobGVkaW5mby0+ ZGVsYXkgPiAwKQorCQlkZWxfdGltZXJfc3luYygmbGVkaW50ZXJuYWwtPnRpbWVyKTsKKwor CWxlZF90cmlnZ2VyX3VucmVnaXN0ZXIoJmxlZGludGVybmFsLT5uZXRmaWx0ZXJfbGVkX3Ry aWdnZXIpOworCWtmcmVlKGxlZGludGVybmFsKTsKK30KKworc3RhdGljIHN0cnVjdCB4dF90 YXJnZXQgbGVkX3RnX3JlZyBfX3JlYWRfbW9zdGx5ID0geworCS5uYW1lCQk9ICJMRUQiLAor CS5yZXZpc2lvbgk9IDAsCisJLmZhbWlseQkJPSBORlBST1RPX1VOU1BFQywKKwkudGFyZ2V0 CQk9IGxlZF90ZywKKwkudGFyZ2V0c2l6ZQk9IFhUX0FMSUdOKHNpemVvZihzdHJ1Y3QgeHRf bGVkX2luZm8pKSwKKwkuY2hlY2tlbnRyeQk9IGxlZF90Z19jaGVjaywKKwkuZGVzdHJveQk9 IGxlZF90Z19kZXN0cm95LAorCS5tZQkJPSBUSElTX01PRFVMRSwKK307CisKK3N0YXRpYyBp bnQgX19pbml0IGxlZF90Z19pbml0KHZvaWQpCit7CisJcmV0dXJuIHh0X3JlZ2lzdGVyX3Rh cmdldCgmbGVkX3RnX3JlZyk7Cit9CisKK3N0YXRpYyB2b2lkIF9fZXhpdCBsZWRfdGdfZXhp dCh2b2lkKQoreworCXh0X3VucmVnaXN0ZXJfdGFyZ2V0KCZsZWRfdGdfcmVnKTsKK30KKwor bW9kdWxlX2luaXQobGVkX3RnX2luaXQpOworbW9kdWxlX2V4aXQobGVkX3RnX2V4aXQpOwo= --------------080700010302060105070503 Content-Type: text/plain; name="netfilter-leds.patch" Content-Transfer-Encoding: base64 Content-Disposition: inline; filename="netfilter-leds.patch" QWRkIGEgbmV3ICJMRUQiIHRhcmdldCB0byBpcHRhYmxlcywgd2hpY2ggYWxsb3dzIExFRHMg dG8gYmxpbmsgaW4KcmVzcG9uc2UgdG8gbWF0Y2hpbmcgcnVsZXMuCgpTaWduZWQtb2ZmLWJ5 OiBBZGFtIE5pZWxzZW4gPGEubmllbHNlbkBzaGlrYWRpLm5ldD4KCi0tLQoKZGlmZiAtLWdp dCBhL2V4dGVuc2lvbnMvbGlieHRfTEVELmMgYi9leHRlbnNpb25zL2xpYnh0X0xFRC5jCm5l dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmM3NmEzOGEKLS0tIC9kZXYvbnVs bAorKysgYi9leHRlbnNpb25zL2xpYnh0X0xFRC5jCkBAIC0wLDAgKzEsMTU4IEBACisvKgor ICogbGlieHRfTEVELmMgLSBzaGFyZWQgbGlicmFyeSBhZGQtb24gdG8gaXB0YWJsZXMgdG8g YWRkIGN1c3RvbWl6ZWQgTEVECisgKiAgICAgICAgICAgICAgIHRyaWdnZXIgc3VwcG9ydC4K KyAqCisgKiAoQykgMjAwOCBBZGFtIE5pZWxzZW4gPGEubmllbHNlbkBzaGlrYWRpLm5ldD4K KyAqCisgKiBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3Ry aWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBH TlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgYXMKKyAqIHB1Ymxpc2hlZCBi eSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLgorICoKKyAqLworCisjaW5jbHVkZSA8 c3RkaW8uaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKyNp bmNsdWRlIDxnZXRvcHQuaD4KKyNpbmNsdWRlIDxzdGRkZWYuaD4KKworI2luY2x1ZGUgPHh0 YWJsZXMuaD4KKworI2luY2x1ZGUgPGxpbnV4L25ldGZpbHRlci94dF9MRUQuaD4KKworc3Rh dGljIGNvbnN0IHN0cnVjdCBvcHRpb24gTEVEX29wdHNbXSA9IHsKKwl7IC5uYW1lID0gImxl ZC10cmlnZ2VyLWlkIiwJLmhhc19hcmcgPSAxLCAudmFsID0gJ2knIH0sCisJeyAubmFtZSA9 ICJsZWQtZGVsYXkiLAkJLmhhc19hcmcgPSAxLCAudmFsID0gJ2QnIH0sCisJeyAubmFtZSA9 ICJsZWQtYWx3YXlzLWJsaW5rIiwJLmhhc19hcmcgPSAwLCAudmFsID0gJ2EnIH0sCisJeyAu bmFtZSA9IE5VTEwgfQorfTsKKworc3RhdGljIHZvaWQgTEVEX2hlbHAodm9pZCkKK3sKKwlw cmludGYoCisiTEVEIHRhcmdldCBvcHRpb25zOlxuIgorIi0tbGVkLXRyaWdnZXItaWQgbmFt ZSAgICAgICAgICAgc3VmZml4IGZvciBsZWQgdHJpZ2dlciBuYW1lXG4iCisiLS1sZWQtZGVs YXkgbXMgICAgICAgICAgICAgICAgICBsZWF2ZSB0aGUgTEVEIG9uIGZvciB0aGlzIG51bWJl ciBvZlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWlsbGlzZWNvbmRz IGFmdGVyIHRyaWdnZXJpbmcuXG4iCisiLS1sZWQtYWx3YXlzLWJsaW5rICAgICAgICAgICAg ICBibGluayBvbiBhcnJpdmluZyBwYWNrZXRzLCBldmVuIGlmXG4iCisiICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICB0aGUgTEVEIGlzIGFscmVhZHkgb24uXG4iCisJKTsKK30K Kworc3RhdGljIGludCBMRURfcGFyc2UoaW50IGMsIGNoYXIgKiphcmd2LCBpbnQgaW52ZXJ0 LCB1bnNpZ25lZCBpbnQgKmZsYWdzLAorICAgICAgICAgICAgICAgICAgICAgY29uc3Qgdm9p ZCAqZW50cnksIHN0cnVjdCB4dF9lbnRyeV90YXJnZXQgKip0YXJnZXQpCit7CisJc3RydWN0 IHh0X2xlZF9pbmZvICpsZWQgPSAoc3RydWN0IHh0X2xlZF9pbmZvICopKCp0YXJnZXQpLT5k YXRhOworCisJc3dpdGNoIChjKSB7CisJY2FzZSAnaSc6CisJCXBhcmFtX2FjdChQX05PX0lO VkVSVCwgIkxFRCIsICItLWxlZC10cmlnZ2VyLWlkIiwgaW52ZXJ0KTsKKworCQlpZiAoc3Ry bGVuKCJuZXRmaWx0ZXItIikgKyBzdHJsZW4ob3B0YXJnKSA+IHNpemVvZihsZWQtPmlkKSkK KwkJCWV4aXRfZXJyb3IoUEFSQU1FVEVSX1BST0JMRU0sCisJCQkJIi0tbGVkLXRyaWdnZXIt aWQgbXVzdCBiZSAxNiBjaGFycyBvciBsZXNzIik7CisKKwkJaWYgKG9wdGFyZ1swXSA9PSAn XDAnKQorCQkJZXhpdF9lcnJvcihQQVJBTUVURVJfUFJPQkxFTSwKKwkJCQkiLS1sZWQtdHJp Z2dlci1pZCBjYW5ub3QgYmUgYmxhbmsiKTsKKworCQkvKiAibmV0ZmlsdGVyLSIgKyAxNiBj aGFyIGlkID09IDI2ID09IHNpemVvZihsZWQtPmlkKSAqLworCQlzdHJjcHkobGVkLT5pZCwg Im5ldGZpbHRlci0iKTsKKwkJc3RyY2F0KGxlZC0+aWQsIG9wdGFyZyk7CisJCSpmbGFncyA9 IDE7CisJCXJldHVybiAxOworCisJY2FzZSAnZCc6CisJCXBhcmFtX2FjdChQX05PX0lOVkVS VCwgIkxFRCIsICItLWxlZC1kZWxheSIsIGludmVydCk7CisKKwkJaWYgKHN0cm5jYXNlY21w KG9wdGFyZywgImluZiIsIDMpID09IDApCisJCQlsZWQtPmRlbGF5ID0gLTE7CisJCWVsc2UK KwkJCWxlZC0+ZGVsYXkgPSBzdHJ0b3VsKG9wdGFyZywgTlVMTCwgMCk7CisKKwkJcmV0dXJu IDE7CisKKwljYXNlICdhJzoKKwkJaWYgKCFpbnZlcnQpCisJCQlsZWQtPmFsd2F5c19ibGlu ayA9IDE7CisKKwkJcmV0dXJuIDE7CisKKwl9CisJcmV0dXJuIDA7Cit9CisKK3N0YXRpYyB2 b2lkIExFRF9maW5hbF9jaGVjayh1bnNpZ25lZCBpbnQgZmxhZ3MpCit7CisJaWYgKCFmbGFn cykKKwkJZXhpdF9lcnJvcihQQVJBTUVURVJfUFJPQkxFTSwKKwkJCSItLWxlZC10cmlnZ2Vy LWlkIG11c3QgYmUgc3BlY2lmaWVkIik7Cit9CisKK3N0YXRpYyB2b2lkIExFRF9wcmludChj b25zdCB2b2lkICppcCwgY29uc3Qgc3RydWN0IHh0X2VudHJ5X3RhcmdldCAqdGFyZ2V0LAor ICAgICAgICAgICAgICAgICAgICAgIGludCBudW1lcmljKQoreworCWNvbnN0IHN0cnVjdCB4 dF9sZWRfaW5mbyAqbGVkID0gKGNvbnN0IHN0cnVjdCB4dF9sZWRfaW5mbyAqKXRhcmdldC0+ ZGF0YTsKKwljb25zdCBjaGFyICppZCA9IGxlZC0+aWQgKyBzdHJsZW4oIm5ldGZpbHRlci0i KTsgLyogdHJpbSBvZmYgcHJlZml4ICovCisKKwlwcmludGYoImxlZC10cmlnZ2VyLWlkOlwi Iik7CisJLyogRXNjYXBlIGRvdWJsZSBxdW90ZXMgYW5kIGJhY2tzbGFzaGVzIGluIHRoZSBJ RCAqLworCXdoaWxlICgqaWQpIHsKKwkJaWYgKCgqaWQgPT0gJyInKSB8fCAoKmlkID09ICdc XCcpKQorCQkJcHJpbnRmKCJcXCIpOworCQlwcmludGYoIiVjIiwgKmlkKyspOworCX0KKwlw cmludGYoIlwiICIpOworCisJaWYgKGxlZC0+ZGVsYXkgPT0gLTEpCisJCXByaW50ZigibGVk LWRlbGF5OmluZiAiKTsKKwllbHNlCisJCXByaW50ZigibGVkLWRlbGF5OiVkbXMgIiwgbGVk LT5kZWxheSk7CisKKwlpZiAobGVkLT5hbHdheXNfYmxpbmspCisJCXByaW50ZigibGVkLWFs d2F5cy1ibGluayAiKTsKK30KKworc3RhdGljIHZvaWQgTEVEX3NhdmUoY29uc3Qgdm9pZCAq aXAsIGNvbnN0IHN0cnVjdCB4dF9lbnRyeV90YXJnZXQgKnRhcmdldCkKK3sKKwljb25zdCBz dHJ1Y3QgeHRfbGVkX2luZm8gKmxlZCA9IChjb25zdCBzdHJ1Y3QgeHRfbGVkX2luZm8gKil0 YXJnZXQtPmRhdGE7CisJY29uc3QgY2hhciAqaWQgPSBsZWQtPmlkICsgc3RybGVuKCJuZXRm aWx0ZXItIik7IC8qIHRyaW0gb2ZmIHByZWZpeCAqLworCisJcHJpbnRmKCItLWxlZC10cmln Z2VyLWlkIFwiIik7CisJLyogRXNjYXBlIGRvdWJsZSBxdW90ZXMgYW5kIGJhY2tzbGFzaGVz IGluIHRoZSBJRCAqLworCXdoaWxlICgqaWQpIHsKKwkJaWYgKCgqaWQgPT0gJyInKSB8fCAo KmlkID09ICdcXCcpKQorCQkJcHJpbnRmKCJcXCIpOworCQlwcmludGYoIiVjIiwgKmlkKysp OworCX0KKwlwcmludGYoIlwiICIpOworCisJLyogT25seSBwcmludCB0aGUgZGVsYXkgaWYg aXQncyBub3QgemVybyAodGhlIGRlZmF1bHQpICovCisJaWYgKGxlZC0+ZGVsYXkgPiAwKQor CQlwcmludGYoIi0tbGVkLWRlbGF5ICVkICIsIGxlZC0+ZGVsYXkpOworCWVsc2UgaWYgKGxl ZC0+ZGVsYXkgPT0gLTEpCisJCXByaW50ZigiLS1sZWQtZGVsYXkgaW5mICIpOworCisJLyog T25seSBwcmludCBhbHdheXNfYmxpbmsgaWYgaXQncyBub3Qgc2V0IHRvIHRoZSBkZWZhdWx0 ICovCisJaWYgKGxlZC0+YWx3YXlzX2JsaW5rKQorCQlwcmludGYoIi0tbGVkLWFsd2F5cy1i bGluayAiKTsKK30KKworc3RhdGljIHN0cnVjdCB4dGFibGVzX3RhcmdldCBsZWRfdGdfcmVn ID0geworCS5mYW1pbHkJCT0gUEZfVU5TUEVDLAorCS5uYW1lCQk9ICJMRUQiLAorCS52ZXJz aW9uCT0gWFRBQkxFU19WRVJTSU9OLAorCS5zaXplCQk9IFhUX0FMSUdOKHNpemVvZihzdHJ1 Y3QgeHRfbGVkX2luZm8pKSwKKwkudXNlcnNwYWNlc2l6ZQk9IG9mZnNldG9mKHN0cnVjdCB4 dF9sZWRfaW5mbywgaW50ZXJuYWxfZGF0YSksCisJLmhlbHAJCT0gTEVEX2hlbHAsCisJLnBh cnNlCQk9IExFRF9wYXJzZSwKKwkuZmluYWxfY2hlY2sJPSBMRURfZmluYWxfY2hlY2ssCisJ LmV4dHJhX29wdHMJPSBMRURfb3B0cywKKwkucHJpbnQJCT0gTEVEX3ByaW50LAorCS5zYXZl CQk9IExFRF9zYXZlLAorfTsKKwordm9pZCBfaW5pdCh2b2lkKQoreworCXh0YWJsZXNfcmVn aXN0ZXJfdGFyZ2V0KCZsZWRfdGdfcmVnKTsKK30KZGlmZiAtLWdpdCBhL2V4dGVuc2lvbnMv bGlieHRfTEVELm1hbiBiL2V4dGVuc2lvbnMvbGlieHRfTEVELm1hbgpuZXcgZmlsZSBtb2Rl IDEwMDY0NAppbmRleCAwMDAwMDAwLi5iNjViM2MyCi0tLSAvZGV2L251bGwKKysrIGIvZXh0 ZW5zaW9ucy9saWJ4dF9MRUQubWFuCkBAIC0wLDAgKzEsMzAgQEAKK1RoaXMgY3JlYXRlcyBh biBMRUQtdHJpZ2dlciB0aGF0IGNhbiB0aGVuIGJlIGF0dGFjaGVkIHRvIHN5c3RlbSBpbmRp Y2F0b3IKK2xpZ2h0cywgdG8gYmxpbmsgb3IgaWxsdW1pbmF0ZSB0aGVtIHdoZW4gY2VydGFp biBwYWNrZXRzIHBhc3MgdGhyb3VnaCB0aGUKK3N5c3RlbS4gIE9uZSBleGFtcGxlIG1pZ2h0 IGJlIHRvIGxpZ2h0IHVwIGFuIExFRCBmb3IgYSBmZXcgbWludXRlcyBldmVyeSB0aW1lCith biBTU0ggY29ubmVjdGlvbiBpcyBtYWRlIHRvIHRoZSBsb2NhbCBtYWNoaW5lLiAgVGhlIGZv bGxvd2luZyBvcHRpb25zIGNvbnRyb2wKK3RoZSB0cmlnZ2VyIGJlaGF2aW91cjoKKy5UUAor XGZCLS1sZWQtdHJpZ2dlci1pZFxmUCBcZkluYW1lXGZQCitUaGlzIGlzIHRoZSBuYW1lIGdp dmVuIHRvIHRoZSBMRUQgdHJpZ2dlci4gIFRoZSBhY3R1YWwgbmFtZSBvZiB0aGUgdHJpZ2dl cgord2lsbCBiZSBwcmVmaXhlZCB3aXRoICJuZXRmaWx0ZXItIi4KKy5UUAorXGZCLS1sZWQt ZGVsYXlcZlAgXGZJbXNcZlAKK1RoaXMgaW5kaWNhdGVzIGhvdyBsb25nIChpbiBtaWxsaXNl Y29uZHMpIHRoZSBMRUQgc2hvdWxkIGJlIGxlZnQgaWxsdW1pbmF0ZWQKK3doZW4gYSBwYWNr ZXQgYXJyaXZlcyBiZWZvcmUgYmVpbmcgc3dpdGNoZWQgb2ZmIGFnYWluLiAgVGhlIGRlZmF1 bHQgaXMgMAorKGJsaW5rIGFzIGZhc3QgYXMgcG9zc2libGUuKSAgVGhlIHNwZWNpYWwgdmFs dWUgXGZJaW5mXGZQIGNhbiBiZSBnaXZlbiB0bworbGVhdmUgdGhlIExFRCBvbiBwZXJtYW5l bnRseSBvbmNlIGFjdGl2YXRlZC4gIChJbiB0aGlzIGNhc2UgdGhlIHRyaWdnZXIgd2lsbAor bmVlZCB0byBiZSBtYW51YWxseSBkZXRhY2hlZCBhbmQgcmVhdHRhY2hlZCB0byB0aGUgTEVE IGRldmljZSB0byBzd2l0Y2ggaXQKK29mZiBhZ2Fpbi4pCisuVFAKK1xmQi0tbGVkLWFsd2F5 cy1ibGlua1xmUAorQWx3YXlzIG1ha2UgdGhlIExFRCBibGluayBvbiBwYWNrZXQgYXJyaXZh bCwgZXZlbiBpZiB0aGUgTEVEIGlzIGFscmVhZHkgb24uCitUaGlzIGFsbG93cyBub3RpZmlj YXRpb24gb2YgbmV3IHBhY2tldHMgZXZlbiB3aXRoIGxvbmcgZGVsYXkgdmFsdWVzICh3aGlj aAorb3RoZXJ3aXNlIHdvdWxkIHJlc3VsdCBpbiBhIHNpbGVudCBwcm9sb25naW5nIG9mIHRo ZSBkZWxheSB0aW1lLikKKy5UUAorRXhhbXBsZToKKy5UUAorQ3JlYXRlIGFuIExFRCB0cmln Z2VyIGZvciBpbmNvbWluZyBTU0ggdHJhZmZpYzoKK2lwdGFibGVzIC1BIElOUFVUIC1wIHRj cCAtLWRwb3J0IDIyIC1qIExFRCAtLWxlZC10cmlnZ2VyLWlkIHNzaAorLlRQCitUaGVuIGF0 dGFjaCB0aGUgbmV3IHRyaWdnZXIgdG8gYW4gTEVEOgorZWNobyBuZXRmaWx0ZXItc3NoID4g L3N5cy9jbGFzcy9sZWRzLzxsZWRuYW1lPi90cmlnZ2VyCmRpZmYgLS1naXQgYS9pbmNsdWRl L2xpbnV4L25ldGZpbHRlci94dF9MRUQuaCBiL2luY2x1ZGUvbGludXgvbmV0ZmlsdGVyL3h0 X0xFRC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjRjOTFhMGQKLS0t IC9kZXYvbnVsbAorKysgYi9pbmNsdWRlL2xpbnV4L25ldGZpbHRlci94dF9MRUQuaApAQCAt MCwwICsxLDEzIEBACisjaWZuZGVmIF9YVF9MRURfSAorI2RlZmluZSBfWFRfTEVEX0gKKwor c3RydWN0IHh0X2xlZF9pbmZvIHsKKwljaGFyIGlkWzI3XTsgICAgICAgIC8qIFVuaXF1ZSBJ RCBmb3IgdGhpcyB0cmlnZ2VyIGluIHRoZSBMRUQgY2xhc3MgKi8KKwlfX3U4IGFsd2F5c19i bGluazsgIC8qIEJsaW5rIGV2ZW4gaWYgdGhlIExFRCBpcyBhbHJlYWR5IG9uICovCisJX191 MzIgZGVsYXk7ICAgICAgICAvKiBEZWxheSB1bnRpbCBMRUQgaXMgc3dpdGNoZWQgb2ZmIGFm dGVyIHRyaWdnZXIgKi8KKworCS8qIEtlcm5lbCBkYXRhIHVzZWQgaW4gdGhlIG1vZHVsZSAq LworCXZvaWQgKmludGVybmFsX2RhdGEgX19hdHRyaWJ1dGVfXygoYWxpZ25lZCg4KSkpOwor fTsKKworI2VuZGlmIC8qIF9YVF9MRURfSCAqLwo= --------------080700010302060105070503--