From owner-freebsd-current Fri Nov 15 13:40:22 2002 Delivered-To: freebsd-current@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 440CA37B401; Fri, 15 Nov 2002 13:40:11 -0800 (PST) Received: from sccrmhc01.attbi.com (sccrmhc01.attbi.com [204.127.202.61]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5E4E643E4A; Fri, 15 Nov 2002 13:40:10 -0800 (PST) (envelope-from julian@elischer.org) Received: from InterJet.elischer.org ([12.232.168.4]) by sccrmhc01.attbi.com (InterMail vM.4.01.03.27 201-229-121-127-20010626) with ESMTP id <20021115214008.UCEP2683.sccrmhc01.attbi.com@InterJet.elischer.org>; Fri, 15 Nov 2002 21:40:08 +0000 Received: from localhost (localhost.elischer.org [127.0.0.1]) by InterJet.elischer.org (8.9.1a/8.9.1) with ESMTP id NAA46393; Fri, 15 Nov 2002 13:39:47 -0800 (PST) Date: Fri, 15 Nov 2002 13:39:46 -0800 (PST) From: Julian Elischer To: FreeBSD current users Cc: re@freebsd.org Subject: First cut at sysinstall 64bit changes Message-ID: MIME-Version: 1.0 Content-Type: MULTIPART/MIXED; BOUNDARY="0-700495603-1037396386=:46162" Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. Send mail to mime@docserver.cac.washington.edu for more info. --0-700495603-1037396386=:46162 Content-Type: TEXT/PLAIN; charset=US-ASCII Here is a set of patches that alowed me to at least make a 1.5TB partition on my raid set. I am willing to bet that it breaks other platforms as I haven't even compiled them but it's mainly mechanical editing. is there a "Mr sysinstall" these days? The set I posted for 4.7++ is different from this as I think that the two are diverging with the addition of ufs2 to -current. This is not complete but it did allow me to partition the array with one big partition which is what I wanted (for testing UFS2). Julian --0-700495603-1037396386=:46162 Content-Type: TEXT/PLAIN; charset=US-ASCII; name="64bit.diff" Content-Transfer-Encoding: BASE64 Content-ID: Content-Description: Content-Disposition: attachment; filename="64bit.diff" SW5kZXg6IGxpYi9saWJkaXNrL2NodW5rLmMNCj09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT0NClJDUyBmaWxlOiAvdXNyL2N2cy9zcmMvbGliL2xpYmRpc2svY2h1 bmsuYyx2DQpyZXRyaWV2aW5nIHJldmlzaW9uIDEuNDQNCmRpZmYgLXUgLXIx LjQ0IGNodW5rLmMNCi0tLSBsaWIvbGliZGlzay9jaHVuay5jCTEzIE5vdiAy MDAyIDA1OjMxOjMyIC0wMDAwCTEuNDQNCisrKyBsaWIvbGliZGlzay9jaHVu ay5jCTE1IE5vdiAyMDAyIDE4OjU2OjUwIC0wMDAwDQpAQCAtNDQsNyArNDQs NyBAQA0KIH0NCiANCiBzdGF0aWMgc3RydWN0IGNodW5rICoNCi1GaW5kX01v dGhlcl9DaHVuayhzdHJ1Y3QgY2h1bmsgKmNodW5rcywgdV9sb25nIG9mZnNl dCwgdV9sb25nIGVuZCwgY2h1bmtfZSB0eXBlKQ0KK0ZpbmRfTW90aGVyX0No dW5rKHN0cnVjdCBjaHVuayAqY2h1bmtzLCBibGtfY250IG9mZnNldCwgYmxr X2NudCBlbmQsIGNodW5rX2UgdHlwZSkNCiB7DQogCXN0cnVjdCBjaHVuayAq YzEsKmMyLGN0Ow0KIA0KQEAgLTEyMSw3ICsxMjEsNyBAQA0KIH0NCiANCiBp bnQNCi1JbnNlcnRfQ2h1bmsoc3RydWN0IGNodW5rICpjMiwgdV9sb25nIG9m ZnNldCwgdV9sb25nIHNpemUsIGNvbnN0IGNoYXIgKm5hbWUsDQorSW5zZXJ0 X0NodW5rKHN0cnVjdCBjaHVuayAqYzIsIGJsa19jbnQgb2Zmc2V0LCBibGtf Y250IHNpemUsIGNvbnN0IGNoYXIgKm5hbWUsDQogCWNodW5rX2UgdHlwZSwg aW50IHN1YnR5cGUsIHVfbG9uZyBmbGFncywgY29uc3QgY2hhciAqc25hbWUp DQogew0KIAlzdHJ1Y3QgY2h1bmsgKmN0LCpjczsNCkBAIC0yMDQsMTEgKzIw NCwxMSBAQA0KIH0NCiANCiBpbnQNCi1BZGRfQ2h1bmsoc3RydWN0IGRpc2sg KmQsIGxvbmcgb2Zmc2V0LCB1X2xvbmcgc2l6ZSwgY29uc3QgY2hhciAqbmFt ZSwNCitBZGRfQ2h1bmsoc3RydWN0IGRpc2sgKmQsIGJsa19jbnQgb2Zmc2V0 LCBibGtfY250IHNpemUsIGNvbnN0IGNoYXIgKm5hbWUsDQogCWNodW5rX2Ug dHlwZSwgaW50IHN1YnR5cGUsIHVfbG9uZyBmbGFncywgY29uc3QgY2hhciAq c25hbWUpDQogew0KIAlzdHJ1Y3QgY2h1bmsgKmMxLCpjMixjdDsNCi0JdV9s b25nIGVuZCA9IG9mZnNldCArIHNpemUgLSAxOw0KKwlibGtfY250IGVuZCA9 IG9mZnNldCArIHNpemUgLSAxOw0KIAljdC5vZmZzZXQgPSBvZmZzZXQ7DQog CWN0LmVuZCA9IGVuZDsNCiAJY3Quc2l6ZSA9IHNpemU7DQpAQCAtMzgxLDcg KzM4MSw3IEBADQogCWZvcig7IGkgPCBvZmZzZXQ7IGkrKykgcHV0Y2hhcign LScpOw0KIAlwdXRjaGFyKCc+Jyk7DQogCWZvcig7IGkgPCAxMDsgaSsrKSBw dXRjaGFyKCcgJyk7DQotCXByaW50ZigiJXAgJThsZCAlOGx1ICU4bHUgJS04 cyAlLTE2cyAlLThzIDB4JTAyeCAlcyIsDQorCXByaW50ZigiJXAgJTEybGx1 ICUxMmxsdSAlMTJsbHUgJS04cyAlLTE2cyAlLThzIDB4JTAyeCAlcyIsDQog CQljMSwgYzEtPm9mZnNldCwgYzEtPnNpemUsIGMxLT5lbmQsIGMxLT5uYW1l LCBjMS0+c25hbWUsDQogCQljaHVua19uYW1lKGMxLT50eXBlKSwgYzEtPnN1 YnR5cGUsDQogCQlTaG93Q2h1bmtGbGFncyhjMSkpOw0KQEAgLTQwNyw3ICs0 MDcsNyBAQA0KIHsNCiAJc3RydWN0IGNodW5rICpjMT0wLCAqYzIsICpjMzsN CiAJY2h1bmtfZSB0eXBlID0gYy0+dHlwZTsNCi0JdV9sb25nIG9mZnNldCA9 IGMtPm9mZnNldDsNCisJYmxrX2NudCBvZmZzZXQgPSBjLT5vZmZzZXQ7DQog DQogCWlmKHR5cGUgPT0gd2hvbGUpDQogCQlyZXR1cm4gMTsNCkluZGV4OiBs aWIvbGliZGlzay9jcmVhdGVfY2h1bmsuYw0KPT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PQ0KUkNTIGZpbGU6IC91c3IvY3ZzL3NyYy9saWIvbGliZGlzay9jcmVh dGVfY2h1bmsuYyx2DQpyZXRyaWV2aW5nIHJldmlzaW9uIDEuNzYNCmRpZmYg LXUgLXIxLjc2IGNyZWF0ZV9jaHVuay5jDQotLS0gbGliL2xpYmRpc2svY3Jl YXRlX2NodW5rLmMJMTEgTm92IDIwMDIgMDQ6NDY6MzkgLTAwMDAJMS43Ng0K KysrIGxpYi9saWJkaXNrL2NyZWF0ZV9jaHVuay5jCTE1IE5vdiAyMDAyIDE5 OjI0OjQ4IC0wMDAwDQpAQCAtMTcxLDEwICsxNzEsMTAgQEANCiB9DQogDQog aW50DQotQ3JlYXRlX0NodW5rKHN0cnVjdCBkaXNrICpkLCB1X2xvbmcgb2Zm c2V0LCB1X2xvbmcgc2l6ZSwgY2h1bmtfZSB0eXBlLCBpbnQgc3VidHlwZSwg dV9sb25nIGZsYWdzLCBjb25zdCBjaGFyICpzbmFtZSkNCitDcmVhdGVfQ2h1 bmsoc3RydWN0IGRpc2sgKmQsIGJsa19jbnQgb2Zmc2V0LCBibGtfY250IHNp emUsIGNodW5rX2UgdHlwZSwgaW50IHN1YnR5cGUsIHVfbG9uZyBmbGFncywg Y29uc3QgY2hhciAqc25hbWUpDQogew0KIAlpbnQgaTsNCi0JdV9sb25nIGw7 DQorCWJsa19jbnQgbDsNCiAJDQogCWlmKCEoZmxhZ3MgJiBDSFVOS19GT1JD RV9BTEwpKSB7DQogI2lmZGVmIFBDOTgNCkBAIC0yMDIsNyArMjAyLDggQEAN CiB9DQogDQogc3RydWN0IGNodW5rICoNCi1DcmVhdGVfQ2h1bmtfRFdJTShz dHJ1Y3QgZGlzayAqZCwgY29uc3Qgc3RydWN0IGNodW5rICpwYXJlbnQgLCB1 X2xvbmcgc2l6ZSwgY2h1bmtfZSB0eXBlLCBpbnQgc3VidHlwZSwgdV9sb25n IGZsYWdzKQ0KK0NyZWF0ZV9DaHVua19EV0lNKHN0cnVjdCBkaXNrICpkLCBj b25zdCBzdHJ1Y3QgY2h1bmsgKnBhcmVudCAsIGJsa19jbnQgc2l6ZSwNCitj aHVua19lIHR5cGUsIGludCBzdWJ0eXBlLCB1X2xvbmcgZmxhZ3MpDQogew0K IAlpbnQgaTsNCiAJc3RydWN0IGNodW5rICpjMTsNCkluZGV4OiBsaWIvbGli ZGlzay9kaXNrLmMNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NClJDUyBmaWxl OiAvdXNyL2N2cy9zcmMvbGliL2xpYmRpc2svZGlzay5jLHYNCnJldHJpZXZp bmcgcmV2aXNpb24gMS4xMDgNCmRpZmYgLXUgLXIxLjEwOCBkaXNrLmMNCi0t LSBsaWIvbGliZGlzay9kaXNrLmMJMTMgTm92IDIwMDIgMDU6MzE6MzIgLTAw MDAJMS4xMDgNCisrKyBsaWIvbGliZGlzay9kaXNrLmMJMTUgTm92IDIwMDIg MTk6MTk6MDEgLTAwMDANCkBAIC0xMDIsNyArMTAyLDcgQEANCiAJc2l6ZV90 IHR4dHNpemU7DQogCWludCBlcnJvciwgaTsNCiAJY2hhciAqcCwgKnEsICpy LCAqYSwgKmIsICpuLCAqdDsNCi0Jb2ZmX3QgbywgbGVuLCBvZmY7DQorCWJs a19jbnQgbywgbGVuLCBvZmY7DQogCXVfaW50IGwsIHMsIHR5LCBzYywgaGQs IGFsdDsNCiAJb2ZmX3QgbG9bMTBdOw0KIA0KQEAgLTE1Miw3ICsxNTIsNyBA QA0KIAlkLT5uYW1lID0gc3RyZHVwKG5hbWUpOw0KIA0KIAlhID0gc3Ryc2Vw KCZwLCAiICIpOwkvKiBsZW5ndGggaW4gYnl0ZXMgKi8NCi0JbGVuID0gc3Ry dG9pbWF4KGEsICZyLCAwKTsNCisJbGVuID0gc3RydG91bGwoYSwgJnIsIDAp Ow0KIAlpZiAoKnIpIHsgcHJpbnRmKCJCQVJGICVkIDwlZD5cbiIsIF9fTElO RV9fLCAqcik7IGV4aXQgKDApOyB9DQogDQogCWEgPSBzdHJzZXAoJnAsICIg Iik7CS8qIHNlY3RvcnNpemUgKi8NCkBAIC0xNjIsNyArMTYyLDcgQEANCiAJ ZC0+c2VjdG9yX3NpemUgPSBzOw0KIAlsZW4gLz0gczsJLyogbWVkaWEgc2l6 ZSBpbiBudW1iZXIgb2Ygc2VjdG9ycy4gKi8NCiANCi0JaWYgKEFkZF9DaHVu ayhkLCAwLCBsZW4sIG5hbWUsIHdob2xlLCAwLCAwLCAiLSIpKQ0KKwlpZiAo QWRkX0NodW5rKGQsIDBMTCwgbGVuLCBuYW1lLCB3aG9sZSwgMCwgMCwgIi0i KSkNCiAJCURQUklOVCgoIkZhaWxlZCB0byBhZGQgJ3dob2xlJyBjaHVuayIp KTsNCiANCiAJZm9yICg7Oykgew0KQEAgLTE3MCw3ICsxNzAsNyBAQA0KIAkJ aWYgKGEgPT0gTlVMTCkNCiAJCQlicmVhazsNCiAJCWIgPSBzdHJzZXAoJnAs ICIgIik7DQotCQlvID0gc3RydG91bChiLCAmciwgMCk7DQorCQlvID0gc3Ry dG91bGwoYiwgJnIsIDApOw0KIAkJaWYgKCpyKSB7IHByaW50ZigiQkFSRiAl ZCA8JWQ+XG4iLCBfX0xJTkVfXywgKnIpOyBleGl0ICgwKTsgfQ0KIAkJaWYg KCFzdHJjbXAoYSwgImhkIikpDQogCQkJZC0+Ymlvc19oZCA9IG87DQpAQCAt MjAyLDcgKzIwMiw3IEBADQogCQl0ID0gc3Ryc2VwKCZwLCAiICIpOwkvKiBU eXBlIHtTVU4sIEJTRCwgTUJSLCBHUFR9ICovDQogCQluID0gc3Ryc2VwKCZw LCAiICIpOwkvKiBuYW1lICovDQogCQlhID0gc3Ryc2VwKCZwLCAiICIpOwkv KiBsZW4gKi8NCi0JCWxlbiA9IHN0cnRvaW1heChhLCAmciwgMCk7DQorCQls ZW4gPSBzdHJ0b3VsbChhLCAmciwgMCk7DQogCQlpZiAoKnIpIHsgcHJpbnRm KCJCQVJGICVkIDwlZD5cbiIsIF9fTElORV9fLCAqcik7IGV4aXQgKDApOyB9 DQogCQlhID0gc3Ryc2VwKCZwLCAiICIpOwkvKiBzZWNzaXplICovDQogCQlz ID0gc3RydG9pbWF4KGEsICZyLCAwKTsNCkBAIC0yMTIsNyArMjEyLDcgQEAN CiAJCQlpZiAoYSA9PSBOVUxMKQ0KIAkJCQlicmVhazsNCiAJCQliID0gc3Ry c2VwKCZwLCAiICIpOw0KLQkJCW8gPSBzdHJ0b2ltYXgoYiwgJnIsIDApOw0K KwkJCW8gPSBzdHJ0b3VsbChiLCAmciwgMCk7DQogCQkJaWYgKCpyKSB7DQog CQkJCXVpbnQzMl90IHN0YXR1czsNCiANCkluZGV4OiBsaWIvbGliZGlzay9s aWJkaXNrLmgNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NClJDUyBmaWxlOiAv dXNyL2N2cy9zcmMvbGliL2xpYmRpc2svbGliZGlzay5oLHYNCnJldHJpZXZp bmcgcmV2aXNpb24gMS41MQ0KZGlmZiAtdSAtcjEuNTEgbGliZGlzay5oDQot LS0gbGliL2xpYmRpc2svbGliZGlzay5oCTExIE5vdiAyMDAyIDE4OjU1OjU3 IC0wMDAwCTEuNTENCisrKyBsaWIvbGliZGlzay9saWJkaXNrLmgJMTUgTm92 IDIwMDIgMTk6MjI6MzQgLTAwMDANCkBAIC0xMCw2ICsxMCw3IEBADQogKg0K ICovDQogDQordHlwZWRlZiB1X2ludDY0X3QgYmxrX2NudDsNCiAjZGVmaW5l IERFQlVHIDENCiAvKiBZb3UgY2FuIGRlZmluZSBhIHBhcnRpY3VsYXIgYXJj aGl0ZWN0dXJlIGhlcmUgaWYgeW91IGFyZSBkZWJ1Z2dpbmcuICovDQogLyog I2RlZmluZSBQX0RFQlVHIHBfc3BhcmM2NCAqLw0KQEAgLTEwMCw5ICsxMDEs OSBAQA0KIAlzdHJ1Y3QgY2h1bmsJKm5leHQ7DQogCXN0cnVjdCBjaHVuawkq cGFydDsNCiAJc3RydWN0IGRpc2sJKmRpc2s7DQotCWxvbmcJCW9mZnNldDsN Ci0JdV9sb25nCQlzaXplOw0KLQl1X2xvbmcJCWVuZDsNCisJYmxrX2NudAkJ b2Zmc2V0Ow0KKwlibGtfY250CQlzaXplOw0KKwlibGtfY250CQllbmQ7DQog CWNoYXIJCSpzbmFtZTsJCS8qIFBDOTggZmllbGQgKi8NCiAJY2hhcgkJKm5h bWU7DQogCWNoYXIJCSpvbmFtZTsNCkBAIC0xODAsNyArMTgxLDcgQEANCiAg Ki8NCiANCiBpbnQNCi1JbnNlcnRfQ2h1bmsoc3RydWN0IGNodW5rICosIHVf bG9uZywgdV9sb25nLCBjb25zdCBjaGFyICosIGNodW5rX2UsIGludCwNCitJ bnNlcnRfQ2h1bmsoc3RydWN0IGNodW5rICosIGJsa19jbnQsIGJsa19jbnQs IGNvbnN0IGNoYXIgKiwgY2h1bmtfZSwgaW50LA0KIAl1X2xvbmcsIGNvbnN0 IGNoYXIgKik7DQogDQogaW50DQpAQCAtMjA0LDcgKzIwNSw3IEBADQogICov DQogDQogaW50DQotQ3JlYXRlX0NodW5rKHN0cnVjdCBkaXNrICosIHVfbG9u ZywgdV9sb25nLCBjaHVua19lLCBpbnQsIHVfbG9uZywgY29uc3QgY2hhciAq KTsNCitDcmVhdGVfQ2h1bmsoc3RydWN0IGRpc2sgKiwgYmxrX2NudCwgYmxr X2NudCwgY2h1bmtfZSwgaW50LCB1X2xvbmcsIGNvbnN0IGNoYXIgKik7DQog LyogQ3JlYXRlIGEgY2h1bmsgd2l0aCB0aGUgc3BlY2lmaWVkIHBhcmFtdGVy cw0KICAqLw0KIA0KQEAgLTI0OSwzNiArMjUwLDM2IEBADQogLyogV3JpdGUg YWxsIHRoZSBNQlJzLCBkaXNrbGFiZWxzLCBib290YmxvY2tzIGFuZCBib290 IG1hbmFnZXJzDQogICovDQogDQotdV9sb25nDQotTmV4dF9DeWxfQWxpZ25l ZChjb25zdCBzdHJ1Y3QgZGlzayAqLCB1X2xvbmcpOw0KK2Jsa19jbnQNCitO ZXh0X0N5bF9BbGlnbmVkKGNvbnN0IHN0cnVjdCBkaXNrICosIGJsa19jbnQp Ow0KIC8qIFJvdW5kIG9mZnNldCB1cCB0byBuZXh0IGN5bGluZGVyIGFjY29y ZGluZyB0byB0aGUgYmlvcy1nZW9tZXRyeQ0KICAqLw0KIA0KLXVfbG9uZw0K LVByZXZfQ3lsX0FsaWduZWQoY29uc3Qgc3RydWN0IGRpc2sgKiwgdV9sb25n KTsNCitibGtfY250DQorUHJldl9DeWxfQWxpZ25lZChjb25zdCBzdHJ1Y3Qg ZGlzayAqLCBibGtfY250KTsNCiAvKiBSb3VuZCBvZmZzZXQgZG93biB0byBw cmV2aW91cyBjeWxpbmRlciBhY2NvcmRpbmcgdG8gdGhlIGJpb3MtDQogICog Z2VvbWV0cnkNCiAgKi8NCiANCiBpbnQNCi1UcmFja19BbGlnbmVkKGNvbnN0 IHN0cnVjdCBkaXNrICosIHVfbG9uZyk7DQorVHJhY2tfQWxpZ25lZChjb25z dCBzdHJ1Y3QgZGlzayAqLCBibGtfY250KTsNCiAvKiBDaGVjayBpZiBvZmZz ZXQgaXMgYWxpZ25lZCBvbiBhIHRyYWNrIGFjY29yZGluZyB0byB0aGUNCiAg KiBiaW9zIGdlb21ldHJ5DQogICovDQogDQotdV9sb25nDQotTmV4dF9UcmFj a19BbGlnbmVkKGNvbnN0IHN0cnVjdCBkaXNrICosIHVfbG9uZyk7DQorYmxr X2NudA0KK05leHRfVHJhY2tfQWxpZ25lZChjb25zdCBzdHJ1Y3QgZGlzayAq LCBibGtfY250KTsNCiAvKiBSb3VuZCBvZmZzZXQgdXAgdG8gbmV4dCB0cmFj ayBhY2NvcmRpbmcgdG8gdGhlIGJpb3MtZ2VvbWV0cnkNCiAgKi8NCiANCi11 X2xvbmcNCi1QcmV2X1RyYWNrX0FsaWduZWQoY29uc3Qgc3RydWN0IGRpc2sg KiwgdV9sb25nKTsNCitibGtfY250DQorUHJldl9UcmFja19BbGlnbmVkKGNv bnN0IHN0cnVjdCBkaXNrICosIGJsa19jbnQpOw0KIC8qIENoZWNrIGlmIG9m ZnNldCBpcyBhbGlnbmVkIG9uIGEgdHJhY2sgYWNjb3JkaW5nIHRvIHRoZQ0K ICAqIGJpb3MgZ2VvbWV0cnkNCiAgKi8NCiANCiBzdHJ1Y3QgY2h1bmsgKg0K LUNyZWF0ZV9DaHVua19EV0lNKHN0cnVjdCBkaXNrICosIGNvbnN0IHN0cnVj dCBjaHVuayAqLCB1X2xvbmcsIGNodW5rX2UsIGludCwNCitDcmVhdGVfQ2h1 bmtfRFdJTShzdHJ1Y3QgZGlzayAqLCBjb25zdCBzdHJ1Y3QgY2h1bmsgKiwg YmxrX2NudCwgY2h1bmtfZSwgaW50LA0KIAl1X2xvbmcpOw0KIC8qIFRoaXMg b25lIGNyZWF0ZXMgYSBwYXJ0aXRpb24gaW5zaWRlIHRoZSBnaXZlbiBwYXJl bnQgb2YgdGhlIGdpdmVuDQogICogc2l6ZSwgYW5kIHJldHVybnMgYSBwb2lu dGVyIHRvIGl0LiAgVGhlIGZpcnN0IHVudXNlZCBjaHVuayBiaWcNCkBAIC0y OTksNyArMzAwLDcgQEANCiB2b2lkIERlYnVnX0NodW5rKHN0cnVjdCBjaHVu ayAqKTsNCiB2b2lkIEZyZWVfQ2h1bmsoc3RydWN0IGNodW5rICopOw0KIHN0 cnVjdCBjaHVuayAqQ2xvbmVfQ2h1bmsoY29uc3Qgc3RydWN0IGNodW5rICop Ow0KLWludCBBZGRfQ2h1bmsoc3RydWN0IGRpc2sgKiwgbG9uZywgdV9sb25n LCBjb25zdCBjaGFyICosIGNodW5rX2UsIGludCwgdV9sb25nLA0KK2ludCBB ZGRfQ2h1bmsoc3RydWN0IGRpc2sgKiwgYmxrX2NudCwgYmxrX2NudCwgY29u c3QgY2hhciAqLCBjaHVua19lLCBpbnQsIHVfbG9uZywNCiAJY29uc3QgY2hh ciAqKTsNCiB2b2lkICpyZWFkX2Jsb2NrKGludCwgZGFkZHJfdCwgdV9sb25n KTsNCiBpbnQgd3JpdGVfYmxvY2soaW50LCBkYWRkcl90LCBjb25zdCB2b2lk ICosIHVfbG9uZyk7DQpJbmRleDogbGliL2xpYmRpc2svcnVsZXMuYw0KPT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PQ0KUkNTIGZpbGU6IC91c3IvY3ZzL3NyYy9s aWIvbGliZGlzay9ydWxlcy5jLHYNCnJldHJpZXZpbmcgcmV2aXNpb24gMS4y Nw0KZGlmZiAtdSAtcjEuMjcgcnVsZXMuYw0KLS0tIGxpYi9saWJkaXNrL3J1 bGVzLmMJMzEgT2N0IDIwMDIgMDU6NTE6MjUgLTAwMDAJMS4yNw0KKysrIGxp Yi9saWJkaXNrL3J1bGVzLmMJMTUgTm92IDIwMDIgMTk6MjY6NTEgLTAwMDAN CkBAIC0yNSw3ICsyNSw3IEBADQogI2luY2x1ZGUgImxpYmRpc2suaCINCiAN CiBpbnQNCi1UcmFja19BbGlnbmVkKGNvbnN0IHN0cnVjdCBkaXNrICpkLCB1 X2xvbmcgb2Zmc2V0KQ0KK1RyYWNrX0FsaWduZWQoY29uc3Qgc3RydWN0IGRp c2sgKmQsIGJsa19jbnQgb2Zmc2V0KQ0KIHsNCiAJaWYgKCFkLT5iaW9zX3Nl Y3QpDQogCQlyZXR1cm4gMTsNCkBAIC0zNCwxNiArMzQsMTYgQEANCiAJcmV0 dXJuIDE7DQogfQ0KIA0KLXVfbG9uZw0KLVByZXZfVHJhY2tfQWxpZ25lZChj b25zdCBzdHJ1Y3QgZGlzayAqZCwgdV9sb25nIG9mZnNldCkNCitibGtfY250 DQorUHJldl9UcmFja19BbGlnbmVkKGNvbnN0IHN0cnVjdCBkaXNrICpkLCBi bGtfY250IG9mZnNldCkNCiB7DQogCWlmICghZC0+Ymlvc19zZWN0KQ0KIAkJ cmV0dXJuIG9mZnNldDsNCiAJcmV0dXJuIChvZmZzZXQgLyBkLT5iaW9zX3Nl Y3QpICogZC0+Ymlvc19zZWN0Ow0KIH0NCiANCi11X2xvbmcNCi1OZXh0X1Ry YWNrX0FsaWduZWQoY29uc3Qgc3RydWN0IGRpc2sgKmQsIHVfbG9uZyBvZmZz ZXQpDQorYmxrX2NudA0KK05leHRfVHJhY2tfQWxpZ25lZChjb25zdCBzdHJ1 Y3QgZGlzayAqZCwgYmxrX2NudCBvZmZzZXQpDQogew0KIAlpZiAoIWQtPmJp b3Nfc2VjdCkNCiAJCXJldHVybiBvZmZzZXQ7DQpAQCAtNTEsNyArNTEsNyBA QA0KIH0NCiANCiBzdGF0aWMgaW50DQotQ3lsX0FsaWduZWQoY29uc3Qgc3Ry dWN0IGRpc2sgKmQsIHVfbG9uZyBvZmZzZXQpDQorQ3lsX0FsaWduZWQoY29u c3Qgc3RydWN0IGRpc2sgKmQsIGJsa19jbnQgb2Zmc2V0KQ0KIHsNCiAJaWYg KCFkLT5iaW9zX3NlY3QgfHwgIWQtPmJpb3NfaGQpDQogCQlyZXR1cm4gMTsN CkBAIC02MCwxNiArNjAsMTYgQEANCiAJcmV0dXJuIDE7DQogfQ0KIA0KLXVf bG9uZw0KLVByZXZfQ3lsX0FsaWduZWQoY29uc3Qgc3RydWN0IGRpc2sgKmQs IHVfbG9uZyBvZmZzZXQpDQorYmxrX2NudA0KK1ByZXZfQ3lsX0FsaWduZWQo Y29uc3Qgc3RydWN0IGRpc2sgKmQsIGJsa19jbnQgb2Zmc2V0KQ0KIHsNCiAJ aWYgKCFkLT5iaW9zX3NlY3QgfHwgIWQtPmJpb3NfaGQpDQogCQlyZXR1cm4g b2Zmc2V0Ow0KIAlyZXR1cm4gKG9mZnNldCAvIChkLT5iaW9zX3NlY3QqZC0+ Ymlvc19oZCkpICogZC0+Ymlvc19zZWN0ICogZC0+Ymlvc19oZDsNCiB9DQog DQotdV9sb25nDQotTmV4dF9DeWxfQWxpZ25lZChjb25zdCBzdHJ1Y3QgZGlz ayAqZCwgdV9sb25nIG9mZnNldCkNCitibGtfY250DQorTmV4dF9DeWxfQWxp Z25lZChjb25zdCBzdHJ1Y3QgZGlzayAqZCwgYmxrX2NudCBvZmZzZXQpDQog ew0KIAlpZiAoIWQtPmJpb3Nfc2VjdCB8fCAhZC0+Ymlvc19oZCkNCiAJCXJl dHVybiBvZmZzZXQ7DQpAQCAtMTM0LDkgKzEzNCw5IEBADQogI2VuZGlmDQog CQkJc3ByaW50Zihtc2cgKyBzdHJsZW4obXNnKSwNCiAjaWZkZWYgUEM5OA0K LQkJICAgICJjaHVuayAnJXMnIFslbGQuLiVsZF0gZG9lcyBub3Qgc3RhcnQg b24gYSBjeWxpbmRlciBib3VuZGFyeVxuIiwNCisJCSAgICAiY2h1bmsgJyVz JyBbJWxsdS4uJWxsdV0gZG9lcyBub3Qgc3RhcnQgb24gYSBjeWxpbmRlciBi b3VuZGFyeVxuIiwNCiAjZWxzZQ0KLQkJICAgICJjaHVuayAnJXMnIFslbGQu LiVsZF0gZG9lcyBub3Qgc3RhcnQgb24gYSB0cmFjayBib3VuZGFyeVxuIiwN CisJCSAgICAiY2h1bmsgJyVzJyBbJWxsdS4uJWxsdV0gZG9lcyBub3Qgc3Rh cnQgb24gYSB0cmFjayBib3VuZGFyeVxuIiwNCiAjZW5kaWYNCiAJCQkJYzEt Pm5hbWUsIGMxLT5vZmZzZXQsIGMxLT5lbmQpOw0KIAkJaWYgKChjLT50eXBl ID09IHdob2xlIHx8IGMtPmVuZCA9PSBjMS0+ZW5kKQ0KQEAgLTE0NCw3ICsx NDQsNyBAQA0KIAkJCTsNCiAJCWVsc2UNCiAJCQlzcHJpbnRmKG1zZyArIHN0 cmxlbihtc2cpLA0KLQkJICAgICJjaHVuayAnJXMnIFslbGQuLiVsZF0gZG9l cyBub3QgZW5kIG9uIGEgY3lsaW5kZXIgYm91bmRhcnlcbiIsDQorCQkgICAg ImNodW5rICclcycgWyVsbHUuLiVsbHVdIGRvZXMgbm90IGVuZCBvbiBhIGN5 bGluZGVyIGJvdW5kYXJ5XG4iLA0KIAkJCQljMS0+bmFtZSwgYzEtPm9mZnNl dCwgYzEtPmVuZCk7DQogCX0NCiB9DQpJbmRleDogbGliL2xpYmRpc2svd3Jp dGVfaTM4Nl9kaXNrLmMNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NClJDUyBm aWxlOiAvdXNyL2N2cy9zcmMvbGliL2xpYmRpc2svd3JpdGVfaTM4Nl9kaXNr LmMsdg0KcmV0cmlldmluZyByZXZpc2lvbiAxLjQNCmRpZmYgLXUgLXIxLjQg d3JpdGVfaTM4Nl9kaXNrLmMNCi0tLSBsaWIvbGliZGlzay93cml0ZV9pMzg2 X2Rpc2suYwk4IE5vdiAyMDAyIDE0OjAwOjQ0IC0wMDAwCTEuNA0KKysrIGxp Yi9saWJkaXNrL3dyaXRlX2kzODZfZGlzay5jCTE1IE5vdiAyMDAyIDE5OjM2 OjE4IC0wMDAwDQpAQCAtODIsOCArODIsOSBAQA0KIGludA0KIFdyaXRlX0Rp c2soY29uc3Qgc3RydWN0IGRpc2sgKmQxKQ0KIHsNCi0JaW50IGZkLGk7DQot CWludCBqOw0KKwlpbnQgZmQ7DQorCWJsa19jbnQgYmxrczsNCisJaW50IGks IGo7DQogCXN0cnVjdCBkaXNrICpvbGQgPSAwOw0KIAlzdHJ1Y3QgY2h1bmsg KmMxOw0KIAlpbnQgcmV0ID0gMDsNCkBAIC0xMjAsNDMgKzEyMSw0MyBAQA0K IAkJV3JpdGVfSW50MzIoJmRwW2pdLmRwX3N0YXJ0LCBjMS0+b2Zmc2V0KTsN CiAJCVdyaXRlX0ludDMyKCZkcFtqXS5kcF9zaXplLCBjMS0+c2l6ZSk7DQog DQotCQlpID0gYzEtPm9mZnNldDsNCi0JCWlmIChpID49IDEwMjQqZDEtPmJp b3Nfc2VjdCpkMS0+Ymlvc19oZCkgew0KKwkJYmxrcyA9IGMxLT5vZmZzZXQ7 DQorCQlpZiAoYmxrcyA+PSAxMDI0KmQxLT5iaW9zX3NlY3QqZDEtPmJpb3Nf aGQpIHsNCiAJCQlkcFtqXS5kcF9zc2VjdCA9IDB4ZmY7DQogCQkJZHBbal0u ZHBfc2hkID0gMHhmZjsNCiAJCQlkcFtqXS5kcF9zY3lsID0gMHhmZjsNCiAJ CQluZWVkX2VkZCsrOw0KIAkJfSBlbHNlIHsNCi0JCQlkcFtqXS5kcF9zc2Vj dCA9IGkgJSBkMS0+Ymlvc19zZWN0Ow0KLQkJCWkgLT0gZHBbal0uZHBfc3Nl Y3QrKzsNCi0JCQlpIC89IGQxLT5iaW9zX3NlY3Q7DQotCQkJZHBbal0uZHBf c2hkID0gIGkgJSBkMS0+Ymlvc19oZDsNCi0JCQlpIC09IGRwW2pdLmRwX3No ZDsNCi0JCQlpIC89IGQxLT5iaW9zX2hkOw0KLQkJCWRwW2pdLmRwX3NjeWwg PSBpOw0KLQkJCWkgLT0gZHBbal0uZHBfc2N5bDsNCi0JCQlkcFtqXS5kcF9z c2VjdCB8PSBpID4+IDI7DQorCQkJZHBbal0uZHBfc3NlY3QgPSBibGtzICUg ZDEtPmJpb3Nfc2VjdDsNCisJCQlibGtzIC09IGRwW2pdLmRwX3NzZWN0Kys7 DQorCQkJYmxrcyAvPSBkMS0+Ymlvc19zZWN0Ow0KKwkJCWRwW2pdLmRwX3No ZCA9ICBibGtzICUgZDEtPmJpb3NfaGQ7DQorCQkJYmxrcyAtPSBkcFtqXS5k cF9zaGQ7DQorCQkJYmxrcyAvPSBkMS0+Ymlvc19oZDsNCisJCQlkcFtqXS5k cF9zY3lsID0gYmxrczsNCisJCQlibGtzIC09IGRwW2pdLmRwX3NjeWw7DQor CQkJZHBbal0uZHBfc3NlY3QgfD0gYmxrcyA+PiAyOw0KIAkJfQ0KIA0KICNp ZmRlZiBERUJVRw0KLQkJcHJpbnRmKCJTOiVsdSA9ICgleC8leC8leCkiLA0K KwkJcHJpbnRmKCJTOiVsbHUgPSAoJXgvJXgvJXgpIiwNCiAJCQljMS0+b2Zm c2V0LCBkcFtqXS5kcF9zY3lsLCBkcFtqXS5kcF9zaGQsIGRwW2pdLmRwX3Nz ZWN0KTsNCiAjZW5kaWYNCiANCi0JCWkgPSBjMS0+ZW5kOw0KLQkJZHBbal0u ZHBfZXNlY3QgPSBpICUgZDEtPmJpb3Nfc2VjdDsNCi0JCWkgLT0gZHBbal0u ZHBfZXNlY3QrKzsNCi0JCWkgLz0gZDEtPmJpb3Nfc2VjdDsNCi0JCWRwW2pd LmRwX2VoZCA9ICBpICUgZDEtPmJpb3NfaGQ7DQotCQlpIC09IGRwW2pdLmRw X2VoZDsNCi0JCWkgLz0gZDEtPmJpb3NfaGQ7DQotCQlpZiAoaT4xMDIzKSBp ID0gMTAyMzsNCi0JCWRwW2pdLmRwX2VjeWwgPSBpOw0KLQkJaSAtPSBkcFtq XS5kcF9lY3lsOw0KLQkJZHBbal0uZHBfZXNlY3QgfD0gaSA+PiAyOw0KKwkJ YmxrcyA9IGMxLT5lbmQ7DQorCQlkcFtqXS5kcF9lc2VjdCA9IGJsa3MgJSBk MS0+Ymlvc19zZWN0Ow0KKwkJYmxrcyAtPSBkcFtqXS5kcF9lc2VjdCsrOw0K KwkJYmxrcyAvPSBkMS0+Ymlvc19zZWN0Ow0KKwkJZHBbal0uZHBfZWhkID0g IGJsa3MgJSBkMS0+Ymlvc19oZDsNCisJCWJsa3MgLT0gZHBbal0uZHBfZWhk Ow0KKwkJYmxrcyAvPSBkMS0+Ymlvc19oZDsNCisJCWlmIChibGtzPjEwMjMp IGJsa3MgPSAxMDIzOw0KKwkJZHBbal0uZHBfZWN5bCA9IGJsa3M7DQorCQli bGtzIC09IGRwW2pdLmRwX2VjeWw7DQorCQlkcFtqXS5kcF9lc2VjdCB8PSBi bGtzID4+IDI7DQogDQogI2lmZGVmIERFQlVHDQotCQlwcmludGYoIiAgRTol bHUgPSAoJXgvJXgvJXgpXG4iLA0KKwkJcHJpbnRmKCIgIEU6JWxsdSA9ICgl eC8leC8leClcbiIsDQogCQkJYzEtPmVuZCwgZHBbal0uZHBfZWN5bCwgZHBb al0uZHBfZWhkLCBkcFtqXS5kcF9lc2VjdCk7DQogI2VuZGlmDQogDQpJbmRl eDogdXNyLnNiaW4vc3lzaW5zdGFsbC9kaXNrcy5jDQo9PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09DQpSQ1MgZmlsZTogL3Vzci9jdnMvc3JjL3Vzci5zYmluL3N5 c2luc3RhbGwvZGlza3MuYyx2DQpyZXRyaWV2aW5nIHJldmlzaW9uIDEuMTM5 DQpkaWZmIC11IC1yMS4xMzkgZGlza3MuYw0KLS0tIHVzci5zYmluL3N5c2lu c3RhbGwvZGlza3MuYwkxMyBOb3YgMjAwMiAwNTozOTo1OCAtMDAwMAkxLjEz OQ0KKysrIHVzci5zYmluL3N5c2luc3RhbGwvZGlza3MuYwkxNSBOb3YgMjAw MiAxOTo0ODo1MiAtMDAwMA0KQEAgLTY2LDcgKzY2LDcgQEANCiB7DQogICAg IHN0cnVjdCBjaHVuayAqYzEgPSBOVUxMOw0KICAgICBpbnQgaSA9IDA7DQot ICAgIGludCBsYXN0X2ZyZWUgPSAwOw0KKyAgICBibGtfY250IGxhc3RfZnJl ZSA9IDA7DQogDQogICAgIGlmICghZC0+Y2h1bmtzKQ0KIAltc2dGYXRhbCgi Tm8gY2h1bmsgbGlzdCBmb3VuZCBmb3IgJXMhIiwgZC0+bmFtZSk7DQpAQCAt ODMsMTkgKzgzLDE5IEBADQogCWN1cnJlbnRfY2h1bmsgPSBpIC0gMTsNCiB9 DQogDQotc3RhdGljIGludCBUb3RhbDsNCitzdGF0aWMgYmxrX2NudCBUb3Rh bDsNCiANCiBzdGF0aWMgdm9pZA0KIHByaW50X2NodW5rcyhEaXNrICpkLCBp bnQgdSkNCiB7DQogICAgIGludCByb3c7DQogICAgIGludCBpOw0KLSAgICBp bnQgc3o7DQorICAgIGJsa19jbnQgc3o7DQogICAgIGNoYXIgKnN6c3RyOw0K IA0KICAgICBzenN0ciA9ICh1ID09IFVOSVRfTUVHID8gIk1CIiA6ICh1ID09 IFVOSVRfS0lMTyA/ICJLQiIgOiAiU1QiKSk7DQogDQotICAgIGZvciAoaSA9 IFRvdGFsID0gMDsgY2h1bmtfaW5mb1tpXTsgaSsrKQ0KKyAgICBmb3IgKGkg PSAwLCBUb3RhbCA9IDBMTDsgY2h1bmtfaW5mb1tpXTsgaSsrKQ0KIAlUb3Rh bCArPSBjaHVua19pbmZvW2ldLT5zaXplOw0KICNpZmRlZiBQQzk4DQogICAg IGlmIChkLT5iaW9zX2N5bCA+PSA2NTUzNiB8fCBkLT5iaW9zX2hkID4gMTYg fHwgZC0+Ymlvc19zZWN0ID49IDI1Nikgew0KQEAgLTEyMSwxMCArMTIxLDEw IEBADQogICAgIGF0dHJzZXQoQV9SRVZFUlNFKTsgYWRkc3RyKGQtPm5hbWUp OyBhdHRyc2V0KEFfTk9STUFMKTsNCiAgICAgYXR0cnNldChBX1JFVkVSU0Up OyBtdmFkZHN0cigwLCA1NSwgIkZESVNLIFBhcnRpdGlvbiBFZGl0b3IiKTsg YXR0cnNldChBX05PUk1BTCk7DQogICAgIG12cHJpbnR3KDEsIDAsDQotCSAg ICAgIkRJU0sgR2VvbWV0cnk6XHQlbHUgY3lscy8lbHUgaGVhZHMvJWx1IHNl Y3RvcnMgPSAlbHUgc2VjdG9ycyAoJWx1TUIpIiwNCisJICAgICAiRElTSyBH ZW9tZXRyeTpcdCVsdSBjeWxzLyVsdSBoZWFkcy8lbHUgc2VjdG9ycyA9ICVs bHUgc2VjdG9ycyAoJWx1TUIpIiwNCiAJICAgICBkLT5iaW9zX2N5bCwgZC0+ Ymlvc19oZCwgZC0+Ymlvc19zZWN0LA0KLQkgICAgIGQtPmJpb3NfY3lsICog ZC0+Ymlvc19oZCAqIGQtPmJpb3Nfc2VjdCwNCi0JICAgICBkLT5iaW9zX2N5 bCAqIGQtPmJpb3NfaGQgKiBkLT5iaW9zX3NlY3QgLyAoMTAyNC81MTIpIC8g MTAyNCk7DQorCSAgICAgKGJsa19jbnQpZC0+Ymlvc19jeWwgKiBkLT5iaW9z X2hkICogZC0+Ymlvc19zZWN0LA0KKwkgICAgIChibGtfY250KWQtPmJpb3Nf Y3lsICogZC0+Ymlvc19oZCAqIGQtPmJpb3Nfc2VjdCAvICgxMDI0LzUxMikg LyAxMDI0KTsNCiAgICAgbXZwcmludHcoMywgMCwgIiU2cyAlMTBzKCVzKSAl MTBzICU4cyAlNnMgJTEwcyAlOHMgJThzIiwNCiAJICAgICAiT2Zmc2V0Iiwg IlNpemUiLCBzenN0ciwgIkVuZCIsICJOYW1lIiwgIlBUeXBlIiwgIkRlc2Mi LA0KIAkgICAgICJTdWJ0eXBlIiwgIkZsYWdzIik7DQpAQCAtMTQzLDcgKzE0 Myw3IEBADQogCX0NCiAJaWYgKGkgPT0gY3VycmVudF9jaHVuaykNCiAJICAg IGF0dHJzZXQoQVRUUl9TRUxFQ1RFRCk7DQotCW12cHJpbnR3KHJvdywgMCwg IiUxMGxkICUxMGx1ICUxMGx1ICU4cyAlNmQgJTEwcyAlOGRcdCUtNnMiLA0K KwltdnByaW50dyhyb3csIDAsICIlMTBsbHUgJTEwbGx1ICUxMGxsdSAlOHMg JTZkICUxMHMgJThkXHQlLTZzIiwNCiAJCSBjaHVua19pbmZvW2ldLT5vZmZz ZXQsIHN6LA0KIAkJIGNodW5rX2luZm9baV0tPmVuZCwgY2h1bmtfaW5mb1tp XS0+bmFtZSwNCiAJCSBjaHVua19pbmZvW2ldLT50eXBlLCANCkBAIC00MDAs NyArNDAwLDcgQEANCiAJCW1zZyA9ICJTbGljZSBpbiB1c2UsIGRlbGV0ZSBp dCBmaXJzdCBvciBtb3ZlIHRvIGFuIHVudXNlZCBvbmUuIjsNCiAJICAgIGVs c2Ugew0KIAkJY2hhciAqdmFsLCB0bXBbMjBdLCAqY3A7DQotCQlpbnQgc2l6 ZTsNCisJCWJsa19jbnQgc2l6ZTsNCiAjaWZkZWYgUEM5OA0KIAkJY2hhciBu YW1lWzE2XTsNCiANCkBAIC00MTYsNyArNDE2LDcgQEANCiAJCXNucHJpbnRm KHRtcCwgMjAsICIlbHUiLCBjaHVua19pbmZvW2N1cnJlbnRfY2h1bmtdLT5z aXplKTsNCiAJCXZhbCA9IG1zZ0dldElucHV0KHRtcCwgIlBsZWFzZSBzcGVj aWZ5IHRoZSBzaXplIGZvciBuZXcgRnJlZUJTRCBzbGljZSBpbiBibG9ja3Nc biINCiAJCQkJICAib3IgYXBwZW5kIGEgdHJhaWxpbmcgYE0nIGZvciBtZWdh Ynl0ZXMgKGUuZy4gMjBNKS4iKTsNCi0JCWlmICh2YWwgJiYgKHNpemUgPSBz dHJ0b2wodmFsLCAmY3AsIDApKSA+IDApIHsNCisJCWlmICh2YWwgJiYgKHNp emUgPSBzdHJ0b3VsbCh2YWwsICZjcCwgMCkpID4gMCkgew0KIAkJICAgIGlm ICgqY3AgJiYgdG91cHBlcigqY3ApID09ICdNJykNCiAJCQlzaXplICo9IE9O RV9NRUc7DQogCQkgICAgZWxzZSBpZiAoKmNwICYmIHRvdXBwZXIoKmNwKSA9 PSAnRycpDQpAQCAtODgzLDcgKzg4Myw4IEBADQogZGlza1BhcnRpdGlvbk5v bkludGVyYWN0aXZlKERldmljZSAqZGV2KQ0KIHsNCiAgICAgY2hhciAqY3A7 DQotICAgIGludCBpLCBzeiwgYWxsX2Rpc2sgPSAwOw0KKyAgICBpbnQgaSwg YWxsX2Rpc2sgPSAwOw0KKyAgICBibGtfY250IHN6Ow0KICNpZmRlZiBQQzk4 DQogICAgIHVfY2hhciAqYm9vdGlwbDsNCiAgICAgc2l6ZV90IGJvb3RpcGxf c2l6ZTsNCkBAIC05MzYsNyArOTM3LDcgQEANCiANCiAJICAgIEFsbF9GcmVl QlNEKGQsIGFsbF9kaXNrID0gVFJVRSk7DQogCX0NCi0JZWxzZSBpZiAoKHN6 ID0gc3RydG9sKGNwLCAmY3AsIDApKSkgew0KKwllbHNlIGlmICgoc3ogPSBz dHJ0b3VsbChjcCwgJmNwLCAwKSkpIHsNCiAJICAgIC8qIExvb2sgZm9yIHN6 IGJ5dGVzIGZyZWUgKi8NCiAJICAgIGlmICgqY3AgJiYgdG91cHBlcigqY3Ap ID09ICdNJykNCiAJCXN6ICo9IE9ORV9NRUc7DQpJbmRleDogdXNyLnNiaW4v c3lzaW5zdGFsbC9sYWJlbC5jDQo9PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQpS Q1MgZmlsZTogL3Vzci9jdnMvc3JjL3Vzci5zYmluL3N5c2luc3RhbGwvbGFi ZWwuYyx2DQpyZXRyaWV2aW5nIHJldmlzaW9uIDEuMTMwDQpkaWZmIC11IC1y MS4xMzAgbGFiZWwuYw0KLS0tIHVzci5zYmluL3N5c2luc3RhbGwvbGFiZWwu YwkxNCBOb3YgMjAwMiAwMTo0NjoyMCAtMDAwMAkxLjEzMA0KKysrIHVzci5z YmluL3N5c2luc3RhbGwvbGFiZWwuYwkxNSBOb3YgMjAwMiAyMDo0Mjo0MSAt MDAwMA0KQEAgLTI0NCwxMSArMjQ0LDExIEBADQogfQ0KIA0KIC8qIEhvdyBt dWNoIHNwYWNlIGlzIGluIHRoaXMgRnJlZUJTRCBzbGljZT8gKi8NCi1zdGF0 aWMgaW50DQorc3RhdGljIGJsa19jbnQNCiBzcGFjZV9mcmVlKHN0cnVjdCBj aHVuayAqYykNCiB7DQogICAgIHN0cnVjdCBjaHVuayAqYzE7DQotICAgIGlu dCBzeiA9IGMtPnNpemU7DQorICAgIGJsa19jbnQgc3ogPSBjLT5zaXplOw0K IA0KICAgICBmb3IgKGMxID0gYy0+cGFydDsgYzE7IGMxID0gYzEtPm5leHQp IHsNCiAJaWYgKGMxLT50eXBlICE9IHVudXNlZCkNCkBAIC00NzQsNyArNDc0 LDcgQEANCiBwcmludF9sYWJlbF9jaHVua3Modm9pZCkNCiB7DQogICAgIGlu dCAgaSwgaiwgc3JvdywgcHJvdywgcGNvbDsNCi0gICAgaW50ICBzejsNCisg ICAgYmxrX2NudCAgc3o7DQogICAgIGNoYXIgY2xybXNnWzgwXTsNCiAgICAg aW50IENodW5rUGFydFN0YXJ0Um93Ow0KICAgICBXSU5ET1cgKkNodW5rV2lu Ow0KQEAgLTU3MCw3ICs1NzAsNyBAQA0KICAgICAgICAgICAgICAgICBwc2xp Y2VfZm9jdXNfZm91bmQgPSAtMTsNCiANCiAJICAgIG12cHJpbnR3KHNyb3cr KywgMCwgDQotCQkgICAgICJEaXNrOiAlc1x0UGFydGl0aW9uIG5hbWU6ICVz XHRGcmVlOiAlZCBibG9ja3MgKCVkTUIpIiwNCisJCSAgICAgIkRpc2s6ICVz XHRQYXJ0aXRpb24gbmFtZTogJXNcdEZyZWU6ICVsbHUgYmxvY2tzICglbGx1 TUIpIiwNCiAJCSAgICAgbGFiZWxfY2h1bmtfaW5mb1tpXS5jLT5kaXNrLT5u YW1lLCBsYWJlbF9jaHVua19pbmZvW2ldLmMtPm5hbWUsIA0KIAkJICAgICBz eiwgKHN6IC8gT05FX01FRykpOw0KIAkgICAgYXR0cnNldChBX05PUk1BTCk7 DQpAQCAtNzEzLDcgKzcxMyw4IEBADQogc3RhdGljIGludA0KIGRpc2tMYWJl bChEZXZpY2UgKmRldikNCiB7DQotICAgIGludCBzeiwga2V5ID0gMDsNCisg ICAgYmxrX2NudCBzejsNCisgICAgaW50ICBrZXkgPSAwOw0KICAgICBCb29s ZWFuIGxhYmVsaW5nOw0KICAgICBjaGFyICptc2cgPSBOVUxMOw0KICAgICBQ YXJ0SW5mbyAqcCwgKm9sZHA7DQpAQCAtODQwLDE4ICs4NDEsMTggQEANCiAJ ICAgIH0NCiAJICAgIGVsc2Ugew0KIAkJY2hhciAqdmFsOw0KLQkJaW50IHNp emU7DQorCQlibGtfY250IHNpemU7DQogCQlzdHJ1Y3QgY2h1bmsgKnRtcDsN CiAJCWNoYXIgb3NpemVbODBdOw0KIAkJdV9sb25nIGZsYWdzID0gMDsNCiAN Ci0JCXNwcmludGYob3NpemUsICIlZCIsIHN6KTsNCisJCXNwcmludGYob3Np emUsICIlbGx1Iiwgc3opOw0KIAkJdmFsID0gbXNnR2V0SW5wdXQob3NpemUs DQogCQkJCSAgIlBsZWFzZSBzcGVjaWZ5IHRoZSBwYXJ0aXRpb24gc2l6ZSBp biBibG9ja3Mgb3IgYXBwZW5kIGEgdHJhaWxpbmcgRyBmb3JcbiINCiAJCQkJ ICAiZ2lnYWJ5dGVzLCBNIGZvciBtZWdhYnl0ZXMsIG9yIEMgZm9yIGN5bGlu ZGVycy5cbiINCi0JCQkJICAiJWQgYmxvY2tzICglZE1CKSBhcmUgZnJlZS4i LA0KKwkJCQkgICIlbGx1IGJsb2NrcyAoJWxsdU1CKSBhcmUgZnJlZS4iLA0K IAkJCQkgIHN6LCBzeiAvIE9ORV9NRUcpOw0KLQkJaWYgKCF2YWwgfHwgKHNp emUgPSBzdHJ0b2wodmFsLCAmY3AsIDApKSA8PSAwKSB7DQorCQlpZiAoIXZh bCB8fCAoc2l6ZSA9IHN0cnRvdWxsKHZhbCwgJmNwLCAwKSkgPD0gMCkgew0K IAkJICAgIGNsZWFyX3dpbnMoKTsNCiAJCSAgICBicmVhazsNCiAJCX0NCkBA IC0xMTYwLDE0ICsxMTYxLDE0IEBADQogICAgIHJldHVybiBESVRFTV9TVUND RVNTOw0KIH0NCiANCi1zdGF0aWMgX19pbmxpbmUgaW50DQotcmVxdWVzdGVk X3BhcnRfc2l6ZShjaGFyICp2YXJOYW1lLCBpbnQgbm9tLCBpbnQgZGVmLCBp bnQgcGVyYykNCitzdGF0aWMgX19pbmxpbmUgYmxrX2NudA0KK3JlcXVlc3Rl ZF9wYXJ0X3NpemUoY2hhciAqdmFyTmFtZSwgYmxrX2NudCBub20sIGludCBk ZWYsIGludCBwZXJjKQ0KIHsNCiAgICAgY2hhciAqY3A7DQotICAgIGludCBz ejsNCisgICAgYmxrX2NudCBzejsNCiANCiAgICAgaWYgKChjcCA9IHZhcmlh YmxlX2dldCh2YXJOYW1lKSkgIT0gTlVMTCkNCi0Jc3ogPSBhdG9pKGNwKTsN CisJc3ogPSBzdHJ0b3VsbChjcCwgTlVMTCwgMCk7DQogICAgIGVsc2UNCiAJ c3ogPSBub20gKyAoZGVmIC0gbm9tKSAqIHBlcmMgLyAxMDA7DQogICAgIHJl dHVybihzeiAqIE9ORV9NRUcpOw0KQEAgLTExODgsNyArMTE4OSw3IEBADQog c3RhdGljIGNoYXIgKg0KIHRyeV9hdXRvX2xhYmVsKERldmljZSAqKmRldnMs IERldmljZSAqZGV2LCBpbnQgcGVyYywgaW50ICpyZXEpDQogew0KLSAgICBp bnQgc3o7DQorICAgIGJsa19jbnQgc3o7DQogICAgIHN0cnVjdCBjaHVuayAq cm9vdF9jaHVuayA9IE5VTEw7DQogICAgIHN0cnVjdCBjaHVuayAqc3dhcF9j aHVuayA9IE5VTEw7DQogICAgIHN0cnVjdCBjaHVuayAqdXNyX2NodW5rID0g TlVMTDsNCkBAIC0xMjI3LDggKzEyMjgsOCBAQA0KICAgICBpZiAoIXN3YXBk ZXYpIHsNCiAJc3ogPSByZXF1ZXN0ZWRfcGFydF9zaXplKFZBUl9TV0FQX1NJ WkUsIDAsIDAsIHBlcmMpOw0KIAlpZiAoc3ogPT0gMCkgew0KLQkgICAgaW50 IG5vbTsNCi0JICAgIGludCBkZWY7DQorCSAgICBibGtfY250IG5vbTsNCisJ ICAgIGJsa19jbnQgZGVmOw0KIA0KIAkgICAgbWliWzBdID0gQ1RMX0hXOw0K IAkgICAgbWliWzFdID0gSFdfUEhZU01FTTsNCkBAIC0xNDAyLDExICsxNDAz LDEyIEBADQogCSAgICBpbnQgZW50cmllczsNCiANCiAJICAgIGZvciAoZW50 cmllcyA9IDE7OyBlbnRyaWVzKyspIHsNCi0JCWludCBzeiwgc29mdCA9IDA7 DQorCQlibGtfY250IHN6Ow0KKwkJaW50IHNvZnQgPSAwOw0KIAkJc25wcmlu dGYobmFtZSwgc2l6ZW9mIG5hbWUsICIlcy0lZCIsIGMxLT5uYW1lLCBlbnRy aWVzKTsNCiAJCWlmICgoY3AgPSB2YXJpYWJsZV9nZXQobmFtZSkpID09IE5V TEwpDQogCQkgICAgYnJlYWs7DQotCQlpZiAoc3NjYW5mKGNwLCAiJXMgJWQg JXMgJWQiLCB0eXAsICZzeiwgbXBvaW50LCAmc29mdCkgPCAzKSB7DQorCQlp ZiAoc3NjYW5mKGNwLCAiJXMgJWxsdSAlcyAlZCIsIHR5cCwgJnN6LCBtcG9p bnQsICZzb2Z0KSA8IDMpIHsNCiAJCSAgICBtc2dDb25maXJtKCJGb3Igc2xp Y2UgZW50cnkgJXMsIGdvdCBhbiBpbnZhbGlkIGRldGFpbCBlbnRyeSBvZjog JXMiLCAgYzEtPm5hbWUsIGNwKTsNCiAJCSAgICBzdGF0dXMgPSBESVRFTV9G QUlMVVJFOw0KIAkJICAgIGJyZWFrOw0K --0-700495603-1037396386=:46162-- To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message