From mboxrd@z Thu Jan 1 00:00:00 1970 From: Roger Pau Monne Subject: Re: [patch] xen udev rule interfering with openvpn Date: Wed, 25 Apr 2012 14:16:25 +0100 Message-ID: <4F97F929.5030707@citrix.com> References: <1334658395.23948.6.camel@zakaz.uk.xensource.com> <1334817587.11493.44.camel@dagon.hellion.org.uk> <1334912603.28331.2.camel@zakaz.uk.xensource.com> <20369.15528.270106.567037@mariner.uk.xensource.com> <1334918900.28331.47.camel@zakaz.uk.xensource.com> <20369.16555.46229.798603@mariner.uk.xensource.com> <1334919613.28331.53.camel@zakaz.uk.xensource.com> <20369.17085.330843.561841@mariner.uk.xensource.com> <1335347949.28015.19.camel@zakaz.uk.xensource.com> <20375.52677.287182.934829@mariner.uk.xensource.com> <1335348880.28015.24.camel@zakaz.uk.xensource.com> <1335358736.28015.41.camel@zakaz.uk.xensource.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1335358736.28015.41.camel@zakaz.uk.xensource.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Ian Campbell Cc: Teck Choon Giam , M A Young , Ian Jackson , "xen-devel@lists.xen.org" List-Id: xen-devel@lists.xenproject.org SWFuIENhbXBiZWxsIGVzY3JpYmnDszoKPiBPbiBXZWQsIDIwMTItMDQtMjUgYXQgMTE6MTQgKzAx MDAsIElhbiBDYW1wYmVsbCB3cm90ZToKPj4gT24gV2VkLCAyMDEyLTA0LTI1IGF0IDExOjExICsw MTAwLCBJYW4gSmFja3NvbiB3cm90ZToKPj4+IElhbiBDYW1wYmVsbCB3cml0ZXMgKCJSZTogW1hl bi1kZXZlbF0gW3BhdGNoXSB4ZW4gdWRldiBydWxlIGludGVyZmVyaW5nIHdpdGggb3BlbnZwbiIp Ogo+Pj4+IFNvIGZvciB2aWZuYW1lPSJmb28iIGl0IGlzIGEgbm8tYnJhaW5lciB0byBjYWxsIHRo ZSB2aWYgImZvbyIgYW5kIHRoZQo+Pj4+IGVtdWxhdGVkIHRhcCBkZXZpY2UgImZvby1lbXUiLgo+ Pj4+Cj4+Pj4gQnV0IHdoYXQgYWJvdXQgdGhlIGNhc2Ugd2hlcmUgbm8gdmlmbmFtZSBpcyBnaXZl biwgaW4gdGhhdCBjYXNlIHZpZiBpcwo+Pj4+IG5hbWVkICJ2aWY8RE9NPi48REVWPiIuIEJ1dCB3 aGF0IHRvIGNhbGwgdGhlIHRhcD8gUHJldmlvdXNseSBJIHdhcwo+Pj4+IGNoYW5naW5nIHRoZSBu YW1lIGZyb20gdGFwPERPTT4uPERFVj4gIHRvIHhlbnRhcDxET00+LjxERVY+ICBidXQgcGVyaGFw cwo+Pj4+IG5vdyAidmlmPERPTT4uPERFVj4tZW11IiBtYWtlcyBtb3JlIHNlbnNlL2lzIG1vcmUg Y29uc2lzdGVudD8KPj4+IEkgdGhpbmsgZWl0aGVyIGlzIGZpbmUuICBXaGlsZSB3ZSdyZSBjaGFu Z2luZyBpdCBpdCBwcm9iYWJseSBtYWtlcwo+Pj4gc2Vuc2UgdG8gdXNlICJ2aWYuLi4iIGFzIGlu ZGVlZCBpdCBpcyBtb3JlIGNvbnNpc3RlbnQuCj4+IE9LLCB2aWZYLlkgYW5kIHZpZlguWS1lbXUg aXQgaXMuLi4KPgo+IFRoaXMgdHVybmVkIG91dCB0byBiZSBhIGJpdCBtb3JlIGNvbXBsZXggdGhh biBJIHdhcyBleHBlY3RpbmcsIG1vc3RseQo+IGJlY2F1c2UgdGhlIHVzZSBvZiAidmlmbmFtZSIg d2l0aCB0YXAgZGV2aWNlcyB3YXMgYWxyZWFkeSBicm9rZW4uIEkKPiB0aGluayB0aGlzIGRvZXMg dGhlIHJpZ2h0IHRoaW5ncyB3aXRoIGVhY2ggdHlwZSBvZiBkZXZpY2UuCj4KPiBSb2dlciwgbm90 IHN1cmUgd2hhdCBrbm9jayBvbiBlZmZlY3QgdGhpcyBoYXMgb24geW91ciBzZXJpZXMuIFRoZSBt YWluCj4gdGhpbmcgaXMgbGlrZWx5IHRvIGJlIHRoYXQgeW91IG5lZWRuJ3QgZmluZCB0aGUgdmlm bmFtZSBzaW5jZSB5b3UKPiBhY3R1YWxseSB3YW50IHRoZSBzdGFuZGFyZCBuYW1lIG5vdCB0aGUg dXNlciBzdXBwbGllZCBvbmNlIG9uIG1vc3QKPiBvY2Nhc2lvbnMuCgogRnJvbSB3aGF0IEkgc2Vl LCBJIGhhdmUgdG8gcGFzcyB0aGUgbmFtZSByZXR1cm5lZCBieSAKbGlieGxfX2RldmljZV9uaWNf ZGV2bmFtZSB0byB0aGUgaG90cGx1ZyBzY3JpcHRzLCBpcyB0aGF0IHJpZ2h0PwoKVGhhbmtzIGZv ciBkb2luZyB0aGlzIQoKPiBJYW4uCj4KPiA4PC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQo+Cj4gIyBIRyBjaGFuZ2VzZXQgcGF0Y2gKPiAj IFVzZXIgSWFuIENhbXBiZWxsPGlhbi5jYW1wYmVsbEBjaXRyaXguY29tPgo+ICMgRGF0ZSAxMzM1 MzU0OTU3IC0zNjAwCj4gIyBOb2RlIElEIDQ0ZmM3NjQ4NWY3OTdiZGQ3MjZmZWQ0YTJhN2M0YjA2 MzYzZmRiODgKPiAjIFBhcmVudCAgYTE0YjFkZDBmZWVlZTMwMGMzN2M0NDU2NDM4MWY0ZThlYTgz N2M0NQo+IGxpYnhsL3hlbmQ6IG5hbWUgdGFwIGRldmljZXMgdmlmWC5ZLWVtdQo+Cj4gVGhpcyBw cmV2ZW50cyB0aGUgdWRldiBzY3JpcHRzIGZyb20gb3BlcmF0aW5nIG9uIG90aGVyIHRhcCBkZXZp Y2VzIChlLmcuCj4gb3BlbnZwbiBldGMpCj4KPiBDb3JyZWN0IHRoZSBkb2N1bWVudGF0aW9uIGZv ciB0aGUgInZpZm5hbWUiIG9wdGlvbiB3aGljaCBzdWdnZXN0ZWQgaXQgYXBwbGllZAo+IHRvIEhW TSB0YXAgZGV2aWNlcyBvbmx5LCB3aGljaCBpcyBub3QgdGhlIGNhc2UuCj4KPiBSZXBvcnRlZCBi eSBNaWNoYWVsIFlvdW5nLgo+Cj4gQWxzbyBmaXggdGhlIHVzZSBvZiB2aWZuYW1lIHdpdGggZW11 bGF0ZWQgZGV2aWNlcy4gVGhpcyBpcyBzbGlnaHRseSBjb21wbGV4Lgo+IFRoZSBjdXJyZW50IGhv dHBsdWcgc2NyaXB0cyByZWx5IG9uIGJlaW5nIGFibGUgdG8gcGFyc2UgdGhlICJ0YXBYLlkiIChu b3cKPiAidmlmWC5ZLWVtdSIpIG5hbWUgaW4gb3JkZXIgdG8gbG9jYXRlIHRoZSB4ZW5zdG9yZSBi YWNrZW5kIGRpciByZWxhdGluZyB0byB0aGUKPiBjb3JyZXNwb25kaW5nIHZpZi4gVGhpcyBpcyBi ZWNhdXNlIHdlIGNhbm5vdCBpbmplY3Qgb3VyIG93biBlbnZpcm9ubWVudCB2YXJzCj4gaW50byB0 aGUgdGFwIGhvdHBsdWcgZXZlbnRzLiBIb3dldmVyIHRoaXMgbWVhbnMgdGhhdCBpZiB0aGUgdGFw IGlzIGluaXRpYWxseQo+IG5hbWVkIHdpdGggYSB1c2VyIHNwZWNpZmllZCBuYW1lICh3aGljaCB3 aWxsIG5vdCBtYXRjaCB0aGUgZXhwZWN0ZWQgc2NoZW1lKSB3ZQo+IGZhaWwgdG8gZG8gYW55dGhp bmcgdXNlZnVsIHdpdGggdGhlIGRldmljZS4gU28gbm93IHdlIGNyZWF0ZSB0aGUgaW5pdGlhbCB0 YXAKPiBkZXZpY2Ugd2l0aCB0aGUgc3RhbmRhcmQgInZpZlguWS1lbXUiIG5hbWUgYW5kIHRoZSBo b3RwbHVnIHNjcmlwdCB3aWxsIGhhbmRsZQo+IHRoZSByZW5hbWUgdG8gdGhlIGRlc2lyZWQgbmFt ZS4gVGhpcyBpcyBhbHNvIGhvdyBQViB2aWYgZGV2aWNlcyB3b3JrIC0tIHRoZXkKPiBhcmUgYWx3 YXlzIGNyZWF0ZWQgYnkgbmV0YmFjayB3aXRoIHRoZSBuYW1lIHZpZlguWSBhbmQgcmVuYW1lZCBp biB0aGUgc2NyaXB0Lgo+Cj4gTGFzdGx5IGFsc28gbW92ZSBsaWJ4bF9fZGV2aWNlXyogdG8gYSBi ZXR0ZXIgcGxhY2UgaW4gdGhlIGhlYWRlciwgb3RoZXJ3aXNlIHRoZQo+IGNvbW1lbnQgYWJvdXQg ZXZnZW4gc3R1ZmYgaXNuJ3QgbmV4dCB0byB0aGUgYXNzb2NpYXRlZCBmdW5jdGlvbnMgKG5vdGlj ZWQganN1dAo+IGJlY2F1c2UgSSB3YXMgZ29pbmcgdG8gYWRkIG5pY19kZXZuYW1lIG5lYXIgdG8g dGhlIHNldGRlZmF1bHQgZnVuY3Rpb25zKQo+Cj4gU2lnbmVkLW9mZi1ieTogSWFuIENhbXBiZWxs PGlhbi5jYW1wYmVsbEBjaXRyaXguY29tPgo+Cj4gZGlmZiAtciBhMTRiMWRkMGZlZWUgLXIgNDRm Yzc2NDg1Zjc5IGRvY3MvbWlzYy94bC1uZXR3b3JrLWNvbmZpZ3VyYXRpb24ubWFya2Rvd24KPiAt LS0gYS9kb2NzL21pc2MveGwtbmV0d29yay1jb25maWd1cmF0aW9uLm1hcmtkb3duCVdlZCBBcHIg MjUgMTA6NTM6NTIgMjAxMiArMDEwMAo+ICsrKyBiL2RvY3MvbWlzYy94bC1uZXR3b3JrLWNvbmZp Z3VyYXRpb24ubWFya2Rvd24JV2VkIEFwciAyNSAxMjo1NTo1NyAyMDEyICswMTAwCj4gQEAgLTkz LDExICs5MywxNCBAQCBhcmU6Cj4KPiAgICMjIyB2aWZuYW1lCj4KPiAtVGhpcyBrZXl3b3JkIGlz IHZhbGlkIGZvciBIVk0gZ3Vlc3QgZGV2aWNlcyB3aXRoIGB0eXBlPWlvZW11YCBvbmx5Lgo+ICtT cGVjaWZpZXMgdGhlIGJhY2tlbmQgZGV2aWNlIG5hbWUgZm9yIHRoZSB2aXJ0dWFsIGRldmljZS4K Pgo+IC1TcGVjaWZpZXMgdGhlIGJhY2tlbmQgZGV2aWNlIG5hbWUgZm9yIGFuIGVtdWxhdGVkIGRl dmljZS4gVGhlIGRlZmF1bHQKPiAtaXMgYHRhcERPTUlELkRFVklEYCB3aGVyZSBgRE9NSURgIGlz IHRoZSBndWVzdCBkb21haW4gSUQgYW5kIGBERVZJRGAKPiAtaXMgdGhlIGRldmljZSBudW1iZXIu Cj4gK0lmIHRoZSBkb21haW4gaXMgYW4gSFZNIGRvbWFpbiB0aGVuIHRoZSBhc3NvY2lhdGVkIGVt dWxhdGVkICh0YXApCj4gK2RldmljZSB3aWxsIGhhdmUgYSAiLWVtdSIgc3VmZmljZSBhZGRlZC4K PiArCj4gK1RoZSBkZWZhdWx0IG5hbWUgZm9yIHRoZSB2aXJ0dWFsIGRldmljZSBpcyBgdmlmRE9N SUQuREVWSURgIHdoZXJlCj4gK2BET01JRGAgaXMgdGhlIGd1ZXN0IGRvbWFpbiBJRCBhbmQgYERF VklEYCBpcyB0aGUgZGV2aWNlCj4gK251bWJlci4gTGlrZXdpc2UgdGhlIGRlZmF1bHQgdGFwIG5h bWUgaXMgYHZpZkRPTUlELkRFVklELWVtdWAuCj4KPiAgICMjIyBzY3JpcHQKPgo+IGRpZmYgLXIg YTE0YjFkZDBmZWVlIC1yIDQ0ZmM3NjQ4NWY3OSB0b29scy9ob3RwbHVnL0xpbnV4L3ZpZi1jb21t b24uc2gKPiAtLS0gYS90b29scy9ob3RwbHVnL0xpbnV4L3ZpZi1jb21tb24uc2gJV2VkIEFwciAy NSAxMDo1Mzo1MiAyMDEyICswMTAwCj4gKysrIGIvdG9vbHMvaG90cGx1Zy9MaW51eC92aWYtY29t bW9uLnNoCVdlZCBBcHIgMjUgMTI6NTU6NTcgMjAxMiArMDEwMAo+IEBAIC04NSwxMiArODUsMjMg QEAgZWxpZiBbICIkdHlwZV9pZiIgPSB0YXAgXTsgdGhlbgo+ICAgICAgIDogJHtJTlRFUkZBQ0U6 P30KPgo+ICAgICAgICMgR2V0IHhlbmJ1c19wYXRoIGZyb20gZGV2aWNlIG5hbWUuCj4gLSAgICAj IFRoZSBuYW1lIGlzIGJ1aWx0IGxpa2UgdGhhdDogInRhcCR7ZG9taWR9LiR7ZGV2aWR9Ii4KPiAt ICAgIGRldl89JHtkZXYjdGFwfQo+ICsgICAgIyBUaGUgbmFtZSBpcyBidWlsdCBsaWtlIHRoYXQ6 ICJ2aWYke2RvbWlkfS4ke2RldmlkfS1lbXUiLgo+ICsgICAgZGV2Xz0ke2RldiN2aWZ9Cj4gKyAg ICBkZXZfPSR7ZGV2XyUtZW11fQo+ICAgICAgIGRvbWlkPSR7ZGV2XyUuKn0KPiAgICAgICBkZXZp ZD0ke2Rldl8jKi59Cj4KPiAgICAgICBYRU5CVVNfUEFUSD0iL2xvY2FsL2RvbWFpbi8wL2JhY2tl bmQvdmlmLyRkb21pZC8kZGV2aWQiCj4gKyAgICB2aWZuYW1lPSQoeGVuc3RvcmVfcmVhZF9kZWZh dWx0ICIkWEVOQlVTX1BBVEgvdmlmbmFtZSIgIiIpCj4gKyAgICBpZiBbICIkdmlmbmFtZSIgXQo+ ICsgICAgdGhlbgo+ICsgICAgICAgIHZpZm5hbWU9IiR7dmlmbmFtZX0tZW11Igo+ICsgICAgICAg IGlmIFsgIiRjb21tYW5kIiA9PSAiYWRkIiBdJiYgICEgaXAgbGluayBzaG93ICIkdmlmbmFtZSI+ Ji9kZXYvbnVsbAo+ICsgICAgICAgIHRoZW4KPiArICAgICAgICAgICAgZG9fb3JfZGllIGlwIGxp bmsgc2V0ICIkZGV2IiBuYW1lICIkdmlmbmFtZSIKPiArICAgICAgICBmaQo+ICsgICAgICAgIGRl dj0iJHZpZm5hbWUiCj4gKyAgICBmaQo+ICAgZmkKPgo+ICAgaXA9JHtpcDotfQo+IGRpZmYgLXIg YTE0YjFkZDBmZWVlIC1yIDQ0ZmM3NjQ4NWY3OSB0b29scy9ob3RwbHVnL0xpbnV4L3hlbi1iYWNr ZW5kLnJ1bGVzCj4gLS0tIGEvdG9vbHMvaG90cGx1Zy9MaW51eC94ZW4tYmFja2VuZC5ydWxlcwlX ZWQgQXByIDI1IDEwOjUzOjUyIDIwMTIgKzAxMDAKPiArKysgYi90b29scy9ob3RwbHVnL0xpbnV4 L3hlbi1iYWNrZW5kLnJ1bGVzCVdlZCBBcHIgMjUgMTI6NTU6NTcgMjAxMiArMDEwMAo+IEBAIC0x Myw0ICsxMyw0IEBAIEtFUk5FTD09ImJsa3RhcC1jb250cm9sIiwgTkFNRT0ieGVuL2Jsa3QKPiAg IEtFUk5FTD09ImdudGRldiIsIE5BTUU9Inhlbi8layIsIE1PREU9IjA2MDAiCj4gICBLRVJORUw9 PSJwY2lfaW9tdWwiLCBOQU1FPSJ4ZW4vJWsiLCBNT0RFPSIwNjAwIgo+ICAgS0VSTkVMPT0idGFw ZGV2W2Etel0qIiwgTkFNRT0ieGVuL2Jsa3RhcC0yL3RhcGRldiVtIiwgTU9ERT0iMDYwMCIKPiAt U1VCU1lTVEVNPT0ibmV0IiwgS0VSTkVMPT0idGFwKiIsIEFDVElPTj09ImFkZCIsIFJVTis9Ii9l dGMveGVuL3NjcmlwdHMvdmlmLXNldHVwICRlbnZ7QUNUSU9OfSB0eXBlX2lmPXRhcCIKPiArU1VC U1lTVEVNPT0ibmV0IiwgS0VSTkVMPT0idmlmKi1lbXUiLCBBQ1RJT049PSJhZGQiLCBSVU4rPSIv ZXRjL3hlbi9zY3JpcHRzL3ZpZi1zZXR1cCAkZW52e0FDVElPTn0gdHlwZV9pZj10YXAiCj4gZGlm ZiAtciBhMTRiMWRkMGZlZWUgLXIgNDRmYzc2NDg1Zjc5IHRvb2xzL2xpYnhsL2xpYnhsLmMKPiAt LS0gYS90b29scy9saWJ4bC9saWJ4bC5jCVdlZCBBcHIgMjUgMTA6NTM6NTIgMjAxMiArMDEwMAo+ ICsrKyBiL3Rvb2xzL2xpYnhsL2xpYnhsLmMJV2VkIEFwciAyNSAxMjo1NTo1NyAyMDEyICswMTAw Cj4gQEAgLTIwOTUsNiArMjA5NSwyMSBAQCBpbnQgbGlieGxfZGV2aWNlX25pY19nZXRpbmZvKGxp YnhsX2N0eCAqCj4gICAgICAgcmV0dXJuIDA7Cj4gICB9Cj4KPiArY29uc3QgY2hhciAqbGlieGxf X2RldmljZV9uaWNfZGV2bmFtZShsaWJ4bF9fZ2MgKmdjLAo+ICsgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IGRvbWlkLAo+ICsgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IGRldmlkLAo+ICsgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGxpYnhsX25pY190eXBlIHR5cGUpCj4gK3sKPiArICAgIHN3aXRj aCAodHlwZSkgewo+ICsgICAgY2FzZSBMSUJYTF9OSUNfVFlQRV9WSUY6Cj4gKyAgICAgICAgcmV0 dXJuIEdDU1BSSU5URigidmlmJXUuJWQiLCBkb21pZCwgZGV2aWQpOwo+ICsgICAgY2FzZSBMSUJY TF9OSUNfVFlQRV9JT0VNVToKPiArICAgICAgICByZXR1cm4gR0NTUFJJTlRGKCJ2aWYldS4lZCIg VEFQX0RFVklDRV9TVUZGSVgsIGRvbWlkLCBkZXZpZCk7Cj4gKyAgICBkZWZhdWx0Ogo+ICsgICAg ICAgIGFib3J0KCk7Cj4gKyAgICB9Cj4gK30KPiArCj4gICAvKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq Lwo+ICAgaW50IGxpYnhsX19kZXZpY2VfY29uc29sZV9hZGQobGlieGxfX2djICpnYywgdWludDMy X3QgZG9taWQsCj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaWJ4bF9fZGV2aWNl X2NvbnNvbGUgKmNvbnNvbGUsCj4gZGlmZiAtciBhMTRiMWRkMGZlZWUgLXIgNDRmYzc2NDg1Zjc5 IHRvb2xzL2xpYnhsL2xpYnhsX2RtLmMKPiAtLS0gYS90b29scy9saWJ4bC9saWJ4bF9kbS5jCVdl ZCBBcHIgMjUgMTA6NTM6NTIgMjAxMiArMDEwMAo+ICsrKyBiL3Rvb2xzL2xpYnhsL2xpYnhsX2Rt LmMJV2VkIEFwciAyNSAxMjo1NTo1NyAyMDEyICswMTAwCj4gQEAgLTIwOSwxMiArMjA5LDkgQEAg c3RhdGljIGNoYXIgKiogbGlieGxfX2J1aWxkX2RldmljZV9tb2RlbAo+ICAgICAgICAgICAgICAg aWYgKHZpZnNbaV0ubmljdHlwZSA9PSBMSUJYTF9OSUNfVFlQRV9JT0VNVSkgewo+ICAgICAgICAg ICAgICAgICAgIGNoYXIgKnNtYWMgPSBsaWJ4bF9fc3ByaW50ZihnYywKPiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgTElCWExfTUFDX0ZNVCwgTElCWExfTUFDX0JZVEVTKHZp ZnNbaV0ubWFjKSk7Cj4gLSAgICAgICAgICAgICAgICBjaGFyICppZm5hbWU7Cj4gLSAgICAgICAg ICAgICAgICBpZiAoIXZpZnNbaV0uaWZuYW1lKQo+IC0gICAgICAgICAgICAgICAgICAgIGlmbmFt ZSA9IGxpYnhsX19zcHJpbnRmKGdjLAo+IC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICJ0YXAlZC4lZCIsIGRvbWlkLCB2aWZzW2ldLmRldmlkKTsKPiAtICAgICAg ICAgICAgICAgIGVsc2UKPiAtICAgICAgICAgICAgICAgICAgICBpZm5hbWUgPSB2aWZzW2ldLmlm bmFtZTsKPiArICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmlmbmFtZSA9IGxpYnhsX19kZXZp Y2VfbmljX2Rldm5hbWUoZ2MsCj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIGRvbWlkLCB2aWZzW2ldLmRldmlkLAo+ICsgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMSUJYTF9OSUNfVFlQRV9JT0VNVSk7Cj4gICAg ICAgICAgICAgICAgICAgZmxleGFycmF5X3ZhcHBlbmQoZG1fYXJncywKPiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIi1uZXQiLCBsaWJ4bF9fc3ByaW50ZihnYywgIm5pYyx2bGFu PSVkLG1hY2FkZHI9JXMsbW9kZWw9JXMiLAo+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpZnNbaV0uZGV2aWQsIHNtYWMsIHZpZnNbaV0u bW9kZWwpLAo+IEBAIC00NDksMTMgKzQ0Niw5IEBAIHN0YXRpYyBjaGFyICoqIGxpYnhsX19idWls ZF9kZXZpY2VfbW9kZWwKPiAgICAgICAgICAgICAgIGlmICh2aWZzW2ldLm5pY3R5cGUgPT0gTElC WExfTklDX1RZUEVfSU9FTVUpIHsKPiAgICAgICAgICAgICAgICAgICBjaGFyICpzbWFjID0gbGli eGxfX3NwcmludGYoZ2MsCj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExJQlhM X01BQ19GTVQsIExJQlhMX01BQ19CWVRFUyh2aWZzW2ldLm1hYykpOwo+IC0gICAgICAgICAgICAg ICAgY2hhciAqaWZuYW1lOwo+IC0gICAgICAgICAgICAgICAgaWYgKCF2aWZzW2ldLmlmbmFtZSkg ewo+IC0gICAgICAgICAgICAgICAgICAgIGlmbmFtZSA9IGxpYnhsX19zcHJpbnRmKGdjLCAidGFw JWQuJWQiLAo+IC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGd1 ZXN0X2RvbWlkLCB2aWZzW2ldLmRldmlkKTsKPiAtICAgICAgICAgICAgICAgIH0gZWxzZSB7Cj4g LSAgICAgICAgICAgICAgICAgICAgaWZuYW1lID0gdmlmc1tpXS5pZm5hbWU7Cj4gLSAgICAgICAg ICAgICAgICB9Cj4gKyAgICAgICAgICAgICAgICBjb25zdCBjaGFyICppZm5hbWUgPSBsaWJ4bF9f ZGV2aWNlX25pY19kZXZuYW1lKGdjLAo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBndWVzdF9kb21pZCwgdmlmc1tpXS5kZXZpZCwKPiArICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTElCWExfTklDX1RZUEVfSU9F TVUpOwo+ICAgICAgICAgICAgICAgICAgIGZsZXhhcnJheV9hcHBlbmQoZG1fYXJncywgIi1kZXZp Y2UiKTsKPiAgICAgICAgICAgICAgICAgICBmbGV4YXJyYXlfYXBwZW5kKGRtX2FyZ3MsCj4gICAg ICAgICAgICAgICAgICAgICAgbGlieGxfX3NwcmludGYoZ2MsICIlcyxpZD1uaWMlZCxuZXRkZXY9 bmV0JWQsbWFjPSVzIiwKPiBkaWZmIC1yIGExNGIxZGQwZmVlZSAtciA0NGZjNzY0ODVmNzkgdG9v bHMvbGlieGwvbGlieGxfaW50ZXJuYWwuaAo+IC0tLSBhL3Rvb2xzL2xpYnhsL2xpYnhsX2ludGVy bmFsLmgJV2VkIEFwciAyNSAxMDo1Mzo1MiAyMDEyICswMTAwCj4gKysrIGIvdG9vbHMvbGlieGwv bGlieGxfaW50ZXJuYWwuaAlXZWQgQXByIDI1IDEyOjU1OjU3IDIwMTIgKzAxMDAKPiBAQCAtODMs NiArODMsNyBAQAo+ICAgI2RlZmluZSBTVFVCRE9NX0NPTlNPTEVfUkVTVE9SRSAyCj4gICAjZGVm aW5lIFNUVUJET01fQ09OU09MRV9TRVJJQUwgMwo+ICAgI2RlZmluZSBTVFVCRE9NX1NQRUNJQUxf Q09OU09MRVMgMwo+ICsjZGVmaW5lIFRBUF9ERVZJQ0VfU1VGRklYICItZW11Igo+Cj4gICAjZGVm aW5lIEFSUkFZX1NJWkUoYSkgKHNpemVvZihhKSAvIHNpemVvZihhWzBdKSkKPgo+IEBAIC0xOTYs MTcgKzE5Nyw2IEBAIF9oaWRkZW4gbGlieGxfX2V2X3hzd2F0Y2ggKmxpYnhsX193YXRjaF8KPiAg ICAqIHZlcnNpb24gb2YgdGhlIF9ldmRpc2FibGVfRk9PIGZ1bmN0aW9uOyB0aGUgaW50ZXJuYWwg b25lIGlzCj4gICAgKiB1c2VkIGR1cmluZyBjbGVhbnVwLgo+ICAgICovCj4gLV9oaWRkZW4gaW50 IGxpYnhsX19kb21haW5fY3JlYXRlX2luZm9fc2V0ZGVmYXVsdChsaWJ4bF9fZ2MgKmdjLAo+IC0g ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlieGxfZG9tYWluX2NyZWF0 ZV9pbmZvICpjX2luZm8pOwo+IC1faGlkZGVuIGludCBsaWJ4bF9fZG9tYWluX2J1aWxkX2luZm9f c2V0ZGVmYXVsdChsaWJ4bF9fZ2MgKmdjLAo+IC0gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgbGlieGxfZG9tYWluX2J1aWxkX2luZm8gKmJfaW5mbyk7Cj4gLV9oaWRkZW4g aW50IGxpYnhsX19kZXZpY2VfZGlza19zZXRkZWZhdWx0KGxpYnhsX19nYyAqZ2MsCj4gLSAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpYnhsX2RldmljZV9kaXNrICpk aXNrKTsKPiAtX2hpZGRlbiBpbnQgbGlieGxfX2RldmljZV9uaWNfc2V0ZGVmYXVsdChsaWJ4bF9f Z2MgKmdjLCBsaWJ4bF9kZXZpY2VfbmljICpuaWMpOwo+IC1faGlkZGVuIGludCBsaWJ4bF9fZGV2 aWNlX3ZmYl9zZXRkZWZhdWx0KGxpYnhsX19nYyAqZ2MsIGxpYnhsX2RldmljZV92ZmIgKnZmYik7 Cj4gLV9oaWRkZW4gaW50IGxpYnhsX19kZXZpY2VfdmtiX3NldGRlZmF1bHQobGlieGxfX2djICpn YywgbGlieGxfZGV2aWNlX3ZrYiAqdmtiKTsKPiAtX2hpZGRlbiBpbnQgbGlieGxfX2RldmljZV9w Y2lfc2V0ZGVmYXVsdChsaWJ4bF9fZ2MgKmdjLCBsaWJ4bF9kZXZpY2VfcGNpICpwY2kpOwo+IC0K PiAgIHN0cnVjdCBsaWJ4bF9fZXZnZW5fZG9tYWluX2RlYXRoIHsKPiAgICAgICB1aW50MzJfdCBk b21pZDsKPiAgICAgICB1bnNpZ25lZCBzaHV0ZG93bl9yZXBvcnRlZDoxLCBkZWF0aF9yZXBvcnRl ZDoxOwo+IEBAIC03MDQsNiArNjk0LDIxIEBAIF9oaWRkZW4gaW50IGxpYnhsX193YWl0X2Zvcl9i YWNrZW5kKGxpYngKPiAgICAqICAgICBBbGwgbGlieGwgQVBJIGZ1bmN0aW9ucyBhcmUgZXhwZWN0 ZWQgdG8gaGF2ZSBhcnJhbmdlZCBmb3IgdGhpcwo+ICAgICogICAgIHRvIGJlIGNhbGxlZCBiZWZv cmUgdXNpbmcgYW55IHZhbHVlcyB3aXRoaW4gdGhlc2Ugc3RydWN0dXJlcy4KPiAgICAqLwo+ICtf aGlkZGVuIGludCBsaWJ4bF9fZG9tYWluX2NyZWF0ZV9pbmZvX3NldGRlZmF1bHQobGlieGxfX2dj ICpnYywKPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpYnhsX2Rv bWFpbl9jcmVhdGVfaW5mbyAqY19pbmZvKTsKPiArX2hpZGRlbiBpbnQgbGlieGxfX2RvbWFpbl9i dWlsZF9pbmZvX3NldGRlZmF1bHQobGlieGxfX2djICpnYywKPiArICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIGxpYnhsX2RvbWFpbl9idWlsZF9pbmZvICpiX2luZm8pOwo+ ICtfaGlkZGVuIGludCBsaWJ4bF9fZGV2aWNlX2Rpc2tfc2V0ZGVmYXVsdChsaWJ4bF9fZ2MgKmdj LAo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaWJ4bF9kZXZp Y2VfZGlzayAqZGlzayk7Cj4gK19oaWRkZW4gaW50IGxpYnhsX19kZXZpY2VfbmljX3NldGRlZmF1 bHQobGlieGxfX2djICpnYywgbGlieGxfZGV2aWNlX25pYyAqbmljKTsKPiArX2hpZGRlbiBpbnQg bGlieGxfX2RldmljZV92ZmJfc2V0ZGVmYXVsdChsaWJ4bF9fZ2MgKmdjLCBsaWJ4bF9kZXZpY2Vf dmZiICp2ZmIpOwo+ICtfaGlkZGVuIGludCBsaWJ4bF9fZGV2aWNlX3ZrYl9zZXRkZWZhdWx0KGxp YnhsX19nYyAqZ2MsIGxpYnhsX2RldmljZV92a2IgKnZrYik7Cj4gK19oaWRkZW4gaW50IGxpYnhs X19kZXZpY2VfcGNpX3NldGRlZmF1bHQobGlieGxfX2djICpnYywgbGlieGxfZGV2aWNlX3BjaSAq cGNpKTsKPiArCj4gK19oaWRkZW4gY29uc3QgY2hhciAqbGlieGxfX2RldmljZV9uaWNfZGV2bmFt ZShsaWJ4bF9fZ2MgKmdjLAo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgdWludDMyX3QgZG9taWQsCj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICB1aW50MzJfdCBkZXZpZCwKPiArICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIGxpYnhsX25pY190eXBlIHR5cGUpOwo+Cj4gICAvKiBB cnJhbmdlcyB0aGF0IGRldiB3aWxsIGJlIHJlbW92ZWQgZnJvbSBpdHMgZ3Vlc3QuICBXaGVuCj4g ICAgKiB0aGlzIGlzIGRvbmUsIHRoZSBhbyB3aWxsIGJlIGNvbXBsZXRlZC4gIEFuIGVycm9yCj4g ZGlmZiAtciBhMTRiMWRkMGZlZWUgLXIgNDRmYzc2NDg1Zjc5IHRvb2xzL3B5dGhvbi94ZW4veGVu ZC9pbWFnZS5weQo+IC0tLSBhL3Rvb2xzL3B5dGhvbi94ZW4veGVuZC9pbWFnZS5weQlXZWQgQXBy IDI1IDEwOjUzOjUyIDIwMTIgKzAxMDAKPiArKysgYi90b29scy9weXRob24veGVuL3hlbmQvaW1h Z2UucHkJV2VkIEFwciAyNSAxMjo1NTo1NyAyMDEyICswMTAwCj4gQEAgLTkxNywxMSArOTE3LDcg QEAgY2xhc3MgSFZNSW1hZ2VIYW5kbGVyKEltYWdlSGFuZGxlcik6Cj4gICAgICAgICAgICAgICBy ZXQuYXBwZW5kKCItbmV0IikKPiAgICAgICAgICAgICAgIHJldC5hcHBlbmQoIm5pYyx2bGFuPSVk LG1hY2FkZHI9JXMsbW9kZWw9JXMiICUKPiAgICAgICAgICAgICAgICAgICAgICAgICAgKG5pY3Ms IG1hYywgbW9kZWwpKQo+IC0gICAgICAgICAgICB2aWZuYW1lID0gZGV2aW5mby5nZXQoJ3ZpZm5h bWUnKQo+IC0gICAgICAgICAgICBpZiB2aWZuYW1lOgo+IC0gICAgICAgICAgICAgICAgdmlmbmFt ZSA9ICJ0YXAtIiArIHZpZm5hbWUKPiAtICAgICAgICAgICAgZWxzZToKPiAtICAgICAgICAgICAg ICAgIHZpZm5hbWUgPSAidGFwJWQuJWQiICUgKHNlbGYudm0uZ2V0RG9taWQoKSwgbmljcy0xKQo+ ICsgICAgICAgICAgICB2aWZuYW1lID0gInZpZiVkLiVkLWVtdSIgJSAoc2VsZi52bS5nZXREb21p ZCgpLCBuaWNzLTEpCj4gICAgICAgICAgICAgICByZXQuYXBwZW5kKCItbmV0IikKPiAgICAgICAg ICAgICAgIHJldC5hcHBlbmQoInRhcCx2bGFuPSVkLGlmbmFtZT0lcyxicmlkZ2U9JXMiICUKPiAg ICAgICAgICAgICAgICAgICAgICAgICAgKG5pY3MsIHZpZm5hbWUsIGJyaWRnZSkpCj4KPgoKCl9f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBt YWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbi5vcmcKaHR0cDovL2xpc3RzLnhlbi5vcmcv eGVuLWRldmVsCg==