From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1FTnh6-00085A-Gy for qemu-devel@nongnu.org; Wed, 12 Apr 2006 18:20:12 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1FTnh5-00084d-Og for qemu-devel@nongnu.org; Wed, 12 Apr 2006 18:20:12 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1FTnh5-00084Y-Jl for qemu-devel@nongnu.org; Wed, 12 Apr 2006 18:20:11 -0400 Received: from [64.233.182.184] (helo=nproxy.gmail.com) by monty-python.gnu.org with esmtp (Exim 4.52) id 1FTnmG-0006K5-Kg for qemu-devel@nongnu.org; Wed, 12 Apr 2006 18:25:33 -0400 Received: by nproxy.gmail.com with SMTP id c31so1156043nfb for ; Wed, 12 Apr 2006 15:20:09 -0700 (PDT) Message-ID: Date: Wed, 12 Apr 2006 15:20:09 -0700 From: "Ed Swierk" Sender: eswierk@gmail.com MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="----=_Part_7700_10963002.1144880409626" Subject: [Qemu-devel] [PATCH] -net user options for setting subnet and hostname Reply-To: qemu-devel@nongnu.org List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org ------=_Part_7700_10963002.1144880409626 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: base64 Content-Disposition: inline Q3VycmVudGx5IHRoZSB1c2VyLWxldmVsIG5ldHdvcmtpbmcgKHNsaXJwKSBjb2RlIGluIHFlbXUg dXNlcyBzdWJuZXQKMTAuMC4yLjAvMjQuIENoYW5naW5nIHRoaXMgaGFyZGNvZGVkIHZhbHVlLCB3 aGljaCBjYW4gYmUgZGVzaXJhYmxlIGlmCnRoYXQgc3VibmV0IGlzIGFscmVhZHkgdXNlZCBmb3Ig b3RoZXIgcHVycG9zZXMsIHJlcXVpcmVzIHJlY29tcGlsaW5nCnFlbXUuCgpUaGUgYXR0YWNoZWQg cGF0Y2ggbWFrZXMgdGhlIHN1Ym5ldCBjb25maWd1cmFibGUgb24gdGhlIGNvbW1hbmQgbGluZQp2 aWEgYSBuZXcgInN1Ym5ldCIgb3B0aW9uIHRvICItbmV0IHVzZXIiLiBUaGUgc3VibmV0IG11c3Qg YmUgc3BlY2lmaWVkCmFzICJYLlguWC5YLzI0Ii4KClRoaXMgY2hhbmdlIGFsc28gYWZmZWN0ZWQg dGhlIGhhbmRsaW5nIG9mICItcmVkaXIiLCBzaW5jZSBxZW11IHVzZXMKWC5YLlguMTUgYXMgdGhl IHRhcmdldCBhZGRyZXNzIGlmIHRoZSB1c2VyIGRvZXMgbm90IHNwZWNpZnkgb25lLiBTaW5jZQpx ZW11IHBhcnNlcyBjb21tYW5kLWxpbmUgb3B0aW9ucyBpbW1lZGlhdGVseSBidXQgZGVmZXJzIGFj dGluZyBvbgoiLW5ldCIgb3B0aW9ucywgbmV0X3NsaXJwX3JlZGlyKCkgd291bGRuJ3Qga25vdyB3 aGF0IHN1Ym5ldCB0byB1c2UuIEl0CnNlZW1zIHRoYXQgIi1yZWRpciIsICItc21iIiBhbmQgIi10 ZnRwIiwgd2hpY2ggYXJlIGFsbCBzbGlycC1zcGVjaWZpYywKbG9naWNhbGx5IGJlbG9uZyB1bmRl ciAiLW5ldCB1c2VyIiBhbnl3YXksIHNvIEkgY29udmVydGVkIHRoZW0gaW50bwoiLW5ldCB1c2Vy IiBvcHRpb25zLiBEb2luZyBzbyBjbGVhbnMgdXAgdGhlIGNvZGUgcXVpdGUgYSBiaXQsIGFzIHNs aXJwCmdldHMgaW5pdGlhbGl6ZWQgb25seSBieSBuZXRfY2xpZW50X2luaXQoKS4KCkZpbmFsbHks IHRoZSBwYXRjaCBpbmNsdWRlcyB0aGUgImhvc3RuYW1lIiBvcHRpb24gdG8gIi1uZXQgdXNlciIs CndoaWNoIEkgcG9zdGVkIGluIGEgcHJldmlvdXMgcGF0Y2guCgpDb21tZW50cyBhbmQgc3VnZ2Vz dGlvbnMgd291bGQgYmUgd2VsY29tZS4KCi0tRWQK ------=_Part_7700_10963002.1144880409626 Content-Type: text/x-patch; name="qemu-slirp-options.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="qemu-slirp-options.patch" X-Attachment-Id: f_ely8800u ZGlmZiAtQnVyTiAteCAnKi5vcmlnJyAteCAnKn4nIHFlbXUtc25hcHNob3QtMjAwNi0wMy0yN18y My5vcmlnL3NsaXJwL2Jvb3RwLmMgcWVtdS1zbmFwc2hvdC0yMDA2LTAzLTI3XzIzL3NsaXJwL2Jv b3RwLmMKLS0tIHFlbXUtc25hcHNob3QtMjAwNi0wMy0yN18yMy5vcmlnL3NsaXJwL2Jvb3RwLmMJ MjAwNS0wNi0wNSAxNzoxMTo0Mi4wMDAwMDAwMDAgKzAwMDAKKysrIHFlbXUtc25hcHNob3QtMjAw Ni0wMy0yN18yMy9zbGlycC9ib290cC5jCTIwMDYtMDQtMTAgMjM6MjY6NDkuMDAwMDAwMDAwICsw MDAwCkBAIC0yNyw4ICsyNyw2IEBACiAKICNkZWZpbmUgTkJfQUREUiAxNgogCi0jZGVmaW5lIFNU QVJUX0FERFIgMTUKLQogI2RlZmluZSBMRUFTRV9USU1FICgyNCAqIDM2MDApCiAKIHR5cGVkZWYg c3RydWN0IHsKQEAgLTQ3LDYgKzQ1LDggQEAKICNkZWZpbmUgZHByaW50ZihmbXQsIGFyZ3MuLi4p CiAjZW5kaWYKIAorY29uc3QgY2hhciAqZGhjcF9ob3N0bmFtZTsKKwogc3RhdGljIEJPT1RQQ2xp ZW50ICpnZXRfbmV3X2FkZHIoc3RydWN0IGluX2FkZHIgKnBhZGRyKQogewogICAgIEJPT1RQQ2xp ZW50ICpiYzsKQEAgLTYwLDcgKzYwLDcgQEAKICBmb3VuZDoKICAgICBiYyA9ICZib290cF9jbGll bnRzW2ldOwogICAgIGJjLT5hbGxvY2F0ZWQgPSAxOwotICAgIHBhZGRyLT5zX2FkZHIgPSBodG9u bChudG9obChzcGVjaWFsX2FkZHIuc19hZGRyKSB8IChpICsgU1RBUlRfQUREUikpOworICAgIHBh ZGRyLT5zX2FkZHIgPSBodG9ubChudG9obChzcGVjaWFsX2FkZHIuc19hZGRyKSB8IChpICsgREhD UF9TVEFSVF9BRERSKSk7CiAgICAgcmV0dXJuIGJjOwogfQogCkBAIC03Nyw3ICs3Nyw3IEBACiAg Zm91bmQ6CiAgICAgYmMgPSAmYm9vdHBfY2xpZW50c1tpXTsKICAgICBiYy0+YWxsb2NhdGVkID0g MTsKLSAgICBwYWRkci0+c19hZGRyID0gaHRvbmwobnRvaGwoc3BlY2lhbF9hZGRyLnNfYWRkcikg fCAoaSArIFNUQVJUX0FERFIpKTsKKyAgICBwYWRkci0+c19hZGRyID0gaHRvbmwobnRvaGwoc3Bl Y2lhbF9hZGRyLnNfYWRkcikgfCAoaSArIERIQ1BfU1RBUlRfQUREUikpOwogICAgIHJldHVybiBi YzsKIH0KIApAQCAtMjI4LDYgKzIyOCwxNiBAQAogICAgICAgICB2YWwgPSBodG9ubChMRUFTRV9U SU1FKTsKICAgICAgICAgbWVtY3B5KHEsICZ2YWwsIDQpOwogICAgICAgICBxICs9IDQ7CisKKyAg ICAgICAgaWYgKGRoY3BfaG9zdG5hbWUgJiYgKmRoY3BfaG9zdG5hbWUpIHsKKyAgICAgICAgICAg IHZhbCA9IHN0cmxlbihkaGNwX2hvc3RuYW1lKTsKKyAgICAgICAgICAgIGlmICh2YWwgPiAzMikK KyAgICAgICAgICAgICAgICB2YWwgPSAzMjsKKyAgICAgICAgICAgICpxKysgPSBSRkMxNTMzX0hP U1ROQU1FOworICAgICAgICAgICAgKnErKyA9IHZhbDsKKyAgICAgICAgICAgIG1lbWNweShxLCBk aGNwX2hvc3RuYW1lLCB2YWwpOworICAgICAgICAgICAgcSArPSB2YWw7CisgICAgICAgIH0KICAg ICB9CiAgICAgKnErKyA9IFJGQzE1MzNfRU5EOwogICAgIApkaWZmIC1CdXJOIC14ICcqLm9yaWcn IC14ICcqficgcWVtdS1zbmFwc2hvdC0yMDA2LTAzLTI3XzIzLm9yaWcvc2xpcnAvY3RsLmggcWVt dS1zbmFwc2hvdC0yMDA2LTAzLTI3XzIzL3NsaXJwL2N0bC5oCi0tLSBxZW11LXNuYXBzaG90LTIw MDYtMDMtMjdfMjMub3JpZy9zbGlycC9jdGwuaAkyMDA0LTA0LTIyIDAwOjEwOjQ3LjAwMDAwMDAw MCArMDAwMAorKysgcWVtdS1zbmFwc2hvdC0yMDA2LTAzLTI3XzIzL3NsaXJwL2N0bC5oCTIwMDYt MDQtMTAgMjM6MjY6NDkuMDAwMDAwMDAwICswMDAwCkBAIC0yLDYgKzIsMyBAQAogI2RlZmluZSBD VExfRVhFQwkxCiAjZGVmaW5lIENUTF9BTElBUwkyCiAjZGVmaW5lIENUTF9ETlMJCTMKLQotI2Rl ZmluZSBDVExfU1BFQ0lBTAkiMTAuMC4yLjAiCi0jZGVmaW5lIENUTF9MT0NBTAkiMTAuMC4yLjE1 IgpkaWZmIC1CdXJOIC14ICcqLm9yaWcnIC14ICcqficgcWVtdS1zbmFwc2hvdC0yMDA2LTAzLTI3 XzIzLm9yaWcvc2xpcnAvbGlic2xpcnAuaCBxZW11LXNuYXBzaG90LTIwMDYtMDMtMjdfMjMvc2xp cnAvbGlic2xpcnAuaAotLS0gcWVtdS1zbmFwc2hvdC0yMDA2LTAzLTI3XzIzLm9yaWcvc2xpcnAv bGlic2xpcnAuaAkyMDA1LTA2LTA1IDE3OjExOjQyLjAwMDAwMDAwMCArMDAwMAorKysgcWVtdS1z bmFwc2hvdC0yMDA2LTAzLTI3XzIzL3NsaXJwL2xpYnNsaXJwLmgJMjAwNi0wNC0xMCAyMzoyNjo0 OS4wMDAwMDAwMDAgKzAwMDAKQEAgLTEzLDcgKzEzLDcgQEAKIGV4dGVybiAiQyIgewogI2VuZGlm CiAKLXZvaWQgc2xpcnBfaW5pdCh2b2lkKTsKK3ZvaWQgc2xpcnBfaW5pdChzdHJ1Y3QgaW5fYWRk ciBzdWJuZXQsIGNoYXIgKmRoY3BfaG9zdCwgY2hhciAqdGZ0cF9wZngpOwogCiB2b2lkIHNsaXJw X3NlbGVjdF9maWxsKGludCAqcG5mZHMsIAogICAgICAgICAgICAgICAgICAgICAgICBmZF9zZXQg KnJlYWRmZHMsIGZkX3NldCAqd3JpdGVmZHMsIGZkX3NldCAqeGZkcyk7CkBAIC0zMSw4ICszMSw2 IEBACiBpbnQgc2xpcnBfYWRkX2V4ZWMoaW50IGRvX3B0eSwgY29uc3QgY2hhciAqYXJncywgaW50 IGFkZHJfbG93X2J5dGUsIAogICAgICAgICAgICAgICAgICAgIGludCBndWVzdF9wb3J0KTsKIAot ZXh0ZXJuIGNvbnN0IGNoYXIgKnRmdHBfcHJlZml4OwotCiAjaWZkZWYgX19jcGx1c3BsdXMKIH0K ICNlbmRpZgpkaWZmIC1CdXJOIC14ICcqLm9yaWcnIC14ICcqficgcWVtdS1zbmFwc2hvdC0yMDA2 LTAzLTI3XzIzLm9yaWcvc2xpcnAvc2xpcnAuYyBxZW11LXNuYXBzaG90LTIwMDYtMDMtMjdfMjMv c2xpcnAvc2xpcnAuYwotLS0gcWVtdS1zbmFwc2hvdC0yMDA2LTAzLTI3XzIzLm9yaWcvc2xpcnAv c2xpcnAuYwkyMDA2LTA0LTEwIDIzOjIzOjI5LjAwMDAwMDAwMCArMDAwMAorKysgcWVtdS1zbmFw c2hvdC0yMDA2LTAzLTI3XzIzL3NsaXJwL3NsaXJwLmMJMjAwNi0wNC0xMCAyMzoyNjo0OS4wMDAw MDAwMDAgKzAwMDAKQEAgLTEyMyw3ICsxMjMsNyBAQAogfQogI2VuZGlmCiAKLXZvaWQgc2xpcnBf aW5pdCh2b2lkKQordm9pZCBzbGlycF9pbml0KHN0cnVjdCBpbl9hZGRyIHN1Ym5ldCwgY2hhciAq ZGhjcF9ob3N0LCBjaGFyICp0ZnRwX3BmeCkKIHsKICAgICAvLyAgICBkZWJ1Z19pbml0KCIvdG1w L3NsaXJwLmxvZyIsIERFQlVHX0RFRkFVTFQpOwogICAgIApAQCAtMTUxLDggKzE1MSwxMyBAQAog ICAgICAgICBleGl0KDEpOwogICAgIH0KIAotICAgIGluZXRfYXRvbihDVExfU1BFQ0lBTCwgJnNw ZWNpYWxfYWRkcik7CisgICAgc3BlY2lhbF9hZGRyID0gc3VibmV0OwogICAgIGdldG91cmFkZHIo KTsKKworICAgIGlmIChkaGNwX2hvc3QpCisgICAgICAgIGRoY3BfaG9zdG5hbWUgPSBkaGNwX2hv c3Q7CisgICAgaWYgKHRmdHBfcGZ4KQorICAgICAgICB0ZnRwX3ByZWZpeCA9IHRmdHBfcGZ4Owog fQogCiAjZGVmaW5lIENPTk5fQ0FORlNFTkQoc28pICgoKHNvKS0+c29fc3RhdGUgJiAoU1NfRkNB TlRTRU5ETU9SRXxTU19JU0ZDT05ORUNURUQpKSA9PSBTU19JU0ZDT05ORUNURUQpCkBAIC02Mzks NiArNjQ0LDggQEAKIGludCBzbGlycF9yZWRpcihpbnQgaXNfdWRwLCBpbnQgaG9zdF9wb3J0LCAK ICAgICAgICAgICAgICAgICBzdHJ1Y3QgaW5fYWRkciBndWVzdF9hZGRyLCBpbnQgZ3Vlc3RfcG9y dCkKIHsKKyAgICBpZiAoIWd1ZXN0X2FkZHIuc19hZGRyKQorICAgICAgICBndWVzdF9hZGRyLnNf YWRkciA9IGh0b25sKG50b2hsKHNwZWNpYWxfYWRkci5zX2FkZHIpIHwgREhDUF9TVEFSVF9BRERS KTsKICAgICBpZiAoaXNfdWRwKSB7CiAgICAgICAgIGlmICghdWRwX2xpc3RlbihodG9ucyhob3N0 X3BvcnQpLCBndWVzdF9hZGRyLnNfYWRkciwgCiAgICAgICAgICAgICAgICAgICAgICAgICBodG9u cyhndWVzdF9wb3J0KSwgMCkpCmRpZmYgLUJ1ck4gLXggJyoub3JpZycgLXggJyp+JyBxZW11LXNu YXBzaG90LTIwMDYtMDMtMjdfMjMub3JpZy9zbGlycC9zbGlycC5oIHFlbXUtc25hcHNob3QtMjAw Ni0wMy0yN18yMy9zbGlycC9zbGlycC5oCi0tLSBxZW11LXNuYXBzaG90LTIwMDYtMDMtMjdfMjMu b3JpZy9zbGlycC9zbGlycC5oCTIwMDUtMDEtMTAgMjM6MTk6MzQuMDAwMDAwMDAwICswMDAwCisr KyBxZW11LXNuYXBzaG90LTIwMDYtMDMtMjdfMjMvc2xpcnAvc2xpcnAuaAkyMDA2LTA0LTEwIDIz OjI2OjQ5LjAwMDAwMDAwMCArMDAwMApAQCAtMzM2LDQgKzMzNiw5IEBACiAjZGVmaW5lIGVycm5v IChXU0FHZXRMYXN0RXJyb3IoKSkKICNlbmRpZgogCitleHRlcm4gY29uc3QgY2hhciAqZGhjcF9o b3N0bmFtZTsKK2V4dGVybiBjb25zdCBjaGFyICp0ZnRwX3ByZWZpeDsKKworI2RlZmluZSBESENQ X1NUQVJUX0FERFIgMTUKKwogI2VuZGlmCmRpZmYgLUJ1ck4gLXggJyoub3JpZycgLXggJyp+JyBx ZW11LXNuYXBzaG90LTIwMDYtMDMtMjdfMjMub3JpZy92bC5jIHFlbXUtc25hcHNob3QtMjAwNi0w My0yN18yMy92bC5jCi0tLSBxZW11LXNuYXBzaG90LTIwMDYtMDMtMjdfMjMub3JpZy92bC5jCTIw MDYtMDQtMTAgMjM6MjM6MjkuMDAwMDAwMDAwICswMDAwCisrKyBxZW11LXNuYXBzaG90LTIwMDYt MDMtMjdfMjMvdmwuYwkyMDA2LTA0LTEwIDIzOjI3OjM3LjAwMDAwMDAwMCArMDAwMApAQCAtMTk2 NSwxNSArMTk2NSwxNiBAQAogICAgIHNsaXJwX2lucHV0KGJ1Ziwgc2l6ZSk7CiB9CiAKLXN0YXRp YyBpbnQgbmV0X3NsaXJwX2luaXQoVkxBTlN0YXRlICp2bGFuKQorc3RhdGljIGludCBuZXRfc2xp cnBfaW5pdChWTEFOU3RhdGUgKnZsYW4sIHN0cnVjdCBpbl9hZGRyIHN1Ym5ldCwgY2hhciAqZGhj cF9ob3N0LAorICAgIGNoYXIgKnRmdHBfcGZ4KQogewotICAgIGlmICghc2xpcnBfaW5pdGVkKSB7 Ci0gICAgICAgIHNsaXJwX2luaXRlZCA9IDE7Ci0gICAgICAgIHNsaXJwX2luaXQoKTsKLSAgICB9 CisgICAgaWYgKHNsaXJwX2luaXRlZCkKKyAgICAgICAgcmV0dXJuIC0xOworICAgIHNsaXJwX2lu aXQoc3VibmV0LCBzdHJkdXAoZGhjcF9ob3N0KSwgc3RyZHVwKHRmdHBfcGZ4KSk7CiAgICAgc2xp cnBfdmMgPSBxZW11X25ld192bGFuX2NsaWVudCh2bGFuLCAKICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHNsaXJwX3JlY2VpdmUsIE5VTEwsIE5VTEwpOwogICAgIHNucHJpbnRm KHNsaXJwX3ZjLT5pbmZvX3N0ciwgc2l6ZW9mKHNsaXJwX3ZjLT5pbmZvX3N0ciksICJ1c2VyIHJl ZGlyZWN0b3IiKTsKKyAgICBzbGlycF9pbml0ZWQgPSAxOwogICAgIHJldHVybiAwOwogfQogCkBA IC0xOTg1LDExICsxOTg2LDYgQEAKICAgICBzdHJ1Y3QgaW5fYWRkciBndWVzdF9hZGRyOwogICAg IGludCBob3N0X3BvcnQsIGd1ZXN0X3BvcnQ7CiAgICAgCi0gICAgaWYgKCFzbGlycF9pbml0ZWQp IHsKLSAgICAgICAgc2xpcnBfaW5pdGVkID0gMTsKLSAgICAgICAgc2xpcnBfaW5pdCgpOwotICAg IH0KLQogICAgIHAgPSByZWRpcl9zdHI7CiAgICAgaWYgKGdldF9zdHJfc2VwKGJ1Ziwgc2l6ZW9m KGJ1ZiksICZwLCAnOicpIDwgMCkKICAgICAgICAgZ290byBmYWlsOwpAQCAtMjAxMCw5ICsyMDA2 LDggQEAKICAgICBpZiAoZ2V0X3N0cl9zZXAoYnVmLCBzaXplb2YoYnVmKSwgJnAsICc6JykgPCAw KQogICAgICAgICBnb3RvIGZhaWw7CiAgICAgaWYgKGJ1ZlswXSA9PSAnXDAnKSB7Ci0gICAgICAg IHBzdHJjcHkoYnVmLCBzaXplb2YoYnVmKSwgIjEwLjAuMi4xNSIpOwotICAgIH0KLSAgICBpZiAo IWluZXRfYXRvbihidWYsICZndWVzdF9hZGRyKSkKKyAgICAgICAgZ3Vlc3RfYWRkci5zX2FkZHIg PSAwOworICAgIH0gZWxzZSBpZiAoIWluZXRfYXRvbihidWYsICZndWVzdF9hZGRyKSkKICAgICAg ICAgZ290byBmYWlsOwogICAgIAogICAgIGd1ZXN0X3BvcnQgPSBzdHJ0b2wocCwgJnIsIDApOwpA QCAtMjAyNSw3ICsyMDIwLDcgQEAKICAgICB9CiAgICAgcmV0dXJuOwogIGZhaWw6Ci0gICAgZnBy aW50ZihzdGRlcnIsICJxZW11OiBzeW50YXg6IC1yZWRpciBbdGNwfHVkcF06aG9zdC1wb3J0Oltn dWVzdC1ob3N0XTpndWVzdC1wb3J0XG4iKTsKKyAgICBmcHJpbnRmKHN0ZGVyciwgInFlbXU6IHN5 bnRheDogcmVkaXI9W3RjcHx1ZHBdOmhvc3QtcG9ydDpbZ3Vlc3QtaG9zdF06Z3Vlc3QtcG9ydFs7 Li4uXVxuIik7CiAgICAgZXhpdCgxKTsKIH0KICAgICAKQEAgLTIwNjMsMTEgKzIwNTgsNiBAQAog ICAgIGNoYXIgc21iX2NtZGxpbmVbMTAyNF07CiAgICAgRklMRSAqZjsKIAotICAgIGlmICghc2xp cnBfaW5pdGVkKSB7Ci0gICAgICAgIHNsaXJwX2luaXRlZCA9IDE7Ci0gICAgICAgIHNsaXJwX2lu aXQoKTsKLSAgICB9Ci0KICAgICAvKiBYWFg6IGJldHRlciB0bXAgZGlyIGNvbnN0cnVjdGlvbiAq LwogICAgIHNucHJpbnRmKHNtYl9kaXIsIHNpemVvZihzbWJfZGlyKSwgIi90bXAvcWVtdS1zbWIu JWQiLCBnZXRwaWQoKSk7CiAgICAgaWYgKG1rZGlyKHNtYl9kaXIsIDA3MDApIDwgMCkgewpAQCAt MjgwMiw3ICsyNzkyLDQ2IEBACiAgICAgfSBlbHNlCiAjaWZkZWYgQ09ORklHX1NMSVJQCiAgICAg aWYgKCFzdHJjbXAoZGV2aWNlLCAidXNlciIpKSB7Ci0gICAgICAgIHJldCA9IG5ldF9zbGlycF9p bml0KHZsYW4pOworICAgICAgICBzdHJ1Y3QgaW5fYWRkciBzdWJuZXQ7CisgICAgICAgIGNoYXIg ZGhjcF9ob3N0WzY0XTsKKyAgICAgICAgY2hhciB0ZnRwX3BmeFsxMDI0XTsKKworICAgICAgICBp ZiAoZ2V0X3BhcmFtX3ZhbHVlKGJ1Ziwgc2l6ZW9mKGJ1ZiksICJzdWJuZXQiLCBwKSkgeworICAg ICAgICAgICAgY2hhciAqIGxlbiA9IHN0cmNociggYnVmLCAwICkgLSAzOworICAgICAgICAgICAg aWYoIGxlbiA8IGJ1ZiB8fCBzdHJjbXAoIGxlbiwgIi8yNCIgKSkgeworICAgICAgICAgICAgICAg IGZwcmludGYoc3RkZXJyLCAicWVtdTogaW52YWxpZCBzdWJuZXQ9JXMgKEkgb25seSBkZWFsIHdp dGggLzI0J3MpXG4iLCBidWYgKTsKKyAgICAgICAgICAgICAgICByZXR1cm4gLTE7CisgICAgICAg ICAgICB9ICAgICAgICAgICAgICAKKyAgICAgICAgICAgICpsZW4gPSAwOworICAgICAgICB9IGVs c2UgeworICAgICAgICAgICAgc3RyY3B5KGJ1ZiwgIjEwLjAuMi4wIik7CisgICAgICAgIH0KKyAg ICAgICAgaWYgKCFpbmV0X2F0b24oYnVmLCAmc3VibmV0KSkgeworICAgICAgICAgICAgZnByaW50 ZihzdGRlcnIsICJxZW11OiBpbnZhbGlkIHN1Ym5ldD0lc1xuIiwgYnVmICk7CisgICAgICAgICAg ICByZXR1cm4gLTE7CisgICAgICAgIH0KKyAgICAgICAgaWYgKCFnZXRfcGFyYW1fdmFsdWUoZGhj cF9ob3N0LCBzaXplb2YoZGhjcF9ob3N0KSwgImhvc3RuYW1lIiwgcCkpCisgICAgICAgICAgICBk aGNwX2hvc3RbMF0gPSAnXDAnOworICAgICAgICBpZiAoIWdldF9wYXJhbV92YWx1ZSh0ZnRwX3Bm eCwgc2l6ZW9mKHRmdHBfcGZ4KSwgInRmdHAiLCBwKSkgeworICAgICAgICAgICAgdGZ0cF9wZnhb MF0gPSAnXDAnOworICAgICAgICB9CisgICAgICAgIGlmIChuZXRfc2xpcnBfaW5pdCh2bGFuLCBz dWJuZXQsIGRoY3BfaG9zdCwgdGZ0cF9wZngpIDwgMCkgeworICAgICAgICAgICAgZnByaW50Zihz dGRlcnIsICJxZW11OiBvbmx5IG9uZSAtbmV0IHVzZXIgaW5zdGFuY2UgYWxsb3dlZFxuIik7Cisg ICAgICAgICAgICByZXR1cm4gLTE7CisgICAgICAgIH0KKworICAgICAgICBpZiAoZ2V0X3BhcmFt X3ZhbHVlKGJ1Ziwgc2l6ZW9mKGJ1ZiksICJyZWRpciIsIHApKSB7CisgICAgICAgICAgICBjaGFy IHBidWZbMTAyNF07CisgICAgICAgICAgICBxID0gYnVmOworICAgICAgICAgICAgd2hpbGUgKCFn ZXRfc3RyX3NlcChwYnVmLCBzaXplb2YocGJ1ZiksICZxLCAiOyIpKQorICAgICAgICAgICAgICAg IG5ldF9zbGlycF9yZWRpcihwYnVmKTsKKyAgICAgICAgICAgIG5ldF9zbGlycF9yZWRpcihxKTsK KyAgICAgICAgfQorI2lmbmRlZiBfV0lOMzIKKyAgICAgICAgaWYgKGdldF9wYXJhbV92YWx1ZShi dWYsIHNpemVvZihidWYpLCAic21iIiwgcCkpIHsKKyAgICAgICAgICAgIG5ldF9zbGlycF9zbWIo YnVmKTsKKyAgICAgICAgfQorI2VuZGlmCiAgICAgfSBlbHNlCiAjZW5kaWYKICNpZmRlZiBfV0lO MzIKQEAgLTQyMDIsOCArNDIyMywxNSBAQAogICAgICAgICAgICAiLW5ldCBuaWNbLHZsYW49bl1b LG1hY2FkZHI9YWRkcl1bLG1vZGVsPXR5cGVdXG4iCiAgICAgICAgICAgICIgICAgICAgICAgICAg ICAgY3JlYXRlIGEgbmV3IE5ldHdvcmsgSW50ZXJmYWNlIENhcmQgYW5kIGNvbm5lY3QgaXQgdG8g VkxBTiAnbidcbiIKICNpZmRlZiBDT05GSUdfU0xJUlAKLSAgICAgICAgICAgIi1uZXQgdXNlclss dmxhbj1uXVxuIgotICAgICAgICAgICAiICAgICAgICAgICAgICAgIGNvbm5lY3QgdGhlIHVzZXIg bW9kZSBuZXR3b3JrIHN0YWNrIHRvIFZMQU4gJ24nXG4iCisgICAgICAgICAgICItbmV0IHVzZXJb LHZsYW49bl1bLGhvc3RuYW1lPWhvc3RdWyxzdWJuZXQ9YWRkcl1bLHRmdHA9cHJlZml4XVxuIgor ICAgICAgICAgICAiICAgICAgICAgWyxyZWRpcj1bdGNwfHVkcF06aG9zdC1wb3J0OltndWVzdC1o b3N0XTpndWVzdC1wb3J0WzsuLi5dXG4iCisjaWZuZGVmIF9XSU4zMgorICAgICAgICAgICAiICAg ICAgICAgWyxzbWI9ZGlyXVxuIgorI2VuZGlmCisgICAgICAgICAgICIgICAgICAgICAgICAgICAg Y29ubmVjdCB0aGUgdXNlciBtb2RlIG5ldHdvcmsgc3RhY2sgdG8gVkxBTiAnbic7IGFzc2lnblxu IgorICAgICAgICAgICAiICAgICAgICAgICAgICAgIGhvc3RuYW1lIGhvc3QgdG8gREhDUCBjbGll bnRzOyB1c2Ugc3VibmV0IGFkZHIgKC8yNCk7XG4iCisgICAgICAgICAgICIgICAgICAgICAgICAg ICAgcmVkaXJlY3QgVENQIG9yIFVEUCBwb3J0IGZyb20gaG9zdCB0byBndWVzdDsgYWxsb3cgdGZ0 cFxuIgorICAgICAgICAgICAiICAgICAgICAgICAgICAgIGFjY2VzcyB0byBmaWxlcyBpbiBwcmVm aXg7IGFsbG93IFNNQiBhY2Nlc3MgdG8gZmlsZXMgaW4gZGlyXG4iCiAjZW5kaWYKICNpZmRlZiBf V0lOMzIKICAgICAgICAgICAgIi1uZXQgdGFwWyx2bGFuPW5dLGlmbmFtZT1uYW1lXG4iCkBAIC00 MjIxLDE1ICs0MjQ5LDYgQEAKICAgICAgICAgICAgIi1uZXQgbm9uZSAgICAgICB1c2UgaXQgYWxv bmUgdG8gaGF2ZSB6ZXJvIG5ldHdvcmsgZGV2aWNlczsgaWYgbm8gLW5ldCBvcHRpb25cbiIKICAg ICAgICAgICAgIiAgICAgICAgICAgICAgICBpcyBwcm92aWRlZCwgdGhlIGRlZmF1bHQgaXMgJy1u ZXQgbmljIC1uZXQgdXNlcidcbiIKICAgICAgICAgICAgIlxuIgotI2lmZGVmIENPTkZJR19TTElS UAotICAgICAgICAgICAiLXRmdHAgcHJlZml4ICAgIGFsbG93IHRmdHAgYWNjZXNzIHRvIGZpbGVz IHN0YXJ0aW5nIHdpdGggcHJlZml4IFstbmV0IHVzZXJdXG4iCi0jaWZuZGVmIF9XSU4zMgotICAg ICAgICAgICAiLXNtYiBkaXIgICAgICAgIGFsbG93IFNNQiBhY2Nlc3MgdG8gZmlsZXMgaW4gJ2Rp cicgWy1uZXQgdXNlcl1cbiIKLSNlbmRpZgotICAgICAgICAgICAiLXJlZGlyIFt0Y3B8dWRwXTpo b3N0LXBvcnQ6W2d1ZXN0LWhvc3RdOmd1ZXN0LXBvcnRcbiIKLSAgICAgICAgICAgIiAgICAgICAg ICAgICAgICByZWRpcmVjdCBUQ1Agb3IgVURQIGNvbm5lY3Rpb25zIGZyb20gaG9zdCB0byBndWVz dCBbLW5ldCB1c2VyXVxuIgotI2VuZGlmCi0gICAgICAgICAgICJcbiIKICAgICAgICAgICAgIkxp bnV4IGJvb3Qgc3BlY2lmaWM6XG4iCiAgICAgICAgICAgICIta2VybmVsIGJ6SW1hZ2UgdXNlICdi ekltYWdlJyBhcyBrZXJuZWwgaW1hZ2VcbiIKICAgICAgICAgICAgIi1hcHBlbmQgY21kbGluZSB1 c2UgJ2NtZGxpbmUnIGFzIGtlcm5lbCBjb21tYW5kIGxpbmVcbiIKQEAgLTQzMTAsOSArNDMyOSw2 IEBACiAjZW5kaWYKIAogICAgIFFFTVVfT1BUSU9OX25ldCwKLSAgICBRRU1VX09QVElPTl90ZnRw LAotICAgIFFFTVVfT1BUSU9OX3NtYiwKLSAgICBRRU1VX09QVElPTl9yZWRpciwKIAogICAgIFFF TVVfT1BUSU9OX2tlcm5lbCwKICAgICBRRU1VX09QVElPTl9hcHBlbmQsCkBAIC00MzczLDEzICs0 Mzg5LDYgQEAKICNlbmRpZgogCiAgICAgeyAibmV0IiwgSEFTX0FSRywgUUVNVV9PUFRJT05fbmV0 fSwKLSNpZmRlZiBDT05GSUdfU0xJUlAKLSAgICB7ICJ0ZnRwIiwgSEFTX0FSRywgUUVNVV9PUFRJ T05fdGZ0cCB9LAotI2lmbmRlZiBfV0lOMzIKLSAgICB7ICJzbWIiLCBIQVNfQVJHLCBRRU1VX09Q VElPTl9zbWIgfSwKLSNlbmRpZgotICAgIHsgInJlZGlyIiwgSEFTX0FSRywgUUVNVV9PUFRJT05f cmVkaXIgfSwKLSNlbmRpZgogCiAgICAgeyAia2VybmVsIiwgSEFTX0FSRywgUUVNVV9PUFRJT05f a2VybmVsIH0sCiAgICAgeyAiYXBwZW5kIiwgSEFTX0FSRywgUUVNVV9PUFRJT05fYXBwZW5kIH0s CkBAIC00ODMxLDE5ICs0ODQwLDYgQEAKICAgICAgICAgICAgICAgICAgICAgICAgIG9wdGFyZyk7 CiAgICAgICAgICAgICAgICAgbmJfbmV0X2NsaWVudHMrKzsKICAgICAgICAgICAgICAgICBicmVh azsKLSNpZmRlZiBDT05GSUdfU0xJUlAKLSAgICAgICAgICAgIGNhc2UgUUVNVV9PUFRJT05fdGZ0 cDoKLQkJdGZ0cF9wcmVmaXggPSBvcHRhcmc7Ci0gICAgICAgICAgICAgICAgYnJlYWs7Ci0jaWZu ZGVmIF9XSU4zMgotICAgICAgICAgICAgY2FzZSBRRU1VX09QVElPTl9zbWI6Ci0JCW5ldF9zbGly cF9zbWIob3B0YXJnKTsKLSAgICAgICAgICAgICAgICBicmVhazsKLSNlbmRpZgotICAgICAgICAg ICAgY2FzZSBRRU1VX09QVElPTl9yZWRpcjoKLSAgICAgICAgICAgICAgICBuZXRfc2xpcnBfcmVk aXIob3B0YXJnKTsgICAgICAgICAgICAgICAgCi0gICAgICAgICAgICAgICAgYnJlYWs7Ci0jZW5k aWYKICNpZmRlZiBIQVNfQVVESU8KICAgICAgICAgICAgIGNhc2UgUUVNVV9PUFRJT05fYXVkaW9f aGVscDoKICAgICAgICAgICAgICAgICBBVURfaGVscCAoKTsK ------=_Part_7700_10963002.1144880409626--